@newbish/changelog

6.4.0 • Public • Published

@newbish/changelog

semantic-release plugin to create or update a changelog file.

Build Status npm latest version npm next version

Step Description
verifyConditions Verify the branch, changelogFile and changelogTitle options configuration.
prepare Create or update a changelog file in the local project directory with the changelog content created in the generate notes step.

Install

$ npm install @newbish/changelog -D

Usage

The plugin can be configured in the semantic-release configuration file:

{
  "plugins": [
    "@semantic-release/commit-analyzer",
    "@semantic-release/release-notes-generator",
    [
      "@newbish/changelog",
      {
        "changelogFile": "docs/CHANGELOG.md",
        "branches": ["main"]
      }
    ],
    [
      "@semantic-release/git",
      {
        "assets": ["docs/CHANGELOG.md"]
      }
    ]
  ]
}

With this example, for each release, a docs/CHANGELOG.md will be created or updated.

Configuration

Options

Options Description Default
changelogFile File path of the changelog. CHANGELOG.md
changelogTitle Title of the changelog file (first line of the file). -
branches A array of branches to write a changelog for. All branches

Examples

When used with the @semantic-release/git or @semantic-release/npm plugins the @newbish/changelog plugin must be called first in order to update the changelog file so the @semantic-release/git and @semantic-release/npm plugins can include it in the release.

{
  "plugins": [
    "@semantic-release/commit-analyzer",
    "@semantic-release/release-notes-generator",
    "@newbish/changelog",
    "@semantic-release/npm",
    "@semantic-release/git"
  ]
}

Advanced

The changelogFile and changelogTitle parameters can be dynamically generated when setup as a template.

{
  "plugins": [
    ...
    [
      "@newbish/changelog",
      {
        "changelogFile": "CHANGELOG<%= branch.name !== 'main' ? `-${branch.name}` : '' %>.md",
        "changelogTitle": "---\ntitle: Changelog<%= branch.name != 'main' ? '- Next Branch' : '' %>\n---",
        "branches": [
          "main",
          "next"
        ]
      }
    ],
    ...
    ]
}

Package Sidebar

Install

npm i @newbish/changelog

Weekly Downloads

178

Version

6.4.0

License

MIT

Unpacked Size

12.2 kB

Total Files

9

Last publish

Collaborators

  • newbish