From 9ebcef05cedbf852a0dddd23b066d88f35dd3a4e Mon Sep 17 00:00:00 2001 From: Julius Marminge Date: Thu, 2 Jul 2026 23:44:43 -0700 Subject: [PATCH] fix(mobile): compile patched native pods from source on EAS MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit EAS builds enable EXPO_USE_PRECOMPILED_MODULES, which links Expo's prebuilt RNScreens.framework instead of compiling react-native-screens from source — silently discarding every native file in patches/react-native-screens@4.25.2.patch (Mail-style bottom search toolbar, headerToolbarItems, navigationItemStyle). Local builds resolve the pod from source, which is why ios:dev showed the iPhone bottom search toolbar while eas:ios:preview builds never did (verified by strings-scanning the preview IPA: zero patch symbols in the prebuilt framework). Opt the two natively-patched packages out via expo.autolinking.buildFromSource so EAS compiles them from the patched source. @react-native-menu/menu is included defensively: it is not in Expo's prebuilt set today, but its patch also touches native code. Co-Authored-By: Claude Fable 5 --- apps/mobile/package.json | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/apps/mobile/package.json b/apps/mobile/package.json index f35b92574f5..acc20af1a05 100644 --- a/apps/mobile/package.json +++ b/apps/mobile/package.json @@ -120,5 +120,13 @@ }, "overrides": { "react-native-nitro-markdown": "file:deps/react-native-nitro-markdown-0.5.0.tgz" + }, + "expo": { + "autolinking": { + "buildFromSource": [ + "react-native-screens", + "@react-native-menu/menu" + ] + } } }