v3.56.0
payloadcms/payloadv3.56.0Sep 17, 2025by denolfe
AI Summary
Enhancements to the job system include global `beforeOperation` hooks and reliable crons. The live preview system receives stability fixes, and new admin UI context exports are added.
Key Highlights
- New global `beforeOperation` hook
- Improved job queue reliability with new crons
- Task callbacks now accept args
- Live preview cache reset per subscription
- Export FieldPathContext from UI
New Features
- Pass args to task `onSuccess` and `onFail` callbacks
- Crons for all bin scripts
- Expose multipart/form-data parsing options
- Global beforeOperation hook
- UI export FieldPathContext
Full Release Notes
## [v3.56.0](https://github.com/payloadcms/payload/compare/v3.55.1...v3.56.0) (2025-09-17) ### 🚀 Features * pass args to task `onSuccess` and `onFail` callbacks ([#13269](https://github.com/payloadcms/payload/issues/13269)) ([3acdbf6](https://github.com/payloadcms/payload/commit/3acdbf6)) * crons for all bin scripts, new jobs:handle-schedules script, more reliable job system crons ([#13564](https://github.com/payloadcms/payload/issues/13564)) ([cdeb828](https://github.com/payloadcms/payload/commit/cdeb828)) * expose multipart/form-data parsing options ([#13766](https://github.com/payloadcms/payload/issues/13766)) ([8282031](https://github.com/payloadcms/payload/commit/8282031)) * global beforeOperation hook ([#13768](https://github.com/payloadcms/payload/issues/13768)) ([3af546e](https://github.com/payloadcms/payload/commit/3af546e)) * **ui:** export FieldPathContext ([#13806](https://github.com/payloadcms/payload/issues/13806)) ([a3acfeb](https://github.com/payloadcms/payload/commit/a3acfeb)) ### 🐛 Bug Fixes * add missed `pagination` property to `findVersions` and `findGlobalVersions` and handle it properly ([#13763](https://github.com/payloadcms/payload/issues/13763)) ([a955392](https://github.com/payloadcms/payload/commit/a955392)) * skip validation when trashing documents with empty required fields ([#13807](https://github.com/payloadcms/payload/issues/13807)) ([3b13867](https://github.com/payloadcms/payload/commit/3b13867)) * versions created with incomplete data when using `select` parameter ([#13809](https://github.com/payloadcms/payload/issues/13809)) ([faed3aa](https://github.com/payloadcms/payload/commit/faed3aa)) * error accessing sanitizedPermissions during docAccess operation: "Cannot read properties of undefined" ([#13800](https://github.com/payloadcms/payload/issues/13800)) ([c7795fa](https://github.com/payloadcms/payload/commit/c7795fa)) * typo in the description of the isTemp field of query presets ([#13728](https://github.com/payloadcms/payload/issues/13728)) ([e75bfb0](https://github.com/payloadcms/payload/commit/e75bfb0)) * fully sanitize unauthenticated client config ([#13785](https://github.com/payloadcms/payload/issues/13785)) ([e2632c8](https://github.com/payloadcms/payload/commit/e2632c8)) * client config context inheritance ([#13790](https://github.com/payloadcms/payload/issues/13790)) ([dfb0021](https://github.com/payloadcms/payload/commit/dfb0021)) * **db-mongodb:** support 2x and more relationship sorting ([#13819](https://github.com/payloadcms/payload/issues/13819)) ([24ace70](https://github.com/payloadcms/payload/commit/24ace70)) * **db-mongodb:** localized arrays inside blocks with versions ([#13804](https://github.com/payloadcms/payload/issues/13804)) ([09dec43](https://github.com/payloadcms/payload/commit/09dec43)) * **examples:** secure mt example users collection ([#13810](https://github.com/payloadcms/payload/issues/13810)) ([9a841df](https://github.com/payloadcms/payload/commit/9a841df)) * **live-preview:** client-side live preview failed to populate localized fields ([#13794](https://github.com/payloadcms/payload/issues/13794)) ([b34e5ea](https://github.com/payloadcms/payload/commit/b34e5ea)) * **live-preview:** reset cache per subscription and ignore invalid preview messages ([#13793](https://github.com/payloadcms/payload/issues/13793)) ([b62a30a](https://github.com/payloadcms/payload/commit/b62a30a)) * **next:** unnamed, unlabeled groups displayed without label in version view ([#13831](https://github.com/payloadcms/payload/issues/13831)) ([8d3b146](https://github.com/payloadcms/payload/commit/8d3b146)) * **next:** sparse block and arrays diffs were not rendered correctly ([#13829](https://github.com/payloadcms/payload/issues/13829)) ([433c513](https://github.com/payloadcms/payload/commit/433c513)) * **next:** exclude permissions from page response when unauthenticated ([#13796](https://github.com/payloadcms/payload/issues/13796)) ([8113d3b](https://github.com/payloadcms/payload/commit/8113d3b)) * **next:** richtext field is read-only for expired lock ([#13789](https://github.com/payloadcms/payload/issues/13789)) ([4278e72](https://github.com/payloadcms/payload/commit/4278e72)) * **next:** login redirect crashes page ([#13786](https://github.com/payloadcms/payload/issues/13786)) ([13af91f](https://github.com/payloadcms/payload/commit/13af91f)) * **next:** resolve filterOptions by path ([#13779](https://github.com/payloadcms/payload/issues/13779)) ([8a7124a](https://github.com/payloadcms/payload/commit/8a7124a)) * **translations:** use correct Dutch terms for "clear" and "close" ([#13748](https://github.com/payloadcms/payload/issues/13748)) ([fce94d6](https://github.com/payloadcms/payload/commit/fce94d6)) * **ui:** pass locale arg in query params for folder operations ([#13837](https://github.com/payloadcms/payload/issues/13837)) ([c0684e3](https://github.com/payloadcms/payload/commit/c0684e3)) * **ui:** correct field path in inline create drawer for auth fields ([#13815](https://github.com/payloadcms/payload/issues/13815)) ([91e7f0c](https://github.com/payloadcms/payload/commit/91e7f0c)) * **ui:** populate nested fields for enableListViewSelectAPI ([#13827](https://github.com/payloadcms/payload/issues/13827)) ([dc732b8](https://github.com/payloadcms/payload/commit/dc732b8)) * **ui:** cross-domain server-side live preview throws postMessage error ([#13825](https://github.com/payloadcms/payload/issues/13825)) ([731c4fb](https://github.com/payloadcms/payload/commit/731c4fb)) * **ui:** undefined operators for virtual field with unsupported field types ([#13820](https://github.com/payloadcms/payload/issues/13820)) ([5c02d17](https://github.com/payloadcms/payload/commit/5c02d17)) * **ui:** prevent form validation after draft submit error ([#12918](https://github.com/payloadcms/payload/issues/12918)) ([a2c31fa](https://github.com/payloadcms/payload/commit/a2c31fa)) * **ui:** show loading state in relationship field during search and pagination ([#13805](https://github.com/payloadcms/payload/issues/13805)) ([555228b](https://github.com/payloadcms/payload/commit/555228b)) * **ui:** safely access preferences when loading list view ([#13771](https://github.com/payloadcms/payload/issues/13771)) ([4482eaf](https://github.com/payloadcms/payload/commit/4482eaf)) ### 📚 Documentation * improvements and fixes to blocks documentation ([#13782](https://github.com/payloadcms/payload/issues/13782)) ([3c5aa1b](https://github.com/payloadcms/payload/commit/3c5aa1b)) ### 📝 Templates * fix experimental-build-mode compile generating invalid code ([#13828](https://github.com/payloadcms/payload/issues/13828)) ([ba2ab2f](https://github.com/payloadcms/payload/commit/ba2ab2f)) ### ⚙️ CI * adjust audit-dependencies cron time ([898e937](https://github.com/payloadcms/payload/commit/898e937)) ### 🤝 Contributors - Jarrod Flesch (@JarrodMFlesch) - Alessio Gravili (@AlessioGr) - Jonathan Elmgren (@jonathanelmgren) - Sasha (@r1tsuu) - Jacob Fletcher (@jacobsfletch) - Patrik (@PatrikKozak) - Slava Nossar (@slavanossar) - Philipp Schneider (@philipp-tailor) - Elliot DeNolf (@denolfe) - Amelia (@LimChorngUan) - BrannanKovachev (@BrannanKovachev) - Robbe Vaes (@Robbe95) - Robbert Stevens (@robbertstevens) - Anders Semb Hermansen (@andershermansen) - German Jablonski (@GermanJablo)