semantic-release is written using the latest ECMAScript 2017 features, without transpilation which requires requires Node version 10 or higher.
semantic-release is meant to be used in a CI environment as a development support tool, not as a production dependency. Therefore the only constraint is to run the semantic-release
in a CI environment providing Node 8 or higher.
See our Node Support Policy for our long-term promise regarding Node version support.
The recommended approach is to run the semantic-release
command from a CI job running on Node 10.18 or higher. This can either be a job used by your project to test on Node >= 10.18 or a dedicated job for the release steps.
See CI configuration and CI configuration recipes for more details.
npx
is included with npm >= 5.2 and can be used to download the latest Node 8 package published on npm. Use it to execute the semantic-release
command.
$ npx -p node@8 -c "npx semantic-release"
Note:: See What is npx for more details.
If your CI environment provides nvm you can use it to switch to Node 8 before running the semantic-release
command.
$ nvm install 8 && npx semantic-release