From 3bb1fedc60d28395f83446d94e8d775f0ca4dac6 Mon Sep 17 00:00:00 2001 From: Nicola Del Gobbo Date: Wed, 29 Mar 2023 16:46:32 +0200 Subject: [PATCH] doc: how to create a new release. --- CREATING_A_RELEASE.md | 58 +++++++++++++++++++++++++++++++++++++++++++ README.md | 1 + 2 files changed, 59 insertions(+) create mode 100644 CREATING_A_RELEASE.md diff --git a/CREATING_A_RELEASE.md b/CREATING_A_RELEASE.md new file mode 100644 index 0000000..f96aa7f --- /dev/null +++ b/CREATING_A_RELEASE.md @@ -0,0 +1,58 @@ +# Creating a release + +Only collaborators in npm for **node-api-headers** 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. + +## Prerequisites + +Before to start creating a new release check if you have installed the following +tools: + +* [Changelog maker](https://www.npmjs.com/package/changelog-maker) + +If not please follow the instruction reported in the tool's documentation to +install it. + +## Publish new release + +These are the steps to follow to create a new release: + +* Open an issue in the **node-api-headers** repo documenting the intent to +create a new release. Give people some time to comment or suggest PRs that +should land first. + +* Update the version in **package.json** appropriately. + +* Update the [README.md][] to show the latest stable version of Node-API. + +* Generate the changelog for the new version using **changelog maker** tool. +From the root folder of the repo launch the following command: + +```bash +> changelog-maker --format=markdown +``` + +* 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**. + +* Do a clean checkout of `node-api-headers`. + +* 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-api-headers` 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. + +[README.md]: ./README.md +[CHANGELOG.md]: ./CHANGELOG.md \ No newline at end of file diff --git a/README.md b/README.md index 6779b43..0b98003 100644 --- a/README.md +++ b/README.md @@ -5,6 +5,7 @@ - **[Code of Conduct](CODE_OF_CONDUCT.md)** - **[Install](#install)** - **[API](#api)** +- **[Creating a release](CREATING_A_RELEASE.md)** - **[Team](#team)** - **[License](#license)**