Security News
Research
Data Theft Repackaged: A Case Study in Malicious Wrapper Packages on npm
The Socket Research Team breaks down a malicious wrapper package that uses obfuscation to harvest credentials and exfiltrate sensitive data.
@semantic-release/changelog
Advanced tools
semantic-release plugin to create or update 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.
semantic-release plugin to create or update a changelog file.
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. |
$ npm install @semantic-release/changelog -D
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.
Options | Description | Default |
---|---|---|
changelogFile | File path of the changelog. | CHANGELOG.md |
changelogTitle | Title of the changelog file (first line of the file). | - |
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"
]
}
FAQs
semantic-release plugin to create or update a changelog file
The npm package @semantic-release/changelog receives a total of 685,024 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
Research
The Socket Research Team breaks down a malicious wrapper package that uses obfuscation to harvest credentials and exfiltrate sensitive data.
Research
Security News
Attackers used a malicious npm package typosquatting a popular ESLint plugin to steal sensitive data, execute commands, and exploit developer systems.
Security News
The Ultralytics' PyPI Package was compromised four times in one weekend through GitHub Actions cache poisoning and failure to rotate previously compromised API tokens.