Skip to content

fix(expo): dedupe expo native modules via nativewindui 2.1.0 + SDK patch alignment#2542

Open
andrew-bierman wants to merge 2 commits into
developmentfrom
chore/dedupe-expo
Open

fix(expo): dedupe expo native modules via nativewindui 2.1.0 + SDK patch alignment#2542
andrew-bierman wants to merge 2 commits into
developmentfrom
chore/dedupe-expo

Conversation

@andrew-bierman

Copy link
Copy Markdown
Collaborator

Clears both expo-doctor failures on development (19/19 now, was 17/19). Dep-only change — no app code.

Root cause of the duplicate native modules

expo-doctor flagged duplicate expo-image / expo-symbols. The cause was the stale @packrat-ai/nativewindui@2.0.3-2 pin: that old release declares pre-SDK-unified ranges (expo-image: ~3.0.11, expo-symbols: ~1.0.8) as dependencies, which 55.x can't satisfy — so bun installs a second copy nested under node_modules/@packrat-ai/nativewindui/. Both copies were the same 55.0.10, so it was benign duplicate disk, but expo-doctor (correctly) flags it.

@packrat-ai/nativewindui already fixed this in nativewindui#19v2.1.0, which moved the expo-* peers to permissive peerDependencies (>=55.0.0). Peers are provided by the app, so no nested copy.

The fix

  • Bump @packrat-ai/nativewindui 2.0.3-2 → 2.1.0 (root overrides + apps/expo + packages/ui). → dedupes expo-image/expo-symbols to a single copy.
  • Align the 9 lagging apps/expo expo-* 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

  • No full lock regen — targeted incremental install, +377 lock lines (the nativewindui subtree + the 9 expo-* patch bumps), not a 2900-line re-resolution.
  • expo-doctor 19/19, check:catalog clean, biome clean.
  • nativewindui 2.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.

…(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.
Copilot AI review requested due to automatic review settings June 1, 2026 16:23
@coderabbitai

coderabbitai Bot commented Jun 1, 2026

Copy link
Copy Markdown
Contributor

Important

Review skipped

Auto reviews are disabled on base/target branches other than the default branch.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 83af6f7a-3e27-49a2-98ea-0dd111c972c5

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch chore/dedupe-expo

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.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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/nativewindui to 2.1.0 across the repo (root overrides + consuming workspaces) to eliminate duplicate expo-image / expo-symbols installs.
  • Align apps/expo Expo SDK package patch versions (e.g., expo, expo-router, expo-file-system, expo-updates, etc.) to SDK-expected patches.
  • Update bun.lock to 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.

@cloudflare-workers-and-pages

cloudflare-workers-and-pages Bot commented Jun 16, 2026

Copy link
Copy Markdown
Contributor

Deploying packrat-guides with  Cloudflare Pages  Cloudflare Pages

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

View logs

@cloudflare-workers-and-pages

cloudflare-workers-and-pages Bot commented Jun 16, 2026

Copy link
Copy Markdown
Contributor

Deploying with  Cloudflare Workers  Cloudflare Workers

The latest updates on your project. Learn more about integrating Git with Workers.

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

@cloudflare-workers-and-pages

Copy link
Copy Markdown
Contributor

Deploying packrat-landing with  Cloudflare Pages  Cloudflare Pages

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

View logs

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants