v3.80.0

payloadcms/payloadv3.80.0Mar 20, 2026by denolfe

AI Summary

Added a `disableUnique` property to slug fields for better multi-tenant support and fixed database query issues in MongoDB and Postgres. It also updates storage adapters and Next.js templates.

Key Highlights

  • Added `disableUnique` property to slug fields for multi-tenant plugin support
  • Fixed pagination with collation in MongoDB transactions
  • Fixed `near` query issues in Postgres
  • Improved storage adapters (Azure, S3) for streaming uploads

New Features

  • Disable Unique slug property
  • Template updates for Next.js 16.2.0

Full Release Notes

## [v3.80.0](https://github.com/payloadcms/payload/compare/v3.79.1...v3.80.0) (2026-03-20)


### 🚀 Features

* add `disableUnique` property to the slug field for better multi tenant plugin support ([#15963](https://github.com/payloadcms/payload/issues/15963)) ([395e1ed](https://github.com/payloadcms/payload/commit/395e1ed))

### 🐛 Bug Fixes

* unpublish updates existing version instead of creating a new one ([#15985](https://github.com/payloadcms/payload/issues/15985)) ([67063ab](https://github.com/payloadcms/payload/commit/67063ab))
* use latest draft version data when trashing unpublished documents ([#15981](https://github.com/payloadcms/payload/issues/15981)) ([57a0edc](https://github.com/payloadcms/payload/commit/57a0edc))
* **db-mongodb:** fix pagination with collation in transactions ([#15990](https://github.com/payloadcms/payload/issues/15990)) ([5c935aa](https://github.com/payloadcms/payload/commit/5c935aa))
* **db-postgres:** `near` query can give incorrect results ([#15907](https://github.com/payloadcms/payload/issues/15907)) ([843306c](https://github.com/payloadcms/payload/commit/843306c))
* **db-sqlite:** scheduled publish does not show upcoming events because of wrong nested json querying ([#15911](https://github.com/payloadcms/payload/issues/15911)) ([3fa834a](https://github.com/payloadcms/payload/commit/3fa834a))
* **deps:** resolve high severity audit vulnerabilities ([#15961](https://github.com/payloadcms/payload/issues/15961)) ([da212fd](https://github.com/payloadcms/payload/commit/da212fd))
* **drizzle:** pagination applied incorrectly when sorting by a field inside an array field ([#15908](https://github.com/payloadcms/payload/issues/15908)) ([0f67215](https://github.com/payloadcms/payload/commit/0f67215))
* **drizzle:** groups inside localized tabs are not working correctly ([#15936](https://github.com/payloadcms/payload/issues/15936)) ([57bde77](https://github.com/payloadcms/payload/commit/57bde77))
* **graphql:** force nullable for relationships to avoid errors when the related document is related ([#15915](https://github.com/payloadcms/payload/issues/15915)) ([560cabe](https://github.com/payloadcms/payload/commit/560cabe))
* **plugin-mcp:** plugin can break next.js request handler because underlying Hono library modifies the global Request object ([#15938](https://github.com/payloadcms/payload/issues/15938)) ([4cfa495](https://github.com/payloadcms/payload/commit/4cfa495))
* **plugin-multi-tenant:** modal container blocks clicks on create-first-user page ([#15973](https://github.com/payloadcms/payload/issues/15973)) ([8157f4c](https://github.com/payloadcms/payload/commit/8157f4c))
* **richtext-lexical:** richtext fields don't respect RTL direction for Arabic and other RTL locales ([#15964](https://github.com/payloadcms/payload/issues/15964)) ([944a889](https://github.com/payloadcms/payload/commit/944a889))
* **ui:** defer live preview iframe rendering ([#15999](https://github.com/payloadcms/payload/issues/15999)) ([9999083](https://github.com/payloadcms/payload/commit/9999083))
* **ui:** stale data modal shown when onChange starts while save is in-flight ([#15960](https://github.com/payloadcms/payload/issues/15960)) ([dc98f0f](https://github.com/payloadcms/payload/commit/dc98f0f))

### 📚 Documentation

* add custom admin location docs ([#15581](https://github.com/payloadcms/payload/issues/15581)) ([04a4b0a](https://github.com/payloadcms/payload/commit/04a4b0a))
* updating  lexical richtext fields ([#15968](https://github.com/payloadcms/payload/issues/15968)) ([8e5d56d](https://github.com/payloadcms/payload/commit/8e5d56d))
* add copy and paste documentation for blocks ([#15987](https://github.com/payloadcms/payload/issues/15987)) ([747be91](https://github.com/payloadcms/payload/commit/747be91))
* warning for numeric field names ([#15966](https://github.com/payloadcms/payload/issues/15966)) ([99dcac1](https://github.com/payloadcms/payload/commit/99dcac1))
* storage adapters improvements ([#15946](https://github.com/payloadcms/payload/issues/15946)) ([9815d83](https://github.com/payloadcms/payload/commit/9815d83))

### 📝 Templates

* bump templates to Next.js 16.2.0 ([#16003](https://github.com/payloadcms/payload/issues/16003)) ([4e34130](https://github.com/payloadcms/payload/commit/4e34130))

### ⚙️ CI

* add audit-dependencies claude skill ([#15967](https://github.com/payloadcms/payload/issues/15967)) ([5efc2ff](https://github.com/payloadcms/payload/commit/5efc2ff))

### 🏡 Chores

* add docker:clean script and fix docker:start reliability ([#16000](https://github.com/payloadcms/payload/issues/16000)) ([2646018](https://github.com/payloadcms/payload/commit/2646018))
* bump monorepo Next.js version to 16.2.0 ([#15992](https://github.com/payloadcms/payload/issues/15992)) ([a188556](https://github.com/payloadcms/payload/commit/a188556))
* consolidate docker scripts into single docker-compose with profiles ([#15974](https://github.com/payloadcms/payload/issues/15974)) ([f89e736](https://github.com/payloadcms/payload/commit/f89e736))
* **examples:** update astro package.json name ([#15118](https://github.com/payloadcms/payload/issues/15118)) ([4e1c04e](https://github.com/payloadcms/payload/commit/4e1c04e))

### 🤝 Contributors

- Alessio Gravili (@AlessioGr)
- Jarrod Flesch (@JarrodMFlesch)
- German Jablonski (@GermanJablo)
- Jake Fletcher (@jacobsfletch)
- Sasha (@r1tsuu)
- Patrik (@PatrikKozak)
- Sean Zubrickas (@zubricks)
- Riley Langbein (@rilrom)
- Elliot DeNolf (@denolfe)