aboutsummaryrefslogtreecommitdiff
path: root/scripts/shared/changelog.mjs
blob: d5bf73c3a29e654016ddeb44397312a5d2c063b9 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
import { readFile, writeFile } from 'fs/promises';

export { addToChangelog };

async function addToChangelog({ changelog, version, changelogPath = './CHANGELOG.md' }) {
  const changelogContent = await readFile(changelogPath, 'utf-8');
  const versionTitle = `## Version ${version}`;

  if (changelogContent.includes(versionTitle)) {
    throw new Error(`Version ${version} already exists in the changelog`);
  }

  const newChangeLogContent = changelogContent.replace('## ', `${versionTitle}\n\n${changelog}\n\n## `);
  await writeFile(changelogPath, newChangeLogContent, 'utf-8');
}