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

Compilation error for Next 14.1.0 and p5.js 1.9.0 #60897

Open
1 task done
msanguineti opened this issue Jan 19, 2024 · 11 comments
Open
1 task done

Compilation error for Next 14.1.0 and p5.js 1.9.0 #60897

msanguineti opened this issue Jan 19, 2024 · 11 comments
Labels
bug Issue was opened via the bug report template.

Comments

@msanguineti
Copy link

Link to the code that reproduces this issue

https://codesandbox.io/p/sandbox/dry-tree-rnzjq9

To Reproduce

  1. access the sandbox. The code will run and a page will appear.

Current vs. Expected behavior

Expected result:

  • a page with a 400x400 canvas where a little ball bounces off the walls

Observed:

  • a compilation error:
$ next dev
   ▲ Next.js 14.1.1-canary.1
   - Local:        http://localhost:3000

 ✓ Ready in 2.2s
 ○ Compiling / ...
 ⨯ ./node_modules/p5/lib/p5.min.js
Module parse failed: Identifier 'o' has already been declared (7314:37)
|                             if (g ? x || (d = !0, w(), x = !0) : d = Boolean(o.first), t = Math.max(0, Math.floor(t)), r = Math.max(0, Math.floor(r)), d) {
|                                 if (!a) throw new Error("First frame must include a { palette } option");
>                                 var [o, h, f, p, m = 8] = [
|                                     v,
|                                     t,

Import trace for requested module:
./node_modules/p5/lib/p5.min.js
./app/p5-error.tsx
 ⨯ ./node_modules/p5/lib/p5.min.js
Module parse failed: Identifier 'o' has already been declared (7314:37)
|                             if (g ? x || (d = !0, w(), x = !0) : d = Boolean(o.first), t = Math.max(0, Math.floor(t)), r = Math.max(0, Math.floor(r)), d) {
|                                 if (!a) throw new Error("First frame must include a { palette } option");
>                                 var [o, h, f, p, m = 8] = [
|                                     v,
|                                     t,

Import trace for requested module:
./node_modules/p5/lib/p5.min.js
./app/p5-error.tsx
<w> [webpack.cache.PackFileCacheStrategy] Caching failed for pack: Error: ENOENT: no such file or directory, rename '/workspace/.next/cache/webpack/client-development-fallback/0.pack.gz_' -> '/workspace/.next/cache/webpack/client-development-fallback/0.pack.gz'

Verify canary release

  • I verified that the issue exists in the latest Next.js canary release

Provide environment information

> NOTE: this is a CodeSandbox machine

Operating System:
  Platform: linux
  Arch: x64
  Version: #1 SMP PREEMPT_DYNAMIC Sun Aug  6 20:05:33 UTC 2023
Binaries:
  Node: 20.9.0
  npm: 9.8.1
  Yarn: 1.22.19
  pnpm: 8.10.2
Relevant Packages:
  next: 14.1.1-canary.1
  eslint-config-next: N/A
  react: 18.2.0
  react-dom: 18.2.0
  typescript: 5.1.3
Next.js Config:
  output: N/A

Which area(s) are affected? (Select all that apply)

Not sure

Which stage(s) are affected? (Select all that apply)

next dev (local), next build (local)

Additional context

The error only appeared with the 14.1.0 and the canary versions.

Version 14.0.4 was fine.

@msanguineti msanguineti added the bug Issue was opened via the bug report template. label Jan 19, 2024
@hamizjafari
Copy link

Solved, solution:
I was able to solve this problem by removing browserslist:[...] of the package.json and I admit that this version is much more optimal.
thanks

@frederickk
Copy link

frederickk commented Jan 20, 2024

I'm getting the same error, but using 14.0.4 I don't have browserList in my package.json and when i added:

"browserslist": [
  "Chrome 118"
]

the problem still persists.

@msanguineti
Copy link
Author

msanguineti commented Jan 20, 2024

Solved, solution: I was able to solve this problem by removing browserslist:[...] of the package.json and I admit that this version is much more optimal. thanks

There is no browserslist explicitly defined by me anywhere. Check the linked sandbox code.

@msanguineti
Copy link
Author

I'm getting the same error, but using 14.0.4 I don't have browserList in my package.json and when i added:

"browserslist": [
  "Chrome 118"
]

the problem still persists.

That's interesting. Would you be kind enough to create a sandbox example with 14.0.4 that fails? Are you using p5 version 1.9.0? Are you using some other libraries as well? Do you use app or pages (might not be relevant after all)? Which version of TypeScript?

@ededejr
Copy link

ededejr commented Jan 20, 2024

Having the same issue with 14.1.0, downgrading to 14.0.4 is the only fix so far

@cody-ta
Copy link

cody-ta commented Jan 21, 2024

Having the same issue when upgraded to 14.1.0

@joelpelaez
Copy link

This issue is not present when compiling using Turbopack, but shows other warning.

 ⨯ ReferenceError: window is not defined
    at 286.core-js/modules/es.array.filter (D:\source\sandbox\.next\server\chunks\node_modules_p5_lib_p5_min_44105b.js:21022:3274)
    at a (D:\source\sandbox\.next\server\chunks\node_modules_p5_lib_p5_min_44105b.js:20:28)
    at D:\source\sandbox\.next\server\chunks\node_modules_p5_lib_p5_min_44105b.js:21:28
    at 275../constants (D:\source\sandbox\.next\server\chunks\node_modules_p5_lib_p5_min_44105b.js:18942:41)
    at a (D:\source\sandbox\.next\server\chunks\node_modules_p5_lib_p5_min_44105b.js:20:28)
    at D:\source\sandbox\.next\server\chunks\node_modules_p5_lib_p5_min_44105b.js:21:28
    at 259../accessibility/color_namer (D:\source\sandbox\.next\server\chunks\node_modules_p5_lib_p5_min_44105b.js:17238:30)
    at a (D:\source\sandbox\.next\server\chunks\node_modules_p5_lib_p5_min_44105b.js:20:28)
    at o (D:\source\sandbox\.next\server\chunks\node_modules_p5_lib_p5_min_44105b.js:26:90)
    at D:\source\sandbox\.next\server\chunks\node_modules_p5_lib_p5_min_44105b.js:28:7
    at D:\source\sandbox\.next\server\chunks\node_modules_p5_lib_p5_min_44105b.js:6:83
    at Object.<anonymous> (D:\source\sandbox\.next\server\chunks\node_modules_p5_lib_p5_min_44105b.js:7:2)
    at instantiateModule (D:\source\sandbox\.next\server\chunks\[turbopack]_runtime.js:488:23)
    at getOrInstantiateModuleFromParent (D:\source\sandbox\.next\server\chunks\[turbopack]_runtime.js:539:12)
    at esmImport (D:\source\sandbox\.next\server\chunks\[turbopack]_runtime.js:113:20)
    at D:\source\sandbox\.next\server\chunks\app_557e6a._.js:11:142
    at [project]/app/p5-error.tsx [app-ssr] (ecmascript) (D:\source\sandbox\.next\server\chunks\app_557e6a._.js:61:3)
    at instantiateModule (D:\source\sandbox\.next\server\chunks\[turbopack]_runtime.js:488:23)
    at getOrInstantiateModuleFromParent (D:\source\sandbox\.next\server\chunks\[turbopack]_runtime.js:539:12)
    at commonJsRequire (D:\source\sandbox\.next\server\chunks\[turbopack]_runtime.js:127:20)

This warning seems related to #60644 and #60920, but this message also showns on 14.0.5-canary.19, but it compiles using default bundler with this warning:

 ⨯ node_modules\p5\lib\p5.min.js (2:541645) @ 286.core-js/modules/es.array.filter
 ⨯ ReferenceError: window is not defined
    at __webpack_require__ (D:\source\sandbox\.next\server\webpack-runtime.js:33:42)
    at eval (./app/p5-error.tsx:9:60)
    at (ssr)/./app/p5-error.tsx (D:\source\sandbox\.next\server\app\page.js:140:1)
    at __webpack_require__ (D:\source\sandbox\.next\server\webpack-runtime.js:33:42)

Summary:

14.0.5-canary.19:

  • next dev works with warning window is not defined
  • next dev --turbo works with warning window is not defined

14.0.5-canary.20:

  • next dev doesn't work with error Module parse failed: Identifier 'o' has already been declared (7313:37)
  • next dev --turbo still works with same "window" warning.

@siddharthd0
Copy link

im getting this erorrr, downgrading to nextjs to the prev version didnt work either

@isab
Copy link

isab commented Feb 15, 2024

I'm still getting this error even when I downgrade to the previous version. I also tried v14.0.3 with no luck.

For anyone else that made the same mistake I did. You need to change the version to 14.0.4, NOT ^14.0.4.

@3askaal
Copy link

3askaal commented Feb 16, 2024

@ededejr came across this issue and this worked for me, thx!

@Kazizodev
Copy link

Im getting this issue from a different node_module package but yes downgrading worked. I really hope they fix this soon

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Issue was opened via the bug report template.
Projects
None yet
Development

No branches or pull requests

10 participants