Skip to content

fix(deps): update payloadcms monorepo to v3 (major)#68

Open
renovate[bot] wants to merge 1 commit intomainfrom
renovate/major-payloadcms-monorepo
Open

fix(deps): update payloadcms monorepo to v3 (major)#68
renovate[bot] wants to merge 1 commit intomainfrom
renovate/major-payloadcms-monorepo

Conversation

@renovate
Copy link
Copy Markdown
Contributor

@renovate renovate Bot commented Feb 14, 2025

ℹ️ Note

This PR body was truncated due to platform limits.

This PR contains the following updates:

Package Change Age Confidence
@payloadcms/db-mongodb (source) ^1.0.0^3.0.0 age confidence
@payloadcms/richtext-lexical (source) ^0.11.0^3.0.0 age confidence
@payloadcms/richtext-slate (source) ^1.0.0^3.0.0 age confidence

Release Notes

payloadcms/payload (@​payloadcms/db-mongodb)

v3.84.1

Compare Source

Retargeting create-payload-app to pull from 3.x branch.

⚙️ CI
🤝 Contributors

v3.84.0

Compare Source

🚀 Features
  • allow client components to also be used as custom collection views (#​16312) (8fe5f04)
  • email-nodemailer: add email recipient override config (#​16311) (1c1ed97)
  • plugin-ecommerce: add locale-aware currency formatting and symbol positioning (#​15139) (6731036)
  • plugin-form-builder: add support for multi part uploads (#​15268) (aa01a45)
  • plugin-mcp: add support for server instructions (#​15858) (c852d85)
🐛 Bug Fixes
  • unique value errors are not displayed properly for localized fields (#​16069) (f6e9073)
  • correct slugifyTitle hook example in documentation (#​16306) (48db8c1)
  • handle multipart uploads without content-length (#​16301) (c150ef8)
  • plugin-ecommerce: verify PaymentIntent succeeded before creating… (#​15902) (500e39d)
  • richtext-lexical: internal links export as text in markdown transformer (#​16302) (3dc6041)
  • storage-*: simplify key handling for signed urls and composite prefixes (#​16291) (6139508)
  • templates: remove tilde SCSS imports and add Sass loadPaths for Windows (#​16295) (7ca8b05)
  • ui: json and richText fields expose unsupported operators in WhereBuilder (#​16353) (a507fcc)
  • ui: bulk edit ignores fields in named tabs and shows incorrect labels for unlabeled containers (#​16340) (e5bc6be)
📚 Documentation
🧪 Tests
📝 Templates
⚙️ CI
🏡 Chores
🤝 Contributors

v3.83.0

Compare Source

🚀 Features

Expanded Plugin API — New definePlugin helper introduces opt-in execution ordering, cross-plugin discovery via a slug-keyed plugins map, and module augmentation for type-safe plugin options. The existing (config) => config contract remains unchanged. #​16247

import { definePlugin } from 'payload'

export const seoPlugin = definePlugin<SEOPluginOptions>({
  slug: 'plugin-seo',
  order: 10,
  plugin: ({ config, plugins, collections, generateTitle }) => ({
    ...config,
    // collections and generateTitle come from SEOPluginOptions
  }),
})

Profiling Utilities — Lightweight timeSync and timeAsync wrappers for measuring function execution time during development. Wrap any function to capture its duration, then call printProfileResults for a formatted timing table. Not intended for production use. #​16198

Internal Plugin Priority & Slug API — Plugins can now attach priority, slug, and options properties for execution ordering and cross-plugin discovery. Lower priority runs first; other plugins can find each other by slug via config.plugins without imports. Marked @internal for now. #​16244

Hidden Slug Field Buttons on Read-Only — The Generate and Lock/Unlock buttons on slug fields are now automatically hidden when the field is read-only, removing controls that serve no purpose in that state. #​14824

Agent Flag for CPA (cpa)create-payload-app now supports a --agent / -a flag (claude, codex, cursor) that downloads the Payload coding skill from GitHub and installs it in the correct directory for your agent. A root-level CLAUDE.md or AGENTS.md is written for discoverability. Use --no-agent to skip. #​16278

CPA agent selection prompt

UUIDv7 Support (drizzle) — New idType: 'uuidv7' option for Postgres and SQLite adapters generates time-ordered UUIDs that are friendlier for B-tree indexes than random v4 UUIDs, while using the same storage column type. IDs are generated in application code so older Postgres versions are supported. #​16113

Custom Email Headers (email-resend) — The Resend adapter now passes custom headers from sendEmail options to the Resend API, enabling features like List-Unsubscribe headers that were previously silently dropped. #​15645

await payload.sendEmail({
  from: "Test <test@domain.com>",
  to: "jimmybillbob@example.com",
  subject: "Email with custom headers",
  html: html,
  headers: {
    "List-Unsubscribe": "<https://domain.com/unsubscribe>",
    "List-Unsubscribe-Post": "List-Unsubscribe=One-Click",
  },
});

Custom Collection Views (next) — Register custom views at the collection level via admin.components.views[key] with a Component and path. Folders take routing precedence over custom views on upload collections. #​16243

{
  slug: 'products',
  admin: {
    components: {
      views: {
        grid: {
          Component: '/components/GridView',
          path: '/grid',
          exact: true,
        },
      },
    },
  },
}

Checkbox Label Clarity (plugin-form-builder) — The form builder checkbox field label was changed from "Default Value" to "Checked by default" to eliminate confusion about whether the checkbox toggles a default value or sets the initial checked state. #​15229

Extensible MCP Plugin (plugin-mcp) — External plugins can now extend plugin-mcp by finding it via slug in config.plugins and injecting custom MCP tools into its options. Also exports the MCPPluginConfig type for type-safe tool injection. #​16245

View Override System for Custom Node Rendering (richtext-lexical)⚠️ Experimental. Override how any Lexical node type is rendered in the editor via view maps. Supports custom DOM, React components, or HTML strings. Works in both the admin editor and frontend JSX serialization for WYSIWYG consistency. #​14244

export const myViews: LexicalEditorViewMap = {
  default: {
    heading: {
      createDOM() {
        const h2 = document.createElement('h2')
        h2.textContent = 'Custom Heading'
        return h2
      },
    },
    horizontalRule: {
      Component: () => <div className="custom-hr">---</div>,
    },
    link: {
      html: '<a href="#">Custom Link</a>',
    },
  },
}
{
  fields: [
    {
      name: 'content',
      type: 'richText',
      editor: lexicalEditor({
        views: '/path/to/views.tsx#myViews',
      }),
    },
  ]
}

Composite Prefixes for Storage Adapters (storage-*) — New useCompositePrefixes option combines collection and document prefixes instead of one overriding the other. Also fixes a bug where client uploads ignored document prefix entirely. Applies to S3, Azure, GCS, R2, and Vercel Blob. #​16230

Mode Collection Prefix Doc Prefix Result
false (default) media-folder user-123 user-123/file.jpg
true media-folder user-123 media-folder/user-123/file.jpg
🐛 Bug Fixes
  • restore falling back to current document values for undefined fields (#​16272) (4b4d61c)
  • enforce mimeTypes restriction when useTempFiles is enabled (#​16255) (bb749a5)
  • prevent cron from permanently dying after handler errors (#​16219) (c5e0e02)
  • use safe property assignment in deepMergeSimple (#​16271) (2b23010)
  • handle concurrent autosave write conflicts gracefully (#​16216) (e8502fa)
  • use instanceof instead of constructor name in formatErrors (#​16089) (216d162)
  • parse JSON string where query param (#​15745) (2a26b5a)
  • expose type for field's position (#​14390) (d9b3c07)
  • default virtual fields to readOnly in admin UI (#​16016) (72396f6)
  • localized array,group,blocks fields duplicate with empty values (#​15849) (067e14f)
  • fixes importMap type in monorepo usage (#​15203) (79f4cc7)
  • db-postgres: bump drizzle-orm to 0.45.2 to resolve an SQL injection vulnerability and pg to 8.20.0 (#​16168) (af1a932)
  • drizzle: surface connection errors in beginTransaction instead of hanging forever (#​16220) (1e1c591)
  • drizzle: ensure getPrimaryDb is used for all write operations (#​16240) (aa44649)
  • email-resend: support path and preserve base64 content in mapAttachments (#​16094) (57e71f5)
  • next: persist language cookie across browser sessions (#​15081) (0acff80)
  • plugin-ecommerce: price not showing as 0 when explicitly set (#​16289) (62aa42b)
  • plugin-ecommerce: priceInput does not respect required field status (#​15783) (ed1c874)
  • plugin-import-export: hide invalid sortBy options (#​11676) (9d6bf0b)
  • plugin-search: serialize reindexing to prevent locale data race conditions (#​15917) (79d1b6b)
  • plugin-seo,richtext-lexical: add missing translations (#​11859) (da27afc)
  • plugin-stripe: supports webhooks within serverless environments (#​10890) (4179bf3)
  • translations: 'noResults' translation expected a singular label, rewrite sentence sine a plural label is injected. (#​13360) (cb0ce1c)
  • translations: modified Spanish translations to be gender neutral (#​15796) (a00267d)
  • translations: fall back to base language tag for Accept-Language matching (#​15076) (cf95cad)
  • ui: usePreventLeave default message (#​15042) (8de32a2)
  • ui: use i18n for live preview "Open in new window" tooltip (#​16038) (173b453)
  • ui: preselect folder when bulk uploading from inside a folder (#​16030) (71a6c60)
  • ui: prevent NaN aspect ratio in createThumbnail on svg files (#​10488) (b332bff)
  • ui: thread cache tag to list view thumbnails (#​11741) (5afcef5)
⚡ Performance
🛠 Refactors
📚 Documentation
🧪 Tests
  • remove debug console.log left in SlugField overrides fields test suite (#​16279) (22e2466)
  • plugin-multi-tenant: verify that tenant selector respects access control (#​14916) (0516803)
📝 Templates
📓 Examples
⚙️ CI
🏡 Chores
🤝 Contributors

v3.82.1

Compare Source

🐛 Bug Fixes
  • next: use correct config key for disabling turbo server fast refresh (#​16215) (11adc9d)
  • plugin-nested-docs: await populateBreadcrumbs in resaveChildren (#​15582) (0554b50)
⚡ Performance
📚 Documentation
📝 Templates
🤝 Contributors

v3.82.0

Compare Source

🚀 Features
🐛 Bug Fixes
  • incorrect 24 hour format comment example (#​15649) (f42b767)
  • resolve 404/500 error when downloading files containing hash in filename (#​15799) (3a09387)
  • JSDoc string for focalPoint option in uploads so it correctly mentions defaults to true (#​13070) (84090ac)
  • skip validation for unpublish operations with localized required fields (#​16120) (24b9e13)
  • skip default validation for virtual fields (#​16015) (e09c619)
  • db-mongodb: update mongoose-paginate-v2 to fix collation pagination (#​16049) (78a27ab)
  • drizzle: convert equals/not_equals to in/not_in for hasMany relationship array values (#​15766) (59af156)
  • next: fix hmr, bump minimum required next.js 16 version to 16.2.2 (#​16202) (7f83571)
  • next: admin.meta.title object form renders [object Object] in browser tab (#​16117) (0981cdc)
  • plugin-mcp: add error handling to convertCollectionSchemaToZod (#​16114) (6184b0c)
  • plugin-multi-tenant: infinite api calling loop on user switch (#​16065) (3da805f)
  • storage-*: redundant re-uploads when file was already uploaded by the client and add comprehensive E2E tests for s3 and vercel-blob (#​16115) (a6735f3)
  • storage-azure: fix azure storage mime type handling for streaming uploads (#​15949) (cd7fcea)
  • templates: tailwind file extension is wrong in website template components.json file (#​9342) (2011f28)
  • templates: fixed forgot password link (#​15037) (b505e36)
  • templates: add generated files to ESLint ignores (#​15716) (941a41f)
  • templates: typo in with-cloudflare-d1 template (#​14243) (14b708f)
  • translations: fix Swedish unpublish translations and capitalization (#​15353) (4e48706)
  • translations: correct French translation for 'move' action (#​14771) (750d29f)
  • translations: update passive voice and newLabel wording in zh-TW translations (#​13761) (e284ab5)
  • translations: update Japanese translations related to localizeStatus (#​15358) (7ab2881)
  • ui: relationship filter duplicate options when switching operators (#​16204) (3a1f31a)
  • ui: unpublish button missing for globals and version count incorrectly incrementing after unpublish (#​16203) (1ddeb60)
  • ui: exclude unnamed tab labels from filter and groupBy field options (#​9965) (b13c5c9)
  • ui: update node to v20 (#​15717) (b2593d6)
  • ui: radio fields do not reliably trigger admin.condition re-evaluation on sibling fields (#​16056) (7e2a126)
⚡ Performance
🛠 Refactors
  • plugin-seo: rename non-JSX files from .tsx to .ts (#​14418) (b67882c)
  • translations: improve German translations for consistency and accuracy (#​14439) (f3c0bc8)
📚 Documentation
📝 Templates
  • fix tailwind typography config so that it works better with shadcn CLI (#​16209) (4931458)
🏡 Chores
🤝 Contributors

v3.81.0

Compare Source

🚀 Features
  • add LLM eval suite for Payload conventions and code generation (#​15710) (db4b00e)
  • next: prevent admin panel errors when cacheComponents is enabled (#​16020) (1ecd7dd)
🐛 Bug Fixes
🛠 Refactors
📚 Documentation
  • clarify unique field index behavior and add warnings for array/blocks nesting (#​15969) (38c1d4d)
  • document ListViewServerProps/ClientProps and custom list view component patterns (#​15970) (eb3b227)
  • adds code examples for how to fully implement textStateFeature (#​16053) (80ae745)
🧪 Tests
📝 Templates
⚙️ CI
🏡 Chores
  • claude: update audit-dependencies skill with lockfile strategy and override rules (#​16106) (974870a)
  • deps: bump qs-esm from 7.0.2 to 8.0.1 (#​16110) (d6862fe)
🤝 Contributors

Configuration

📅 Schedule: (UTC)

  • Branch creation
    • At any time (no schedule defined)
  • Automerge
    • At any time (no schedule defined)

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about these updates again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate renovate Bot force-pushed the renovate/major-payloadcms-monorepo branch 4 times, most recently from e933300 to c55944d Compare February 21, 2025 14:09
@renovate renovate Bot force-pushed the renovate/major-payloadcms-monorepo branch 2 times, most recently from e84830b to 4badad4 Compare July 29, 2025 23:34
@renovate renovate Bot force-pushed the renovate/major-payloadcms-monorepo branch 2 times, most recently from b866623 to f298878 Compare August 10, 2025 14:49
@renovate renovate Bot force-pushed the renovate/major-payloadcms-monorepo branch 3 times, most recently from ac8ee56 to c3b07df Compare August 19, 2025 13:42
@renovate renovate Bot force-pushed the renovate/major-payloadcms-monorepo branch 2 times, most recently from ba24489 to 2c50efc Compare August 28, 2025 16:48
@renovate renovate Bot force-pushed the renovate/major-payloadcms-monorepo branch from 2c50efc to 4ab29a5 Compare August 31, 2025 09:26
@renovate renovate Bot force-pushed the renovate/major-payloadcms-monorepo branch 2 times, most recently from 8898b7c to 3f55a2b Compare September 10, 2025 22:42
@renovate renovate Bot force-pushed the renovate/major-payloadcms-monorepo branch from 3f55a2b to 3d9f2f9 Compare September 17, 2025 17:26
@renovate renovate Bot force-pushed the renovate/major-payloadcms-monorepo branch 3 times, most recently from cc96513 to fcc687d Compare September 30, 2025 18:58
@renovate renovate Bot force-pushed the renovate/major-payloadcms-monorepo branch 2 times, most recently from 429bdd1 to eafe103 Compare October 8, 2025 04:08
@renovate renovate Bot force-pushed the renovate/major-payloadcms-monorepo branch 3 times, most recently from 9e9f3d5 to e3351b8 Compare October 23, 2025 16:51
@renovate renovate Bot force-pushed the renovate/major-payloadcms-monorepo branch 2 times, most recently from b63e383 to ef3e00c Compare October 31, 2025 04:11
@renovate renovate Bot force-pushed the renovate/major-payloadcms-monorepo branch from ef3e00c to d175a20 Compare November 3, 2025 19:04
@renovate renovate Bot force-pushed the renovate/major-payloadcms-monorepo branch 3 times, most recently from 256ee26 to fbc4ff8 Compare December 19, 2025 21:55
@renovate renovate Bot force-pushed the renovate/major-payloadcms-monorepo branch 2 times, most recently from fae6910 to 0e4f35f Compare January 5, 2026 20:56
@renovate renovate Bot force-pushed the renovate/major-payloadcms-monorepo branch 3 times, most recently from 81c17a9 to 2f39d02 Compare January 19, 2026 15:08
@renovate renovate Bot force-pushed the renovate/major-payloadcms-monorepo branch 3 times, most recently from 60570ce to 7b96de4 Compare January 30, 2026 17:40
@renovate renovate Bot force-pushed the renovate/major-payloadcms-monorepo branch 4 times, most recently from 48eb6f7 to 275f712 Compare February 12, 2026 11:45
@renovate renovate Bot force-pushed the renovate/major-payloadcms-monorepo branch from 275f712 to 0cc9332 Compare February 19, 2026 08:17
@renovate renovate Bot force-pushed the renovate/major-payloadcms-monorepo branch 3 times, most recently from 9d182e9 to f727ae7 Compare March 5, 2026 14:13
@renovate renovate Bot force-pushed the renovate/major-payloadcms-monorepo branch 2 times, most recently from a19a358 to 1cb49c5 Compare March 16, 2026 17:33
@renovate renovate Bot force-pushed the renovate/major-payloadcms-monorepo branch 2 times, most recently from 704a7cd to 8e81e95 Compare March 27, 2026 01:04
@renovate renovate Bot force-pushed the renovate/major-payloadcms-monorepo branch 2 times, most recently from de446e3 to 9b73fc1 Compare April 1, 2026 01:34
@renovate renovate Bot force-pushed the renovate/major-payloadcms-monorepo branch 3 times, most recently from a38bef4 to 1afb78e Compare April 9, 2026 19:08
@renovate renovate Bot force-pushed the renovate/major-payloadcms-monorepo branch from 1afb78e to 5f15c29 Compare April 16, 2026 11:36
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants