What payloadcms/payload shipped
Written by FoxPlug from the repository's own releases; not affiliated with Payloadcms. Paste your own repository in the box below and FoxPlug writes the same weekly update for your product. This page is an automatic summary of the releases, pull requests and commits in github.com/payloadcms/payload; Payloadcms did not write it and does not use or endorse FoxPlug. Every line links to the change it describes.
Get a weekly update like this for your product, free
Week of November 2, 2026
What shipped
- Added auth.refreshTokens to auth collections, so login can return a refresh token that the refresh operation trades for a new token even after the token expired. Pull request #19040
- Removed the -original filename suffix from retained upload originals, so new uploads keep the uploaded filename and file role is read from document fields. Pull request #19210
- Fixed cross-tenant bulk actions by passing the server-side baseFilter down so select-all edits no longer affect every tenant a user can access. Pull request #19301
- Fixed localized draft status handling so shared draft changes mark every locale as draft while localized-only saves preserve the other locale statuses. Pull request #17367
- Set req.user._strategy for users logged in by custom auth strategies, so it reflects the strategy name as documented. Pull request #19313
- Deduplicated expanded hierarchy node IDs before fetching children, fixing duplicate React keys when an ID arrives as both a string and a number. Pull request #18464
- Made the original upload preview show the original file instead of the admin thumbnail on collections with sizes. Pull request #19362
- Scoped the rendered locale to the admin page so Back keeps content, locale selector and saves in the same locale. Pull request #19370
- Fixed MongoDB joins across multiple collections on hasMany relationships, which broke the hierarchy children join for documents with createTagField. Pull request #18819
- Removed white inset highlights from dark modal shadows so rounded modal corners no longer show a pale rim. Pull request #19345
Why it matters
This week brought two releases, v4.0.0-beta.7 and v3.93.0, both noted as containing vital security updates. It also added refresh tokens to auth collections and changed how retained upload originals are named, while fixing cross-tenant bulk actions, localized draft handling and MongoDB joins on hasMany relationships.
Changelog entry
- Feat!: add refresh tokens to auth collections via auth.refreshTokens Pull request #19040
- Fix!: remove the -original suffix from retained upload originals Pull request #19210
- Fix(ui): prevent cross-tenant bulk actions by applying the server baseFilter Pull request #19301
- Fix: preserve shared localized draft changes when draft saves touch non-localized fields Pull request #17367
- Fix: set _strategy for users logged in by custom auth strategies Pull request #19313
- Fix: deduplicate expanded hierarchy node IDs before fetching children Pull request #18464
- Fix(ui): show the original file in the upload preview instead of the admin thumbnail Pull request #19362
- Fix(ui): scope rendered locale to the admin page Pull request #19370
- Fix(db-mongodb): join across multiple collections on hasMany relationships Pull request #18819
- Fix(ui): remove inset highlights from dark modal shadows Pull request #19345
- Release: v4.0.0-beta.7 Release
- Release: v3.93.0 Release
V4.0.0-beta.7 and v3.93.0 are out, both with vital security updates. Also this week: refresh tokens for auth collections, retained upload originals now keep the uploaded filename, and fixes for cross-tenant bulk actions and MongoDB hasMany joins.
V4.0.0-beta.7 and v3.93.0 are out, and both contain vital security updates, so updating soon is encouraged. New this week: auth.refreshTokens lets login return a refresh token that can be traded for a new one even after expiry, and retained upload originals no longer get an -original suffix, so uploads keep their filename and file roles come from document fields. Fixes include cross-tenant bulk actions no longer affecting every tenant a user can access, shared localized draft changes marking all locales as draft, req.user._strategy being set for custom auth strategies, and MongoDB joins across multiple collections on hasMany relationships.
Week of October 26, 2026
What shipped
- Added a root config option auth.passwordHashIterations to set the PBKDF2 iteration count for password hashes, so Payload works in environments that limit PBKDF2 such as Cloudflare Workers. Pull request #19070
- Sessions of collections with auth.refreshTokens now have refreshCount and refreshedAt so only the previous refresh token is accepted after a refresh. Pull request #19238
- Upgraded lexical from 0.52.0 to 0.53.0; rich-text data keeps its existing format and no database migration is needed, but custom features or TypeScript code may need changes. Pull request #19176
- Stamps a global's createdBy on its first save even when a field has a defaultValue or a named group. Pull request #19219
- Publishing all locales now passes the active branch so locale validation no longer 404s for a document that exists only on the active content branch. Pull request #19180
- Select clear buttons now respond to touch on iOS by stopping touchend propagation before the parent control suppresses the click. Pull request #19194
- Document drawer togglers now use translated collection labels in their accessible names instead of an interpolated label object. Pull request #17959
- The cookie strategy in extractJWT now falls back to the Referer origin when Sec-Fetch-Site is absent instead of treating it as cross-site. Pull request #17897
- Registered findDistinct on sqliteD1Adapter so the Group by feature and payload.findDistinct work on a D1 SQLite database. Pull request #19128
- Registers the Assign Tenant document menu action only once when the multi-tenant plugin runs again during hot reload, preserving custom and disabled menu items. Pull request #19174
Why it matters
This week brings a configurable password hash iteration count for limited environments, refresh token groundwork that lets sessions track refreshes, and a lexical upgrade with no database migration needed. Several fixes address visible label and accessibility problems in the admin UI, and the D1 SQLite adapter gains findDistinct so Group by works there.
Changelog entry
- Feat: add auth.passwordHashIterations for environments that limit PBKDF2 Pull request #19070
- Feat: count session refreshes to only accept the previous refresh token Pull request #19238
- Release: v4.0.0-beta.6 Release
- Refactor(richtext-lexical): upgrade lexical to 0.53.0 Pull request #19176
- Fix: stamp global createdBy on first save with field defaults Pull request #19219
- Fix: preserve branch during publish locale validation Pull request #19180
- Fix(ui): allow tapping select clear buttons on iOS Pull request #19194
- Fix(ui): translate document drawer labels Pull request #17959
- Fix: fall back to Referer origin when Sec-Fetch-Site is absent Pull request #17897
- Fix(db-d1-sqlite): register findDistinct on sqliteD1Adapter Pull request #19128
- Fix(ui): prevent duplicate autosaves from virtual field updates Pull request #19096
- Fix(plugin-multi-tenant): avoid duplicate tenant menu actions Pull request #19174
V4.0.0-beta.6 is out. New this week: auth.passwordHashIterations for environments that limit PBKDF2, refreshCount and refreshedAt for refresh token sessions, lexical 0.53.0, and a fix for findDistinct on the D1 SQLite adapter.
This week's work on Payload includes v4.0.0-beta.6 and a set of features and fixes. A new root config option, auth.passwordHashIterations, lets you set the PBKDF2 iteration count so password hashing works in environments that limit it, such as Cloudflare Workers. Sessions for collections with auth.refreshTokens now track refreshCount and refreshedAt so only the previous refresh token is accepted after a refresh. Lexical is upgraded to 0.53.0 with no database migration needed, though custom features may need changes. createdBy is now stamped on a global's first save even with field defaults or named groups, publishing all locales keeps the active branch during locale validation, select clear buttons respond to touch on iOS, and findDistinct is registered on the D1 SQLite adapter so Group by
Week of October 19, 2026
What shipped
- Vercel Blob, GCS and R2 adapters now upload processed client files from the temporary file holding the processed bytes, so processed direct-client uploads no longer store a zero-byte object while the document reports the processed size. Pull request #18388
- The cloud storage plugin now stores processed bytes for cropped and mislabeled client uploads, fixing a 500 error on crop and keeping stored bytes in line with the document for wrong MIME types. Pull request #18913
- Vercel Blob with addRandomSuffix true now saves the processed client upload in place of the browser original instead of adding a new suffixed copy and leaving the original unused. Pull request #18921
- Vercel Blob uploads with addRandomSuffix true now keep image-size filenames separate instead of uploading the main file and each size under the same new suffix. Pull request #18920
- Reset password now runs the collection password field validation, so overrides such as minLength or a custom validate apply to resets as they do on create and update. Pull request #18980
- The same reset password validation fix is ported to main, so password field overrides apply when a user resets their password. Pull request #19006
- Fields configured with field-level hidden true are now excluded from generated GraphQL mutation inputs, including nested groups, arrays, rows, collapsibles and tabs. Pull request #18862
- DefinePlugin now reads a plugin's options when the plugin runs, so setting plugin.options from another plugin takes effect and plugins registered without options can be given them. Pull request #18762
- The lexical link drawer now keeps unsaved custom link fields and nested upload drawers through parent autosave and editor selection refreshes. Pull request #18858
- The minimum supported Node.js version is raised to 24.22.1, which includes the October 21 security fixes for the Brotli decoder and TLS certificate validation. Pull request #18946
Why it matters
Several storage adapters had been storing zero-byte or stale files for processed direct-client uploads while the document described the processed file, and this week's changes align the stored bytes with that record across Vercel Blob, GCS, R2 and the cloud storage plugin. Password field overrides now apply on reset, hidden fields can no longer be written through GraphQL mutation inputs, and plugins can replace each other's options. The minimum Node.js version rises to 24.22.1 for its security fixes, alongside a 3.92.0 release and a 4.0.0-beta.4 release.
Changelog entry
- Upload processed client files from the temporary file in the Vercel Blob, GCS and R2 adapters, so processed direct-client uploads no longer store a zero-byte object. Pull request #18388
- Store processed bytes for cropped and mislabeled client uploads in the cloud storage plugin, fixing a 500 error on crop. Pull request #18913
- Keep the receipt key for processed client uploads in Vercel Blob when addRandomSuffix is enabled. Pull request #18921
- Keep image-size filenames separate in Vercel Blob uploads with addRandomSuffix. Pull request #18920
- Run the password field validation on reset password. Pull request #19006
- Run the password field validation on reset password on 3.x. Pull request #18980
- Exclude hidden fields from generated GraphQL mutation inputs, including nested fields and tabs. Pull request #18862
- Let plugins replace another plugin's options in definePlugin. Pull request #18762
- Preserve link drawer form state through parent autosave and editor selection refreshes. Pull request #18858
- Bump the minimum Node.js version to 24.22.1. Pull request #18946
- Align global version restoration with collections, returning the restored global document directly. Pull request #18928
- Preserve diagonal pointer travel into popup submenus in the UI. Pull request #18857
This week: storage adapters now store the processed bytes for direct-client uploads instead of a zero-byte or stale file, reset password runs your password field validation, hidden fields are excluded from GraphQL mutation inputs, and plugins can replace each other's options.
This week's changes in the repository: Storage adapters for Vercel Blob, GCS and R2 now upload processed direct-client files from the temporary file holding the processed bytes, so a processed upload no longer leaves a zero-byte object behind while the document reports the processed size. The cloud storage plugin stores those bytes for cropped and mislabeled uploads, and Vercel Blob keeps image-size filenames separate with addRandomSuffix. Reset password now runs the collection's password field validation, including overrides such as minLength and custom validate. Fields marked hidden are excluded from generated GraphQL mutation inputs, definePlugin reads options when a plugin runs, and the lexical link drawer preserves unsaved link fields and nested upload drawers through parent autosave.
Week of October 12, 2026
What shipped
- Released v4.0.0-beta.2 with stable TanStack Start support, file sizes shown with one decimal by default, and a fix for duplicate hierarchy fields when collection config reloads. Release
- Released v3.91.0 with fixes that return 404 for version operations when versions are disabled and prevent join field where mutation during query validation. Release
- Upgraded the Nodemailer email adapter to nodemailer 10 to resolve security advisories; custom transports built with nodemailer 9 must upgrade and drop @types/nodemailer. Pull request #18737
- Backported the nodemailer 10 upgrade to the 3.x line so the email adapter resolves the same security advisories there. Pull request #18736
- Fixed locale all writes so length validation measures each translated string rather than the locale-keyed object, and so block data is unflattened before validation. Pull request #18502
- Backported the locale all validation fix to 3.x so localized length checks accept valid translations. Pull request #18500
- Scoped validator context for locale all writes so data, siblingData and blockData match the translated value being validated. Pull request #18743
- Fixed TanStack Start REST requests returning 404 when routes.api is customized by passing the request pathname directly to Payload. Pull request #18590
- Fixed hasMany upload fields so uploads made after the bulk upload drawer was closed once are added to the field instead of only appearing after a page reload. Pull request #18654
- Made the client field schema map build in linear time so the first open of an edit view stays fast in configs with many rich text fields. Pull request #18698
Why it matters
This week brought two releases: a new v4 beta and v3.91.0, plus a breaking upgrade to nodemailer 10 in the email adapter to address security advisories. Localized field writes with locale all now validate each locale correctly, and TanStack Start users get fixes for custom API routes and router refresh remounts.
Changelog entry
- Release v4.0.0-beta.2. Release
- Release v3.91.0. Release
- Upgrade email adapter to nodemailer 10 to resolve security advisories. Pull request #18737
- Backport the nodemailer 10 upgrade to 3.x. Pull request #18736
- Validate each locale when writing localized fields with locale all. Pull request #18502
- Backport the locale all validation fix to 3.x. Pull request #18500
- Scope validator context for locale all writes. Pull request #18743
- Fix TanStack Start custom API routes returning 404. Pull request #18590
- Prevent subtree remounts on TanStack Router refresh. Pull request #18806
- Register the bulk upload success callback every time the drawer opens. Pull request #18654
- Build the client field schema map in linear time for rich text fields. Pull request #18698
- Widen the date picker calendar for longer month names. Pull request #18752
New this week: v4.0.0-beta.2 and v3.91.0 shipped. Locale all writes now validate each locale. TanStack Start custom API routes no longer 404. Rich text edit views open faster. The email adapter moved to nodemailer 10 for security advisories, a breaking upgrade.
This week Payload shipped v4.0.0-beta.2 and v3.91.0. Localized fields written with locale all now validate each string instead of the locale-keyed object, and validator context is scoped to match. TanStack Start REST requests no longer 404 when routes.api is customized. The client field schema map now builds in linear time, keeping the first edit view open fast in configs with many rich text fields. The email adapter upgraded to nodemailer 10 to resolve security advisories, which is a breaking change if you pass your own transport.
Week of October 5, 2026
What shipped
- V4.0.0-beta.0 shipped with an admin UI redesign, TanStack support, dashboard components, accessibility work, hierarchies, tags, grid view, improved file uploads UI, file upload versions, rewritten MCP, and upgrade codemods. Release
- The Publish button now validates every locale before publishing a localized document, instead of letting publish succeed when another locale has invalid or missing data. Pull request #17879
- Upload file versioning adds the Payload and storage adapter implementation so versioned upload documents retain their original source and every stored representation needed by current or historical versions. Pull request #18548
- APIs and types marked deprecated for removal in 4.0 were removed, LexicalEditorProps was renamed per its todo, and the v4 migration guide was updated. Pull request #18607
- An experimental admin.constrainWidth option constrains Admin Panel content to 1080px on desktop and defaults to false. Pull request #18625
- The v4 release flow on main switched from canary to beta, making beta the only publishable prerelease line. Pull request #18643
- The TanStack Start adapter now preserves multiple Set-Cookie headers instead of replacing the earlier one so only the last cookie reached the client. Pull request #18586
- Requesting versions for a global with versions disabled now returns a clean 404 instead of a 500 from the drizzle adapter. Pull request #18618
- Pasting HTML containing a horizontal rule into a Lexical richText field no longer throws and drops the paste, because a client HorizontalRuleNode is created. Pull request #18295
- Embedded admin removes the navigation eyebrow and user menu, keeps the sidebar toggle beside Dashboard, and prevents dashboard UI editing or resetting in embedded mode. Pull request #18628
Why it matters
This week the v4 beta line opened with a large batch of changes, including an admin UI redesign, TanStack support, and upload file versioning, so anyone trying the beta should read the migration notes before upgrading. Publishing also now validates every locale, which changes when a publish can succeed for localized documents. Many deprecated APIs and props were removed, so existing code that relied on them needs updating.
Changelog entry
- Release: v4.0.0-beta.0 Release
- Feat!: validate all locales by default Pull request #17879
- Feat!: add upload file versioning Pull request #18548
- Feat!: remove deprecated APIs flagged for 4.0 Pull request #18607
- Feat(ui): add experimental admin width constraint Pull request #18625
- Ci: switch v4 release flow from canary to beta Pull request #18643
- Fix(tanstack-start): preserve multiple response cookies Pull request #18586
- Fix: return 404 for version operations when versions are disabled Pull request #18618
- Fix(richtext-lexical): create client HorizontalRuleNode when pasting Pull request #18295
- Fix(ui): simplify embedded navigation and disable dashboard editing Pull request #18628
- Release: v4.0.0-canary.39 Release
- Release: v4.0.0-canary.38 Release
V4.0.0-beta.0 is out. Admin UI redesign, TanStack support, dashboard components, accessibility, hierarchies, tags, grid view, improved file uploads UI, upload file versioning, rewritten MCP, and upgrade codemods. Publishing now validates every locale. Deprecated APIs flagged for
V4.0.0-beta.0 is out. This beta brings an admin UI redesign, TanStack support, dashboard components, accessibility work, hierarchies, tags, grid view, improved file uploads UI, upload file versioning, a rewritten MCP, and upgrade codemods. The v4 release flow on main has switched from canary to beta, so beta is now the only publishable prerelease line. Publishing now validates every locale before it publishes a localized document, so publish no longer succeeds when another locale has invalid or missing data. APIs and types flagged for removal in 4.0, along with several deprecated UI props, have been removed; the v4 migration guide covers the breaking changes. Try it with create-payload-app@beta.
Week of September 28, 2026
What shipped
- V3.90.0 released with critical security fixes that require immediate upgrade. Release
- Added payload.db.copy method for low-level copying of stored collection documents with optional data overrides. Pull request #18453
- Introduced database adapter foundation for ordered batch processing of create, update, and delete operations. Pull request #18455
- Content branching implementation completed with ordered batch processing for iterables and async iterables. Pull request #18407
- Added configurable upload dropzone widget for the dashboard with media collection selection. Pull request #18360
- Optimized MongoDB queries with join fields to reduce database calls during pagination. Pull request #18443
- Rebuilt navigation and account menu, moving the account menu from app header into navigation header. Pull request #18399
- Fixed accessibility issues related to field labels across the admin interface. Pull request #18408
- Fixed accessibility issues in collection and version tables including keyboard navigation and pagination controls. Pull request #18405
- Fixed keyboard focus order issues across the UI to meet WCAG 2.2 AA compliance. Pull request #18381
Why it matters
This week focuses on security patches, database operations for content branching, and accessibility improvements throughout the admin UI. The collection of accessibility fixes addresses keyboard navigation, focus order, and table interactions that impact all users of the admin panel.
Changelog entry
- Critical security fixes in v3.90.0 Release
- New payload.db.copy method for copying stored collection documents Pull request #18453
- Database adapter foundation for bounded batch processing operations Pull request #18455
- Fixed memory leak in MongoDB version and draft operations Pull request #18445
- Faster MongoDB queries when collection has join fields Pull request #18443
- Sidebar open preference now persists across reloads Pull request #18441
- Accessibility improvements for field labels Pull request #18408
- Accessibility improvements in collection and version tables Pull request #18405
- Fixed keyboard focus order issues for WCAG 2.2 AA compliance Pull request #18381
- Reduced MongoDB schema memory usage for referenced blocks Pull request #18367
V3.90.0 ships with critical security fixes. Upgrade immediately. This release also adds database copy and batch processing methods, optimizes MongoDB queries, and fixes keyboard navigation and focus order across the admin UI.
V3.90.0 is now available with critical security fixes that require immediate upgrade. This release introduces database copy and batch processing methods to support content branching, optimizes MongoDB queries for collections with join fields, and ships significant accessibility improvements including keyboard navigation, focus order, and table interaction fixes to meet WCAG 2.2 AA compliance.
Week of September 21, 2026
What shipped
- The Local API now defaults overrideAccess to false, enforcing access control by default instead of bypassing it. Pull request #17869
- The Admin UI Publish button now publishes only the active locale by default when localized fields exist, removing the defaultLocalePublishOption config flag. Pull request #17874
- Request creation APIs consolidated around a canonical createPayloadRequest function, removing overlapping createLocalReq and other paths. Pull request #18287
- Removed deprecated savedDocumentData and updateSavedDocumentData aliases from useDocumentInfo, requiring updates to custom components. Pull request #18319
- Added an upgrade command to @payloadcms/codemod to move Payload projects from v3 to v4, including Next.js version upgrades. Pull request #17825
- Fixed findByID({ draft: true }) to query the latest draft version row and apply read access correctly. Pull request #17999
- Image thumbnails now render in folder list view when a preview URL is available. Pull request #17980
- Block row metadata and blockType are now preserved when conditional blocks fields become visible. Pull request #17797
- Updated MongoDB adapter to use returnDocument: 'after' instead of the deprecated new option. Pull request #18277
- Added devServerExternalPackages option to TanStack Start's withPayload for controlling which packages stay external during dev. Pull request #17631
Why it matters
This week brings breaking changes that enforce better defaults: access control is now required by default, and publish behavior respects locale boundaries without configuration. A new codemod command eases v3-to-v4 migrations. Several fixes improve draft handling, form state preservation, and compatibility across database adapters.
Changelog entry
- BREAKING: Local API overrideAccess now defaults to false, enforcing access control. Explicitly set overrideAccess: true where needed. Pull request #17869
- BREAKING: Removed localization.defaultLocalePublishOption config. Admin UI Publish button now always publishes active locale for localized documents. Pull request #17874
- BREAKING: Consolidated request creation APIs. Use canonical createPayloadRequest instead of createLocalReq or framework-specific variants. Pull request #18287
- BREAKING: Removed deprecated savedDocumentData and updateSavedDocumentData from useDocumentInfo. Update custom components to use setData. Pull request #18319
- Added upgrade command to @payloadcms/codemod for automated v3 to v4 migrations. Pull request #17825
- Fixed findByID({ draft: true }) to apply read access against the latest draft version. Pull request #17999
- Image thumbnails now display in folder list view. Pull request #17980
- Fixed block type preservation when conditional blocks fields become visible. Pull request #17797
- Updated MongoDB adapter to eliminate deprecation warnings for findOneAndUpdate and findOneAndReplace. Pull request #18277
- TanStack Start: added devServerExternalPackages option to withPayload. Pull request #17631
V4 now enforces access control by default in the Local API and publishes active locale by default. Consolidating request creation APIs and adding a v3→v4 migration codemod.
This week in Payload: the v4 Local API now defaults overrideAccess to false, enforcing access control instead of bypassing it by default. The Publish button respects locale boundaries without config. We consolidated request creation around a single canonical function and added an upgrade codemod to help move projects from v3 to v4, including Next.js version bumps. Plus fixes for draft access checks, form state preservation, and MongoDB adapter warnings.
Week of September 14, 2026
What shipped
- V3.90.0 released with critical security fixes that warrant immediate upgrade regardless of specific affected features. Release
- V3.90.1 released fixing a bug where parent collection's where queries were incorrectly applied to nested relationship fields. Release
- High-severity audit vulnerabilities affecting consumers resolved through direct dependency version bumps in published packages. Pull request #18158
- High-severity audit advisories addressed with direct bumps and peer-range adjustments across the monorepo. Pull request #18159
- Vitest updated to 5.0.0 and Playwright to 1.63.0 with E2E helpers migrated to newer Playwright APIs. Pull request #18096
- Turbo server fast refresh re-enabled for Next.js dev server following fixes in Next.js 16.3 release. Pull request #18187
- Templates regenerated with correct sharp versions and migrations for v3.90.0 to ensure 1-click deploys get current dependencies. Pull request #18209
- CI runner memory limits standardized for memory-heavy steps and job token permissions scoped to least-privilege defaults. Pull request #18211
- V3 telemetry backported from V4 with relevant metrics excluded to match V3 feature set. Pull request #18133
Why it matters
Critical security patches in v3.90.0 and v3.90.1 require immediate attention from users running v3. Access control fixes for nested relationships and dependency vulnerability resolutions improve stability and safety across all installations.
Changelog entry
- 🔒 v3.90.0: Critical security fixes included in this release Release
- 🐛 v3.90.1: Fixed parent where queries incorrectly carrying into nested relationship fields Release
- 🔒 Resolved consumer-facing high-severity audit vulnerabilities through direct dependency bumps Pull request #18158
- 🔒 Resolved high-severity audit advisories with direct version bumps and peer-range adjustments Pull request #18159
- 🧪 Updated Vitest to 5.0.0 and Playwright to 1.63.0 with migrated E2E helper APIs Pull request #18096
- ⚡ Re-enabled turborepoServerFastRefresh for Next.js dev server following Next.js 16.3 improvements Pull request #18187
- 📦 Regenerated templates with correct sharp versions and migrations for accurate deployments Pull request #18209
- 🔧 Standardized Node heap limits and scoped job token permissions in CI configuration Pull request #18211
- 📊 Backported V4 telemetry to V3 with excluded metrics irrelevant to V3 feature set Pull request #18133
V3.90.0 and v3.90.1 released with critical security fixes. Upgrade immediately. Also: nested relationship access control fix, dependency vulnerabilities resolved, Vitest 5.0.0, Playwright 1.63.0.
Payload v3.90.0 and v3.90.1 are now available with critical security fixes that require immediate upgrade. This release addresses high-severity vulnerabilities in consumer-facing dependencies, fixes access control behavior for nested relationship queries, and updates testing infrastructure with Vitest 5.0.0 and Playwright 1.63.0. All users are encouraged to upgrade promptly.