![Introducing Enhanced Alert Actions and Triage Functionality](https://cdn.sanity.io/images/cgdhsj6q/production/fe71306d515f85de6139b46745ea7180362324f0-2530x946.png?w=800&fit=max&auto=format)
Product
Introducing Enhanced Alert Actions and Triage Functionality
Socket now supports four distinct alert actions instead of the previous two, and alert triaging allows users to override the actions taken for all individual alerts.
conventional-recommended-bump
Advanced tools
Package description
The conventional-recommended-bump npm package is a tool that analyzes conventional-style commit messages (like those used by AngularJS) to determine the type of version bump (major, minor, or patch) that should be recommended based on the changes made. It is often used in automated versioning and release workflows to ensure semantic versioning practices are followed.
Determining the type of version bump
This feature allows you to determine whether your next release should be a major, minor, or patch version. The code sample shows how to use the package with the Angular preset to get a recommendation.
const conventionalRecommendedBump = require('conventional-recommended-bump');
conventionalRecommendedBump({
preset: 'angular'
}, (error, recommendation) => {
console.log(recommendation.releaseType);
});
Customizable preset options
This feature allows you to customize the preset options for analyzing commit messages. The code sample demonstrates how to specify a custom header pattern and correspondence for the Angular preset.
const conventionalRecommendedBump = require('conventional-recommended-bump');
conventionalRecommendedBump({
preset: 'angular',
config: {
headerPattern: /^\[(.*)\] (.*)$/,
headerCorrespondence: ['type', 'subject']
}
}, (error, recommendation) => {
console.log(recommendation.releaseType);
});
Using a custom parser
This feature allows you to use a custom parser for commit messages. The code sample shows how to pass custom parser options to the package.
const conventionalRecommendedBump = require('conventional-recommended-bump');
const customParserOpts = require('./custom-parser-opts');
conventionalRecommendedBump({
parserOpts: customParserOpts
}, (error, recommendation) => {
console.log(recommendation.releaseType);
});
semantic-release is an npm package that automates the versioning and package publishing process based on semantic versioning and conventional commit messages. It is more comprehensive than conventional-recommended-bump as it includes the entire release workflow, not just the recommendation for version bumps.
standard-version is an automated versioning tool that adheres to Semantic Versioning and uses conventional commit messages to determine version bumps. It is similar to conventional-recommended-bump but also handles the generation of changelogs and tagging of releases.
release-it is a generic CLI tool for automating versioning and package publishing. It supports conventional commits and can determine version bumps, but it also includes a wide range of release-related tasks, making it more versatile than conventional-recommended-bump.
Readme
Get a recommended version bump based on conventional commits
Got the idea from https://github.com/ajoslin/conventional-changelog/pull/29
$ npm install --save conventional-recommended-bump
var conventionalRecommendedBump = require('conventional-recommended-bump');
conventionalRecommendedBump({
conventionalRecommendedBump({
preset: 'angular'
}, function(err, releaseAs) {
console.log(releaseAs);
//=> 'major'
});
});
$ npm install --global conventional-recommended-bump
$ conventional-recommended-bump --help
Get a recommended version bump based on conventional commits
Usage
conventional-recommended-bump
Example
conventional-recommended-bump
Options
-p, --preset Name of the preset you want to use
-h, --header-pattern Regex to match header pattern
-c, --header-correspondence Comma separated parts used to define what capturing group of headerPattern captures what
-r, --reference-actions Comma separated keywords that used to reference issues
-i, --issue-prefixes Comma separated prefixes of an issue
-n, --note-keywords Comma separated keywords for important notes
-f, --field-pattern Regex to match other fields
-v, --verbose Verbose output
Type: boolean
Default: true
If true
, reverted commits will be ignored.
Type: string
Possible values: 'angular'
A set of options of a popular project.
Type: function
A function that takes parsed commits as argument and returns a number indicating what bump it should be.
####### commits
Type: array
An array of parsed commits. The commits are from last semver tag to HEAD
and is parsed by conventional-commits-parser.
If it returns 0
it will be a major
bump. If 1
, minor
bump. If 2
, patch
.
See the conventional-commits-parser docs.
Type: function
Type: string
Possible values: 'major'
, 'minor'
and 'patch'
The value of what it should release as. If it cannot decide this is an empty string.
MIT © Steve Mao
FAQs
Get a recommended version bump based on conventional commits.
The npm package conventional-recommended-bump receives a total of 1,609,694 weekly downloads. As such, conventional-recommended-bump popularity was classified as popular.
We found that conventional-recommended-bump 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.
Product
Socket now supports four distinct alert actions instead of the previous two, and alert triaging allows users to override the actions taken for all individual alerts.
Security News
Polyfill.io has been serving malware for months via its CDN, after the project's open source maintainer sold the service to a company based in China.
Security News
OpenSSF is warning open source maintainers to stay vigilant against reputation farming on GitHub, where users artificially inflate their status by manipulating interactions on closed issues and PRs.