Skip to content

Commit

Permalink
Replace changelog versions in ./scripts/draft-blog-post.js (#9058)
Browse files Browse the repository at this point in the history
  • Loading branch information
sosukesuzuki committed Aug 26, 2020
1 parent 77c8da7 commit 5a12f52
Show file tree
Hide file tree
Showing 2 changed files with 30 additions and 33 deletions.
46 changes: 30 additions & 16 deletions scripts/draft-blog-post.js
Expand Up @@ -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(
Expand Down Expand Up @@ -80,22 +82,24 @@ rimraf.sync(postGlob);

fs.writeFileSync(
postFile,
[
fs.readFileSync(introFile, "utf8").trim(),
"<!--truncate-->",
...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(),
"<!--truncate-->",
...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 }) {
Expand All @@ -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)}`);
}
17 changes: 0 additions & 17 deletions scripts/release/steps/update-changelog.js
Expand Up @@ -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);

Expand All @@ -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;
}
Expand Down

0 comments on commit 5a12f52

Please sign in to comment.