nuxt-modules / sitemap

Powerfully flexible XML Sitemaps that integrate seamlessly, for Nuxt.
https://nuxtseo.com/sitemap
300 stars 29 forks source link

When using the '@nuxtjs/i18n' plugin on Cloudflare Pages, errors occur. #259

Closed acdxxx177 closed 1 month ago

acdxxx177 commented 4 months ago

When using the "@nuxtjs/sitemap", "@nuxtjs/i18n", and "preset: 'cloudflare-pages'" configurations together, running 'pnpm build' results in an error.


✓ built in 2.41s                                                                                                                                  21:15:29   
✔ Server built in 2419ms                                                                                                                            21:15:29
✔ Generated public dist                                                                                                                       nitro 21:15:30
ℹ Building Nuxt Nitro server (preset: cloudflare-pages)                                                                                       nitro 21:15:30

[nitro 21:15:34]  ERROR  RollupError: .nuxt/dist/server/_nuxt/prompt-D0ofs6NA.js (1:9): "stdin" is not exported by "node_modules/.pnpm/unenv@1.9.0/node_modules/unenv/runtime/node/process/index.mjs", imported by ".nuxt/dist/server/_nuxt/prompt-D0ofs6NA.js".

1: import { stdin, stdout } from "node:process";
            ^
2: import f from "node:readline";
3: import { WriteStream } from "node:tty";

[21:15:34]  ERROR  .nuxt/dist/server/_nuxt/prompt-D0ofs6NA.js (1:9): "stdin" is not exported by "node_modules/.pnpm/unenv@1.9.0/node_modules/unenv/runtime/node/process/index.mjs", imported by ".nuxt/dist/server/_nuxt/prompt-D0ofs6NA.js".

  at getRollupError (/F:/mywork/cloudflare/testseo/node_modules/.pnpm/rollup@4.14.0/node_modules/rollup/dist/es/shared/parseAst.js:379:41)
  at error (/F:/mywork/cloudflare/testseo/node_modules/.pnpm/rollup@4.14.0/node_modules/rollup/dist/es/shared/parseAst.js:375:42)
  at Module.error (/F:/mywork/cloudflare/testseo/node_modules/.pnpm/rollup@4.14.0/node_modules/rollup/dist/es/shared/node-entry.js:13685:16)
  at Module.traceVariable (/F:/mywork/cloudflare/testseo/node_modules/.pnpm/rollup@4.14.0/node_modules/rollup/dist/es/shared/node-entry.js:14133:29)
  at ModuleScope.findVariable (/F:/mywork/cloudflare/testseo/node_modules/.pnpm/rollup@4.14.0/node_modules/rollup/dist/es/shared/node-entry.js:11819:39)       
  at ChildScope.findVariable (/F:/mywork/cloudflare/testseo/node_modules/.pnpm/rollup@4.14.0/node_modules/rollup/dist/es/shared/node-entry.js:6036:38)
  at ClassBodyScope.findVariable (/F:/mywork/cloudflare/testseo/node_modules/.pnpm/rollup@4.14.0/node_modules/rollup/dist/es/shared/node-entry.js:6036:38)     
  at ChildScope.findVariable (/F:/mywork/cloudflare/testseo/node_modules/.pnpm/rollup@4.14.0/node_modules/rollup/dist/es/shared/node-entry.js:6036:38)
  at ChildScope.findVariable (/F:/mywork/cloudflare/testseo/node_modules/.pnpm/rollup@4.14.0/node_modules/rollup/dist/es/shared/node-entry.js:6036:38)
  at FunctionScope.findVariable (/F:/mywork/cloudflare/testseo/node_modules/.pnpm/rollup@4.14.0/node_modules/rollup/dist/es/shared/node-entry.js:6036:38)      
  at Identifier.bind (/F:/mywork/cloudflare/testseo/node_modules/.pnpm/rollup@4.14.0/node_modules/rollup/dist/es/shared/node-entry.js:7310:40)
  at AssignmentPattern.bind (/F:/mywork/cloudflare/testseo/node_modules/.pnpm/rollup@4.14.0/node_modules/rollup/dist/es/shared/node-entry.js:4752:23)
  at Property.bind (/F:/mywork/cloudflare/testseo/node_modules/.pnpm/rollup@4.14.0/node_modules/rollup/dist/es/shared/node-entry.js:4752:23)
  at ObjectPattern.bind (/F:/mywork/cloudflare/testseo/node_modules/.pnpm/rollup@4.14.0/node_modules/rollup/dist/es/shared/node-entry.js:4748:28)
  at FunctionExpression.bind (/F:/mywork/cloudflare/testseo/node_modules/.pnpm/rollup@4.14.0/node_modules/rollup/dist/es/shared/node-entry.js:4748:28)
  at MethodDefinition.bind (/F:/mywork/cloudflare/testseo/node_modules/.pnpm/rollup@4.14.0/node_modules/rollup/dist/es/shared/node-entry.js:4752:23)
  at ClassBody.bind (/F:/mywork/cloudflare/testseo/node_modules/.pnpm/rollup@4.14.0/node_modules/rollup/dist/es/shared/node-entry.js:4748:28)
  at ClassDeclaration.bind (/F:/mywork/cloudflare/testseo/node_modules/.pnpm/rollup@4.14.0/node_modules/rollup/dist/es/shared/node-entry.js:4752:23)
  at Program.bind (/F:/mywork/cloudflare/testseo/node_modules/.pnpm/rollup@4.14.0/node_modules/rollup/dist/es/shared/node-entry.js:4748:28)
  at Module.bindReferences (/F:/mywork/cloudflare/testseo/node_modules/.pnpm/rollup@4.14.0/node_modules/rollup/dist/es/shared/node-entry.js:13666:18)
  at Graph.sortModules (/F:/mywork/cloudflare/testseo/node_modules/.pnpm/rollup@4.14.0/node_modules/rollup/dist/es/shared/node-entry.js:19882:20)
  at Graph.build (/F:/mywork/cloudflare/testseo/node_modules/.pnpm/rollup@4.14.0/node_modules/rollup/dist/es/shared/node-entry.js:19786:14)
  at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
  at async /F:/mywork/cloudflare/testseo/node_modules/.pnpm/rollup@4.14.0/node_modules/rollup/dist/es/shared/node-entry.js:20430:13
  at async catchUnfinishedHookActions (/F:/mywork/cloudflare/testseo/node_modules/.pnpm/rollup@4.14.0/node_modules/rollup/dist/es/shared/node-entry.js:19939:16)
  at async rollupInternal (/F:/mywork/cloudflare/testseo/node_modules/.pnpm/rollup@4.14.0/node_modules/rollup/dist/es/shared/node-entry.js:20425:5)
  at async _build (/F:/mywork/cloudflare/testseo/node_modules/.pnpm/nitropack@2.9.6/node_modules/nitropack/dist/nitro.mjs:2628:20)
  at async /F:/mywork/cloudflare/testseo/node_modules/.pnpm/nuxt@3.11.1_@unocss+reset@0.58.9_floating-vue@5.2.2_rollup@4.14.0_unocss@0.58.9_vite@5.2.8/node_modules/nuxt/dist/index.mjs:3411:7
  at async build (/F:/mywork/cloudflare/testseo/node_modules/.pnpm/nuxt@3.11.1_@unocss+reset@0.58.9_floating-vue@5.2.2_rollup@4.14.0_unocss@0.58.9_vite@5.2.8/node_modules/nuxt/dist/index.mjs:4938:5)
  at async Object.run (/F:/mywork/cloudflare/testseo/node_modules/.pnpm/nuxi@3.11.1/node_modules/nuxi/dist/chunks/build.mjs:95:5)
  at async runCommand$1 (/F:/mywork/cloudflare/testseo/node_modules/.pnpm/nuxi@3.11.1/node_modules/nuxi/dist/shared/nuxi.9edf0930.mjs:1648:16)
  at async runCommand$1 (/F:/mywork/cloudflare/testseo/node_modules/.pnpm/nuxi@3.11.1/node_modules/nuxi/dist/shared/nuxi.9edf0930.mjs:1639:11)
  at async runMain$1 (/F:/mywork/cloudflare/testseo/node_modules/.pnpm/nuxi@3.11.1/node_modules/nuxi/dist/shared/nuxi.9edf0930.mjs:1777:7)

[21:15:34]  ERROR  .nuxt/dist/server/_nuxt/prompt-D0ofs6NA.js (1:9): "stdin" is not exported by "node_modules/.pnpm/unenv@1.9.0/node_modules/unenv/runtime/node/process/index.mjs", imported by ".nuxt/dist/server/_nuxt/prompt-D0ofs6NA.js".
// nuxt.config.ts
export default defineNuxtConfig({
  devtools: { enabled: true },
  modules: ["@nuxtjs/sitemap", "@nuxtjs/i18n"],
  i18n: {
    baseUrl: "https://example.com",
    vueI18n: "./i18n.config.ts",
    locales: [{ code: "en", iso: "en-US" }],
    defaultLocale: "en",
    detectBrowserLanguage: {
      useCookie: true,
      cookieKey: "i18n_redirected",
      redirectOn: "root",
    },
  },
  nitro: {
    preset: "cloudflare-pages",  // Adding this line of code causes the error mentioned above.
    prerender: {
      autoSubfolderIndex: false,
    },
  },
});
harlan-zw commented 4 months ago

Would it be possible to create a minimal reproduction? There's an i18n starter with the sitemap module here: https://stackblitz.com/edit/nuxt-starter-jwuie4?file=app.vue

acdxxx177 commented 4 months ago

Would it be possible to create a minimal reproduction? There's an i18n starter with the sitemap module here: https://stackblitz.com/edit/nuxt-starter-jwuie4?file=app.vue

Yes, just add nitro: {preset: "cloudflare-pages",} to the nuxt.config.ts file and then run npm build and an error occurs https://stackblitz.com/edit/nuxt-starter-qmrlyg?file=nuxt.config.ts

acdxxx177 commented 2 months ago

@harlan-zw I've found that as long as ‘@nuxtjs/sitemap’, ‘@nuxtjs/i18n’ are combined, it won't run on edge services。

harlan-zw commented 1 month ago

I've tried replicating this but it seems to be working correctly now using the latest version of Nuxt, Nuxt Sitemap and Nuxt I18n. Will close but feel free to re-open if you have issues with the latest versions.

acdxxx177 commented 3 weeks ago

I've tried the latest version and I'm still having the same problem. My version.

"@nuxtjs/i18n": "^8.3.3", "@nuxtjs/sitemap": "6.0.0-beta.1", "nuxt": "^3.12.4"

Detailed links:https://stackblitz.com/edit/nuxt-starter-qmrlyg?file=package.json,nuxt.config.ts