Skip to content

Commit 9ff6422

Browse files
authored
Merge branch 'vincent-and-the-doctor' into feat/protect-refactor
2 parents e007eed + 21a1cd9 commit 9ff6422

File tree

96 files changed

+705
-436
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

96 files changed

+705
-436
lines changed

.changeset/odd-rice-swim.md

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
---
2+
'@clerk/ui': major
3+
---
4+
5+
Removes `simple` theme export from UI package in favor of using the `simple` theme via the appearance prop:
6+
7+
```tsx
8+
<ClerkProvider appearance={{ theme: 'simple' }} />
9+
```

.github/actions/verdaccio/action.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -75,7 +75,7 @@ runs:
7575
- name: Print published Clerk package versions
7676
shell: bash
7777
run: |
78-
echo "Published @clerk packages under 'integration' tag:"
78+
echo "Published @clerk packages (snapshot versions):"
7979
echo "=================================================="
8080
packages=(
8181
"@clerk/agent-toolkit"
@@ -102,6 +102,6 @@ runs:
102102
"@clerk/vue"
103103
)
104104
for pkg in "${packages[@]}"; do
105-
version=$(pnpm view "$pkg@integration" version 2>/dev/null || echo "not found")
106-
printf "%-35s %s\n" "$pkg@integration:" "$version"
105+
version=$(pnpm view "$pkg" version 2>/dev/null || echo "not found")
106+
printf "%-35s %s\n" "$pkg:" "$version"
107107
done

.github/labeler.yml

Lines changed: 59 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -1,61 +1,100 @@
11
# See https://github.com/actions/labeler
22

33
astro:
4-
- packages/astro/**
4+
- changed-files:
5+
- any-glob-to-any-file: packages/astro/**
56

67
backend:
7-
- packages/backend/**
8+
- changed-files:
9+
- any-glob-to-any-file: packages/backend/**
810

911
chrome-extension:
10-
- packages/chrome-extension/**
12+
- changed-files:
13+
- any-glob-to-any-file: packages/chrome-extension/**
1114

1215
clerk-js:
13-
- packages/clerk-js/**
16+
- changed-files:
17+
- any-glob-to-any-file: packages/clerk-js/**
18+
19+
elements:
20+
- changed-files:
21+
- any-glob-to-any-file: packages/elements/**
1422

1523
expo:
16-
- packages/expo/**
24+
- changed-files:
25+
- any-glob-to-any-file: packages/expo/**
1726

1827
express:
19-
- packages/express/**
28+
- changed-files:
29+
- any-glob-to-any-file: packages/express/**
2030

2131
fastify:
22-
- packages/fastify/**
32+
- changed-files:
33+
- any-glob-to-any-file: packages/fastify/**
2334

2435
localizations:
25-
- packages/localizations/**
36+
- changed-files:
37+
- any-glob-to-any-file: packages/localizations/**
2638

2739
nextjs:
28-
- packages/nextjs/**
40+
- changed-files:
41+
- any-glob-to-any-file: packages/nextjs/**
2942

3043
nuxt:
31-
- packages/nuxt/**
44+
- changed-files:
45+
- any-glob-to-any-file: packages/nuxt/**
3246

3347
react:
34-
- packages/react/**
48+
- changed-files:
49+
- any-glob-to-any-file: packages/react/**
3550

3651
react-router:
37-
- packages/react-router/**
52+
- changed-files:
53+
- any-glob-to-any-file: packages/react-router/**
54+
55+
remix:
56+
- changed-files:
57+
- any-glob-to-any-file: packages/remix/**
3858

3959
tanstack:
40-
- packages/tanstack-react-start/**
60+
- changed-files:
61+
- any-glob-to-any-file: packages/tanstack-react-start/**
4162

4263
testing:
43-
- packages/testing/**
64+
- changed-files:
65+
- any-glob-to-any-file: packages/testing/**
4466

4567
themes:
46-
- packages/themes/**
68+
- changed-files:
69+
- any-glob-to-any-file: packages/themes/**
70+
71+
types:
72+
- changed-files:
73+
- any-glob-to-any-file: packages/types/**
4774

4875
vue:
49-
- packages/vue/**
76+
- changed-files:
77+
- any-glob-to-any-file: packages/vue/**
5078

5179
playground:
52-
- playground/**
80+
- changed-files:
81+
- any-glob-to-any-file: playground/**
5382

5483
actions:
55-
- .github/workflows/**
84+
- changed-files:
85+
- any-glob-to-any-file: .github/workflows/**
5686

5787
integration:
58-
- integration/**
88+
- changed-files:
89+
- any-glob-to-any-file: integration/**
5990

6091
agent-toolkit:
61-
- packages/agent-toolkit/**
92+
- changed-files:
93+
- any-glob-to-any-file: packages/agent-toolkit/**
94+
95+
# Base branch labels
96+
core2:
97+
- base-branch: '^main$'
98+
99+
core3:
100+
- base-branch: '^vincent-and-the-doctor$'

.github/workflows/ci.yml

Lines changed: 36 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -64,10 +64,10 @@ jobs:
6464
- name: Setup
6565
id: config
6666
uses: ./.github/actions/init-blacksmith
67-
with:
68-
turbo-signature: ${{ secrets.TURBO_REMOTE_CACHE_SIGNATURE_KEY }}
69-
turbo-team: ${{ vars.TURBO_TEAM }}
70-
turbo-token: ${{ secrets.TURBO_TOKEN }}
67+
# with:
68+
# turbo-signature: ${{ secrets.TURBO_REMOTE_CACHE_SIGNATURE_KEY }}
69+
# turbo-team: ${{ vars.TURBO_TEAM }}
70+
# turbo-token: ${{ secrets.TURBO_TOKEN }}
7171

7272
- name: Verify lockfile is deduped
7373
run: pnpm dedupe --check
@@ -110,11 +110,11 @@ jobs:
110110
- name: Setup
111111
id: config
112112
uses: ./.github/actions/init-blacksmith
113-
with:
114-
turbo-signature: ${{ secrets.TURBO_REMOTE_CACHE_SIGNATURE_KEY }}
115-
turbo-summarize: ${{ env.TURBO_SUMMARIZE }}
116-
turbo-team: ${{ vars.TURBO_TEAM }}
117-
turbo-token: ${{ secrets.TURBO_TOKEN }}
113+
# with:
114+
# turbo-signature: ${{ secrets.TURBO_REMOTE_CACHE_SIGNATURE_KEY }}
115+
# turbo-summarize: ${{ env.TURBO_SUMMARIZE }}
116+
# turbo-team: ${{ vars.TURBO_TEAM }}
117+
# turbo-token: ${{ secrets.TURBO_TOKEN }}
118118

119119
- name: Turbo Build
120120
run: pnpm turbo build $TURBO_ARGS --only
@@ -154,11 +154,11 @@ jobs:
154154
- name: Setup
155155
id: config
156156
uses: ./.github/actions/init-blacksmith
157-
with:
158-
turbo-signature: ${{ secrets.TURBO_REMOTE_CACHE_SIGNATURE_KEY }}
159-
turbo-summarize: ${{ env.TURBO_SUMMARIZE }}
160-
turbo-team: ${{ vars.TURBO_TEAM }}
161-
turbo-token: ${{ secrets.TURBO_TOKEN }}
157+
# with:
158+
# turbo-signature: ${{ secrets.TURBO_REMOTE_CACHE_SIGNATURE_KEY }}
159+
# turbo-summarize: ${{ env.TURBO_SUMMARIZE }}
160+
# turbo-team: ${{ vars.TURBO_TEAM }}
161+
# turbo-token: ${{ secrets.TURBO_TOKEN }}
162162

163163
- name: Check size using bundlewatch
164164
continue-on-error: true
@@ -231,10 +231,10 @@ jobs:
231231
with:
232232
# Ensures that all builds are cached appropriately with a consistent run name `Unit Tests (20)`.
233233
node-version: ${{ matrix.node-version }}
234-
turbo-signature: ${{ secrets.TURBO_REMOTE_CACHE_SIGNATURE_KEY }}
235-
turbo-summarize: ${{ env.TURBO_SUMMARIZE }}
236-
turbo-team: ${{ vars.TURBO_TEAM }}
237-
turbo-token: ${{ secrets.TURBO_TOKEN }}
234+
# turbo-signature: ${{ secrets.TURBO_REMOTE_CACHE_SIGNATURE_KEY }}
235+
# turbo-summarize: ${{ env.TURBO_SUMMARIZE }}
236+
# turbo-team: ${{ vars.TURBO_TEAM }}
237+
# turbo-token: ${{ secrets.TURBO_TOKEN }}
238238

239239
- name: Rebuild @clerk/shared with CLERK_USE_RQ=true
240240
if: ${{ matrix.clerk-use-rq == 'true' }}
@@ -280,7 +280,8 @@ jobs:
280280
retention-days: 5
281281

282282
integration-tests:
283-
needs: [check-permissions, build-packages]
283+
# needs: [check-permissions, build-packages]
284+
needs: [check-permissions]
284285
if: ${{ github.event_name != 'pull_request' || github.event.pull_request.draft == false }}
285286
name: Integration Tests (${{ matrix.test-name }}, ${{ matrix.test-project }}${{ matrix.next-version && format(', {0}', matrix.next-version) || '' }}${{ matrix.clerk-use-rq == 'true' && ', RQ' || '' }})
286287
permissions:
@@ -355,9 +356,9 @@ jobs:
355356
id: config
356357
uses: ./.github/actions/init-blacksmith
357358
with:
358-
turbo-signature: ${{ secrets.TURBO_REMOTE_CACHE_SIGNATURE_KEY }}
359-
turbo-team: ${{ vars.TURBO_TEAM }}
360-
turbo-token: ${{ secrets.TURBO_TOKEN }}
359+
# turbo-signature: ${{ secrets.TURBO_REMOTE_CACHE_SIGNATURE_KEY }}
360+
# turbo-team: ${{ vars.TURBO_TEAM }}
361+
# turbo-token: ${{ secrets.TURBO_TOKEN }}
361362
playwright-enabled: true
362363

363364
- name: Verify jq is installed
@@ -405,12 +406,16 @@ jobs:
405406
env:
406407
CLERK_USE_RQ: true
407408

409+
- name: Version packages for snapshot
410+
if: ${{ steps.task-status.outputs.affected == '1' }}
411+
run: npm run version-packages:snapshot ci
412+
408413
- name: Verdaccio
409414
if: ${{ steps.task-status.outputs.affected == '1' }}
410415
uses: ./.github/actions/verdaccio
411416
with:
412417
publish-cmd: |
413-
if [ "$(pnpm config get registry)" = "https://registry.npmjs.org/" ]; then echo 'Error: Using default registry' && exit 1; else CLERK_USE_RQ=${{ matrix.clerk-use-rq }} pnpm turbo build $TURBO_ARGS --only && pnpm changeset publish --no-git-tag --tag integration; fi
418+
if [ "$(pnpm config get registry)" = "https://registry.npmjs.org/" ]; then echo 'Error: Using default registry' && exit 1; else ${{ matrix.clerk-use-rq == 'true' && 'CLERK_USE_RQ=true' || '' }} pnpm turbo build $TURBO_ARGS --only && pnpm changeset publish --no-git-tag --tag latest; fi
414419
415420
- name: Edit .npmrc [link-workspace-packages=false]
416421
run: sed -i -E 's/link-workspace-packages=(deep|true)/link-workspace-packages=false/' .npmrc
@@ -423,6 +428,8 @@ jobs:
423428
pnpm config set minimum-release-age-exclude @clerk/*
424429
pnpm add @clerk/backend
425430
431+
# Install published packages from Verdaccio to test against real npm install scenarios
432+
# rather than local monorepo builds. Validates package structure, dependencies, and entry points.
426433
- name: Install @clerk/clerk-js in os temp
427434
if: ${{ steps.task-status.outputs.affected == '1' }}
428435
working-directory: ${{runner.temp}}
@@ -474,6 +481,7 @@ jobs:
474481
timeout-minutes: 25
475482
run: pnpm turbo test:integration:${{ matrix.test-name }} $TURBO_ARGS
476483
env:
484+
E2E_DEBUG: "1"
477485
E2E_APP_CLERK_JS_DIR: ${{runner.temp}}
478486
E2E_APP_CLERK_UI_DIR: ${{runner.temp}}
479487
E2E_CLERK_JS_VERSION: "latest"
@@ -483,8 +491,8 @@ jobs:
483491
E2E_CLERK_ENCRYPTION_KEY: ${{ matrix.clerk-encryption-key }}
484492
CLERK_USE_RQ: ${{ matrix.clerk-use-rq }}
485493
INTEGRATION_INSTANCE_KEYS: ${{ secrets.INTEGRATION_INSTANCE_KEYS }}
486-
MAILSAC_API_KEY: ${{ secrets.MAILSAC_API_KEY }}
487494
NODE_EXTRA_CA_CERTS: ${{ github.workspace }}/integration/certs/rootCA.pem
495+
VERCEL_AUTOMATION_BYPASS_SECRET: ${{ secrets.VERCEL_AUTOMATION_BYPASS_SECRET }}
488496

489497
- name: Upload test-results
490498
if: ${{ cancelled() || failure() }}
@@ -518,10 +526,10 @@ jobs:
518526
with:
519527
turbo-enabled: true
520528
node-version: 22
521-
turbo-signature: ${{ secrets.TURBO_REMOTE_CACHE_SIGNATURE_KEY }}
522-
turbo-summarize: ${{ env.TURBO_SUMMARIZE }}
523-
turbo-team: ${{ vars.TURBO_TEAM }}
524-
turbo-token: ${{ secrets.TURBO_TOKEN }}
529+
# turbo-signature: ${{ secrets.TURBO_REMOTE_CACHE_SIGNATURE_KEY }}
530+
# turbo-summarize: ${{ env.TURBO_SUMMARIZE }}
531+
# turbo-team: ${{ vars.TURBO_TEAM }}
532+
# turbo-token: ${{ secrets.TURBO_TOKEN }}
525533

526534
- name: Publish with pkg-pr-new
527535
run: pnpm run build && pnpx pkg-pr-new@${{ vars.PKG_PR_NEW_VERSION || '0.0.49' }} publish --compact --pnpm './packages/*'

.github/workflows/labeler.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,6 @@ jobs:
1616
with:
1717
fetch-depth: 0
1818
show-progress: false
19-
- uses: actions/labeler@v4
19+
- uses: actions/labeler@v6
2020
with:
2121
repo-token: ${{ secrets.CLERK_COOKIE_PAT }}

.github/workflows/nightly-checks.yml

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -68,10 +68,9 @@ jobs:
6868
E2E_CLERK_UI_VERSION: "latest"
6969
E2E_NEXTJS_VERSION: "canary"
7070
E2E_NPM_FORCE: "true"
71-
E2E_REACT_DOM_VERSION: "19.1.0"
72-
E2E_REACT_VERSION: "19.1.0"
71+
E2E_REACT_DOM_VERSION: "19.2.1"
72+
E2E_REACT_VERSION: "19.2.1"
7373
INTEGRATION_INSTANCE_KEYS: ${{ secrets.INTEGRATION_INSTANCE_KEYS }}
74-
MAILSAC_API_KEY: ${{ secrets.MAILSAC_API_KEY }}
7574

7675
# Upload test artifacts if tests failed
7776
- name: Upload Test Artifacts

integration/.env.local.sample

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
MAILSAC_API_KEY=
21
VERCEL_PROJECT_ID=
32
VERCEL_ORG_ID=
43
VERCEL_TOKEN=

integration/README.md

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -75,10 +75,10 @@ Below you can find code snippets for running tests in a specific manner, easily
7575

7676
#### Keep temporary site
7777

78-
During E2E runs a temporary site is created in which the template is copied into. If you want to keep the site around, pass the `CLEANUP` environment variable:
78+
During E2E runs a temporary site is created in which the template is copied into. If you want to keep the site around, pass the `E2E_CLEANUP` environment variable:
7979

8080
```shell
81-
CLEANUP=0 pnpm test:integration:base
81+
E2E_CLEANUP=0 pnpm test:integration:base
8282
```
8383

8484
For all available environment variables, check the [`constants.ts`](../integration/constants.ts) file.
@@ -578,7 +578,6 @@ Before writing tests, it's important to understand how Playwright handles test i
578578
> [!NOTE]
579579
> The test suite also uses these environment variables to run some tests:
580580
>
581-
> - `MAILSAC_API_KEY`: Used for [Mailsac](https://mailsac.com/) to retrieve email codes and magic links from temporary email addresses.
582581
> - `VERCEL_PROJECT_ID`: Only required if you plan on running deployment tests locally. This is the Vercel project ID, and it points to an application created via the Vercel dashboard. The easiest way to get access to it is by linking a local app to the Vercel project using the Vercel CLI, and then copying the values from the `.vercel` directory.
583582
> - `VERCEL_ORG_ID`: The organization that owns the Vercel project. See above for more details.
584583
> - `VERCEL_TOKEN`: A personal access token. This corresponds to a real user running the deployment command. Attention: Be extra careful with this token as it can't be scoped to a single Vercel project, meaning that the token has access to every project in the account it belongs to.

integration/constants.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -38,10 +38,10 @@ export const constants = {
3838
*/
3939
E2E_APP_CLERK_UI_DIR: process.env.E2E_APP_CLERK_UI_DIR,
4040
/**
41-
* If CLEANUP=0 is used, the .tmp_integration directory will not be deleted.
41+
* If E2E_CLEANUP=0 is used, the .tmp_integration directory will not be deleted.
4242
* This is useful for debugging locally.
4343
*/
44-
CLEANUP: !(process.env.CLEANUP === '0' || process.env.CLEANUP === 'false'),
44+
E2E_CLEANUP: !(process.env.E2E_CLEANUP === '0' || process.env.E2E_CLEANUP === 'false'),
4545
DEBUG: process.env.DEBUG === 'true' || process.env.DEBUG === '1',
4646
/**
4747
* Used with E2E_APP_URL if the tests need to access BAPI.

0 commit comments

Comments
 (0)