Security News
Introducing the Socket Python SDK
The initial version of the Socket Python SDK is now on PyPI, enabling developers to more easily interact with the Socket REST API in Python projects.
@semantic-release/changelog
Advanced tools
Set of semantic-release plugins for creating or updating a changelog file
@semantic-release/changelog is a plugin for semantic-release that updates a changelog file with the changes of the new release. It automates the process of generating and maintaining a changelog based on commit messages, ensuring that the changelog is always up-to-date and consistent with the project's release history.
Generate Changelog
This configuration snippet shows how to include the @semantic-release/changelog plugin in your semantic-release setup. It will generate or update the changelog file with the changes of the new release.
{
"plugins": [
"@semantic-release/changelog",
"@semantic-release/git"
]
}
Custom Changelog File
This configuration snippet demonstrates how to specify a custom path for the changelog file. In this example, the changelog will be written to 'docs/CHANGELOG.md' instead of the default 'CHANGELOG.md'.
{
"plugins": [
[
"@semantic-release/changelog",
{
"changelogFile": "docs/CHANGELOG.md"
}
],
"@semantic-release/git"
]
}
Custom Changelog Title
This configuration snippet shows how to set a custom title for the changelog file. The title '# Project Changelog' will be used at the top of the changelog file.
{
"plugins": [
[
"@semantic-release/changelog",
{
"changelogTitle": "# Project Changelog"
}
],
"@semantic-release/git"
]
}
conventional-changelog is a tool that generates a changelog from git metadata following the Conventional Commits specification. It is highly customizable and can be used as a standalone tool or integrated into build processes. Compared to @semantic-release/changelog, it offers more flexibility in terms of configuration and customization but requires more manual setup.
standard-version is a tool that automates versioning and changelog generation based on Conventional Commits. It is simpler to set up compared to @semantic-release/changelog and is often used in projects that do not require the full automation capabilities of semantic-release. It provides a straightforward way to manage releases and changelogs without the need for a CI/CD pipeline.
release-it is a versatile release automation tool that can handle versioning, changelog generation, and publishing to various package registries. It supports plugins and hooks for customization and can be used with or without semantic-release. Compared to @semantic-release/changelog, release-it offers a more comprehensive set of features for managing the entire release process.
Set of semantic-release plugins for creating or updating a changelog file.
Verify the changelogFile
option configuration.
Create or update the changelog file in the local project repository.
Options | Description | Default |
---|---|---|
changelogFile | File path of the changelog. | CHANGELOG.md |
changelogTitle | Title in the changelog. | None |
Options can be set within the plugin definition in the semantic-release
configuration file:
{
"release": {
"prepare": [
{
"path": "@semantic-release/changelog",
"changelogFile": "docs/changelog.md",
},
"@semantic-release/git"
]
}
}
It's recommended to use this plugin with the git plugin, so the changelog file will be committed to the Git repository and available on subsequent builds in order to be updated.
When using with the npm plugin and/or the git plugin the changelog
plugin must be called first in order to create or update the changelog file, so it can be included in the npm package and committed to the Git repository.
To use with the npm and git plugins:
{
"release": {
"verifyConditions": ["@semantic-release/changelog", "@semantic-release/npm", "@semantic-release/git"],
"prepare": ["@semantic-release/changelog", "@semantic-release/npm", "@semantic-release/git"]
}
}
FAQs
semantic-release plugin to create or update a changelog file
The npm package @semantic-release/changelog receives a total of 477,750 weekly downloads. As such, @semantic-release/changelog popularity was classified as popular.
We found that @semantic-release/changelog demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 4 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
The initial version of the Socket Python SDK is now on PyPI, enabling developers to more easily interact with the Socket REST API in Python projects.
Security News
Floating dependency ranges in npm can introduce instability and security risks into your project by allowing unverified or incompatible versions to be installed automatically, leading to unpredictable behavior and potential conflicts.
Security News
A new Rust RFC proposes "Trusted Publishing" for Crates.io, introducing short-lived access tokens via OIDC to improve security and reduce risks associated with long-lived API tokens.