Skip to content

Commit bce8675

Browse files
committed
Align experimental releases with v7 approach
1 parent f5608f0 commit bce8675

File tree

4 files changed

+20
-15
lines changed

4 files changed

+20
-15
lines changed

.github/workflows/release-experimental.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@ jobs:
4444
SHORT_SHA=$(git rev-parse --short HEAD)
4545
NEXT_VERSION=0.0.0-experimental-${SHORT_SHA}
4646
git checkout -b experimental/${NEXT_VERSION}
47-
pnpm run version:experimental
47+
pnpm run version ${NEXT_VERSION}
4848
git push origin --tags
4949
5050
- name: 🏗 Build

.github/workflows/release.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@ jobs:
5353
id: changesets
5454
uses: changesets/action@v1
5555
with:
56-
version: pnpm run version
56+
version: pnpm run changeset:version
5757
commit: "chore: Update version for release"
5858
title: "chore: Update version for release"
5959
publish: pnpm run release

package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,9 +13,9 @@
1313
"test": "jest",
1414
"test:inspect": "node --inspect-brk ./node_modules/.bin/jest",
1515
"changeset": "changeset",
16-
"version": "changeset version && node ./scripts/remove-prerelease-changelogs.mjs",
16+
"changeset:version": "changeset version && node ./scripts/remove-prerelease-changelogs.mjs",
1717
"publish": "node scripts/publish.js",
18-
"version:experimental": "node ./scripts/version experimental",
18+
"version": "node ./scripts/version",
1919
"watch": "rollup -c -w"
2020
},
2121
"jest": {

scripts/version.js

Lines changed: 16 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -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

Comments
 (0)