@@ -4,8 +4,8 @@ const childProcess = require('child_process');
4
4
const fetch = require ( 'node-fetch' ) ;
5
5
const readline = require ( 'readline' ) ;
6
6
7
- function fetchLatestReleaseDate ( version ) {
8
- const relesae = childProcess . execSync ( `gh release view ${ version } ` ) . toString ( ) ;
7
+ function fetchLatestReleaseDate ( tagPrefix , version ) {
8
+ const relesae = childProcess . execSync ( `gh release view ${ tagPrefix } ${ version } ` ) . toString ( ) ;
9
9
const releaseMetaData = relesae . split ( '--' ) [ 0 ] ;
10
10
const createDate = _ . flow ( data => _ . split ( data , '\n' ) ,
11
11
linesData => _ . find ( linesData , l => l . startsWith ( 'created' ) ) ,
@@ -147,8 +147,8 @@ function getReleaseNotesForType(PRs, title) {
147
147
return releaseNotes ;
148
148
}
149
149
150
- async function _generateReleaseNotes ( latestVersion , newVersion , githubToken , prefix , repo , header ) {
151
- const latestReleaseDate = fetchLatestReleaseDate ( latestVersion ) ;
150
+ async function _generateReleaseNotes ( latestVersion , newVersion , githubToken , fileNamePrefix , repo , header , tagPrefix ) {
151
+ const latestReleaseDate = fetchLatestReleaseDate ( tagPrefix , latestVersion ) ;
152
152
const PRs = await fetchMergedPRs ( latestReleaseDate , repo , githubToken ) ;
153
153
if ( ! PRs ) {
154
154
return ;
@@ -175,14 +175,14 @@ async function _generateReleaseNotes(latestVersion, newVersion, githubToken, pre
175
175
releaseNotes += getReleaseNotesForType ( silentPRs ,
176
176
'// Silent - these PRs did not have a changelog or were left out for some other reason, is it on purpose?' ) ;
177
177
178
- fs . writeFileSync ( `${ process . env . HOME } /Downloads/${ prefix } -release-notes_${ newVersion } .txt` , releaseNotes , {
178
+ fs . writeFileSync ( `${ process . env . HOME } /Downloads/${ fileNamePrefix } -release-notes_${ newVersion } .txt` , releaseNotes , {
179
179
encoding : 'utf8'
180
180
} ) ;
181
181
182
- console . log ( `\x1b[1m\x1b[32m✔\x1b[0m \x1b[32m${ prefix } -release-notes.txt was successfully written to ${ process . env . HOME } /Downloads\x1b[0m \x1b[1m\x1b[32m✔\x1b[0m` ) ;
182
+ console . log ( `\x1b[1m\x1b[32m✔\x1b[0m \x1b[32m${ fileNamePrefix } -release-notes.txt was successfully written to ${ process . env . HOME } /Downloads\x1b[0m \x1b[1m\x1b[32m✔\x1b[0m` ) ;
183
183
}
184
184
185
- async function generateReleaseNotes ( latestVersion , newVersion , githubToken , prefix , repo , header = '' ) {
185
+ async function generateReleaseNotes ( latestVersion , newVersion , githubToken , fileNamePrefix , repo , header = '' , tagPrefix = '' ) {
186
186
let latestVer , newVer ;
187
187
const rl = readline . createInterface ( {
188
188
input : process . stdin ,
@@ -200,7 +200,7 @@ async function generateReleaseNotes(latestVersion, newVersion, githubToken, pref
200
200
rl . on ( 'close' , ( ) => {
201
201
console . info ( `Current latest version is v${ latestVer } ` ) ;
202
202
console . info ( `Generating release notes out or PRs for v${ newVer } ` ) ;
203
- _generateReleaseNotes ( latestVer , newVer , githubToken , prefix , repo , header ) ;
203
+ _generateReleaseNotes ( latestVer , newVer , githubToken , fileNamePrefix , repo , header , tagPrefix ) ;
204
204
} ) ;
205
205
}
206
206
0 commit comments