Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[BUG]: build target for vercel or other platform(not SSG situation) will throw error #700

Closed
PerfectPan opened this issue May 5, 2024 · 1 comment · Fixed by #699
Closed

Comments

@PerfectPan
Copy link
Contributor

PerfectPan commented May 5, 2024

Version 0.20.2-alpha.0 has a bug when you target the build platform for vercel or other platform(not SSG situation) it will throw error.

Reproduce Repo: https://github.com/PerfectPan/waku-issue-700

Error Info:

➜ pnpm build

> waku-issue-700@0.0.0 build /Users/perfectpan/Workspace/waku-issue-700
> waku build --with-vercel

vite v5.2.8 building SSR bundle for production...
✓ 54 modules transformed.
✓ built in 447ms
vite v5.2.8 building SSR bundle for production...
✓ 78 modules transformed.
x Build failed in 110ms
file:///Users/perfectpan/Workspace/waku-issue-700/node_modules/.pnpm/vite@5.2.8/node_modules/vite/dist/node/chunks/dep-whKeNLxG.js:67589
                    throw new Error(`[vite]: Rollup failed to resolve import "${exporter}" from "${id}".\n` +
                          ^

Error: [vite]: Rollup failed to resolve import "/Users/perfectpan/Workspace/waku-issue-700/src/entries.js" from "/Users/perfectpan/Workspace/waku-issue-700/node_modules/.pnpm/waku@0.20.2-alpha.0_react-dom@19.0.0-beta-4508873393-20240430_react-server-dom-webpack@19.0.0_4afkmjaxtnugm3bftlz3chym4m/node_modules/waku/dist/lib/builder/serve-vercel.js".
This is most likely unintended because it can break your application at runtime.
If you do want to externalize this module explicitly add it to
`build.rollupOptions.external`
    at viteWarn (file:///Users/perfectpan/Workspace/waku-issue-700/node_modules/.pnpm/vite@5.2.8/node_modules/vite/dist/node/chunks/dep-whKeNLxG.js:67589:27)
    at onwarn (file:///Users/perfectpan/Workspace/waku-issue-700/node_modules/.pnpm/waku@0.20.2-alpha.0_react-dom@19.0.0-beta-4508873393-20240430_react-server-dom-webpack@19.0.0_4afkmjaxtnugm3bftlz3chym4m/node_modules/waku/dist/lib/builder/build.js:34:5)
    at onRollupWarning (file:///Users/perfectpan/Workspace/waku-issue-700/node_modules/.pnpm/vite@5.2.8/node_modules/vite/dist/node/chunks/dep-whKeNLxG.js:67614:9)
    at onwarn (file:///Users/perfectpan/Workspace/waku-issue-700/node_modules/.pnpm/vite@5.2.8/node_modules/vite/dist/node/chunks/dep-whKeNLxG.js:67321:13)
    at file:///Users/perfectpan/Workspace/waku-issue-700/node_modules/.pnpm/rollup@4.17.2/node_modules/rollup/dist/es/shared/node-entry.js:18518:13
    at Object.logger [as onLog] (file:///Users/perfectpan/Workspace/waku-issue-700/node_modules/.pnpm/rollup@4.17.2/node_modules/rollup/dist/es/shared/node-entry.js:20166:9)
    at ModuleLoader.handleInvalidResolvedId (file:///Users/perfectpan/Workspace/waku-issue-700/node_modules/.pnpm/rollup@4.17.2/node_modules/rollup/dist/es/shared/node-entry.js:19108:26)
    at ModuleLoader.resolveDynamicImport (file:///Users/perfectpan/Workspace/waku-issue-700/node_modules/.pnpm/rollup@4.17.2/node_modules/rollup/dist/es/shared/node-entry.js:19166:58)
    at async file:///Users/perfectpan/Workspace/waku-issue-700/node_modules/.pnpm/rollup@4.17.2/node_modules/rollup/dist/es/shared/node-entry.js:19053:32 {
  watchFiles: [
    '/Users/perfectpan/Workspace/waku-issue-700/node_modules/.pnpm/react-server-dom-webpack@19.0.0-beta-4508873393-20240430_react-dom@19.0.0-beta-4508873393-202_g5kgrokk76tc26bdc26v2ptnbu/node_modules/react-server-dom-webpack/server.edge.js',
    '/Users/perfectpan/Workspace/waku-issue-700/node_modules/.pnpm/waku@0.20.2-alpha.0_react-dom@19.0.0-beta-4508873393-20240430_react-server-dom-webpack@19.0.0_4afkmjaxtnugm3bftlz3chym4m/node_modules/waku/dist/server.js',
    '/Users/perfectpan/Workspace/waku-issue-700/node_modules/.pnpm/waku@0.20.2-alpha.0_react-dom@19.0.0-beta-4508873393-20240430_react-server-dom-webpack@19.0.0_4afkmjaxtnugm3bftlz3chym4m/node_modules/waku/dist/router/client.js',
    '/Users/perfectpan/Workspace/waku-issue-700/node_modules/.pnpm/waku@0.20.2-alpha.0_react-dom@19.0.0-beta-4508873393-20240430_react-server-dom-webpack@19.0.0_4afkmjaxtnugm3bftlz3chym4m/node_modules/waku/dist/client.js',
    '/Users/perfectpan/Workspace/waku-issue-700/src/pages/_layout.tsx',
    '/Users/perfectpan/Workspace/waku-issue-700/src/pages/index.tsx',
    '/Users/perfectpan/Workspace/waku-issue-700/src/pages/about.tsx',
    '/Users/perfectpan/Workspace/waku-issue-700/src/components/header.tsx',
    '/Users/perfectpan/Workspace/waku-issue-700/src/components/counter.tsx',
    '/Users/perfectpan/Workspace/waku-issue-700/src/components/footer.tsx',
    '/Users/perfectpan/Workspace/waku-issue-700/node_modules/.pnpm/waku@0.20.2-alpha.0_react-dom@19.0.0-beta-4508873393-20240430_react-server-dom-webpack@19.0.0_4afkmjaxtnugm3bftlz3chym4m/node_modules/waku/dist/lib/builder/serve-vercel.js',
    '/Users/perfectpan/Workspace/waku-issue-700/package.json',
    '/Users/perfectpan/Workspace/waku-issue-700/node_modules/.pnpm/react-server-dom-webpack@19.0.0-beta-4508873393-20240430_react-dom@19.0.0-beta-4508873393-202_g5kgrokk76tc26bdc26v2ptnbu/node_modules/react-server-dom-webpack/cjs/react-server-dom-webpack-server.edge.production.js',
    '/Users/perfectpan/Workspace/waku-issue-700/node_modules/.pnpm/react@19.0.0-beta-4508873393-20240430/node_modules/react/jsx-runtime.react-server.js',
    '/Users/perfectpan/Workspace/waku-issue-700/src/styles.css',
    '/Users/perfectpan/Workspace/waku-issue-700/node_modules/.pnpm/waku@0.20.2-alpha.0_react-dom@19.0.0-beta-4508873393-20240430_react-server-dom-webpack@19.0.0_4afkmjaxtnugm3bftlz3chym4m/node_modules/waku/dist/main.react-server.js',
    '/Users/perfectpan/Workspace/waku-issue-700/node_modules/.pnpm/@hono+node-server@1.9.1/node_modules/@hono/node-server/dist/index.mjs',
    '/Users/perfectpan/Workspace/waku-issue-700/node_modules/.pnpm/waku@0.20.2-alpha.0_react-dom@19.0.0-beta-4508873393-20240430_react-server-dom-webpack@19.0.0_4afkmjaxtnugm3bftlz3chym4m/node_modules/waku/dist/lib/hono/runner.js',
    '/Users/perfectpan/Workspace/waku-issue-700/node_modules/.pnpm/hono@4.2.2/node_modules/hono/dist/index.js',
    '/Users/perfectpan/Workspace/waku-issue-700/node_modules/.pnpm/waku@0.20.2-alpha.0_react-dom@19.0.0-beta-4508873393-20240430_react-server-dom-webpack@19.0.0_4afkmjaxtnugm3bftlz3chym4m/node_modules/waku/dist/router/server.js',
    '/Users/perfectpan/Workspace/waku-issue-700/node_modules/.pnpm/react-dom@19.0.0-beta-4508873393-20240430_react@19.0.0-beta-4508873393-20240430/node_modules/react-dom/react-dom.react-server.js',
    '/Users/perfectpan/Workspace/waku-issue-700/node_modules/.pnpm/react@19.0.0-beta-4508873393-20240430/node_modules/react/react.react-server.js',
    '/Users/perfectpan/Workspace/waku-issue-700/node_modules/.pnpm/waku@0.20.2-alpha.0_react-dom@19.0.0-beta-4508873393-20240430_react-server-dom-webpack@19.0.0_4afkmjaxtnugm3bftlz3chym4m/node_modules/waku/dist/lib/config.js',
    '/Users/perfectpan/Workspace/waku-issue-700/node_modules/.pnpm/hono@4.2.2/node_modules/hono/dist/hono.js',
    '/Users/perfectpan/Workspace/waku-issue-700/node_modules/.pnpm/react@19.0.0-beta-4508873393-20240430/node_modules/react/cjs/react-jsx-runtime.react-server.production.js',
    '/Users/perfectpan/Workspace/waku-issue-700/node_modules/.pnpm/waku@0.20.2-alpha.0_react-dom@19.0.0-beta-4508873393-20240430_react-server-dom-webpack@19.0.0_4afkmjaxtnugm3bftlz3chym4m/node_modules/waku/dist/router/define-router.js',
    '/Users/perfectpan/Workspace/waku-issue-700/node_modules/.pnpm/waku@0.20.2-alpha.0_react-dom@19.0.0-beta-4508873393-20240430_react-server-dom-webpack@19.0.0_4afkmjaxtnugm3bftlz3chym4m/node_modules/waku/dist/router/fs-router.js',
    '/Users/perfectpan/Workspace/waku-issue-700/node_modules/.pnpm/waku@0.20.2-alpha.0_react-dom@19.0.0-beta-4508873393-20240430_react-server-dom-webpack@19.0.0_4afkmjaxtnugm3bftlz3chym4m/node_modules/waku/dist/router/create-pages.js',
    '/Users/perfectpan/Workspace/waku-issue-700/node_modules/.pnpm/react-dom@19.0.0-beta-4508873393-20240430_react@19.0.0-beta-4508873393-20240430/node_modules/react-dom/cjs/react-dom.react-server.production.js',
    '/Users/perfectpan/Workspace/waku-issue-700/tailwind.config.js',
    '/Users/perfectpan/Workspace/waku-issue-700/node_modules/.pnpm/react@19.0.0-beta-4508873393-20240430/node_modules/react/cjs/react.react-server.production.js',
    '/Users/perfectpan/Workspace/waku-issue-700/node_modules/.pnpm/waku@0.20.2-alpha.0_react-dom@19.0.0-beta-4508873393-20240430_react-server-dom-webpack@19.0.0_4afkmjaxtnugm3bftlz3chym4m/node_modules/waku/dist/middleware/ssr.js',
    '/Users/perfectpan/Workspace/waku-issue-700/node_modules/.pnpm/waku@0.20.2-alpha.0_react-dom@19.0.0-beta-4508873393-20240430_react-server-dom-webpack@19.0.0_4afkmjaxtnugm3bftlz3chym4m/node_modules/waku/dist/middleware/rsc.js',
    '/Users/perfectpan/Workspace/waku-issue-700/node_modules/.pnpm/hono@4.2.2/node_modules/hono/dist/hono-base.js',
    '/Users/perfectpan/Workspace/waku-issue-700/node_modules/.pnpm/hono@4.2.2/node_modules/hono/dist/router/reg-exp-router/index.js',
    '/Users/perfectpan/Workspace/waku-issue-700/node_modules/.pnpm/hono@4.2.2/node_modules/hono/dist/router/smart-router/index.js',
    '/Users/perfectpan/Workspace/waku-issue-700/node_modules/.pnpm/hono@4.2.2/node_modules/hono/dist/router/trie-router/index.js',
    '/Users/perfectpan/Workspace/waku-issue-700/node_modules/.pnpm/waku@0.20.2-alpha.0_react-dom@19.0.0-beta-4508873393-20240430_react-server-dom-webpack@19.0.0_4afkmjaxtnugm3bftlz3chym4m/node_modules/waku/dist/router/common.js',
    '/Users/perfectpan/Workspace/waku-issue-700/node_modules/.pnpm/waku@0.20.2-alpha.0_react-dom@19.0.0-beta-4508873393-20240430_react-server-dom-webpack@19.0.0_4afkmjaxtnugm3bftlz3chym4m/node_modules/waku/dist/lib/utils/path.js',
    '/Users/perfectpan/Workspace/waku-issue-700/node_modules/.pnpm/waku@0.20.2-alpha.0_react-dom@19.0.0-beta-4508873393-20240430_react-server-dom-webpack@19.0.0_4afkmjaxtnugm3bftlz3chym4m/node_modules/waku/dist/lib/middleware/ssr.js',
    '/Users/perfectpan/Workspace/waku-issue-700/node_modules/.pnpm/waku@0.20.2-alpha.0_react-dom@19.0.0-beta-4508873393-20240430_react-server-dom-webpack@19.0.0_4afkmjaxtnugm3bftlz3chym4m/node_modules/waku/dist/lib/middleware/rsc.js',
    '/Users/perfectpan/Workspace/waku-issue-700/node_modules/.pnpm/hono@4.2.2/node_modules/hono/dist/router/smart-router/router.js',
    '/Users/perfectpan/Workspace/waku-issue-700/node_modules/.pnpm/hono@4.2.2/node_modules/hono/dist/compose.js',
    '/Users/perfectpan/Workspace/waku-issue-700/node_modules/.pnpm/hono@4.2.2/node_modules/hono/dist/http-exception.js',
    '/Users/perfectpan/Workspace/waku-issue-700/node_modules/.pnpm/hono@4.2.2/node_modules/hono/dist/request.js',
    '/Users/perfectpan/Workspace/waku-issue-700/node_modules/.pnpm/hono@4.2.2/node_modules/hono/dist/utils/url.js',
    '/Users/perfectpan/Workspace/waku-issue-700/node_modules/.pnpm/hono@4.2.2/node_modules/hono/dist/router.js',
    '/Users/perfectpan/Workspace/waku-issue-700/node_modules/.pnpm/hono@4.2.2/node_modules/hono/dist/router/trie-router/router.js',
    '/Users/perfectpan/Workspace/waku-issue-700/node_modules/.pnpm/hono@4.2.2/node_modules/hono/dist/router/reg-exp-router/router.js',
    '/Users/perfectpan/Workspace/waku-issue-700/node_modules/.pnpm/hono@4.2.2/node_modules/hono/dist/context.js',
    '/Users/perfectpan/Workspace/waku-issue-700/node_modules/.pnpm/waku@0.20.2-alpha.0_react-dom@19.0.0-beta-4508873393-20240430_react-server-dom-webpack@19.0.0_4afkmjaxtnugm3bftlz3chym4m/node_modules/waku/dist/lib/renderers/html-renderer.js',
    '/Users/perfectpan/Workspace/waku-issue-700/node_modules/.pnpm/waku@0.20.2-alpha.0_react-dom@19.0.0-beta-4508873393-20240430_react-server-dom-webpack@19.0.0_4afkmjaxtnugm3bftlz3chym4m/node_modules/waku/dist/lib/renderers/rsc-renderer.js',
    '/Users/perfectpan/Workspace/waku-issue-700/node_modules/.pnpm/waku@0.20.2-alpha.0_react-dom@19.0.0-beta-4508873393-20240430_react-server-dom-webpack@19.0.0_4afkmjaxtnugm3bftlz3chym4m/node_modules/waku/dist/lib/renderers/utils.js',
    '/Users/perfectpan/Workspace/waku-issue-700/node_modules/.pnpm/hono@4.2.2/node_modules/hono/dist/utils/body.js',
    '/Users/perfectpan/Workspace/waku-issue-700/node_modules/.pnpm/hono@4.2.2/node_modules/hono/dist/router/trie-router/node.js',
    '/Users/perfectpan/Workspace/waku-issue-700/node_modules/.pnpm/hono@4.2.2/node_modules/hono/dist/router/reg-exp-router/trie.js',
    '/Users/perfectpan/Workspace/waku-issue-700/node_modules/.pnpm/hono@4.2.2/node_modules/hono/dist/router/reg-exp-router/node.js',
    '/Users/perfectpan/Workspace/waku-issue-700/node_modules/.pnpm/hono@4.2.2/node_modules/hono/dist/utils/html.js',
    '/Users/perfectpan/Workspace/waku-issue-700/node_modules/.pnpm/rsc-html-stream@0.0.3/node_modules/rsc-html-stream/server.js',
    '/Users/perfectpan/Workspace/waku-issue-700/node_modules/.pnpm/waku@0.20.2-alpha.0_react-dom@19.0.0-beta-4508873393-20240430_react-server-dom-webpack@19.0.0_4afkmjaxtnugm3bftlz3chym4m/node_modules/waku/dist/lib/utils/stream.js',
    '/Users/perfectpan/Workspace/waku-issue-700/node_modules/.pnpm/waku@0.20.2-alpha.0_react-dom@19.0.0-beta-4508873393-20240430_react-server-dom-webpack@19.0.0_4afkmjaxtnugm3bftlz3chym4m/node_modules/waku/dist/lib/builder/constants.js',
    '/Users/perfectpan/Workspace/waku-issue-700/node_modules/.pnpm/waku@0.20.2-alpha.0_react-dom@19.0.0-beta-4508873393-20240430_react-server-dom-webpack@19.0.0_4afkmjaxtnugm3bftlz3chym4m/node_modules/waku/dist/lib/utils/form.js',
    '/Users/perfectpan/Workspace/waku-issue-700/node_modules/.pnpm/waku@0.20.2-alpha.0_react-dom@19.0.0-beta-4508873393-20240430_react-server-dom-webpack@19.0.0_4afkmjaxtnugm3bftlz3chym4m/node_modules/waku/dist/lib/plugins/vite-plugin-rsc-managed.js'
  ]
}

Node.js v20.11.0
 ELIFECYCLE  Command failed with exit code 1.
@dai-shi
Copy link
Owner

dai-shi commented May 5, 2024

Thanks for reporting. Good catch. I think I broke something. 😓

@dai-shi dai-shi linked a pull request May 6, 2024 that will close this issue
dai-shi added a commit that referenced this issue May 6, 2024
Solve #700

The bug was introduced in #682, the
reason is that the logic of
https://github.com/dai-shi/waku/pull/682/files#diff-6de2cc9d9f6423e3f4faa0cb1a6200112f1bc057af0db1a9362fe6117c51d18aR79-R82
was adjusted.

I think the logic now assmues the entry file is endsWith .jsx while
while the dynamic import in serve-vercel.js is endsWith .js

![CleanShot 2024-05-05 at 17 02
38@2x](https://github.com/dai-shi/waku/assets/24316656/5c5d0b14-70f9-4565-84e6-9328b08ac946)

![CleanShot 2024-05-05 at 17 03
30@2x](https://github.com/dai-shi/waku/assets/24316656/27a7240b-6e1c-4420-9ba8-8b187d72282c)

I am not so sure it is a correct way to remove .js extension, but I
added the dry run testing, maybe it can help.

---------

Co-authored-by: Daishi Kato <dai-shi@users.noreply.github.com>
yokos2 added a commit to yokos2/react-yoko-portfolio that referenced this issue Feb 8, 2025
Solve dai-shi/waku#700

The bug was introduced in dai-shi/waku#682, the
reason is that the logic of
https://github.com/dai-shi/waku/pull/682/files#diff-6de2cc9d9f6423e3f4faa0cb1a6200112f1bc057af0db1a9362fe6117c51d18aR79-R82
was adjusted.

I think the logic now assmues the entry file is endsWith .jsx while
while the dynamic import in serve-vercel.js is endsWith .js

![CleanShot 2024-05-05 at 17 02
38@2x](https://github.com/dai-shi/waku/assets/24316656/5c5d0b14-70f9-4565-84e6-9328b08ac946)

![CleanShot 2024-05-05 at 17 03
30@2x](https://github.com/dai-shi/waku/assets/24316656/27a7240b-6e1c-4420-9ba8-8b187d72282c)

I am not so sure it is a correct way to remove .js extension, but I
added the dry run testing, maybe it can help.

---------

Co-authored-by: Daishi Kato <dai-shi@users.noreply.github.com>
HondaKazuhiro added a commit to HondaKazuhiro/waku that referenced this issue Feb 12, 2025
Solve dai-shi/waku#700

The bug was introduced in dai-shi/waku#682, the
reason is that the logic of
https://github.com/dai-shi/waku/pull/682/files#diff-6de2cc9d9f6423e3f4faa0cb1a6200112f1bc057af0db1a9362fe6117c51d18aR79-R82
was adjusted.

I think the logic now assmues the entry file is endsWith .jsx while
while the dynamic import in serve-vercel.js is endsWith .js

![CleanShot 2024-05-05 at 17 02
38@2x](https://github.com/dai-shi/waku/assets/24316656/5c5d0b14-70f9-4565-84e6-9328b08ac946)

![CleanShot 2024-05-05 at 17 03
30@2x](https://github.com/dai-shi/waku/assets/24316656/27a7240b-6e1c-4420-9ba8-8b187d72282c)

I am not so sure it is a correct way to remove .js extension, but I
added the dry run testing, maybe it can help.

---------

Co-authored-by: Daishi Kato <dai-shi@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants