diff --git a/patches/@expo__fingerprint@0.21.5.patch b/patches/@expo__fingerprint@0.21.5.patch new file mode 100644 index 000000000000..28722b4023d6 --- /dev/null +++ b/patches/@expo__fingerprint@0.21.5.patch @@ -0,0 +1,17 @@ +diff --git a/build/sourcer/Expo.js b/build/sourcer/Expo.js +index 785ec516921af68ea5922462a0177112e15c6bb1..6e9c848f4ff7ae1a849994a84c0c7a038aed70c8 100644 +--- a/build/sourcer/Expo.js ++++ b/build/sourcer/Expo.js +@@ -368,6 +368,12 @@ async function getExpoAutolinkingAndroidSourcesAsync(projectRoot, options, expoA + } + if (module1.plugins) { + for (const plugin of module1.plugins){ ++ // Maven-only Gradle plugins (expo-widgets) have no sourceDir. Their id, group and ++ // version are hashed through expoAutolinkingConfig:android below. Without this ++ // skip, path.relative throws and the catch drops every Expo module from the hash. ++ if (typeof plugin.sourceDir !== 'string') { ++ continue; ++ } + const filePath = (0, _Path.toPosixPath)(_path().default.relative(realProjectRoot, plugin.sourceDir)); + plugin.sourceDir = filePath; // use relative path for the dir + debug(`Adding expo-modules-autolinking android dir - ${_chalk().default.dim(filePath)}`); diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index e1ef8366399e..9b4456aa07a7 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -151,6 +151,7 @@ packageExtensionsChecksum: sha256-EowbsmlBFaoO0Ypufw901RnvdyjKG5dcdk2FRbc7Dr0= patchedDependencies: '@clerk/expo-native-components@0.1.1': 5f3738f8e5d50bfa467ce8afbaf7c2aa7c7c9adb95a2307424eb908f6af0d299 '@effect/vitest@4.0.5': 2731c9c3761c595f25ddc625a7d61ca376b389d5b3049ecb837c8940f21cfa02 + '@expo/fingerprint@0.21.5': b3781a00f7341b41fb9c7b051e006a27ced6beb68da1085087b4c5ab6430e1d0 '@expo/metro-config@58.0.14': 90fa980e8b6480631fb2fbb04559834e3c612db40c550cd828f11be297d8d760 '@expo/ui@58.0.18': 5a26480373850c1a7943919aa21f904151b335a0cb01042109e0746def37923e '@ff-labs/fff-node@0.11.0': cc71fcec015f4d39bc96ae2e2bf6b0ca678124c722c66a7841efce9d34b5983c @@ -14652,7 +14653,7 @@ snapshots: transitivePeerDependencies: - supports-color - '@expo/fingerprint@0.21.5': + '@expo/fingerprint@0.21.5(patch_hash=b3781a00f7341b41fb9c7b051e006a27ced6beb68da1085087b4c5ab6430e1d0)': dependencies: '@expo/env': 2.5.2 '@expo/spawn-async': 1.8.0 @@ -19655,7 +19656,7 @@ snapshots: '@expo/config': 58.0.6(typescript@7.0.2) '@expo/config-plugins': 58.0.9(typescript@7.0.2) '@expo/devtools': 58.0.2(expo@58.0.11)(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) - '@expo/fingerprint': 0.21.5 + '@expo/fingerprint': 0.21.5(patch_hash=b3781a00f7341b41fb9c7b051e006a27ced6beb68da1085087b4c5ab6430e1d0) '@expo/local-build-cache-provider': 58.0.6(typescript@7.0.2) '@expo/log-box': 58.0.12(@expo/dom-webview@58.0.2)(expo@58.0.11)(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) '@expo/log-box-utils': 58.0.2 diff --git a/pnpm-workspace.yaml b/pnpm-workspace.yaml index ede421587dc7..05b6f297f6a5 100644 --- a/pnpm-workspace.yaml +++ b/pnpm-workspace.yaml @@ -331,6 +331,7 @@ patchedDependencies: # Android: a nested WebView hands a vertical drag to its scrolling parent at the page's edge. react-native-webview@14.0.1: patches/react-native-webview@14.0.1.patch "@expo/ui@58.0.18": patches/@expo__ui@58.0.18.patch + "@expo/fingerprint@0.21.5": patches/@expo__fingerprint@0.21.5.patch peerDependencyRules: allowAny: