From 5bea17cf3fefdec2e4e50c247c1f20ed067d791f Mon Sep 17 00:00:00 2001 From: Saad Najmi Date: Fri, 25 Jul 2025 17:22:39 -0700 Subject: [PATCH 1/3] Fix npm publish script to read tag from updated nx.json path with error handling --- .ado/jobs/npm-publish.yml | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/.ado/jobs/npm-publish.yml b/.ado/jobs/npm-publish.yml index c43af09e3f84..78c5045ab120 100644 --- a/.ado/jobs/npm-publish.yml +++ b/.ado/jobs/npm-publish.yml @@ -24,7 +24,11 @@ jobs: - template: /.ado/templates/configure-git.yml@self - script: | - PUBLISH_TAG=$(jq -r '.release.version.generatorOptions.currentVersionResolverMetadata.tag' nx.json) + PUBLISH_TAG=$(jq -r '.release.version.versionActionsOptions.currentVersionResolverMetadata.tag' nx.json) + if [ -z "$PUBLISH_TAG" ] || [ "$PUBLISH_TAG" = "null" ]; then + echo "Error: Failed to read publish tag from nx.json" + exit 1 + fi echo "##vso[task.setvariable variable=publishTag]$PUBLISH_TAG" echo "Using publish tag from nx.json: $PUBLISH_TAG" displayName: Read publish tag from nx.json From ca5ea70fafa70b8ab591bd54f200925008e96240 Mon Sep 17 00:00:00 2001 From: Saad Najmi Date: Fri, 25 Jul 2025 23:38:05 -0700 Subject: [PATCH 2/3] use yarn npm publish --- .ado/jobs/npm-publish.yml | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/.ado/jobs/npm-publish.yml b/.ado/jobs/npm-publish.yml index 78c5045ab120..6a1b9a4db80b 100644 --- a/.ado/jobs/npm-publish.yml +++ b/.ado/jobs/npm-publish.yml @@ -65,7 +65,12 @@ jobs: - script: | if [[ -f .rnm-publish ]]; then - yarn nx release publish --tag ${{ parameters['publishTag'] }} --excludeTaskDependencies + # https://github.com/microsoft/react-native-macos/issues/2580 + # `nx release publish` gets confused by the output of RNM's prepack script. + # Let's call `yarn npm publish` directly instead on the packages we want to publish. + # yarn nx release publish --tag ${{ parameters['publishTag'] }} --excludeTaskDependencies + yarn ./packages/virtualized-lists npm publish --tag ${{ parameters['publishTag'] }} + yarn ./packages/react-native npm publish --tag ${{ parameters['publishTag'] }} fi displayName: Publish packages condition: and(succeeded(), eq(variables['publish_react_native_macos'], '1')) From 3759d28527e0ded2a2e0f2507ce90a0049cc7111 Mon Sep 17 00:00:00 2001 From: Saad Najmi Date: Sat, 26 Jul 2025 13:58:52 -0700 Subject: [PATCH 3/3] use console.table() --- packages/nx-release-version/index.js | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/packages/nx-release-version/index.js b/packages/nx-release-version/index.js index 6ae004ee01ba..ca13686b3d00 100644 --- a/packages/nx-release-version/index.js +++ b/packages/nx-release-version/index.js @@ -87,10 +87,8 @@ const afterAllProjectsVersioned = async (_cwd, _opts) => { changedFiles.push(...versionedFiles); console.log('✅ Updated React Native artifacts'); - console.log('🏷️ Created .rnm-publish marker file'); - + console.table(versionedFiles.map(file => path.relative(REPO_ROOT, file))); } catch (error) { - console.error('Failed to update React Native artifacts:', error); const errorMessage = error instanceof Error ? error.message : String(error); console.error(`❌ Failed to update React Native artifacts: ${errorMessage}`); throw error;