@@ -21,7 +21,12 @@ const { EXAMPLES_DIR } = require("./constants");
21
21
* @param {string } [prereleaseId]
22
22
* @returns {string }
23
23
*/
24
- function getNextVersion ( currentVersion , givenVersion , prereleaseId ) {
24
+ function getNextVersion (
25
+ currentVersion ,
26
+ givenVersion ,
27
+ prereleaseId ,
28
+ isExperimental
29
+ ) {
25
30
invariant (
26
31
givenVersion != null ,
27
32
`Missing next version. Usage: node version.js [nextVersion]`
@@ -34,14 +39,9 @@ function getNextVersion(currentVersion, givenVersion, prereleaseId) {
34
39
) ;
35
40
}
36
41
37
- let nextVersion ;
38
- if ( givenVersion === "experimental" ) {
39
- let hash = execSync ( `git rev-parse --short HEAD` ) . toString ( ) . trim ( ) ;
40
- nextVersion = `0.0.0-experimental-${ hash } ` ;
41
- } else {
42
- // @ts -ignore
43
- nextVersion = semver . inc ( currentVersion , givenVersion , prereleaseId ) ;
44
- }
42
+ let nextVersion = isExperimental
43
+ ? givenVersion
44
+ : semver . inc ( currentVersion , givenVersion , prereleaseId ) ;
45
45
46
46
invariant ( nextVersion != null , `Invalid version specifier: ${ givenVersion } ` ) ;
47
47
@@ -53,7 +53,7 @@ async function run() {
53
53
let args = process . argv . slice ( 2 ) ;
54
54
let givenVersion = args [ 0 ] ;
55
55
let prereleaseId = args [ 1 ] ;
56
- let isExperimental = givenVersion === " experimental";
56
+ let isExperimental = givenVersion . includes ( "0.0.0- experimental") ;
57
57
58
58
// 0. Make sure the working directory is clean
59
59
ensureCleanWorkingDirectory ( ) ;
@@ -63,7 +63,12 @@ async function run() {
63
63
let currentVersion = await getPackageVersion ( "react-router" ) ;
64
64
let version = semver . valid ( givenVersion ) ;
65
65
if ( version == null ) {
66
- version = getNextVersion ( currentVersion , givenVersion , prereleaseId ) ;
66
+ version = getNextVersion (
67
+ currentVersion ,
68
+ givenVersion ,
69
+ prereleaseId ,
70
+ isExperimental
71
+ ) ;
67
72
}
68
73
69
74
// We will only bump the router version if this is an experimental
0 commit comments