Uh oh!
There was an error while loading. Please reload this page.
fix(expo): preserve mounted native auth view - #9644
Conversation
The latest updates on your projects. Learn more about Vercel for GitHub.
|
🦋 Changeset detectedLatest commit: 32b61d8 The changes in this PR will be included in the next version bump. This PR includes changesets to release 1 package
Not sure what this means? Click here to learn what changesets are. Click here if you're a maintainer who wants to add another changeset to this PR |
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Repository YAML (base), Organization UI (inherited) Review profile: ASSERTIVE Plan: Team Run ID: 📒 Files selected for processing (3)
🔗 Linked repositories identifiedCodeRabbit considers these linked repositories for cross-repo context during reviews:
Included review availability: 9 reviews are currently available. Your included PR review attempts over the past 7 days set your current allowance at 10 reviews per hour. 📝 WalkthroughWalkthroughThe Expo iOS native view host now skips configuration-driven updates when a hosted controller is already attached. The hosting coordinator exposes whether a controller is attached. Tests cover controller preservation, deferred attachment after configuration, and repeated-notification idempotence. Test utilities mount and unmount the host view and track hosted-controller creation. A patch changeset documents the Estimated code review effort: 2 (Simple) | ~10 minutes Merge Risk:⚪ Minimal · up to The iOS Expo AuthView now retains its mounted native controller across Clerk configuration refreshes, preventing authentication navigation and enrollment prompts from being reset while still attaching a controller when configuration becomes available. The covered behavior is ready to merge with no active current-head risk identified. 🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
Full details: Docstring CoverageExplanation Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 6 functions across 2 files. (1 skipped: 1 unsupported.)
Warning Linked repositories: Your configuration references 7 linked repositories, but your current plan allows 5. Analyzed Comment |
@clerk/astro@clerk/backend@clerk/chrome-extension@clerk/clerk-js@clerk/electron@clerk/electron-passkeys@clerk/eslint-plugin@clerk/expo@clerk/expo-google-signin@clerk/expo-passkeys@clerk/express@clerk/fastify@clerk/hono@clerk/localizations@clerk/nextjs@clerk/nuxt@clerk/react@clerk/react-router@clerk/shared@clerk/tanstack-react-start@clerk/testing@clerk/ui@clerk/upgrade@clerk/vuecommit: |
API Changes Report
Summary
No API Changes DetectedAll packages have stable APIs with no detected changes. Report generated by Break Check Last ran on |
Description
Prevents an already-mounted native iOS
AuthViewfrom being replaced when the Clerk SDK configuration refreshes. Replacing the hosting controller could reset the native navigation stack during post-authentication flows, causing prompts such as trusted-device enrollment to disappear before the user could respond.Configuration notifications will still attach the native controller when it was initially unavailable. Tests cover both preserving an existing controller and attaching one after delayed configuration.
To test, render an Expo
AuthViewusingmode="signInOrUp"andisDismissible={false}, then complete authentication with a user eligible for trusted-device enrollment. Confirm that the enrollment prompt remains visible after the authentication state synchronizes and can be completed normally.Fix related to: https://app.plain.com/workspace/w_01GT53BQWV3DFW6ECTWZNQ1E9K/thread/th_01M0ZRA3A0JFDP0QG0P15SWPDD
Checklist
pnpm testruns as expected.pnpm buildruns as expected.Type of change