Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

doc: refactor the changelog by version #6503

Closed
wants to merge 2 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6,135 changes: 937 additions & 5,198 deletions CHANGELOG.md

Large diffs are not rendered by default.

5,377 changes: 0 additions & 5,377 deletions doc/CHANGELOG.ARCHIVE.md

This file was deleted.

3,799 changes: 3,799 additions & 0 deletions doc/changelogs/CHANGELOG_ARCHIVE.md

Large diffs are not rendered by default.

2,852 changes: 2,852 additions & 0 deletions doc/changelogs/CHANGELOG_IOJS.md

Large diffs are not rendered by default.

788 changes: 788 additions & 0 deletions doc/changelogs/CHANGELOG_V010.md

Large diffs are not rendered by default.

343 changes: 343 additions & 0 deletions doc/changelogs/CHANGELOG_V012.md

Large diffs are not rendered by default.

1,669 changes: 1,669 additions & 0 deletions doc/changelogs/CHANGELOG_V4.md

Large diffs are not rendered by default.

1,701 changes: 1,701 additions & 0 deletions doc/changelogs/CHANGELOG_V5.md

Large diffs are not rendered by default.

486 changes: 486 additions & 0 deletions doc/changelogs/CHANGELOG_V6.md

Large diffs are not rendered by default.

38 changes: 28 additions & 10 deletions doc/releases.md
Original file line number Diff line number Diff line change
Expand Up @@ -89,7 +89,9 @@ The general rule is to bump this version when there are _breaking ABI_ changes a

**Note** that it is current TSC policy to bump major version when ABI changes. If you see a need to bump `NODE_MODULE_VERSION` then you should consult the TSC. Commits may need to be reverted or a major version bump may need to happen.

### 3. Update `CHANGELOG.md`
### 3. Update the Changelog

#### Step 1: Collecting the formatted list of changes:

Collect a formatted list of commits since the last release. Use [`changelog-maker`](https://github.com/rvagg/changelog-maker) to do this.

Expand All @@ -103,9 +105,20 @@ Note that changelog-maker counts commits since the last tag and if the last tag
$ changelog-maker --group --start-ref v2.3.1
```

The `CHANGELOG.md` entry should take the following form:
#### Step 2: Update the appropriate doc/changelogs/CHANGELOG_*.md file

There is a separate `CHANGELOG_*.md` file for each major Node.js release line.
These are located in the `doc/changelogs/` directory. Once the formatted list
of changes is collected, it must be added to the top of the relevant changelog
file in the release branch (e.g. a release for Node.js v4 would be added to the
`/doc/changelogs/CHANGELOG_V4.md`).

**Please do *not* add the changelog entries to the root `CHANGELOG.md` file.**

The new entry should take the following form:

```
<a id="x.y.x></a>"
## YYYY-MM-DD, Version x.y.z (Release Type), @releaser

### Notable changes
Expand All @@ -115,23 +128,28 @@ The `CHANGELOG.md` entry should take the following form:
* Also be sure to look at any changes introduced by dependencies such as npm
* ... and include any notable items from there

### Known issues

See https://github.com/nodejs/node/labels/confirmed-bug for complete and current list of known issues.

* Include this section if there are any known problems with this release
* Scan GitHub for unresolved problems that users may need to be aware of

### Commits

* Include the full list of commits since the last release here. Do not include "Working on X.Y.Z+1" commits.
```

The release type should be either Current, LTS, or Maintenance, depending on the type of release being produced.

At the top of each `CHANGELOG_*.md` file, and in the root `CHANGELOG.md` file,
there is a table indexing all releases in each major release line. A link to
the new release needs to be added to each. Follow the existing examples and be
sure to add the release to the *top* of the list.

In the root `CHANGELOG.md` file, the most recent release for each release line
is shown in **bold** in the index. When updating the index, please make sure
to update the display accordingly by removing the bold styling from the previous
release.

### 4. Create Release Commit

The `CHANGELOG.md` and `src/node_version.h` changes should be the final commit that will be tagged for the release. When committing these to git, use the following message format:
The `CHANGELOG.md`, `doc/changelogs/CHANGELOG_*.md`, and `src/node_version.h`
changes should be the final commit that will be tagged for the release. When
committing these to git, use the following message format:

```
YYYY-MM-DD, Version x.y.z (Release Type)
Expand Down