fix(expo): dedupe expo native modules via nativewindui 2.1.0 + SDK patch alignment#2542
fix(expo): dedupe expo native modules via nativewindui 2.1.0 + SDK patch alignment#2542andrew-bierman wants to merge 2 commits into
Conversation
…(expo-doctor 19/19) The duplicate native modules (expo-image/expo-symbols nested under nativewindui) were caused by the STALE 2.0.3-2 fork pin declaring old-era ranges (expo-image ~3.0.11, expo-symbols ~1.0.8). nativewindui 2.1.0 (PR #19) moved those to permissive peerDependencies (>=55.0.0) — so the app provides them and no nested copy is created. Bump the pin (override + apps/expo + packages/ui). Also align apps/expo's 9 lagging expo-* ranges to the SDK-expected patches (expo ~55.0.26, expo-router ~55.0.16, …) clearing the patch-version-mismatch. expo-doctor: 19/19 (was 2 failing). No full lock regen — targeted +377 lines. Off development; independent of the utils-hardening PRs.
|
Important Review skippedAuto reviews are disabled on base/target branches other than the default branch. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Pull request overview
This PR updates Expo-related dependencies to resolve expo-doctor failures caused by duplicate native modules and Expo SDK patch-version mismatches. It primarily does this by bumping @packrat-ai/nativewindui to a version that correctly uses Expo packages as peers (avoiding nested installs) and aligning apps/expo Expo package patch ranges with SDK 55 expectations.
Changes:
- Bump
@packrat-ai/nativewinduito2.1.0across the repo (root overrides + consuming workspaces) to eliminate duplicateexpo-image/expo-symbolsinstalls. - Align
apps/expoExpo SDK package patch versions (e.g.,expo,expo-router,expo-file-system,expo-updates, etc.) to SDK-expected patches. - Update
bun.lockto reflect the targeted dependency resolution changes.
Reviewed changes
Copilot reviewed 3 out of 4 changed files in this pull request and generated no comments.
| File | Description |
|---|---|
packages/ui/package.json |
Pins @packrat-ai/nativewindui to 2.1.0 so the UI package consumes the deduping-compatible release. |
package.json |
Updates root overrides to force @packrat-ai/nativewindui@2.1.0 across the workspace. |
apps/expo/package.json |
Aligns Expo SDK dependency patch versions and bumps @packrat-ai/nativewindui to 2.1.0. |
bun.lock |
Records the resulting dependency graph changes (nativewindui + Expo patch bumps). |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Deploying packrat-guides with
|
| Latest commit: |
b10027d
|
| Status: | ✅ Deploy successful! |
| Preview URL: | https://e5ca0494.packrat-guides-6gq.pages.dev |
| Branch Preview URL: | https://chore-dedupe-expo.packrat-guides-6gq.pages.dev |
Deploying with
|
| Status | Name | Latest Commit | Preview URL | Updated (UTC) |
|---|---|---|---|---|
| ✅ Deployment successful! View logs |
packrat-admin | b10027d | Commit Preview URL Branch Preview URL |
Jun 16 2026, 04:04 PM |
Deploying packrat-landing with
|
| Latest commit: |
b10027d
|
| Status: | ✅ Deploy successful! |
| Preview URL: | https://3bb8a3e0.packrat-landing.pages.dev |
| Branch Preview URL: | https://chore-dedupe-expo.packrat-landing.pages.dev |
Clears both
expo-doctorfailures ondevelopment(19/19 now, was 17/19). Dep-only change — no app code.Root cause of the duplicate native modules
expo-doctorflagged duplicateexpo-image/expo-symbols. The cause was the stale@packrat-ai/nativewindui@2.0.3-2pin: that old release declares pre-SDK-unified ranges (expo-image: ~3.0.11,expo-symbols: ~1.0.8) as dependencies, which55.xcan't satisfy — so bun installs a second copy nested undernode_modules/@packrat-ai/nativewindui/. Both copies were the same55.0.10, so it was benign duplicate disk, but expo-doctor (correctly) flags it.@packrat-ai/nativewinduialready fixed this in nativewindui#19 → v2.1.0, which moved the expo-* peers to permissivepeerDependencies (>=55.0.0). Peers are provided by the app, so no nested copy.The fix
@packrat-ai/nativewindui2.0.3-2 → 2.1.0(rootoverrides+apps/expo+packages/ui). → dedupesexpo-image/expo-symbolsto a single copy.apps/expoexpo-* ranges to the SDK-expected patches (expo ~55.0.26,expo-router ~55.0.16,expo-file-system ~55.0.22, …) → clears the patch-version-mismatch check.Notes
expo-doctor19/19,check:catalogclean, biome clean.nativewindui2.0.3→2.1.0 is a minor bump (testIDs + peer ranges, additive); no API/behavior change beyond packaging. Worth a smoke build before merge.