Skip to content

Commit 9f33663

Browse files
committed
build: change behavior for auto release type
1 parent 468eb7f commit 9f33663

File tree

1 file changed

+15
-2
lines changed
  • lib/node_modules/@stdlib/_tools/changelog/generate/lib

1 file changed

+15
-2
lines changed

lib/node_modules/@stdlib/_tools/changelog/generate/lib/main.js

Lines changed: 15 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -266,6 +266,9 @@ function generate( pkg, releaseType ) {
266266
pkg = replace( pkg, '@stdlib/', '' );
267267
releases = objectEntries( npmReleases( standalone ) );
268268
}
269+
if ( releases.length > 0 ) {
270+
newestRelease = releases[ releases.length-1 ][ 0 ];
271+
}
269272

270273
str = '# CHANGELOG\n\n';
271274
str += '> Package changelog.\n\n';
@@ -288,10 +291,20 @@ function generate( pkg, releaseType ) {
288291

289292
if ( releaseType === 'auto' ) {
290293
releaseType = recommendVersionBump( commits.unreleased );
294+
295+
// If no bump is recommended, default to 'patch' as we still want to trigger a release:
296+
if ( releaseType === null ) {
297+
releaseType = 'patch';
298+
}
299+
300+
// Ensure major bump only happens if we are already on a major release line:
301+
if ( releaseType === 'major' && semver.major( newestRelease ) < 1 ) {
302+
releaseType = 'minor';
303+
}
304+
nextVersion = semver.inc( newestRelease, releaseType );
291305
}
292306
if ( releaseType && releaseType !== 'none' ) {
293-
if ( releases.length > 0 ) {
294-
newestRelease = releases[ releases.length-1 ][ 0 ];
307+
if ( newestRelease ) {
295308
nextVersion = semver.inc( newestRelease, releaseType );
296309
} else {
297310
nextVersion = semver.inc( '0.0.0', releaseType );

0 commit comments

Comments
 (0)