Skip to content

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

License

Notifications You must be signed in to change notification settings

HolyHamSandwich/changelog

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

@semantic-release/changelog

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

Build Status npm latest version npm next version

Step Description
verifyConditions Verify the 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 @semantic-release/changelog -D

Usage

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

{
  "plugins": [
    "@semantic-release/commit-analyzer",
    "@semantic-release/release-notes-generator",
    [
      "@semantic-release/changelog",
      {
        "changelogFile": "docs/CHANGELOG.md"
      }
    ],
    [
      "@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. See changelogFile. CHANGELOG.md
changelogTitle Title of the changelog file (first line of the file). -

changelogFile

The path to the changelog is generated with Lodash template. The following variables are available:

Parameter Description
branch The branch from which the release is done.
branch.name The branch name.
branch.type The type of branch.
branch.channel The distribution channel on which to publish releases from this branch.
branch.range The range of semantic versions to support on this branch.
branch.prerelease The pre-release detonation to append to semantic versions released from this branch.
lastRelease Object with version, gitTag and gitHead of the last release.
nextRelease Object with version, gitTag, gitHead and notes of the release being done.

Examples

When used with the @semantic-release/git or @semantic-release/npm plugins the @semantic-release/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",
    "@semantic-release/changelog",
    "@semantic-release/npm",
    "@semantic-release/git"
  ]
}

About

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

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • JavaScript 100.0%