◐ Shell
clean mode source ↗

doc: update node-api version matrix · nodejs/node@3fe8eac

@@ -12,11 +12,12 @@ release process.

1212

* [3. Update `NODE_API_SUPPORTED_VERSION_MAX`](#3-update-node_api_supported_version_max)

1313

* [4. Define `addon_context_register_func`](#4-define-addon_context_register_func)

1414

* [5. Update version guards](#5-update-version-guards)

15-

* [6. Create release commit](#6-create-release-commit)

16-

* [7. Propose release on GitHub](#7-propose-release-on-github)

17-

* [8. Ensure that the release branch is stable](#8-ensure-that-the-release-branch-is-stable)

18-

* [9. Land the release](#9-land-the-release)

19-

* [10. Backport the release](#10-backport-the-release)

15+

* [6. Update version matrix document](#6-update-version-matrix-document)

16+

* [7. Create release commit](#7-create-release-commit)

17+

* [8. Propose release on GitHub](#8-propose-release-on-github)

18+

* [9. Ensure that the release branch is stable](#9-ensure-that-the-release-branch-is-stable)

19+

* [10. Land the release](#10-land-the-release)

20+

* [11. Backport the release](#11-backport-the-release)

20212122

## How to create a release

2223

@@ -199,15 +200,30 @@ released version `x`:

199200

+ * version 10:

200201

```

201202202-

### 6. Create release commit

203+

### 6. Update version matrix document

204+205+

Add a new row in the [version matrix][] for

206+

the new version:

207+208+

```text

209+

<tr>

210+

<th scope="row">10</th>

211+

<td>vREPLACEME+ and all later versions</td>

212+

</tr>

213+

```

214+215+

In this case, use `REPLACEME` as a placeholder for the Node.js version to be released.

216+

It will be updated in a Node.js version release.

217+218+

### 7. Create release commit

203219204220

When committing these to git, use the following message format:

205221206222

```text

207223

node-api: define version x

208224

```

209225210-

### 7. Propose release on GitHub

226+

### 8. Propose release on GitHub

211227212228

Create a pull request targeting the `main` branch. These PRs should be left

213229

open for at least 24 hours, and can be updated as new commits land.

@@ -218,22 +234,26 @@ good place to @-mention the relevant contributors.

218234

Tag the PR with the `notable-change` label, and @-mention the GitHub team

219235

@nodejs/node-api and @nodejs/node-api-implementer.

220236221-

### 8. Ensure that the release branch is stable

237+

### 9. Ensure that the release branch is stable

222238223239

Run a **[`node-test-pull-request`](https://ci.nodejs.org/job/node-test-pull-request/)**

224240

test run to ensure that the build is stable and the HEAD commit is ready for

225241

release.

226242227-

### 9. Land the release

243+

### 10. Land the release

228244229245

See the steps documented in [Collaborator Guide - Landing a PR][] to land the

230246

PR.

231247232-

### 10. Backport the release

248+

### 11. Backport the release

233249234250

Consider backporting the release to all LTS versions following the steps

235251

documented in the [backporting guide][].

236252253+

Additionally, update the [version matrix][] for the backported version if

254+

necessary.

255+237256

[Collaborator Guide - Landing a PR]: ./collaborator-guide.md#landing-pull-requests

238257

[abi-stable-node issue tracker]: https://github.com/nodejs/abi-stable-node/issues

239258

[backporting guide]: backporting-to-release-lines.md

259+

[version matrix]: ../api/n-api.md#node-api-version-matrix