Skip to content

Commit 37277d7

Browse files
Replace only packages marked as deps during a release (#6245)
* In release, replace only packages marked as deps \#6209 made the release script overwrite every dependency in the set of packages being published. This causes tfjs-core's verdaccio tests to fail because tfjs-core has a devDependency on tfjs-backend-cpu, but core needs to be published before cpu. This PR reverts to the original behavior of overwriting dependency versions in the package.json only if they are listed in a given release phase's dependencies. * Remove update-dependency.ts from e2e
1 parent fa9c13f commit 37277d7

File tree

5 files changed

+8
-75
lines changed

5 files changed

+8
-75
lines changed

e2e/package.json

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,6 @@
6464
"test": "./scripts/test.sh",
6565
"coverage": "KARMA_COVERAGE=1 ./scripts/test.sh",
6666
"test-ci": "./scripts/test-ci.sh",
67-
"update-dependency": "ts-node ./scripts/update-dependency.ts",
6867
"deploy-benchmarks": "./scripts/deploy-benchmarks.sh",
6968
"deploy-benchmarks-dev": "./scripts/deploy-benchmarks.sh --dev",
7069
"deploy-benchmarks-staging": "./scripts/deploy-benchmarks.sh --staging"

e2e/scripts/publish-tfjs-ci.sh

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -89,8 +89,3 @@ do
8989

9090
cd ..
9191
done
92-
93-
# Update e2e's package.json's all tfjs related packages to locally published
94-
# version.
95-
cd e2e
96-
npx ts-node ./scripts/update-dependency.ts --version=$RELEASE_VERSION

e2e/scripts/update-dependency.ts

Lines changed: 0 additions & 66 deletions
This file was deleted.

scripts/release-tfjs.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -103,7 +103,7 @@ async function main() {
103103
const newVersion = versions.get(packageName);
104104
pkg = `${pkg}`.replace(
105105
`"version": "${parsedPkg.version}"`, `"version": "${newVersion}"`);
106-
pkg = updateTFJSDependencyVersions(pkg, versions);
106+
pkg = updateTFJSDependencyVersions(pkg, versions, phase.deps || []);
107107

108108
fs.writeFileSync(packageJsonPath, pkg);
109109

scripts/release-util.ts

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -295,12 +295,17 @@ export async function updateDependency(
295295
// than `updateDependency`, it does not rely on published versions, instead it
296296
// uses a map from packageName to newVersion to update the versions.
297297
export function updateTFJSDependencyVersions(
298-
pkg: string, versions: Map<string, string>): string {
298+
pkg: string, versions: Map<string, string>,
299+
depsToReplace = [...versions.keys()]): string {
299300

300301
console.log(chalk.magenta.bold(`~~~ Update dependency versions ~~~`));
301302

302303
const parsedPkg = JSON.parse(`${pkg}`);JSON.parse(pkg);
303-
for (const [dep, newVersion] of versions) {
304+
for (const dep of depsToReplace) {
305+
const newVersion = versions.get(dep);
306+
if (!newVersion) {
307+
throw new Error(`No new version found for ${dep}`);
308+
}
304309
// Get the current dependency package version.
305310
let version = '';
306311
const depNpmName = `@tensorflow/${dep}`;

0 commit comments

Comments
 (0)