v3.59.0
📦 payload-cmsView on GitHub →
✨ 12 features🐛 29 fixes🔧 20 symbols
Summary
Version v3.59.0 introduces significant feature enhancements, including a new slug field, deeper relationship querying in `findDistinct`, and improved database adapter support across D1, MongoDB, and Postgres. Numerous bug fixes address issues across database operations, Next.js integration, plugins, and the rich text editor.
✨ New Features
- Introduced the slug field.
- Added support for any depth for relationships in `findDistinct`.
- Added `disableGroupBy` option to fields admin props.
- Allowed `findDistinct` on fields nested to relationships and on virtual fields.
- Bundled types.
- Cloudflare template added to `create-payload-app` command (cpa).
- Added support for readReplicas in D1 adapter configuration (db-*).
- Added atomic array operations for relationship fields in db-mongodb and drizzle adapters.
- Next.js integration now exports views and passes all props to custom dashboard view.
- Plugin-nested-docs now passes collection config as an argument to generateURL and generateLabel.
- Added support for disabling join field row types in the UI.
- Implemented live preview conditions in the UI.
🐛 Bug Fixes
- Added detection for the --experimental-https flag.
- Fixed missing cross-env in deploy:database.
- Added support for USE_HTTPS for local HMR.
- Updated packages list for `pnpm payload info`.
- Fixed `autosave: true` not working on `payload.update` with `where` clause.
- Fixed db-d1-sqlite avoiding bound parameter limit when querying relationships and inserting rows.
- Fixed localized blocks with fallback and versions in db-mongodb.
- Fixed db-postgres Drizzle not recognizing types from generated types.
- Fixed db-postgres querying multiple hasMany text or number fields.
- Fixed db-postgres joins count with hasMany relationships.
- Fixed Drizzle generate DB schema syntax deprecation warning (this seems to be a fix related to a deprecation notice).
- Fixed GraphQL error when querying hasMany relationships if some documents were deleted.
- Fixed Next.js forcing inactive live preview after passing conditions.
- Fixed Next.js preventing locale upsert when not authenticated.
- Fixed plugin-ecommerce variants `validateOptions` errors with SQLite when creating a new variant.
- Removed chalk dependency from plugin-multi-tenant.
- Fixed plugin-search handling trashed documents in search plugin sync.
- Fixed Richtext-Lexical field.admin overrides being ignored in RenderLexical helper.
- Fixed Richtext-Lexical slash menu arrow keys not being respected when a block is nearby.
- Fixed incorrect `fetch` initialization on Cloudflare in the SDK.
- Fixed storage-r2 uploading with the correct contentType.
- Fixed storage-uploadthing hiding the key field from filters and columns.
- Fixed templates ignoring wrangler when bundling to fix template styles.
- Fixed templates adding missing CLOUDFLARE_ENV in cloudflare template when optimizing database.
- Fixed templates not using remote bindings in cloudflare template when developing locally.
- Fixed templates ecommerce wrong links in readme/docs and issue with missing graphql dependency.
- Fixed templates correcting typo in footer text.
- Refined Persian (fa) translations for clarity and natural tone.
- Fixed Icelandic translations.
🔧 Affected Symbols
findDistinctcreate-payload-appD1 adapterdb-mongodbdrizzlenextplugin-nested-docsgenerateURLgenerateLabelplugin-ecommercevalidateOptionsplugin-multi-tenantplugin-searchrichtext-lexicalRenderLexicalsdkfetchstorage-r2storage-uploadthingwrangler