Skip to content

Issue with Opennext Cloudflare #3349

Open
@himanshu-ntml

Description

@himanshu-ntml

Thank you so much for all the effort you’ve put into this. I am currently trying to integrate with OpenNext Cloudflare, but I’m encountering an error in the stream.ts file due to a missing index.js file in the pg-cloudflare package.

I have tried looking into the package and found in export there is default and workerd. Somehow it not working on nextjs.

Here is the error:


himanshu@Himanshus-MacBook-Pro mathlive % npm run preview

> [email protected] preview
> cloudflare && wrangler dev

Building the Next.js app in the current folder (/Users/himanshu/Desktop/experiments/mathlive)
  ▲ Next.js 14.2.5
  - Environments: .env

   Creating an optimized production build ...
Webpack Bundle Analyzer saved report to /Users/himanshu/Desktop/experiments/mathlive/.next/analyze/nodejs.html

No bundles were parsed. Analyzer will show only original module sizes from stats file.

Webpack Bundle Analyzer saved report to /Users/himanshu/Desktop/experiments/mathlive/.next/analyze/edge.html
Webpack Bundle Analyzer saved report to /Users/himanshu/Desktop/experiments/mathlive/.next/analyze/client.html
 ✓ Compiled successfully
 ✓ Linting and checking validity of types    
 ✓ Collecting page data    
 ✓ Generating static pages (7/7)
 ✓ Collecting build traces    
 ✓ Finalizing page optimization    

Route (app)                              Size     First Load JS
┌ ƒ /                                    141 B          87.2 kB
├ ○ /_not-found                          871 B          87.9 kB
├ ○ /api                                 0 B                0 B
└ ○ /mathlive                            141 B          87.2 kB
+ First Load JS shared by all            87 kB
  ├ chunks/23-b75664ace61c0abb.js        31.5 kB
  ├ chunks/fd9d1056-2821b0f0cabcd8bd.js  53.6 kB
  └ other shared chunks (total)          1.86 kB


○  (Static)   prerendered as static content
ƒ  (Dynamic)  server-rendered on demand

⚙️ Copying files...

# copyPrerenderedRoutes
# copyPackageTemplateFiles
⚙️ Bundling the worker file...

# patchWranglerDeps
# updateWebpackChunksFile
 - chunk 347.js
 - chunk 621.js
 - chunk 682.js
 - chunk 948.js
# patchRequire
# patchReadFile
# inlineNextRequire
# patchFindDir
# inlineEvalManifest
# patchCache
# inlineMiddlewareManifestRequire
# patchExceptionBubbling
Worker saved in `/Users/himanshu/Desktop/experiments/mathlive/.worker-next/index.mjs` 🚀


 ⛅️ wrangler 3.92.0
-------------------

Your worker has access to the following bindings:
- Vars:
  - ENVIRONMENT: "development"
  - DB_URL: "postgresql://postgres:bMOqlzxMfjbcJAr..."
[wrangler:inf] Ready on http://localhost:8787

✘ [ERROR] Build failed with 1 error:

  ✘ [ERROR] Could not resolve "pg-cloudflare"
  
      .worker-next/.next/standalone/node_modules/pg/lib/stream.js:41:41:
        41 │     const { CloudflareSocket } = require('pg-cloudflare')
           ╵                                          ~~~~~~~~~~~~~~~
  
    The module "./dist/index.js" was not found on the file system:
  
      .worker-next/.next/standalone/node_modules/pg-cloudflare/package.json:13:15:
        13 │     "workerd": "./dist/index.js",
           ╵                ~~~~~~~~~~~~~~~~~
  
    You can mark the path "pg-cloudflare" as external to exclude it from the bundle, which will
  remove this error. You can also surround this "require" call with a try/catch block to handle this
  failure at run-time instead of bundle-time.
  
  


🪵  Logs were written to "/Users/himanshu/Library/Preferences/.wrangler/logs/wrangler-2024-12-06_08-27-37_958.log"
╭──────────────────────────────────────────────────────────────────────────────────────────────────╮
│  [b] open a browser, [d] open devtools, [l] turn off local mode, [c] clear console, [x] to exit  │
╰──────────────────────────────────────────────────────────────────────────────────────────────────╯
himanshu@Himanshus-MacBook-Pro mathlive % 



--- 2024-12-06T08:27:38.038Z debug
🪵  Writing logs to "/Users/himanshu/Library/Preferences/.wrangler/logs/wrangler-2024-12-06_08-27-37_958.log"
---

--- 2024-12-06T08:27:38.038Z log

 ⛅️ wrangler 3.92.0
�[38;2;255;136;0m-------------------�[39m

---

--- 2024-12-06T08:27:38.123Z debug
.env file not found at "/Users/himanshu/Desktop/experiments/mathlive/.dev.vars". Continuing... For more details, refer to https://developers.cloudflare.com/workers/wrangler/system-environment-variables/
---

--- 2024-12-06T08:27:38.123Z log
Your worker has access to the following bindings:
- Vars:
  - ENVIRONMENT: "development"
  - DB_URL: "postgresql://postgres:bMOqlzxMfjbcJAr..."
---

--- 2024-12-06T08:27:38.308Z debug
Error in BundlerController: Failed to construct initial bundle
 BuildFailure [Error]: Initial build failed.
    at bundleWorker (/Users/himanshu/Desktop/experiments/mathlive/node_modules/wrangler/wrangler-dist/cli.js:129371:15)
    at process.processTicksAndRejections (node:internal/process/task_queues:105:5)
    at async build (/Users/himanshu/Desktop/experiments/mathlive/node_modules/wrangler/wrangler-dist/cli.js:136691:59) {
  errors: [
    {
      detail: undefined,
      id: '',
      location: [Object],
      notes: [Array],
      pluginName: '',
      text: 'Could not resolve "pg-cloudflare"'
    }
  ],
  warnings: []
}
---

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions