FazBrowse GitHub Viewer | Trending |
URL:
| Home
Tools: [Download Repo ZIP]   [Original HTTPS Page]

fix(expo,shared,clerk-react,localizations): Set minimum expo version … · clerk/javascript@65a236a · GitHub

Commit 65a236a

Browse files
authored
fix(expo,shared,clerk-react,localizations): Set minimum expo version to 53 (#7016)
1 parent dcc3319 commit 65a236a

31 files changed

Lines changed: 5185 additions & 6058 deletions

File tree

‎.changeset/set-minimum-expo-53.md‎

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
---
2+
'@clerk/expo': major
3+
'@clerk/expo-passkeys': major
4+
'@clerk/shared': major
5+
'@clerk/react': major
6+
'@clerk/localizations': major
7+
---
8+
9+
Drop support for Expo 50, 51 and 52. This release includes two breaking changes:
10+
11+
## 1. Updated Expo peer dependency requirements
12+
13+
**@clerk/clerk-expo**
14+
- **Added** new peer dependency: `expo: >=53 <55`
15+
- The core `expo` package is now explicitly required as a peer dependency
16+
- This ensures compatibility with the Expo SDK version range that supports the features used by Clerk
17+
18+
**@clerk/expo-passkeys**
19+
- **Updated** peer dependency: `expo: >=53 <55` (previously `>=50 <55`)
20+
- Minimum Expo version increased from 50 to 53
21+
- This aligns with the main `@clerk/clerk-expo` package requirements
22+
23+
## 2. Removed legacy subpath exports
24+
25+
The following packages have removed their legacy subpath export mappings:
26+
- `@clerk/clerk-expo`
27+
- `@clerk/shared`
28+
- `@clerk/clerk-react`
29+
- `@clerk/localizations`
30+
31+
**What changed:**
32+
Previously, these packages used a workaround to support subpath imports (e.g., `@clerk/shared/react`, `@clerk/clerk-expo/web`). These legacy exports have been removed in favor of modern package.json `exports` field configuration.
33+
34+
All public APIs remain available through the main package entry points.
35+
36+
37+

‎.github/workflows/ci.yml‎

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -117,7 +117,7 @@ jobs:
117117
turbo-token: ${{ secrets.TURBO_TOKEN }}
118118

119119
- name: Turbo Build
120-
run: pnpm turbo build $TURBO_ARGS --only
120+
run: pnpm turbo build $TURBO_ARGS --only --filter=!@clerk/elements
121121

122122
- name: Upload Turbo Summary
123123
uses: actions/upload-artifact@v4
@@ -245,7 +245,7 @@ jobs:
245245
run: |
246246
# Only run Typedoc tests for one matrix version
247247
if [ "${{ matrix.node-version }}" == "22" ]; then
248-
pnpm test:typedoc
248+
pnpm turbo run //#test:typedoc
249249
fi
250250
env:
251251
NODE_VERSION: ${{ matrix.node-version }}
@@ -280,14 +280,12 @@ jobs:
280280
"generic",
281281
"express",
282282
"ap-flows",
283-
"elements",
284283
"localhost",
285284
"sessions",
286285
"sessions:staging",
287286
"handshake",
288287
"handshake:staging",
289288
"astro",
290-
"expo-web",
291289
"tanstack-react-start",
292290
"vue",
293291
"nuxt",

‎integration/README.md‎

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -368,7 +368,6 @@ Assuming you have a `react-parcel` template defined in `integration/templates`,
368368
```
369369
370370
Here's what each thing is doing:
371-
372371
- `setName`: Set internal name
373372
- `useTemplate`: Define which template inside `integration/templates` to use
374373
- `setEnvFormatter`: Define how environment variables should be formatted. The first argument accepts `'public'` and `'private'`. Inside [`envs.ts`](./presets/envs.ts) the environment variables you can use through [`withEnv`](#environment-configs) are defined. Since different frameworks require environment variables to be in different formats (e.g. Next.js wants public env vars to be prefixed with `NEXT_PUBLIC_`) you can use this formatter to change that.

‎integration/templates/expo-web/package.json‎

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@
1515
"dependencies": {
1616
"@expo/vector-icons": "^14.0.2",
1717
"@react-navigation/native": "^6.0.2",
18-
"expo": "~51.0.17",
18+
"expo": "~53",
1919
"expo-constants": "~16.0.2",
2020
"expo-font": "~12.0.7",
2121
"expo-linking": "~6.3.1",
@@ -24,9 +24,9 @@
2424
"expo-status-bar": "~1.12.1",
2525
"expo-system-ui": "~3.0.6",
2626
"expo-web-browser": "~13.0.3",
27-
"react": "18.3.1",
28-
"react-dom": "18.3.1",
29-
"react-native": "0.74.3",
27+
"react": "19.2.0",
28+
"react-dom": "19.2.0",
29+
"react-native": "0.82.1",
3030
"react-native-gesture-handler": "~2.16.1",
3131
"react-native-reanimated": "~3.10.1",
3232
"react-native-safe-area-context": "4.10.9",

‎package.json‎

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
"private": true,
55
"license": "MIT",
66
"scripts": {
7-
"build": "FORCE_COLOR=1 turbo build --concurrency=${TURBO_CONCURRENCY:-80%}",
7+
"build": "FORCE_COLOR=1 turbo build --concurrency=${TURBO_CONCURRENCY:-80%} --filter=!@clerk/elements",
88
"build:declarations": "FORCE_COLOR=1 turbo build:declarations --concurrency=${TURBO_CONCURRENCY:-80%} --filter=@clerk/nextjs --filter=@clerk/react --filter=@clerk/shared --filter=@clerk/types",
99
"bundlewatch": "turbo bundlewatch",
1010
"changeset": "changeset",
@@ -38,7 +38,7 @@
3838
"test:integration:custom": "pnpm test:integration:base --grep @custom",
3939
"test:integration:deployment:nextjs": "pnpm playwright test --config integration/playwright.deployments.config.ts",
4040
"test:integration:elements": "E2E_APP_ID=elements.* pnpm test:integration:base --grep @elements",
41-
"test:integration:expo-web": "E2E_APP_ID=expo.expo-web pnpm test:integration:base --grep @expo-web",
41+
"test:integration:expo-web:disabled": "E2E_APP_ID=expo.expo-web pnpm test:integration:base --grep @expo-web",
4242
"test:integration:express": "E2E_APP_ID=express.* pnpm test:integration:base --grep @express",
4343
"test:integration:generic": "E2E_APP_ID=react.vite.*,next.appRouter.withEmailCodes* pnpm test:integration:base --grep @generic",
4444
"test:integration:handshake": "DISABLE_WEB_SECURITY=true E2E_APP_1_ENV_KEY=sessions-prod-1 E2E_SESSIONS_APP_1_HOST=multiple-apps-e2e.clerk.app pnpm test:integration:base --grep @handshake",
@@ -55,7 +55,7 @@
5555
"test:integration:vue": "E2E_APP_ID=vue.vite pnpm test:integration:base --grep @vue",
5656
"test:typedoc": "pnpm typedoc:generate && cd ./.typedoc && vitest run",
5757
"turbo:clean": "turbo daemon clean",
58-
"typedoc:generate": "pnpm build:declarations && pnpm typedoc:generate:skip-build",
58+
"typedoc:generate": "pnpm build && pnpm typedoc:generate:skip-build",
5959
"typedoc:generate:skip-build": "typedoc --tsconfig tsconfig.typedoc.json && rm -rf .typedoc/docs && mv .typedoc/temp-docs .typedoc/docs",
6060
"version-packages": "changeset version && pnpm install --lockfile-only --engine-strict=false",
6161
"version-packages:canary": "./scripts/canary.mjs",

‎packages/clerk-js/src/core/auth/cookies/devBrowser.ts‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,10 +12,10 @@ export type DevBrowserCookieHandler = {
1212
remove: () => void;
1313
};
1414

15-
const getCookieAttributes = (): { sameSite: string; secure: boolean } => {
15+
const getCookieAttributes = () => {
1616
const sameSite = inCrossOriginIframe() ? 'None' : 'Lax';
1717
const secure = getSecureAttribute(sameSite);
18-
return { sameSite, secure };
18+
return { sameSite, secure } as const;
1919
};
2020

2121
/**

‎packages/clerk-js/src/core/auth/cookies/session.ts‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,11 +13,11 @@ export type SessionCookieHandler = {
1313
get: () => string | undefined;
1414
};
1515

16-
const getCookieAttributes = (): { sameSite: string; secure: boolean; partitioned: boolean } => {
16+
const getCookieAttributes = () => {
1717
const sameSite = __BUILD_VARIANT_CHIPS__ ? 'None' : inCrossOriginIframe() ? 'None' : 'Lax';
1818
const secure = getSecureAttribute(sameSite);
1919
const partitioned = __BUILD_VARIANT_CHIPS__ && secure;
20-
return { sameSite, secure, partitioned };
20+
return { sameSite, secure, partitioned } as const;
2121
};
2222

2323
/**

‎packages/elements/package.json‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,9 +58,9 @@
5858
"app:dev:debug:ui": "(cd examples/nextjs && NEXT_PUBLIC_CLERK_ELEMENTS_DEBUG_UI=true pnpm dev)",
5959
"app:e2e": "(cd examples/nextjs && pnpm e2e)",
6060
"app:lint": "(cd examples/nextjs && pnpm lint)",
61-
"build": "tsup --env.NODE_ENV production",
6261
"build:analyze": "tsup --env.NODE_ENV production --metafile; open https://esbuild.github.io/analyze/",
6362
"build:declarations": "tsc -p tsconfig.declarations.json",
63+
"build:disable": "tsup --env.NODE_ENV production",
6464
"dev": "tsup --env.NODE_ENV development --watch",
6565
"dev:example": "concurrently \"pnpm dev\" \"pnpm app:dev\"",
6666
"format": "node ../../scripts/format-package.mjs",

‎packages/expo-passkeys/package.json‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@
4040
"expo": "~52.0.47"
4141
},
4242
"peerDependencies": {
43-
"expo": ">=50 <55",
43+
"expo": ">=53 <55",
4444
"react": "catalog:peer-react",
4545
"react-native": "*"
4646
}

‎packages/expo/local-credentials/package.json‎

Lines changed: 0 additions & 4 deletions
This file was deleted.

0 commit comments

Comments
 (0)

Back | FazBrowse Home | New Git URL