From d296722f9702c1f1c8ef3ba9b6f55949b288421a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Oskar=20Kwas=CC=81niewski?= Date: Mon, 29 Jul 2024 16:02:50 +0200 Subject: [PATCH] fix: update oot-release scripts --- packages/react-native/package.json | 3 +- scripts/oot-release.js | 46 +++++++++++++++++++++--------- 2 files changed, 34 insertions(+), 15 deletions(-) diff --git a/packages/react-native/package.json b/packages/react-native/package.json index cbf2acb18ad498..f241e789efec11 100644 --- a/packages/react-native/package.json +++ b/packages/react-native/package.json @@ -91,7 +91,8 @@ "!template/package-lock.json", "!template/yarn.lock", "third-party-podspecs", - "types" + "types", + "visionos_modules" ], "scripts": { "prepack": "node ./scripts/prepack.js", diff --git a/scripts/oot-release.js b/scripts/oot-release.js index a385a88f27b732..3080deadfb6a00 100644 --- a/scripts/oot-release.js +++ b/scripts/oot-release.js @@ -8,8 +8,7 @@ const forEachPackage = require('./monorepo/for-each-package'); const newGithubReleaseUrl = require('./new-github-release-url'); -const {applyPackageVersions, publishPackage} = require('./npm-utils'); -const updateTemplatePackage = require('./releases/update-template-package'); +const {publishPackage} = require('./npm-utils'); const {execSync} = require('child_process'); const fs = require('fs'); const path = require('path'); @@ -18,6 +17,37 @@ const yargs = require('yargs'); const REPO_ROOT = path.resolve(__dirname, '../'); + +/** + * `package` is an object form of package.json + * `dependencies` is a map of dependency to version string + * + * This replaces both dependencies and devDependencies in package.json + */ +function applyPackageVersions( + originalPackageJson /*: PackageJSON */, + packageVersions /*: {[string]: string} */, +) /*: PackageJSON */ { + const packageJson = {...originalPackageJson}; + + for (const name of Object.keys(packageVersions)) { + if ( + packageJson.dependencies != null && + packageJson.dependencies[name] != null + ) { + packageJson.dependencies[name] = packageVersions[name]; + } + + if ( + packageJson.devDependencies != null && + packageJson.devDependencies[name] != null + ) { + packageJson.devDependencies[name] = packageVersions[name]; + } + } + return packageJson; +} + /** * This script updates core packages to the version of React Native that we are basing on, * updates internal visionOS packages and releases them. @@ -126,18 +156,6 @@ function releaseOOT( }); } - // Update template package.json - updateTemplatePackage({ - 'react-native': reactNativeVersion, - ...visionOSPackagesVersions, - }); - - if (isNightly) { - updateTemplatePackage(corePackagesVersions); - } - - echo(`Updating template and it's dependencies to ${reactNativeVersion}`); - echo('Building packages...\n'); execSync('node ./scripts/build/build.js', { cwd: REPO_ROOT,