Only collaborators in npm for node-addon-api can create releases. If you want to be able to do releases ask one of the existing collaborators to add you. If necessary you can ask the build Working Group who manages the Node.js npm user to add you if there are no other active collaborators.
Before to start creating a new release check if you have installed the following tools:
If not please follow the instruction reported in the tool's documentation to install it.
These are the steps to follow to create a new release:
-
Open an issue in the node-addon-api repo documenting the intent to create a new release. Give people some time to comment or suggest PRs that should land first.
-
Validate all tests pass by running
npm test
on themain
branch. -
Update the version in package.json appropriately.
-
Update the README.md to show the new version as the latest.
-
Generate the changelog for the new version using changelog maker tool. From the route folder of the repo launch the following command:
> changelog-maker
-
Use the output generated by changelog maker to update the CHANGELOG.md following the style used in publishing the previous release.
-
Add any new contributors to the "contributors" section in the package.json
-
Validate all tests pass by running
npm test
on themain
branch. -
Use CI to validate tests pass (note there are still some issues on SmartOS and Windows in the testing).
-
Do a clean checkout of node-addon-api.
-
Login and then run
npm publish
. -
Create a release in Github (look at existing releases for an example).
-
Validate that you can run
npm install node-addon-api
successfully and that the correct version is installed. -
Comment on the issue opened in the first step that the release has been created and close the issue.
-
Tweet that the release has been created.
Depending on circumstances for the release, additional steps may be required to support the release process.
node-addon-api
provides support for Node.js versions following the same
release schedule: once a Node.js
version leaves maintenance mode, the next major version of node-addon-api
published will drop support for that version. These are the steps to follow to
drop support for a Node.js version:
-
Update minimum version supported in documentation (README.md)
-
Remove from GitHub actions (ci.yml and ci-win.yml)
-
Remove from Jenkins CI (node-test-node-addon-api-LTS versions [Jenkins])