Skip to content

Commit 52a080b

Browse files
committed
Merge branch 'main' of github.com:payloadcms/payload into fix/drizzle
2 parents fb05d7f + 4e2e4d2 commit 52a080b

1,692 files changed

Lines changed: 54451 additions & 23114 deletions

File tree

Some content is hidden

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

.github/ISSUE_TEMPLATE/1.bug_report_v3.yml

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,7 @@ body:
4343
- 'plugin: cloud'
4444
- 'plugin: cloud-storage'
4545
- 'plugin: form-builder'
46+
- 'plugin: multi-tenant'
4647
- 'plugin: nested-docs'
4748
- 'plugin: richtext-lexical'
4849
- 'plugin: richtext-slate'
@@ -59,10 +60,7 @@ body:
5960
label: Environment Info
6061
description: Paste output from `pnpm payload info` _or_ Payload, Node.js, and Next.js versions. Please avoid using "latest"—specific version numbers help us accurately diagnose and resolve issues.
6162
render: text
62-
placeholder: |
63-
Payload:
64-
Node.js:
65-
Next.js:
63+
placeholder: Run `pnpm payload info` in your terminal and paste the output here.
6664
validations:
6765
required: true
6866

.github/actions/setup/action.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ inputs:
66
node-version:
77
description: Node.js version
88
required: true
9-
default: 22.6.0
9+
default: 23.11.0
1010
pnpm-version:
1111
description: Pnpm version
1212
required: true

.github/workflows/main.yml

Lines changed: 141 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ on:
66
- opened
77
- reopened
88
- synchronize
9+
- labeled
910
push:
1011
branches:
1112
- main
@@ -16,7 +17,7 @@ concurrency:
1617
cancel-in-progress: true
1718

1819
env:
19-
NODE_VERSION: 22.6.0
20+
NODE_VERSION: 23.11.0
2021
PNPM_VERSION: 9.7.1
2122
DO_NOT_TRACK: 1 # Disable Turbopack telemetry
2223
NEXT_TELEMETRY_DISABLED: 1 # Disable Next telemetry
@@ -62,12 +63,6 @@ jobs:
6263
echo "templates: ${{ steps.filter.outputs.templates }}"
6364
6465
lint:
65-
# Follows same github's ci skip: [skip lint], [lint skip], [no lint]
66-
if: >
67-
github.event_name == 'pull_request' &&
68-
!contains(github.event.pull_request.title, '[skip lint]') &&
69-
!contains(github.event.pull_request.title, '[lint skip]') &&
70-
!contains(github.event.pull_request.title, '[no lint]')
7166
runs-on: ubuntu-24.04
7267
steps:
7368
- uses: actions/checkout@v4
@@ -81,10 +76,8 @@ jobs:
8176
pnpm-version: ${{ env.PNPM_VERSION }}
8277
pnpm-install-cache-key: pnpm-store-${{ hashFiles('**/pnpm-lock.yaml') }}
8378

84-
- name: Lint staged
85-
run: |
86-
git diff --name-only --diff-filter=d origin/${GITHUB_BASE_REF}...${GITHUB_SHA}
87-
npx lint-staged --diff="origin/${GITHUB_BASE_REF}...${GITHUB_SHA}"
79+
- name: Lint
80+
run: pnpm lint -- --quiet
8881

8982
build:
9083
needs: changes
@@ -371,7 +364,7 @@ jobs:
371364
run: pnpm exec playwright install-deps chromium
372365

373366
- name: E2E Tests
374-
run: PLAYWRIGHT_JSON_OUTPUT_NAME=results_${{ matrix.suite }}.json pnpm test:e2e:prod:ci ${{ matrix.suite }}
367+
run: PLAYWRIGHT_JSON_OUTPUT_NAME=results_${{ matrix.suite }}.json pnpm test:e2e:prod:ci:noturbo ${{ matrix.suite }}
375368
env:
376369
PLAYWRIGHT_JSON_OUTPUT_NAME: results_${{ matrix.suite }}.json
377370
NEXT_TELEMETRY_DISABLED: 1
@@ -391,6 +384,142 @@ jobs:
391384
# report-tag: ${{ matrix.suite }}
392385
# job-summary: true
393386

387+
tests-e2e-turbo:
388+
runs-on: ubuntu-24.04
389+
needs: [changes, build]
390+
if: >-
391+
needs.changes.outputs.needs_tests == 'true' &&
392+
(
393+
contains(github.event.pull_request.labels.*.name, 'run-e2e-turbo') ||
394+
github.event.label.name == 'run-e2e-turbo'
395+
)
396+
name: e2e-turbo-${{ matrix.suite }}
397+
strategy:
398+
fail-fast: false
399+
matrix:
400+
# find test -type f -name 'e2e.spec.ts' | sort | xargs dirname | xargs -I {} basename {}
401+
suite:
402+
- _community
403+
- access-control
404+
- admin__e2e__general
405+
- admin__e2e__list-view
406+
- admin__e2e__document-view
407+
- admin-bar
408+
- admin-root
409+
- auth
410+
- auth-basic
411+
- bulk-edit
412+
- joins
413+
- field-error-states
414+
- fields-relationship
415+
- fields__collections__Array
416+
- fields__collections__Blocks
417+
- fields__collections__Blocks#config.blockreferences.ts
418+
- fields__collections__Checkbox
419+
- fields__collections__Collapsible
420+
- fields__collections__ConditionalLogic
421+
- fields__collections__CustomID
422+
- fields__collections__Date
423+
- fields__collections__Email
424+
- fields__collections__Indexed
425+
- fields__collections__JSON
426+
- fields__collections__Number
427+
- fields__collections__Point
428+
- fields__collections__Radio
429+
- fields__collections__Relationship
430+
- fields__collections__Row
431+
- fields__collections__Select
432+
- fields__collections__Tabs
433+
- fields__collections__Tabs2
434+
- fields__collections__Text
435+
- fields__collections__UI
436+
- fields__collections__Upload
437+
- hooks
438+
- lexical__collections__Lexical__e2e__main
439+
- lexical__collections__Lexical__e2e__blocks
440+
- lexical__collections__Lexical__e2e__blocks#config.blockreferences.ts
441+
- lexical__collections__RichText
442+
- query-presets
443+
- form-state
444+
- live-preview
445+
- localization
446+
- locked-documents
447+
- i18n
448+
- plugin-cloud-storage
449+
- plugin-form-builder
450+
- plugin-import-export
451+
- plugin-nested-docs
452+
- plugin-seo
453+
- sort
454+
- versions
455+
- uploads
456+
env:
457+
SUITE_NAME: ${{ matrix.suite }}
458+
steps:
459+
- uses: actions/checkout@v4
460+
461+
- name: Node setup
462+
uses: ./.github/actions/setup
463+
with:
464+
node-version: ${{ env.NODE_VERSION }}
465+
pnpm-version: ${{ env.PNPM_VERSION }}
466+
pnpm-run-install: false
467+
pnpm-restore-cache: false # Full build is restored below
468+
pnpm-install-cache-key: pnpm-store-${{ hashFiles('**/pnpm-lock.yaml') }}
469+
470+
- name: Restore build
471+
uses: actions/cache@v4
472+
with:
473+
path: ./*
474+
key: ${{ github.sha }}-${{ github.run_number }}
475+
476+
- name: Start LocalStack
477+
run: pnpm docker:start
478+
if: ${{ matrix.suite == 'plugin-cloud-storage' }}
479+
480+
- name: Store Playwright's Version
481+
run: |
482+
# Extract the version number using a more targeted regex pattern with awk
483+
PLAYWRIGHT_VERSION=$(pnpm ls @playwright/test --depth=0 | awk '/@playwright\/test/ {print $2}')
484+
echo "Playwright's Version: $PLAYWRIGHT_VERSION"
485+
echo "PLAYWRIGHT_VERSION=$PLAYWRIGHT_VERSION" >> $GITHUB_ENV
486+
487+
- name: Cache Playwright Browsers for Playwright's Version
488+
id: cache-playwright-browsers
489+
uses: actions/cache@v4
490+
with:
491+
path: ~/.cache/ms-playwright
492+
key: playwright-browsers-${{ env.PLAYWRIGHT_VERSION }}
493+
494+
- name: Setup Playwright - Browsers and Dependencies
495+
if: steps.cache-playwright-browsers.outputs.cache-hit != 'true'
496+
run: pnpm exec playwright install --with-deps chromium
497+
498+
- name: Setup Playwright - Dependencies-only
499+
if: steps.cache-playwright-browsers.outputs.cache-hit == 'true'
500+
run: pnpm exec playwright install-deps chromium
501+
502+
- name: E2E Tests
503+
run: PLAYWRIGHT_JSON_OUTPUT_NAME=results_${{ matrix.suite }}.json pnpm test:e2e:prod:ci ${{ matrix.suite }}
504+
env:
505+
PLAYWRIGHT_JSON_OUTPUT_NAME: results_${{ matrix.suite }}.json
506+
NEXT_TELEMETRY_DISABLED: 1
507+
508+
- uses: actions/upload-artifact@v4
509+
if: always()
510+
with:
511+
name: test-results-turbo${{ matrix.suite }}
512+
path: test/test-results/
513+
if-no-files-found: ignore
514+
retention-days: 1
515+
516+
# Disabled until this is fixed: https://github.com/daun/playwright-report-summary/issues/156
517+
# - uses: daun/playwright-report-summary@v3
518+
# with:
519+
# report-file: results_${{ matrix.suite }}.json
520+
# report-tag: ${{ matrix.suite }}
521+
# job-summary: true
522+
394523
# Build listed templates with packed local packages
395524
build-templates:
396525
runs-on: ubuntu-24.04

.github/workflows/post-release-templates.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ on:
77
workflow_dispatch:
88

99
env:
10-
NODE_VERSION: 22.6.0
10+
NODE_VERSION: 23.11.0
1111
PNPM_VERSION: 9.7.1
1212
DO_NOT_TRACK: 1 # Disable Turbopack telemetry
1313
NEXT_TELEMETRY_DISABLED: 1 # Disable Next telemetry

.github/workflows/post-release.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ on:
1212
default: ''
1313

1414
env:
15-
NODE_VERSION: 22.6.0
15+
NODE_VERSION: 23.11.0
1616
PNPM_VERSION: 9.7.1
1717
DO_NOT_TRACK: 1 # Disable Turbopack telemetry
1818
NEXT_TELEMETRY_DISABLED: 1 # Disable Next telemetry

.github/workflows/publish-prerelease.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ on:
77
workflow_dispatch:
88

99
env:
10-
NODE_VERSION: 22.6.0
10+
NODE_VERSION: 23.11.0
1111
PNPM_VERSION: 9.7.1
1212
DO_NOT_TRACK: 1 # Disable Turbopack telemetry
1313
NEXT_TELEMETRY_DISABLED: 1 # Disable Next telemetry

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ package-lock.json
33
dist
44
/.idea/*
55
!/.idea/runConfigurations
6+
/.idea/runConfigurations/_template*
67
!/.idea/payload.iml
78

89
# Custom actions

.idea/runConfigurations/_template__of_JavaScriptTestRunnerJest.xml

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

.node-version

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
v22.6.0
1+
v23.11.0

.nvmrc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
v22.6.0
1+
v23.11.0

0 commit comments

Comments
 (0)