From fb4659c5d78a60c8879ce3b6372ca7e8af5d78d9 Mon Sep 17 00:00:00 2001 From: Francisco Giordano Date: Wed, 28 Oct 2020 16:33:08 -0300 Subject: [PATCH] Change convention for unreleased changelog entries --- CHANGELOG.md | 2 +- .../release/update-changelog-release-date.js | 25 ++++++++----------- 2 files changed, 12 insertions(+), 15 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index b6d8bb227..64154934d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,6 @@ # Changelog -## 3.3.0 (unreleased) +## Unreleased * `Address`: added `functionStaticCall` and `functionDelegateCall`, similar to the existing `functionCall`. ([#2333](https://github.com/OpenZeppelin/openzeppelin-contracts/pull/2333)) * `TimelockController`: added a contract to augment access control schemes with a delay. ([#2364](https://github.com/OpenZeppelin/openzeppelin-contracts/pull/2364)) diff --git a/scripts/release/update-changelog-release-date.js b/scripts/release/update-changelog-release-date.js index 66c4a0ef8..89f4c52af 100755 --- a/scripts/release/update-changelog-release-date.js +++ b/scripts/release/update-changelog-release-date.js @@ -6,28 +6,25 @@ const fs = require('fs'); const cp = require('child_process'); -const pkg = require('../../package.json'); -const suffix = process.env.PRERELEASE_SUFFIX || 'rc'; -if (pkg.version.indexOf('-' + suffix) !== -1) { - process.exit(0); -} - -const version = pkg.version.replace(/-.*/, ''); // Remove the rc suffix - const changelog = fs.readFileSync('CHANGELOG.md', 'utf8'); // The changelog entry to be updated looks like this: -// ## 2.5.3 (unreleased) -// We need to add the date in a YYYY-MM-DD format, so that it looks like this: +// ## Unreleased +// We need to add the version and release date in a YYYY-MM-DD format, so that it looks like this: // ## 2.5.3 (2019-04-25) -if (changelog.indexOf(`## ${version} (unreleased)`) === -1) { - throw Error(`Found no changelog entry for version ${version}`); +const unreleased = /^## Unreleased$/im; + +if (!unreleased.test(changelog)) { + console.error('Missing changelog entry'); + process.exit(1); } +const { version } = require('../../package.json'); + fs.writeFileSync('CHANGELOG.md', changelog.replace( - `## ${version} (unreleased)`, - `## ${version} (${new Date().toISOString().split('T')[0]})`), + unreleased, + `## ${version} (${new Date().toISOString().split('T')[0]})`) ); cp.execSync('git add CHANGELOG.md', { stdio: 'inherit' });