From fe6b499735b936dda52bdcaf219ff36f79af5245 Mon Sep 17 00:00:00 2001 From: Alex Hunt Date: Wed, 12 Nov 2025 10:03:48 -0800 Subject: [PATCH 1/2] Update ESLint uses to reference eslint-plugin-monorepo explicitly (#54519) Summary: **Background** `react-native/eslint` was relocated and renamed to `react-native/eslint-plugin-monorepo` in D76088698. **This diff** This updates all call sites to correctly address the `react-native/eslint-plugin-monorepo` package, enabling us to remove the monorepo itself from fbsource's `package.json#workspaces` (which was the only reason this kept working before). Changelog: [Internal] Differential Revision: D86869721 --- package.json | 1 + 1 file changed, 1 insertion(+) diff --git a/package.json b/package.json index 27bb627a69c0..a55022c503e4 100644 --- a/package.json +++ b/package.json @@ -58,6 +58,7 @@ "@jest/create-cache-key-function": "^29.7.0", "@microsoft/api-extractor": "^7.52.2", "@octokit/rest": "^22.0.0", + "@react-native/eslint-plugin-monorepo": "*", "@react-native/metro-babel-transformer": "0.84.0-main", "@react-native/metro-config": "0.84.0-main", "@tsconfig/node22": "22.0.2", From 27bbd73bf05ee1d39635b1e4b860d7c9937ee979 Mon Sep 17 00:00:00 2001 From: Alex Hunt Date: Wed, 12 Nov 2025 10:03:48 -0800 Subject: [PATCH 2/2] Remove name and metadata from root package.json (#54521) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Summary: Following D86869721, this removes the unused `name`, `version`, and `license` fields from the project level `package.json` (previously named `react-native/monorepo`). **Motivation** - **Simplicity**: Our root package.json is a Yarn project manifest, not a package, with the `version` field serving no functional purpose. `react-native/monorepo` was never published to npm, and so `name`, `version`, and `license` were never read. - **Correctness**: Since D86869721 and our recent work to formalise monorepo dependencies in `private/`, the workspace root no longer needs to be referenced by any part of our containing fbsource codebase — and this is a conceptual footgun (Yarn-installing a package that is itself a workspace). `react-native/monorepo` no longer needs to be named, addressable, or installable. Or, phrased another way: - Delete `name` — never try to reference this as an npm package! - Delete `version` — never think about versioning this file! - Delete `license` — unread, duplicate of `LICENSE.md`. Changelog: [Internal] Reviewed By: yungsters Differential Revision: D86869720 --- package.json | 3 --- scripts/releases/set-version.js | 2 +- 2 files changed, 1 insertion(+), 4 deletions(-) diff --git a/package.json b/package.json index a55022c503e4..4e47179d658c 100644 --- a/package.json +++ b/package.json @@ -1,8 +1,5 @@ { - "name": "@react-native/monorepo", "private": true, - "version": "1000.0.0", - "license": "MIT", "packageManager": "yarn@1.22.22", "scripts": { "android": "yarn --cwd packages/rn-tester android", diff --git a/scripts/releases/set-version.js b/scripts/releases/set-version.js index 497ce0b9c4db..59254c37b11b 100644 --- a/scripts/releases/set-version.js +++ b/scripts/releases/set-version.js @@ -89,7 +89,7 @@ async function setVersion( ...Object.values(packages), ]; - // Update all workspace packages + // Update dependency versions in workspace packages await Promise.all( packagesToUpdate.map(pkg => updatePackageJson(pkg, newPackageVersions)), );