tools: fix failing release-proposal linter for LTS transitions · nodejs/node@97d7422
@@ -26,9 +26,13 @@ if (commitListingStart === -1) {
2626commitList = changelog.replace(/(^.+\n### Semver-Major|\n### Semver-(Minor|Patch)) Commits\n/gs, '')
2727.replaceAll('**(SEMVER-MAJOR)** ', '');
2828} else {
29-const commitListingEnd = changelog.indexOf('\n\n<a', commitListingStart);
30-assert.notStrictEqual(commitListingEnd, -1);
31-commitList = changelog.slice(commitListingStart, commitListingEnd + 1);
29+// We can't assume the Commits section is the one for this release in case of
30+// a release to transition to LTS (i.e. with no commits).
31+const releaseStart = /\n<a id="(\d+\.\d+\.\d+)"><\/a>\n\n## \d+-\d+-\d+, Version \1/.exec(changelog);
32+assert.ok(releaseStart, 'Could not determine the start of the release section');
33+const releaseEnd = changelog.indexOf('\n\n<a', releaseStart.index);
34+assert.notStrictEqual(releaseEnd, -1, 'Could not determine the end of the release section');
35+commitList = changelog.slice(commitListingStart, releaseEnd + 1);
3236}
33373438// Normalize for consistent comparison