Security News
PyPI Introduces Digital Attestations to Strengthen Python Package Security
PyPI now supports digital attestations, enhancing security and trust by allowing package maintainers to verify the authenticity of Python packages.
conventional-changelog-angular
Advanced tools
The conventional-changelog-angular package is designed to generate changelogs and release notes automatically based on Angular's commit message conventions. It parses commit messages, categorizes them into various types (such as features, fixes, and breaking changes), and generates a changelog file that summarizes the changes in a readable format. This tool is particularly useful for projects that follow semantic versioning and want to automate the process of changelog generation.
Generate changelog
This code demonstrates how to generate a changelog using the conventional-changelog-angular preset. It streams the generated changelog content into a file named CHANGELOG.md.
const conventionalChangelog = require('conventional-changelog');
const fs = require('fs');
const changelogStream = conventionalChangelog({ preset: 'angular' });
const outputStream = fs.createWriteStream('CHANGELOG.md');
changelogStream.pipe(outputStream);
Customize changelog generation
This code snippet shows how to customize the changelog generation process. It sets the releaseCount to 0 to generate logs for all releases and transforms 'feat' commit types to be labeled as 'Features' in the changelog.
const conventionalChangelog = require('conventional-changelog');
const fs = require('fs');
const changelogStream = conventionalChangelog({
preset: 'angular',
releaseCount: 0, // Generate all releases
transform: (commit, cb) => {
if (commit.type === 'feat') {
commit.type = 'Features';
}
cb(null, commit);
}
});
const outputStream = fs.createWriteStream('CUSTOM_CHANGELOG.md');
changelogStream.pipe(outputStream);
Similar to conventional-changelog-angular, standard-version automates versioning and CHANGELOG generation, adhering to Semantic Versioning and Conventional Commits. It wraps around the conventional-changelog library, providing a simpler CLI interface and additional features like automatic version bumping.
semantic-release goes a step further by automating the whole package release workflow including determining the next version number, generating the release notes, and publishing the package. It uses a similar commit message format to conventional-changelog-angular but offers a more comprehensive solution for continuous integration (CI) environments.
While lerna is primarily a tool for managing JavaScript projects with multiple packages, it includes functionality for generating changelogs based on conventional commits. It compares to conventional-changelog-angular in its support for generating changelogs but is more focused on monorepo management.
conventional-changelog angular preset
See convention
Issues with the convention itself should be reported on the angular issue tracker.
FAQs
Angular preset for conventional-changelog.
We found that conventional-changelog-angular demonstrated a healthy version release cadence and project activity because the last version was released less than 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
PyPI now supports digital attestations, enhancing security and trust by allowing package maintainers to verify the authenticity of Python packages.
Security News
GitHub removed 27 malicious pull requests attempting to inject harmful code across multiple open source repositories, in another round of low-effort attacks.
Security News
RubyGems.org has added a new "maintainer" role that allows for publishing new versions of gems. This new permission type is aimed at improving security for gem owners and the service overall.