Repository navigation
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
🦋 Changeset detectedLatest commit: f7867f2 The changes in this PR will be included in the next version bump. This PR includes changesets to release 0 packagesWhen changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types 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 |
|
Important Draft PR not reviewedDraft PRs are not automatically reviewed by default.
To automatically review draft PRs, update your CodeRabbit configuration: reviews:
auto_review:
drafts: true
Comment |
5fa1eaf to
ec9a54c
Compare
441f8a7 to
871298f
Compare
ec9a54c to
1b59ac3
Compare
871298f to
5a9f6ab
Compare
1b59ac3 to
6949318
Compare
5a9f6ab to
3b195e5
Compare
Remove configure, getClientToken, syncClientStateFromJs and the clerkNativeClientChanged event from the iOS and Android ClerkExpo module, along with the client observation loop and JS-sync suppression state that only served them. The JS engine now uses configureNative, getDeviceToken, setDeviceToken, refreshClient and clerkNativeClientInvalidated. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
6949318 to
19cadb4
Compare
3b195e5 to
6e0d687
Compare
…vascript into mike/expo-native-remove-legacy-sync
…ove-legacy-sync Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…ove-legacy-sync Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…ove-legacy-sync Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…ove-legacy-sync Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…ove-legacy-sync Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…ove-legacy-sync Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…ove-legacy-sync Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…ove-legacy-sync Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
f7867f2
into
mike/expo-native-sync-engine
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
|
Folded into #9956: its branch was fast-forwarded to this one, so GitHub shows this PR as merged into #9956's branch. Nothing landed on 🤖 Generated with Claude Code |
Description
Stacked on #9956 (stack: main ← #9989 ← #9955 ← #9957 ← #9954 ← #9956 ← this PR ← #9962). #9956 moved
@clerk/expoto the new client sync engine, which only usesconfigureNative,getDeviceToken,setDeviceToken,refreshClientand theclerkNativeClientInvalidatedevent from #9957. This PR removes the legacy native sync path from@clerk/expo-native-componentsthat nothing calls any more.Removed on iOS (
ClerkExpoModule.swift,ClerkNativeBridge.swift) and Android (ClerkExpoModule.kt):configure(publishableKey, bearerToken),getClientToken()andsyncClientStateFromJs(...).clerkNativeClientChangedevent, with its emitter and payload builder, and the Android companionemitClientChanged.lastObservedClientState,jsOriginatedClientSyncDepthand the client-state snapshot/changes types. On iOS this also removesclientObservationGeneration,syncTokenStateandwaitForLoadedClient. On Android it removesclientStateObserverJob,emitSyncedClientChangedand the unusedsharedInstance.configureNativeno longer starts that loop.Unchanged: auth-flow state and
clerkNativeAuthFlowChanged,getAuthFlowState, pending callback URL handling, client invalidation, and the trusted-device / biometric reverification functions. The shared iOS event queue stays because the auth-flow and invalidation emitters still use it.Native views:
ClerkNativeViewHostattaches its controller onceClerkNativeBridgeis configured, and retries on theclerkNativeSDKDidConfigurenotification.configureNativealready posts that notification when it configures or reconfigures the SDK, so views mounted before configuration still attach. The legacyconfigureposted it only after waiting (up to 3s) forClerk.shared.isLoaded.configureNativeposts it as soon as ClerkKit is configured, as it already did in feat(expo): simplify native client sync engine and remove the legacy bridge #9956. The hosted SwiftUI views observeClerk.shared, so they update when the client loads.configureawaiting initialization.ClerkAuthViewModulerecreatesAuthViewwhenClerk.isInitializedflips, and the UserButton/UserProfile views collectClerk.userFlow. Only a comment that referred toconfigure()changed.No TypeScript types for the legacy methods were left in
@clerk/expoor@clerk/expo-native-components. One test mock in@clerk/exponow usesconfigureNativeinstead ofconfigure.@clerk/expo-native-componentsis unreleased, so this uses an empty changeset.Checklist
pnpm testruns as expected.pnpm buildruns as expected.Type of change
🤖 Generated with Claude Code