Skip to content

with-cloudflare-d1 template is broken from v3.85.0 #16757

@kazuemon

Description

@kazuemon

Describe the Bug

When I attempt to access the admin page, a module resolution error occurs and I am unable to open it.

Module not found: Can't resolve 'worker_threads'
  4 | const split = require('split2')
  5 | const { Duplex } = require('stream')
> 6 | const { parentPort, workerData } = require('worker_threads')
    |                                  ^
  7 |
  8 | function createDeferred () {
  9 |   let resolve

https://nextjs.org/docs/messages/module-not-found

Import trace for requested module:
./node_modules/.pnpm/pino-pretty@13.1.2/node_modules/pino-pretty/index.js
./node_modules/.pnpm/payload@3.85.0_graphql@16.14.0_typescript@5.7.3/node_modules/payload/dist/utilities/logger.js
./node_modules/.pnpm/payload@3.85.0_graphql@16.14.0_typescript@5.7.3/node_modules/payload/dist/index.js
./node_modules/.pnpm/payload@3.85.0_graphql@16.14.0_typescript@5.7.3/node_modules/payload/dist/utilities/getEntityPermissions/entityDocExists.js
./node_modules/.pnpm/payload@3.85.0_graphql@16.14.0_typescript@5.7.3/node_modules/payload/dist/utilities/getEntityPermissions/getEntityPermissions.js
./node_modules/.pnpm/payload@3.85.0_graphql@16.14.0_typescript@5.7.3/node_modules/payload/dist/exports/internal.js
./node_modules/.pnpm/@payloadcms+plugin-cloud-storage@3.85.0_@types+react@19.2.9_monaco-editor@0.55.1_next@15.4.11_j5wrcln45qasuerzxq2joth2fq/node_modules/@payloadcms/plugin-cloud-storage/dist/utilities/resolveSignedURLKey.js
./node_modules/.pnpm/@payloadcms+plugin-cloud-storage@3.85.0_@types+react@19.2.9_monaco-editor@0.55.1_next@15.4.11_j5wrcln45qasuerzxq2joth2fq/node_modules/@payloadcms/plugin-cloud-storage/dist/exports/utilities.js
./node_modules/.pnpm/@payloadcms+storage-r2@3.85.0_@types+react@19.2.9_monaco-editor@0.55.1_next@15.4.11_@babel+co_oztnqrx4zsk7tam7jwxz3aurv4/node_modules/@payloadcms/storage-r2/dist/client/R2ClientUploadHandler.js
 GET /admin 500 in 10882ms

Link to the code that reproduces this issue

https://github.com/kazuemon/payload-3.85.0-cf-d1-reproduction

Reproduction Steps

I have provided a link to the repository, but it is just the state immediately after running create-payload-app.

  1. pnpx create-payload-app -t with-cloudflare-d1
  2. pnpm dev
  3. access http://localhost:3000/admin

Which area(s) are affected?

plugin: cloud-storage

Environment Info

Binaries:
  Node: 24.15.0
  npm: 10.9.2
  Yarn: 1.22.19
  pnpm: 9.15.9
Relevant Packages:
  payload: 3.85.0
  next: 15.4.11
  @payloadcms/db-d1-sqlite: 3.85.0
  @payloadcms/drizzle: 3.85.0
  @payloadcms/graphql: 3.85.0
  @payloadcms/next/utilities: 3.85.0
  @payloadcms/plugin-cloud-storage: 3.85.0
  @payloadcms/richtext-lexical: 3.85.0
  @payloadcms/storage-r2: 3.85.0
  @payloadcms/translations: 3.85.0
  @payloadcms/ui/shared: 3.85.0
  react: 19.2.1
  react-dom: 19.2.1
Operating System:
  Platform: linux
  Arch: x64
  Version: #1 SMP PREEMPT_DYNAMIC Thu Jun  5 18:30:46 UTC 2025
  Available memory (MB): 31885
  Available CPU cores: 16

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions