v3.54.0

payloadcms/payloadv3.54.0Aug 28, 2025by denolfe

AI Summary

Performance and stability improvements include parallel job queue tasks, configurable toast notifications, and support for atomic array updates in database adapters.

Key Highlights

  • Parallel job queue tasks for speed
  • Configurable toast notifications
  • Support atomic array $push db updates
  • Allow multiple Payload instances in same process
  • Re-enable global selector on multi-tenant views

New Features

  • Support parallel job queue tasks
  • Configurable toast notifications
  • Allow multiple, different payload instances
  • Support atomic array $push db updates
  • Plugin-multi-tenant allow custom tenant field
  • Plugin-multi-tenant re-enable global selector

Full Release Notes

## [v3.54.0](https://github.com/payloadcms/payload/compare/v3.53.0...v3.54.0) (2025-08-28)


### 🚀 Features

* support parallel job queue tasks, speed up task running ([#13614](https://github.com/payloadcms/payload/issues/13614)) ([e0ffada](https://github.com/payloadcms/payload/commit/e0ffada))
* configurable toast notifications ([#13609](https://github.com/payloadcms/payload/issues/13609)) ([0a18306](https://github.com/payloadcms/payload/commit/0a18306))
* allow multiple, different payload instances using getPayload in same process ([#13603](https://github.com/payloadcms/payload/issues/13603)) ([13c24af](https://github.com/payloadcms/payload/commit/13c24af))
* **db-*:** support atomic array $push db updates ([#13453](https://github.com/payloadcms/payload/issues/13453)) ([5ded64e](https://github.com/payloadcms/payload/commit/5ded64e))
* **plugin-multi-tenant:** allow custom tenant field per collection ([#13553](https://github.com/payloadcms/payload/issues/13553)) ([6db07f0](https://github.com/payloadcms/payload/commit/6db07f0))
* **plugin-multi-tenant:** re-enable global selector on all views ([#13575](https://github.com/payloadcms/payload/issues/13575)) ([f260d0a](https://github.com/payloadcms/payload/commit/f260d0a))

### 🐛 Bug Fixes

* restore as draft function was passing a published status ([#13599](https://github.com/payloadcms/payload/issues/13599)) ([a670438](https://github.com/payloadcms/payload/commit/a670438))
* hide jobs stats global by default ([#13566](https://github.com/payloadcms/payload/issues/13566)) ([a92c251](https://github.com/payloadcms/payload/commit/a92c251))
* deeply merge array and block rows from server form state ([#13551](https://github.com/payloadcms/payload/issues/13551)) ([1e13474](https://github.com/payloadcms/payload/commit/1e13474))
* ensure updates to createdAt and updatedAt are respected ([#13335](https://github.com/payloadcms/payload/issues/13335)) ([5c16443](https://github.com/payloadcms/payload/commit/5c16443))
* **db-*:** add delete version id for non-mongodb ([#10613](https://github.com/payloadcms/payload/issues/10613)) ([ddb8ca4](https://github.com/payloadcms/payload/commit/ddb8ca4))
* **graphql:** invalid enum names when values include brackets ([#13597](https://github.com/payloadcms/payload/issues/13597)) ([1dc346a](https://github.com/payloadcms/payload/commit/1dc346a))
* **next:** richtext fields not read-only for locked documents ([#13579](https://github.com/payloadcms/payload/issues/13579)) ([344ad69](https://github.com/payloadcms/payload/commit/344ad69))
* **next:** update rest route handler types for Next.js 15.5 compatibility ([#13521](https://github.com/payloadcms/payload/issues/13521)) ([763cb61](https://github.com/payloadcms/payload/commit/763cb61))
* **plugin-multi-tenant:** prevent duplicate filters on referenced blocks ([#13607](https://github.com/payloadcms/payload/issues/13607)) ([03a00ca](https://github.com/payloadcms/payload/commit/03a00ca))
* **plugin-multi-tenant:** autosave global documents not rendering ([#13552](https://github.com/payloadcms/payload/issues/13552)) ([409dd56](https://github.com/payloadcms/payload/commit/409dd56))
* **richtext-lexical:** toolbar dropdown items are disabled when selecting via double-click ([#13544](https://github.com/payloadcms/payload/issues/13544)) ([3bc1d08](https://github.com/payloadcms/payload/commit/3bc1d08))
* **ui:** prevent infinite redirect if no user ([#13615](https://github.com/payloadcms/payload/issues/13615)) ([303381e](https://github.com/payloadcms/payload/commit/303381e))
* **ui:** bulk edit overwriting fields within named tabs ([#13600](https://github.com/payloadcms/payload/issues/13600)) ([138938e](https://github.com/payloadcms/payload/commit/138938e))
* **ui:** autosave in document drawer overwrites local changes ([#13587](https://github.com/payloadcms/payload/issues/13587)) ([bd81936](https://github.com/payloadcms/payload/commit/bd81936))
* **ui:** multiple logout requests being made in parallel ([#13595](https://github.com/payloadcms/payload/issues/13595)) ([cf37433](https://github.com/payloadcms/payload/commit/cf37433))
* **ui:** auth-fields container renders despite no visible auth/API key/verify content ([#13554](https://github.com/payloadcms/payload/issues/13554)) ([8101842](https://github.com/payloadcms/payload/commit/8101842))
* **ui:** correctly pass query params to locked document requests ([#10802](https://github.com/payloadcms/payload/issues/10802)) ([598ff4c](https://github.com/payloadcms/payload/commit/598ff4c))

### 🛠 Refactors

* deprecate job queue runHooks property ([#13617](https://github.com/payloadcms/payload/issues/13617)) ([97c41ce](https://github.com/payloadcms/payload/commit/97c41ce))

### 📚 Documentation

* adds default populate video ([#13586](https://github.com/payloadcms/payload/issues/13586)) ([ded8ec4](https://github.com/payloadcms/payload/commit/ded8ec4))
* blank-template-url-fix ([#13580](https://github.com/payloadcms/payload/issues/13580)) ([45c3be2](https://github.com/payloadcms/payload/commit/45c3be2))
* fix small typo in documentation ([#13545](https://github.com/payloadcms/payload/issues/13545)) ([3408d7b](https://github.com/payloadcms/payload/commit/3408d7b))

### ⚙️ CI

* remove run-e2e-turbo flow ([#13611](https://github.com/payloadcms/payload/issues/13611)) ([5c41966](https://github.com/payloadcms/payload/commit/5c41966))
* ignore template bump commits in release notes [skip ci] ([60cfc31](https://github.com/payloadcms/payload/commit/60cfc31))

### 🤝 Contributors

- Alessio Gravili (@AlessioGr)
- Jarrod Flesch (@JarrodMFlesch)
- Jacob Fletcher (@jacobsfletch)
- Jessica Rynkar (@jessrynkar)
- Sean Zubrickas (@zubricks)
- Elliot DeNolf (@denolfe)
- Patrik (@PatrikKozak)
- Rodrigo Solís (@sorodrigo)
- Logan Stellway (@lstellway)
- Yunsup Sim (@SimYunSup)
- Vincent Vu (@rubixvi)