From 971389396ed610ff132def0719007e2c7e5e7e0d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mat=C4=9Bj=20Such=C3=A1nek?= <16311043+immakermatty@users.noreply.github.com> Date: Fri, 23 Oct 2026 22:22:02 +0200 Subject: [PATCH] fix(deps): pin all patched package versions (upstream #23798) Backport of upstream 22840ab943 to the 0.1.1 line. The CLI archive stages its runtime externals with an install without the lockfile, so node-pty's `^1.2.0-beta.15` range resolves to the newest release that is older than the minimum release age. node-pty 1.2.0-beta.17 (published 2026-10-22 20:13Z) became old enough at 2026-10-23 20:13Z. From then on both CLI archive builds of the 0.1.1-lazurio.2 release (run 40017408531) failed on ERR_PNPM_UNUSED_PATCH for node-pty@1.2.0-beta.15, and so would every release from main. Every patched package is now pinned in pnpm-workspace.yaml's overrides at the version the lockfile already resolved, as upstream did. The lockfile changes only in its overrides, catalogs and specifiers. It keeps the same 2,280 packages and every resolved version. Drop this commit when the overlay is rebuilt on an upstream tag that contains #23798. Co-Authored-By: Claude Opus 5.5 --- pnpm-lock.yaml | 59 ++++++++++++++++++++++++++++++--------------- pnpm-workspace.yaml | 29 ++++++++++++++++++++-- 2 files changed, 66 insertions(+), 22 deletions(-) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index d71e2422a3b63..d3ccf3cd7f6ac 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -21,18 +21,12 @@ catalogs: '@effect/tsgo': specifier: 0.51.1 version: 0.51.1 - '@legendapp/list': - specifier: 3.3.5 - version: 3.3.5 '@noble/curves': specifier: 1.9.1 version: 1.9.1 '@noble/hashes': specifier: 1.8.0 version: 1.8.0 - '@pierre/diffs': - specifier: 1.5.2 - version: 1.5.2 '@types/plist': specifier: 3.0.5 version: 3.0.5 @@ -101,6 +95,31 @@ catalogs: version: 11.0.5 overrides: + react-native-image-viewing: 0.2.2 + mdast-util-math: 3.0.0 + micromark-extension-llm-math: 3.1.0 + alchemy: 2.0.0-beta.80 + expo-audio: 58.0.9 + expo-network: 58.0.3 + '@clerk/expo-native-components': 0.2.0 + expo-sharing: 58.0.19 + expo-widgets: 58.0.20 + '@ff-labs/fff-node': 0.11.0 + '@legendapp/list': 3.3.5 + '@pierre/diffs': 1.5.2 + '@react-native-ai/apple': 0.12.0 + '@react-native-menu/menu': 2.0.0 + '@react-navigation/native-stack': 7.21.0 + dbus-next: 0.10.2 + node-pty: 1.2.0-beta.15 + react-native-gesture-handler: 3.3.0 + react-native-reanimated: 4.7.1 + react-native-keyboard-controller: 1.22.7 + react-native-pdf-jsi: 5.0.0 + react-native-webview: 14.0.1 + '@expo/ui': 58.0.20 + '@expo/fingerprint': 0.21.5 + app-builder-lib: 26.16.1 expo-modules-core: 58.0.22 '@exodus/bytes>@noble/hashes': 1.8.0 '@react-navigation/core': 7.24.0 @@ -353,7 +372,7 @@ importers: specifier: 58.0.20 version: 58.0.20(patch_hash=5a26480373850c1a7943919aa21f904151b335a0cb01042109e0746def37923e)(@babel/core@7.29.7)(expo@58.0.14)(react-dom@19.3.0(react@19.3.0))(react-native-worklets@0.13.0(@babel/core@7.29.7)(@react-native/metro-config@0.88.0(@babel/core@7.29.7)(bufferutil@4.1.0)(utf-8-validate@6.0.6))(react-native@0.88.0(@babel/core@7.29.7)(@react-native/metro-config@0.88.0(@babel/core@7.29.7)(bufferutil@4.1.0)(utf-8-validate@6.0.6))(@types/react@19.3.0)(bufferutil@4.1.0)(react@19.3.0)(utf-8-validate@6.0.6))(react@19.3.0))(react-native@0.88.0(@babel/core@7.29.7)(@react-native/metro-config@0.88.0(@babel/core@7.29.7)(bufferutil@4.1.0)(utf-8-validate@6.0.6))(@types/react@19.3.0)(bufferutil@4.1.0)(react@19.3.0)(utf-8-validate@6.0.6))(react@19.3.0) '@legendapp/list': - specifier: 'catalog:' + specifier: 3.3.5 version: 3.3.5(patch_hash=e6383c516a0d67b65333d6fd38d2203734bf24b054b0b0767b034189205aed32)(react-dom@19.3.0(react@19.3.0))(react-native@0.88.0(@babel/core@7.29.7)(@react-native/metro-config@0.88.0(@babel/core@7.29.7)(bufferutil@4.1.0)(utf-8-validate@6.0.6))(@types/react@19.3.0)(bufferutil@4.1.0)(react@19.3.0)(utf-8-validate@6.0.6))(react@19.3.0) '@material/material-color-utilities': specifier: 0.3.0 @@ -362,7 +381,7 @@ importers: specifier: 'catalog:' version: 1.9.1 '@pierre/diffs': - specifier: 'catalog:' + specifier: 1.5.2 version: 1.5.2(patch_hash=2ec81ba1e8ce4681095a3473c2bf78e630417740c622720ef624febb467c25fc)(@shikijs/themes@4.2.0)(react-dom@19.3.0(react@19.3.0))(react@19.3.0) '@react-native-ai/apple': specifier: 0.12.0 @@ -371,7 +390,7 @@ importers: specifier: 3.1.1 version: 3.1.1(react-native@0.88.0(@babel/core@7.29.7)(@react-native/metro-config@0.88.0(@babel/core@7.29.7)(bufferutil@4.1.0)(utf-8-validate@6.0.6))(@types/react@19.3.0)(bufferutil@4.1.0)(react@19.3.0)(utf-8-validate@6.0.6))(react@19.3.0) '@react-native-menu/menu': - specifier: ^2.0.0 + specifier: 2.0.0 version: 2.0.0(patch_hash=a4866ecfcd44f318043de839d20110c17e14909004900f002ffe12050376f2ba)(react-native@0.88.0(@babel/core@7.29.7)(@react-native/metro-config@0.88.0(@babel/core@7.29.7)(bufferutil@4.1.0)(utf-8-validate@6.0.6))(@types/react@19.3.0)(bufferutil@4.1.0)(react@19.3.0)(utf-8-validate@6.0.6))(react@19.3.0) '@react-navigation/elements': specifier: 2.9.45 @@ -515,7 +534,7 @@ importers: specifier: ~58.0.13 version: 58.0.13(expo@58.0.14)(react-native@0.88.0(@babel/core@7.29.7)(@react-native/metro-config@0.88.0(@babel/core@7.29.7)(bufferutil@4.1.0)(utf-8-validate@6.0.6))(@types/react@19.3.0)(bufferutil@4.1.0)(react@19.3.0)(utf-8-validate@6.0.6))(react@19.3.0)(typescript@7.0.2) expo-network: - specifier: ~58.0.3 + specifier: 58.0.3 version: 58.0.3(patch_hash=cd09b6d1744dde4efa081b5619ebcff38877d98f7502a51cab121629dece8237)(expo@58.0.14)(react@19.3.0) expo-notifications: specifier: ~58.1.5 @@ -572,10 +591,10 @@ importers: specifier: file:deps/react-native-enriched-markdown-1.2.0-t3.15-fee84114.tgz version: file:apps/mobile/deps/react-native-enriched-markdown-1.2.0-t3.15-fee84114.tgz(katex@0.16.47)(react-native@0.88.0(@babel/core@7.29.7)(@react-native/metro-config@0.88.0(@babel/core@7.29.7)(bufferutil@4.1.0)(utf-8-validate@6.0.6))(@types/react@19.3.0)(bufferutil@4.1.0)(react@19.3.0)(utf-8-validate@6.0.6))(react@19.3.0) react-native-gesture-handler: - specifier: ~3.3.0 + specifier: 3.3.0 version: 3.3.0(patch_hash=abe20e1d1c23549297cbbc818e14fe479b41455930d9663135d6b40fe359b626)(react-native@0.88.0(@babel/core@7.29.7)(@react-native/metro-config@0.88.0(@babel/core@7.29.7)(bufferutil@4.1.0)(utf-8-validate@6.0.6))(@types/react@19.3.0)(bufferutil@4.1.0)(react@19.3.0)(utf-8-validate@6.0.6))(react@19.3.0) react-native-image-viewing: - specifier: ^0.2.2 + specifier: 0.2.2 version: 0.2.2(patch_hash=419f35ee91eac88ced9438058281db5eb09d9c799d8974c1172926068c9448cf)(react-native@0.88.0(@babel/core@7.29.7)(@react-native/metro-config@0.88.0(@babel/core@7.29.7)(bufferutil@4.1.0)(utf-8-validate@6.0.6))(@types/react@19.3.0)(bufferutil@4.1.0)(react@19.3.0)(utf-8-validate@6.0.6))(react@19.3.0) react-native-keyboard-controller: specifier: 1.22.7 @@ -738,7 +757,7 @@ importers: specifier: 'catalog:' version: 6.2.2 node-pty: - specifier: ^1.2.0-beta.15 + specifier: 1.2.0-beta.15 version: 1.2.0-beta.15(patch_hash=f1e680afec85f650699ea756f91f469844ec4c976f4f168492a45c6b3f67d651) playwright-core: specifier: 1.60.0 @@ -850,13 +869,13 @@ importers: specifier: ^0.9.0 version: 0.9.0 '@legendapp/list': - specifier: 'catalog:' + specifier: 3.3.5 version: 3.3.5(patch_hash=e6383c516a0d67b65333d6fd38d2203734bf24b054b0b0767b034189205aed32)(react-dom@19.3.0(react@19.3.0))(react-native@0.88.0(@babel/core@7.29.7)(@react-native/metro-config@0.88.0(@babel/core@7.29.7)(bufferutil@4.1.0)(utf-8-validate@6.0.6))(@types/react@19.3.0)(bufferutil@4.1.0)(react@19.3.0)(utf-8-validate@6.0.6))(react@19.3.0) '@noble/hashes': specifier: 'catalog:' version: 1.8.0 '@pierre/diffs': - specifier: 'catalog:' + specifier: 1.5.2 version: 1.5.2(patch_hash=2ec81ba1e8ce4681095a3473c2bf78e630417740c622720ef624febb467c25fc)(@shikijs/themes@4.3.0)(react-dom@19.3.0(react@19.3.0))(react@19.3.0) '@pierre/trees': specifier: 1.0.0-beta.6 @@ -1159,7 +1178,7 @@ importers: packages/client-runtime: dependencies: '@pierre/diffs': - specifier: 'catalog:' + specifier: 1.5.2 version: 1.5.2(patch_hash=2ec81ba1e8ce4681095a3473c2bf78e630417740c622720ef624febb467c25fc)(@shikijs/themes@4.3.0)(react-dom@19.3.0(react@19.3.0))(react@19.3.0) '@t3tools/contracts': specifier: workspace:* @@ -2822,7 +2841,7 @@ packages: peerDependencies: '@clerk/expo-biometrics': '>=0.1.0' '@clerk/expo-google-signin': '>=0.1.0' - '@clerk/expo-native-components': '>=0.1.0' + '@clerk/expo-native-components': 0.2.0 '@clerk/expo-passkeys': '>=0.0.6' expo: '>=54 <59' expo-apple-authentication: '>=7.0.0' @@ -7701,7 +7720,7 @@ packages: peerDependencies: '@babel/runtime': ^7.20.0 expo: '*' - expo-widgets: ^58.0.20 + expo-widgets: 58.0.20 react-refresh: '>=0.14.0 <1.0.0' peerDependenciesMeta: '@babel/runtime': @@ -9182,7 +9201,7 @@ packages: react-dom: '*' react-native: '*' react-native-web: '*' - react-native-webview: '*' + react-native-webview: 14.0.1 peerDependenciesMeta: '@expo/dom-webview': optional: true @@ -11245,7 +11264,7 @@ packages: peerDependencies: react: '*' react-native: '*' - react-native-reanimated: '>=3.0.0' + react-native-reanimated: 4.7.1 react-native-nitro-modules@0.37.1: resolution: {integrity: sha512-KpW6EQVQ/bfegpCGxN9Be+ndvsfj56t4IESEvCASu9gWpJa/NDfHpIeIwCOvZQ3eXmLEj6YD4wCLqcC1FJPr2w==} diff --git a/pnpm-workspace.yaml b/pnpm-workspace.yaml index 6e0d596dd7434..e46914038f465 100644 --- a/pnpm-workspace.yaml +++ b/pnpm-workspace.yaml @@ -220,8 +220,33 @@ minimumReleaseAgeExclude: - "@expo/schema-utils@58.0.2" overrides: - # Keep on the patched version. A fresh resolution would take a newer release and - # fail on the unused patch. Move this with patches/expo-modules-core@*.patch. + # Pin every patched package, including transitive dependencies, so lockfile-free + # release installs cannot drift past the patch. Update these with patchedDependencies. + react-native-image-viewing: 0.2.2 + mdast-util-math: 3.0.0 + micromark-extension-llm-math: 3.1.0 + alchemy: 2.0.0-beta.80 + expo-audio: 58.0.9 + expo-network: 58.0.3 + "@clerk/expo-native-components": 0.2.0 + expo-sharing: 58.0.19 + expo-widgets: 58.0.20 + "@ff-labs/fff-node": 0.11.0 + "@legendapp/list": 3.3.5 + "@pierre/diffs": 1.5.2 + "@react-native-ai/apple": 0.12.0 + "@react-native-menu/menu": 2.0.0 + "@react-navigation/native-stack": 7.21.0 + dbus-next: 0.10.2 + node-pty: 1.2.0-beta.15 + react-native-gesture-handler: 3.3.0 + react-native-reanimated: 4.7.1 + react-native-keyboard-controller: 1.22.7 + react-native-pdf-jsi: 5.0.0 + react-native-webview: 14.0.1 + "@expo/ui": 58.0.20 + "@expo/fingerprint": 0.21.5 + app-builder-lib: 26.16.1 expo-modules-core: 58.0.22 # Keep jsdom's optional peer consistent so Vite+ has one test-runner instance. "@exodus/bytes>@noble/hashes": "1.8.0"