Skip to content

Commit 15410b2

Browse files
committed
More
1 parent 14dbbd3 commit 15410b2

File tree

2 files changed

+10
-9
lines changed

2 files changed

+10
-9
lines changed

scripts/github.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,8 @@ const shortSHA = execSync(`git rev-parse --short ${ref}`).toString().trim();
1919

2020
const filteredLernaList = JSON.parse(
2121
execSync(
22-
`lerna list --json --include-dependencies --include-dependents ${
23-
packageFromRef ? `--scope='{,*/}${packageFromRef}'` : since
22+
`lerna list --json --toposort --include-dependents ${
23+
packageFromRef ? `--scope='{,*/}${packageFromRef}'` : `${since} --include-dependencies`
2424
}`,
2525
{ stdio: ["ignore", "pipe", "ignore"] },
2626
).toString(),

scripts/publish.js

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
const { execSync } = require("child_process");
33
const { writeFileSync, readFileSync } = require("fs");
44
const { join } = require("path");
5-
const { filteredLernaList, lernaList, versionFromRef, shortSHA, prerelease } = require("./github.js");
5+
const { filteredLernaList, lernaList, versionFromRef, shortSHA, prerelease, packageFromRef } = require("./github.js");
66

77
const wombatDressingRoomTokens = new Map([
88
// ['firebase-frameworks', process.env.FIREBASE_FRAMEWORKS_NPM_TOKEN],
@@ -18,14 +18,13 @@ wombatDressingRoomTokens.forEach((token, pkg) => {
1818
});
1919

2020
const packagesToPublish = filteredLernaList.map((lerna) => {
21-
if (versionFromRef && versionFromRef.split("-")[0] !== lerna.version) {
21+
const useVersionFromRef = versionFromRef && lerna.name.endsWith(packageFromRef);
22+
if (useVersionFromRef && versionFromRef && versionFromRef.split("-")[0] !== lerna.version) {
2223
throw new Error(
2324
`Cowardly refusing to publish ${lerna.name}@${versionFromRef} from ${lerna.version}, version needs to be bumped in source.`,
2425
);
2526
}
26-
const version = versionFromRef || `${lerna.version}-canary.${shortSHA}`;
27-
const cwd = lerna.location;
28-
const tag = versionFromRef ? (prerelease ? "next" : "latest") : "canary";
27+
const version = useVersionFromRef && versionFromRef || `${lerna.version}-canary.${shortSHA}`;
2928
const packageJsonPath = join(lerna.location, "package.json");
3029
const packageJson = JSON.parse(readFileSync(packageJsonPath).toString());
3130
packageJson.version = version;
@@ -37,7 +36,8 @@ for (packageJson of packagesToPublish) {
3736
const lernaPackage = lernaList.find(it => it.name === dependency);
3837
if (lernaPackage) {
3938
const changedPackage = packagesToPublish.find(it => it.name === dependency);
40-
packageJson.dependencies[dependency] = changedPackage?.version || lernaPackage.version;
39+
const version = changedPackage?.version || lernaPackage.version;
40+
packageJson.dependencies[dependency] = version;
4141
}
4242
}
4343
const lerna = lernaList.find(it => it.name === packageJson.name);
@@ -48,6 +48,7 @@ for (packageJson of packagesToPublish) {
4848
? `https://wombat-dressing-room.appspot.com/${lerna.name}/_ns`
4949
: "https://registry.npmjs.org";
5050
const cwd = lerna.location;
51-
const tag = versionFromRef ? (prerelease ? "next" : "latest") : "canary";
51+
const usedVersionFromRef = packageJson.version === versionFromRef;
52+
const tag = usedVersionFromRef ? (prerelease ? "next" : "latest") : "canary";
5253
execSync(`npm publish --registry ${registry} --access public --tag ${tag} --provenance`, { cwd });
5354
}

0 commit comments

Comments
 (0)