Migrating to Payload CMS v3.71.0
Version v3.71.0 introduces 1 breaking change. This guide details how to update your code.
Released: 1/13/2026
⚠️ Check Your Code
If you use any of these symbols, you need to read this guide:
Job Queue Concurrency ConfigurationStatus Component (Admin UI)workflowstasksbulkOperations.singleTransactionDateTimeFormat validationJobCancelledErrortypescript.strictDraftTypesValidationError (Drizzle)plugin-ecommerce hooks (onLogin, onLogout, clearSession, mergeCart)useCart.refreshCartplugin-import-exportMCP find resource toolMCP global update toolsGenerateURL type (plugin-nested-docs)GenerateLabel type (plugin-nested-docs)Breaking Changes
●Issue #1
{"fix":"Explicitly set `enableConcurrencyControl: true` in the `jobs` configuration if you rely on concurrency controls.","breaking_change":"The default behavior for exclusive concurrency controls is changing. In v3.71.0, `enableConcurrencyControl` defaults to `false` for jobs, but it will default to `true` in v4.0. Users enabling exclusive concurrency controls should explicitly set `enableConcurrencyControl: true` in their configuration to ensure future compatibility."}
✓Solution
Explicitly set `enableConcurrencyControl: true` in the `jobs` configuration if you rely on concurrency controls.
Migration Steps
- 1If using job concurrency controls and aiming for v4.0 compatibility, explicitly set `enableConcurrencyControl: true` in your `jobs` configuration.
- 2If you need to stop a running job without retrying, throw `JobCancelledError` from within the workflow or task handler.
- 3If using draft queries and requiring strict type safety for required fields, enable `typescript.strictDraftTypes: true`.
- 4If using plugin-ecommerce, be aware that cart logic has moved server-side, utilizing new hooks and API endpoints.
Release Summary
This release introduces significant enhancements to job queue concurrency, including superseding and exclusive controls, alongside major updates to the e-commerce plugin's cart logic moving to the server. It also adds several developer experience improvements like stricter TypeScript draft typing and better validation error context.
Need More Details?
View the full release notes and all changes for Payload CMS v3.71.0.
View Full Changelog