Skip to content

Commit 733f7ef

Browse files
committed
build: include empty releases in changelog and fix commit grouping
1 parent 9f33663 commit 733f7ef

File tree

1 file changed

+11
-4
lines changed
  • lib/node_modules/@stdlib/_tools/changelog/generate/lib

1 file changed

+11
-4
lines changed

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

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,7 @@ var STDLIB_REPO_NODE_PATH = 'https://github.com/stdlib-js/stdlib/tree/develop/li
5858
var RE_PACKAGE_SUBDIRS = /\/?(benchmark|bin|data|docs|etc|examples|include|lib|scripts|src|test)\/?[\s\S]*$/;
5959
var RE_MARKDOWN_HEADER = /(^#+)/gm;
6060
var RE_EXTRANEOUS_NEWLINES = /\n{3,}/g;
61+
var PLACEHOLDER_SUMMARY = 'No changes reported for this release.';
6162

6263

6364
// FUNCTIONS //
@@ -348,7 +349,7 @@ function generate( pkg, releaseType ) {
348349
version = releases[ i ][ 0 ];
349350
releaseCommits = commits[ version ];
350351
if ( !releaseCommits ) {
351-
continue;
352+
releaseCommits = [];
352353
}
353354
str += '## ' + version + ' (' + formatDate( releases[ i ][ 1 ] ) + ')\n\n';
354355
bySubpackage = groupBySubPackage( releaseCommits, pkg );
@@ -359,7 +360,7 @@ function generate( pkg, releaseType ) {
359360
name = pkgNames[ j ];
360361
summary = releaseSummary( bySubpackage[ name ], true, true );
361362
if ( !summary ) {
362-
continue;
363+
summary = PLACEHOLDER_SUMMARY;
363364
}
364365
str += packageSummaryWrapper( pkg, version, name, summary );
365366
}
@@ -374,7 +375,7 @@ function generate( pkg, releaseType ) {
374375
version = releases[ i ][ 0 ];
375376
summary = releaseSummary( commits[ version ] );
376377
if ( !summary ) {
377-
continue;
378+
summary = PLACEHOLDER_SUMMARY;
378379
}
379380
str += releaseSectionStart( version );
380381
str += '## ' + version + ' (' + formatDate( releases[ i ][ 1 ] ) + ')\n\n';
@@ -395,13 +396,19 @@ function generate( pkg, releaseType ) {
395396
* @returns {string} release indicator
396397
*/
397398
function indicator( commit ) {
399+
var prevReleaseDate;
400+
var releaseDate;
398401
var date;
399402
var i;
400403
date = new Date( commit.date );
401404

402405
// Walk the releases in reverse chronological order:
403406
for ( i = releases.length-1; i >= 0; i-- ) {
404-
if ( date <= new Date( releases[ i ][ 1 ] ) ) {
407+
releaseDate = new Date( releases[ i ][ 1 ] );
408+
409+
// Get the previous release date or set it to a very early date if none exists:
410+
prevReleaseDate = ( i > 0 ) ? new Date( releases[ i-1 ][ 1 ] ) : new Date( 0 );
411+
if ( date <= releaseDate && date > prevReleaseDate ) {
405412
return releases[ i ][ 0 ]; // version
406413
}
407414
}

0 commit comments

Comments
 (0)