v3.50.0
payloadcms/payloadv3.50.0Aug 5, 2025by denolfe
AI Summary
This release introduces trash support for the count operation, allows passing `count: true` to GraphQL join queries, and improves performance with a 23% faster job queue system on Postgres and SQLite. It also includes various bug fixes for the Next.js version view, trash filtering, and UI components.
Key Highlights
- Trash support added to the count operation
- GraphQL count support for join queries
- 23% faster job queue system
- Fixes for Next.js version view and trash filtering
New Features
- Hooks for restoreVersion collection operation
- Trash support for the count operation
- GraphQL count support in join queries
- Indonesian translations
Full Release Notes
## [v3.50.0](https://github.com/payloadcms/payload/compare/v3.49.1...v3.50.0) (2025-08-05) ### ๐ Features * add hooks to restoreVersion collection operation ([#13333](https://github.com/payloadcms/payload/issues/13333)) ([9031f3b](https://github.com/payloadcms/payload/commit/9031f3b)) * adds trash support to the count operation ([#13304](https://github.com/payloadcms/payload/issues/13304)) ([1175508](https://github.com/payloadcms/payload/commit/1175508)) * **graphql:** allow to pass `count: true` to a join query ([#13351](https://github.com/payloadcms/payload/issues/13351)) ([f432cc1](https://github.com/payloadcms/payload/commit/f432cc1)) * **translations:** add Indonesian translations ([#13323](https://github.com/payloadcms/payload/issues/13323)) ([df91321](https://github.com/payloadcms/payload/commit/df91321)) ### ๐ Bug Fixes * deletedAt in TypeWithID not accepting null from generated types ([#13363](https://github.com/payloadcms/payload/issues/13363)) ([8401b21](https://github.com/payloadcms/payload/commit/8401b21)) * svg uploads allowed when glob ([#13356](https://github.com/payloadcms/payload/issues/13356)) ([43b4b22](https://github.com/payloadcms/payload/commit/43b4b22)) * querying `hasMany: true` select fields inside polymorphic joins ([#13334](https://github.com/payloadcms/payload/issues/13334)) ([b26a73b](https://github.com/payloadcms/payload/commit/b26a73b)) * **next:** version view did not properly handle field-level permissions ([#13336](https://github.com/payloadcms/payload/issues/13336)) ([1d70d4d](https://github.com/payloadcms/payload/commit/1d70d4d)) * **next:** incorrect version view stepnav value ([#13305](https://github.com/payloadcms/payload/issues/13305)) ([8a48941](https://github.com/payloadcms/payload/commit/8a48941)) * **next:** safely access relationTo value from relationship field ([#13337](https://github.com/payloadcms/payload/issues/13337)) ([095e7d9](https://github.com/payloadcms/payload/commit/095e7d9)) * **next:** incorrect doc link in trash view with groupBy enabled ([#13332](https://github.com/payloadcms/payload/issues/13332)) ([c48b57f](https://github.com/payloadcms/payload/commit/c48b57f)) * **next:** cannot filter trash ([#13320](https://github.com/payloadcms/payload/issues/13320)) ([e7124f6](https://github.com/payloadcms/payload/commit/e7124f6)) * **plugin-multi-tenant:** constrain results to assigned tenants when present ([#13365](https://github.com/payloadcms/payload/issues/13365)) ([20b4de9](https://github.com/payloadcms/payload/commit/20b4de9)) * **richtext-lexical:** recursively unwrap generic Slate nodes in Lexical migration converter ([#13202](https://github.com/payloadcms/payload/issues/13202)) ([227a20e](https://github.com/payloadcms/payload/commit/227a20e)) * **ui:** fallback to default locale checkbox passes wrong value ([#12396](https://github.com/payloadcms/payload/issues/12396)) ([b74f4fb](https://github.com/payloadcms/payload/commit/b74f4fb)) * **ui:** group/array error paths persisting when valid ([#13347](https://github.com/payloadcms/payload/issues/13347)) ([2903486](https://github.com/payloadcms/payload/commit/2903486)) * **ui:** add hidden sidebar fields css specificity ([#13344](https://github.com/payloadcms/payload/issues/13344)) ([b965db8](https://github.com/payloadcms/payload/commit/b965db8)) * **ui:** hide sidebar when no fields rendered ([#13340](https://github.com/payloadcms/payload/issues/13340)) ([1b93c4b](https://github.com/payloadcms/payload/commit/1b93c4b)) * **ui:** incorrect padding when using rtl ([#13338](https://github.com/payloadcms/payload/issues/13338)) ([f2d4004](https://github.com/payloadcms/payload/commit/f2d4004)) ### โก Performance * 23% faster job queue system on postgres/sqlite ([#13187](https://github.com/payloadcms/payload/issues/13187)) ([3114b89](https://github.com/payloadcms/payload/commit/3114b89)) * **ui:** only select the useAsTitle field when fetching the document data of a relationship value ([#13228](https://github.com/payloadcms/payload/issues/13228)) ([1b31c74](https://github.com/payloadcms/payload/commit/1b31c74)) ### ๐งช Tests * adds e2e tests for auth enabled collections with trash enabled ([#13317](https://github.com/payloadcms/payload/issues/13317)) ([a8b6983](https://github.com/payloadcms/payload/commit/a8b6983)) * stabilize frequent fails ([#13318](https://github.com/payloadcms/payload/issues/13318)) ([a22f27d](https://github.com/payloadcms/payload/commit/a22f27d)) ### ๐ก Chores * adds session helper exports ([#13367](https://github.com/payloadcms/payload/issues/13367)) ([3b9dba8](https://github.com/payloadcms/payload/commit/3b9dba8)) ### ๐ค Contributors - Jessica Rynkar (@jessrynkar) - Patrik (@PatrikKozak) - Jarrod Flesch (@JarrodMFlesch) - Alessio Gravili (@AlessioGr) - Jens Becker (@jhb-dev) - Sasha (@r1tsuu) - Muhammad Nizar (@mnizarzr) - Evelyn Hathaway (@evelynhathaway)