Releases
v3.18.0
🚀 Features
adds support for both client-side and server-side remote URL uploads fetching (#10004 ) (38a06e7 )
support JPEG XL image size calculation (#10624 ) (6ebcbe4 )
adds multi-tenant plugin (#10447 ) (813e70b )
examples: add example with Remix + Payload Local API (#10171 ) (5a9cf89 )
richtext-lexical: add jsx and html converters for tab nodes (#10565 ) (2e09da8 )
ui: exposes context of the view being rendered on the server (#10620 ) (e80d679 )
🐛 Bug Fixes
updates field validation error messages to use labels if applicable (#10601 ) (ad553e9 )
delete scheduled publish jobs when deleting documents (#10584 ) (05b9d94 )
UpsertArgs is not exported in payload (#9347 ) (7a392dd )
form state read access control args (#10576 ) (05b03b2 )
missing find collection versions REST endpoint (#10573 ) (120735c )
basePath was not passed through if method was overriden (#10562 ) (90e1843 )
db-mongodb: incorrect errors logging due to invalid logic in handleError
(#10575 ) (9043b10 )
payload-cloud: add ts strict mode and fix a couple of wrong runtime behaviors (#10570 ) (16ad7a6 )
plugin-seo: loosen some types to restore compatibility between minor versions (#10670 ) (9c29541 )
plugin-stripe: hooks did not use api key from plugin config (#10671 ) (d2f63dc )
richtext-lexical: setting hideInsertParagraphAtEnd to true did not hide insert paragraph button (#10581 ) (8ab05b0 )
richtext-lexical: inline blocks did not store nested fields correctly (#10578 ) (61117ee )
richtext-lexical: ensure jsx and html converters do not output linebreak if editor is empty (#10563 ) (df4af70 )
richtext-slate: link and upload extra field drawers did not render fields if collection has unrelated access control set (#10583 ) (ecf0572 )
ui: renders custom block row labels (#10686 ) (6c19579 )
ui: fixed many bugs in the WhereBuilder relationship select menu (#10553 ) (56667cd )
ui: replace hard coded path to API with serverURL
and routes.api
(#10618 ) (5a95237 )
ui: placement issue with sonner toasts (#10641 ) (f1cc8bd )
ui: show outline on focus for sort column buttons (#9557 ) (818467d )
⚡ Performance
list view table should not send duplicative client CollectionConfig to client (#10664 ) (823e223 )
ensure deepCopy in beforeValidate hook does not run unnecessarily for rest and graphQL API (#10666 ) (b69fe99 )
optimize getEntityConfig lookups (#10665 ) (c07c9e9 )
remove deepCopying in sanitizeJoinQuery, optimize flattenWhereToOperators (#10663 ) (91ed882 )
operations performance optimizations (#10609 ) (42382b6 )
reduce document data deepCopying in field hooks (#10610 ) (116fd99 )
do not send minRows and maxRows undefined values to client (#10600 ) (0a1cf7b )
ensure unnecessary config translations are not sent to the client (#10524 ) (3fb6ac3 )
significantly reduce form state response size by up to 3x (#9388 ) (31ae27b )
richtext-lexical: ensure internal link nodes do not store url field, and vice versa (#10564 ) (5d6c29f )
ui: remove unnecessary deepCopy in reduceToSerializableFields (#10667 ) (a98a398 )
ui: speed up list view rendering, ensure root layout does not re-render when navigating to list view (#10607 ) (fafe37e )
📚 Documentation
🧪 Tests
📝 Templates
form fields will now respect 'required' flag from config on website template (#10681 ) (2d70269 )
add cache tag to images so that they can be revalidated along with the page on website templates (#10647 ) (7d10e1b )
bump for v3.17.1 (#10560 ) (592f02b )
📓 Examples
🔨 Build
move larger scripts into tools dir in workspace (#10653 ) (f18ca9c )
⚙️ CI
update canary script for tools dir (711febc )
add multi-tenant plugin to publish list (076ffa2 )
disable integration tests retrying (#10615 ) (28b7c04 )
access sha in dispatch event (5ee36fc )
dispatch event (f306785 )
scripts: publish-canary script always bump minor, more realistic [skip ci][skip lint] (4629784 )
🏡 Chores
set save-prefix='' for repo [skip ci] (ef4b8d9 )
run pnpm dev without dev - this improves error logging on init (#10669 ) (9215f03 )
adjust multi tenant version (#10640 ) (baad382 )
multi-tenant plugin updates (#10598 ) (0d47a5d )
enable noUncheckedIndexedAccess in all packages except richtext-lexical (#10592 ) (d4039f2 )
enable noImplicitOverride in all packages (#10588 ) (d55b6a3 )
update mongodb-memory-server v9 -> v10 (#10556 ) (918bd72 )
make TypeScript strict in test folder. Simplify tsconfig (#10582 ) (a304dc4 )
make TypeScript strict by default in packages and 7 packages stricter (#10579 ) (085c1d0 )
db-mongodb: update mongoose and mongodb deps (#10644 ) (00cc10c )
deps: upgrade various dependencies (#10657 ) (b6e9c3b )
deps: bumps path-to-regexp (8c3f6e1 )
examples: bumps custom components example to latest and runs seed on init (#10661 ) (9f5ffed )
richtext-lexical: add unit test that ensures lexical dependency checker is updated (#10561 ) (6a6ef8f )
templates: make TypeScript strict in website template (#10587 ) (2ce3829 )
🤝 Contributors
You can’t perform that action at this time.