Change8

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