v3.89.0

payloadcms/payloadv3.89.0Sep 10, 2026by denolfe

Upgrading?

AI Summary

Payload v3.89.0 backports jobs access defaults from v4, introduces UI enhancements like warning types for Banners and render loop prevention, and includes performance optimizations for large uploads and database queries.

Key Highlights

  • Backports v4 jobs access defaults to v3
  • Adds warning type to the Banner UI component
  • Optimizes memory usage by avoiding buffering large client uploads
  • Upgrades Next.js to version 16.3.3
  • Improves database performance for MongoDB and Drizzle queries

Breaking Changes

  • improve access defaults for jobs

New Features

  • Add warning type to Banner UI component

Full Release Notes

## [v3.89.0](https://github.com/payloadcms/payload/compare/v3.88.0...v3.89.0) (2026-09-10)


### 🚀 Features

* **ui:** add warning type to Banner ([#17750](https://github.com/payloadcms/payload/issues/17750)) ([6e5f386](https://github.com/payloadcms/payload/commit/6e5f386))

### 🐛 Bug Fixes

* avoid buffering large client uploads into memory ([#17872](https://github.com/payloadcms/payload/issues/17872)) ([e896688](https://github.com/payloadcms/payload/commit/e896688))
* "No client field found for ..." 500 error in version diff ([#18001](https://github.com/payloadcms/payload/issues/18001)) ([88f0622](https://github.com/payloadcms/payload/commit/88f0622))
* upgrade next to 16.3.3 across core and templates ([#17933](https://github.com/payloadcms/payload/issues/17933)) ([24164d8](https://github.com/payloadcms/payload/commit/24164d8))
* **db-mongodb:** avoid unnecessary aggregation when no joins are selected ([#17785](https://github.com/payloadcms/payload/issues/17785)) ([9a309af](https://github.com/payloadcms/payload/commit/9a309af))
* **drizzle:** preserve omitted hasMany selects ([#18085](https://github.com/payloadcms/payload/issues/18085)) ([ee7c00c](https://github.com/payloadcms/payload/commit/ee7c00c))
* **drizzle:** warn on truncated identifiers, throw on collisions ([#17650](https://github.com/payloadcms/payload/issues/17650)) ([52c4d70](https://github.com/payloadcms/payload/commit/52c4d70))
* **email-resend:** http fetch error handling swallows errors ([#17798](https://github.com/payloadcms/payload/issues/17798)) ([61d3961](https://github.com/payloadcms/payload/commit/61d3961))
* **plugin-form-builder:** include autolink nodes in LinkHTMLConverter, v3 backport ([#17788](https://github.com/payloadcms/payload/issues/17788)) ([5061283](https://github.com/payloadcms/payload/commit/5061283))
* **ui:** handle unsupported preview URLs ([#18136](https://github.com/payloadcms/payload/issues/18136)) ([112f419](https://github.com/payloadcms/payload/commit/112f419))
* **ui:** add @swc/helpers direct dependency ([#17893](https://github.com/payloadcms/payload/issues/17893)) ([ec0e98e](https://github.com/payloadcms/payload/commit/ec0e98e))
* **ui:** prevent render loop during rapid title input ([#17834](https://github.com/payloadcms/payload/issues/17834)) ([f954804](https://github.com/payloadcms/payload/commit/f954804))
* **ui:** rich text fields not read-only inside tabs on trashed and locked documents 3.x ([#17791](https://github.com/payloadcms/payload/issues/17791)) ([82f5576](https://github.com/payloadcms/payload/commit/82f5576))

### 🛠 Refactors

* improve access defaults for jobs ([#17867](https://github.com/payloadcms/payload/issues/17867)) ([4379bf0](https://github.com/payloadcms/payload/commit/4379bf0))

### 📚 Documentation

* add UI component library ([#18093](https://github.com/payloadcms/payload/issues/18093)) ([4884195](https://github.com/payloadcms/payload/commit/4884195))
* clarify pagination limits ([#18095](https://github.com/payloadcms/payload/issues/18095)) ([2e4806a](https://github.com/payloadcms/payload/commit/2e4806a))
* fix invalid TypeScript examples ([#17995](https://github.com/payloadcms/payload/issues/17995)) ([79fd084](https://github.com/payloadcms/payload/commit/79fd084))
* add guide for overriding default fields ([#17926](https://github.com/payloadcms/payload/issues/17926)) ([1c0c454](https://github.com/payloadcms/payload/commit/1c0c454))
* fix CLAUDE.md path in agent instructions ([#17881](https://github.com/payloadcms/payload/issues/17881)) ([b48a151](https://github.com/payloadcms/payload/commit/b48a151))

### ⚠️ BREAKING CHANGES

* improve access defaults for jobs ([#17867](https://github.com/payloadcms/payload/issues/17867)) ([4379bf0](https://github.com/payloadcms/payload/commit/4379bf0))

  This backports [the v4 jobs access changes](https://github.com/payloadcms/payload/pull/17768) to Payload v3.



### 🤝 Contributors

- Paul (@paulpopus)
- Jake Fletcher (@jacobsfletch)
- Sean Zubrickas (@zubricks)
- Alessio Gravili (@AlessioGr)
- Nate Lentz (@nathanlentz)
- Tyler Schwartz (@tschwartz)
- Fahad Noor (@FahadNoor)
- Anders Semb Hermansen (@andershermansen)
- Patrik (@PatrikKozak)
- Jens Becker (@jhb-dev)
- Dan Ribbens (@DanRibbens)
- Jessica Rynkar (@JessRynkar)

Related Repositories