Security News
JSR Working Group Kicks Off with Ambitious Roadmap and Plans for Open Governance
At its inaugural meeting, the JSR Working Group outlined plans for an open governance model and a roadmap to enhance JavaScript package management.
egg developer tool, extends @artus-cli/artus-cli.
npm i egg-bin --save-dev
Add egg-bin
to package.json
scripts:
{
"scripts": {
"dev": "egg-bin dev",
"test-local": "egg-bin test",
"test": "npm run lint -- --fix && npm run test-local",
"cov": "egg-bin cov",
"lint": "eslint .",
"ci": "npm run lint && npm run cov"
}
}
All the commands support these specific options:
--inspect
--inspect-brk
--typescript
/ --ts
enable typescript support. Auto detect from package.json
's pkg.egg.typescript
,
or pkg.dependencies.typescript
/pkg.devDependencies.typescript
.--base
/ --baseDir
application's root path, default to process.cwd()
.--require
will add to execArgv
, support multiple. Also support read from package.json
's pkg.egg.require
--dry-run
/ -d
whether dry-run the test command, just show the commandegg-bin [command] --inspect
egg-bin [command] --inspect-brk
egg-bin [command] --typescript
egg-bin [command] --base /foo/bar
Start dev cluster on local
env, it will start a master, an agent and a worker.
egg-bin dev
--framework
egg web framework root path.--port
server port, default to 7001
.--workers
worker process number, default to 1
worker at local mode.--sticky
start a sticky cluster server, default to false
.Create .vscode/launch.json
file:
{
"version": "0.2.0",
"configurations": [
{
"type": "node",
"request": "launch",
"name": "Egg Debug",
"runtimeExecutable": "npm",
"runtimeArgs": [
"run",
"dev",
"--",
"--inspect-brk"
],
"console": "integratedTerminal",
"restart": true,
"protocol": "auto",
"port": 9229,
"autoAttachChildProcesses": true
},
{
"type": "node",
"request": "launch",
"name": "Egg Test",
"runtimeExecutable": "npm",
"runtimeArgs": [
"run",
"test-local",
"--",
"--inspect-brk"
],
"protocol": "auto",
"port": 9229,
"autoAttachChildProcesses": true
}
]
}
Using mocha to run test.
egg-bin test [...files] [options]
files
is optional, default to test/**/*.test.ts
test/fixtures
, test/node_modules
is always exclude.test/.setup.ts
If test/.setup.ts
file exists, it will be auto require as the first test file.
test
├── .setup.ts
└── foo.test.ts
You can pass any mocha argv.
--timeout
milliseconds, default to 60000--changed
/ -c
only test changed test files(test files means files that match ${pwd}/test/**/*.test.(js|ts)
)--parallel
enable mocha parallel mode, default to false
.--auto-agent
auto start agent in mocha master agent.--jobs
number of jobs to run in parallel, default to os.cpus().length - 1
.--mochawesome
enable mochawesome reporter, default to true
.Environment is also support, will use it if options not provide.
You can set TESTS
env to set the tests directory, it support glob grammar.
TESTS=test/a.test.ts egg-bin test
And the reporter can set by the TEST_REPORTER
env, default is spec
.
TEST_REPORTER=doc egg-bin test
The test timeout can set by TEST_TIMEOUT
env, default is 60000
ms.
TEST_TIMEOUT=2000 egg-bin test
Using mocha and [c8] to run code coverage, it support all test params above.
Coverage reporter will output text-summary, json and lcov.
You can pass any mocha argv.
-x
add dir ignore coverage, support multiple argv--prerequire
prerequire files for coverage instrument, you can use this options if load files slowly when call mm.app
or mm.cluster
--typescript
/ --ts
enable typescript support. If true, will auto add .ts
extension and ignore typings
and d.ts
.--c8
c8 instruments passthrough. you can use this to overwrite egg-bin's default c8 instruments and add additional ones.
- egg-bin have some default instruments passed to c8 like
-r
and--temp-directory
egg-bin cov --c8="-r teamcity -r text" --c8-report=true
You can set COV_EXCLUDES
env to add dir ignore coverage.
COV_EXCLUDES="app/plugins/c*,app/autocreate/**" egg-bin cov
See https://artus-cli.github.io
This project follows the git-contributor spec, auto updated at Sat Jun 03 2023 16:58:54 GMT+0800
.
FAQs
egg developer tool
The npm package egg-bin receives a total of 16,395 weekly downloads. As such, egg-bin popularity was classified as popular.
We found that egg-bin demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 14 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
At its inaugural meeting, the JSR Working Group outlined plans for an open governance model and a roadmap to enhance JavaScript package management.
Security News
Research
An advanced npm supply chain attack is leveraging Ethereum smart contracts for decentralized, persistent malware control, evading traditional defenses.
Security News
Research
Attackers are impersonating Sindre Sorhus on npm with a fake 'chalk-node' package containing a malicious backdoor to compromise developers' projects.