9.0.0 (2017-10-28)
Features
- Refactor CLI to run with one command, improve logs, modularize, add tests (e2a8a5c)
BREAKING CHANGES
- Semantic-Release must now be executed with
semantic-releaseinstead ofsemantic-release pre && npm publish && semantic-release post. - The
semantic-releasecommand now returns with exit code 0 on expected exception (no release has to be done, running on a PR, gitHead not found, other CI job failed etc...). It only returns with 1 when there is an unexpected error (code error in a plugin, plugin not found, git command cannot be run etc..). - Calling the
semantic-releasecommand with unexpected argument(s) now exit with 1 and print an help message. - Semantic-Release does not rely on
npmloganymore and the log level cannot be configured. Debug logs can be activated with CLI option--debugor with environment variableDEBUG=semantic-release:* - The CLI options
--debugdoesn't enable the dry-run mode anymore but activate the debugs. The dry run mode is now set with the CLI command--dry-runor-d.
semantic-release pre && npm shrinkwrap && semantic-release post - If you depend on
npm shrinkwrap, you have to run it beforesemantic-releasenow. You can set"presemantic-release": "npm shrinkwrap"in your package.json file
MIGRATION GUIDE
Update the semantic-release in your package.json from:
"scripts": {
"semantic-release": "semantic-release pre && npm publish && semantic-release post"
}To:
"scripts": {
"semantic-release": "semantic-release"
}