@@ -21,7 +21,12 @@ const { EXAMPLES_DIR } = require("./constants");
2121 * @param {string } [prereleaseId]
2222 * @returns {string }
2323 */
24- function getNextVersion ( currentVersion , givenVersion , prereleaseId ) {
24+ function getNextVersion (
25+ currentVersion ,
26+ givenVersion ,
27+ prereleaseId ,
28+ isExperimental
29+ ) {
2530 invariant (
2631 givenVersion != null ,
2732 `Missing next version. Usage: node version.js [nextVersion]`
@@ -34,14 +39,9 @@ function getNextVersion(currentVersion, givenVersion, prereleaseId) {
3439 ) ;
3540 }
3641
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 ) ;
4545
4646 invariant ( nextVersion != null , `Invalid version specifier: ${ givenVersion } ` ) ;
4747
@@ -53,7 +53,7 @@ async function run() {
5353 let args = process . argv . slice ( 2 ) ;
5454 let givenVersion = args [ 0 ] ;
5555 let prereleaseId = args [ 1 ] ;
56- let isExperimental = givenVersion === " experimental";
56+ let isExperimental = givenVersion . includes ( "0.0.0- experimental") ;
5757
5858 // 0. Make sure the working directory is clean
5959 ensureCleanWorkingDirectory ( ) ;
@@ -63,7 +63,12 @@ async function run() {
6363 let currentVersion = await getPackageVersion ( "react-router" ) ;
6464 let version = semver . valid ( givenVersion ) ;
6565 if ( version == null ) {
66- version = getNextVersion ( currentVersion , givenVersion , prereleaseId ) ;
66+ version = getNextVersion (
67+ currentVersion ,
68+ givenVersion ,
69+ prereleaseId ,
70+ isExperimental
71+ ) ;
6772 }
6873
6974 // We will only bump the router version if this is an experimental
0 commit comments