Skip to content

Commit d85f353

Browse files
build(deps): bump @metamask/auto-changelog from 2.1.0 to 2.2.0 (#25)
* build(deps): bump @metamask/auto-changelog from 2.1.0 to 2.2.0 Bumps [@metamask/auto-changelog](https://github.com/MetaMask/auto-changelog) from 2.1.0 to 2.2.0. - [Release notes](https://github.com/MetaMask/auto-changelog/releases) - [Changelog](https://github.com/MetaMask/auto-changelog/blob/main/CHANGELOG.md) - [Commits](MetaMask/auto-changelog@v2.1.0...v2.2.0) Signed-off-by: dependabot[bot] <[email protected]> * yarn build Co-authored-by: Erik Marks <[email protected]>
1 parent 9e741b5 commit d85f353

File tree

2 files changed

+28
-22
lines changed

2 files changed

+28
-22
lines changed

dist/index.js

Lines changed: 25 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -812,13 +812,16 @@ function getTagUrl(repoUrl, tag) {
812812
return `${withTrailingSlash(repoUrl)}releases/tag/${tag}`;
813813
}
814814
function stringifyLinkReferenceDefinitions(repoUrl, releases) {
815-
const releasesOrderedByVersion = releases
815+
// A list of release versions in descending SemVer order
816+
const descendingSemverVersions = releases
816817
.map(({ version }) => version)
817818
.sort((a, b) => {
818819
return semver_1.default.gt(a, b) ? -1 : 1;
819820
});
820-
const orderedReleases = releases.map(({ version }) => version);
821-
const hasReleases = orderedReleases.length > 0;
821+
const latestSemverVersion = descendingSemverVersions[0];
822+
// A list of release versions in chronological order
823+
const chronologicalVersions = releases.map(({ version }) => version);
824+
const hasReleases = chronologicalVersions.length > 0;
822825
// The "Unreleased" section represents all changes made since the *highest*
823826
// release, not the most recent release. This is to accomodate patch releases
824827
// of older versions that don't represent the latest set of changes.
@@ -830,24 +833,30 @@ function stringifyLinkReferenceDefinitions(repoUrl, releases) {
830833
// If there have not been any releases yet, the repo URL is used directly as
831834
// the link definition.
832835
const unreleasedLinkReferenceDefinition = `[${constants_1.unreleased}]: ${hasReleases
833-
? getCompareUrl(repoUrl, `v${releasesOrderedByVersion[0]}`, 'HEAD')
836+
? getCompareUrl(repoUrl, `v${latestSemverVersion}`, 'HEAD')
834837
: withTrailingSlash(repoUrl)}`;
835838
// The "previous" release that should be used for comparison is not always
836839
// the most recent release chronologically. The _highest_ version that is
837840
// lower than the current release is used as the previous release, so that
838841
// patch releases on older releases can be accomodated.
839842
const releaseLinkReferenceDefinitions = releases
840843
.map(({ version }) => {
841-
if (version === orderedReleases[orderedReleases.length - 1]) {
842-
return `[${version}]: ${getTagUrl(repoUrl, `v${version}`)}`;
844+
let diffUrl;
845+
if (version === chronologicalVersions[chronologicalVersions.length - 1]) {
846+
diffUrl = getTagUrl(repoUrl, `v${version}`);
843847
}
844-
const versionIndex = orderedReleases.indexOf(version);
845-
const previousVersion = orderedReleases
846-
.slice(versionIndex)
847-
.find((releaseVersion) => {
848-
return semver_1.default.gt(version, releaseVersion);
849-
});
850-
return `[${version}]: ${getCompareUrl(repoUrl, `v${previousVersion}`, `v${version}`)}`;
848+
else {
849+
const versionIndex = chronologicalVersions.indexOf(version);
850+
const previousVersion = chronologicalVersions
851+
.slice(versionIndex)
852+
.find((releaseVersion) => {
853+
return semver_1.default.gt(version, releaseVersion);
854+
});
855+
diffUrl = previousVersion
856+
? getCompareUrl(repoUrl, `v${previousVersion}`, `v${version}`)
857+
: getTagUrl(repoUrl, `v${version}`);
858+
}
859+
return `[${version}]: ${diffUrl}`;
851860
})
852861
.join('\n');
853862
return `${unreleasedLinkReferenceDefinition}\n${releaseLinkReferenceDefinitions}${releases.length > 0 ? '\n' : ''}`;
@@ -1443,12 +1452,9 @@ function getAllLoggedPrNumbers(changelog) {
14431452
const prNumbersWithChangelogEntries = [];
14441453
for (const description of changeDescriptions) {
14451454
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
1446-
const matchResults = description.match(/^\[#(\d+)\]/u);
1447-
if (matchResults === null) {
1448-
continue;
1449-
}
1450-
const prNumber = matchResults[1];
1451-
prNumbersWithChangelogEntries.push(prNumber);
1455+
const matchResults = description.matchAll(/\[#(\d+)\]/gu);
1456+
const prNumbers = Array.from(matchResults, (result) => result[1]);
1457+
prNumbersWithChangelogEntries.push(...prNumbers);
14521458
}
14531459
return prNumbersWithChangelogEntries;
14541460
}

yarn.lock

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -538,9 +538,9 @@
538538
semver "^7.3.5"
539539

540540
"@metamask/auto-changelog@^2.1.0":
541-
version "2.1.0"
542-
resolved "https://registry.yarnpkg.com/@metamask/auto-changelog/-/auto-changelog-2.1.0.tgz#5cb546f05b07695476d9489540b8d2744d350eda"
543-
integrity sha512-FO1NsgcrHQY6CWlD9wFEWgmxWgam1GqtfFGiRH7lp4aYSGn/43ktBMkZ/rF0//7XvUDXn27nC2CClRUBCrg8Jg==
541+
version "2.2.0"
542+
resolved "https://registry.yarnpkg.com/@metamask/auto-changelog/-/auto-changelog-2.2.0.tgz#ccc5f8d2f056793e9736445c0444596d4fcd6ffd"
543+
integrity sha512-MZiEAx5QOrCInjBn9Ao/j00qyAivcqK7dEuDD+g+yabCNPFFvNq8U8i53h2Vb4zdj5NzKHIRwYNShOoQxt9BmA==
544544
dependencies:
545545
cross-spawn "^7.0.3"
546546
diff "^5.0.0"

0 commit comments

Comments
 (0)