diff --git a/scripts/draft-blog-post.js b/scripts/draft-blog-post.js index 28adf7e20e7d..bdaf413980c1 100644 --- a/scripts/draft-blog-post.js +++ b/scripts/draft-blog-post.js @@ -5,10 +5,12 @@ const fs = require("fs"); const path = require("path"); const rimraf = require("rimraf"); +const semver = require("semver"); const changelogUnreleasedDir = path.join(__dirname, "../changelog_unreleased"); const blogDir = path.join(__dirname, "../website/blog"); const introFile = path.join(changelogUnreleasedDir, "blog-post-intro.md"); +const previousVersion = require("prettier/package.json").version; const version = require("../package.json").version.replace(/-.+/, ""); const postGlob = path.join(blogDir, `????-??-??-${version}.md`); const postFile = path.join( @@ -80,22 +82,24 @@ rimraf.sync(postGlob); fs.writeFileSync( postFile, - [ - fs.readFileSync(introFile, "utf8").trim(), - "", - ...printEntries({ - title: "Highlights", - filter: (entry) => entry.highlight, - }), - ...printEntries({ - title: "Breaking changes", - filter: (entry) => entry.breaking && !entry.highlight, - }), - ...printEntries({ - title: "Other changes", - filter: (entry) => !entry.breaking && !entry.highlight, - }), - ].join("\n\n") + "\n" + replaceVersions( + [ + fs.readFileSync(introFile, "utf8").trim(), + "", + ...printEntries({ + title: "Highlights", + filter: (entry) => entry.highlight, + }), + ...printEntries({ + title: "Breaking changes", + filter: (entry) => entry.breaking && !entry.highlight, + }), + ...printEntries({ + title: "Other changes", + filter: (entry) => !entry.breaking && !entry.highlight, + }), + ].join("\n\n") + "\n" + ) ); function printEntries({ title, filter }) { @@ -115,3 +119,13 @@ function printEntries({ title, filter }) { return result; } + +function formatVersion(version) { + return `${semver.major(version)}.${semver.minor(version)}`; +} + +function replaceVersions(data) { + return data + .replace(/prettier stable/gi, `Prettier ${formatVersion(previousVersion)}`) + .replace(/prettier master/gi, `Prettier ${formatVersion(version)}`); +} diff --git a/scripts/release/steps/update-changelog.js b/scripts/release/steps/update-changelog.js index d6218f789319..76cfad53a624 100644 --- a/scripts/release/steps/update-changelog.js +++ b/scripts/release/steps/update-changelog.js @@ -30,18 +30,6 @@ function writeChangelog({ version, previousVersion, releaseNotes }) { fs.writeFileSync("CHANGELOG.md", newEntry + "\n\n" + changelog); } -function formatVersion(version) { - return `${semver.major(version)}.${semver.minor(version)}`; -} - -function replaceVersionsInBlogPost({ blogPost, version, previousVersion }) { - const blogPostData = fs.readFileSync(blogPost, "utf-8"); - const newBlogPostData = blogPostData - .replace(/prettier stable/gi, `Prettier ${formatVersion(previousVersion)}`) - .replace(/prettier master/gi, `Prettier ${formatVersion(version)}`); - fs.writeFileSync(blogPost, newBlogPostData); -} - module.exports = async function ({ version, previousVersion }) { const semverDiff = semver.diff(version, previousVersion); @@ -53,11 +41,6 @@ module.exports = async function ({ version, previousVersion }) { releaseNotes: `🔗 [Release Notes](https://prettier.io/${blogPost.path})`, }); if (fs.existsSync(blogPost.file)) { - replaceVersionsInBlogPost({ - blogPost: blogPost.file, - version, - previousVersion, - }); // Everything is fine, this step is finished return; }