This is a major release that includes a re-architecture of Payload from Express and a single-page React app to Next.js. In addition to this architectural change, we've also shipped a ton of large features, miscellaneous fixes, and DX improvements.
Architectural changes
Payload now installs fully in any Next.js app router
You can now deploy your entire project (frontend and backend) in one app
Payload can now be deployed serverless on platforms like Vercel
Everything Payload does now works seamlessly within any Next.js project
You can now use the Payload Local API in Server Components and Server Functions
Postgres, Live Preview, and Lexical have been marked as stable
All Payload exports have been significantly cleaned up and organized
Payload is now an ESM project
Payload is now modular, and we now publish new packages ui, next, translations, and graphql
The Payload config is now server-side only, and works in any Node environment
Server-side HMR works out of the box - removing the need for nodemon
Large features
Join field - bi-directional relationships, more control over the database schema, and more
Select API - select specific fields when querying using Local API
Jobs Queue - background jobs fully supported in Payload with no third-party dependencies
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
Bumps payload from 3.0.0-beta.76 to 3.0.0.
Release notes
Sourced from payload's releases.
... (truncated)
Commits
6407e57
chore(release): v3.0.0 [skip ci]fade739
chore(release): v3.0.0-beta.135 [skip ci]e40141b
fix: queues types withstrict: true
(#9281)ec95ce8
fix(next): passes doc through edit view handler (#9302)5503afd
fix: sanitize sub block field permissions correctly (#9296)30947d2
perf!: removes unnecessary field styles from initial page response (#9286)488c28c
fix: getPayload node exits on webpack-hmr websocket failure (#9279)7489c29
chore: dedupes field description functions and defers rendering static field ...d4f1add
feat(richtext-lexical): mdx support (#9160)cb6ceae
chore(release): v3.0.0-beta.134 [skip ci]Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting
@dependabot rebase
.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show