Automattic / Automattic/node-canvas

Node 23, Windows 11, Canvas Error

Open
#2,489 0 comments 0 reactions 0 assignees View on GitHub
Binaries Installation help
Dominant language
JavaScript
Stars
10.7k
Forks
1.2k
Avg merge
4d 8h
Merged PRs (30d)
1

Description

I'd try to install using bun, npm, yarn
same error tho, I can't downgrade my node version coz of other modules.

```json
"canvas": "^3.1.0"
```

Terminal logs:
```log
📦 Installing [879/844] node-pre-gyp info it worked if it ends with ok
node-pre-gyp info using node-pre-gyp@1.0.11
node-pre-gyp info using node@23.7.0 | win32 | x64
node-pre-gyp ERR! UNCAUGHT EXCEPTION
node-pre-gyp ERR! stack TypeError: Class extends value # is not a constructor or null
node-pre-gyp ERR! stack at Object. (C:\Users\Dell\Documents\GitHub\App\node_modules\minizlib\index.js:192:4)
node-pre-gyp ERR! stack at Module._compile (node:internal/modules/cjs/loader:1723:14)
node-pre-gyp ERR! stack at Object..js (node:internal/modules/cjs/loader:1888:10)
node-pre-gyp ERR! stack at Module.load (node:internal/modules/cjs/loader:1458:32)
node-pre-gyp ERR! stack at Function._load (node:internal/modules/cjs/loader:1275:12)
node-pre-gyp ERR! stack at TracingChannel.traceSync (node:diagnostics_channel:322:14)
node-pre-gyp ERR! stack at wrapModuleLoad (node:internal/modules/cjs/loader:234:24)
node-pre-gyp ERR! stack at Module.require (node:internal/modules/cjs/loader:1480:12)
node-pre-gyp ERR! stack at require (node:internal/modules/helpers:135:16)
node-pre-gyp ERR! stack at Object. (C:\Users\Dell\Documents\GitHub\App\node_modules\tar\lib\pack.js:26:14)
node-pre-gyp ERR! stack at Object. (C:\Users\Dell\Documents\GitHub\App\node_modules\minizlib\index.js:192:4)
node-pre-gyp ERR! stack at Module._compile (node:internal/modules/cjs/loader:1723:14)
node-pre-gyp ERR! stack at Object..js (node:internal/modules/cjs/loader:1888:10)
node-pre-gyp ERR! stack at Module.load (node:internal/modules/cjs/loader:1458:32)
node-pre-gyp ERR! stack at Function._load (node:internal/modules/cjs/loader:1275:12)
node-pre-gyp ERR! stack at TracingChannel.traceSync (node:diagnostics_channel:322:14)
node-pre-gyp ERR! stack at wrapModuleLoad (node:internal/modules/cjs/loader:234:24)
node-pre-gyp ERR! stack at Module.require (node:internal/modules/cjs/loader:1480:12)
node-pre-gyp ERR! stack at require (node:internal/modules/helpers:135:16)
node-pre-gyp ERR! stack at Object. (C:\Users\Dell\Documents\GitHub\App\node_modules\tar\lib\pack.js:26:14)
node-pre-gyp ERR! stack at Module._compile (node:internal/modules/cjs/loader:1723:14)
node-pre-gyp ERR! stack at Object..js (node:internal/modules/cjs/loader:1888:10)
node-pre-gyp ERR! stack at Module.load (node:internal/modules/cjs/loader:1458:32)
node-pre-gyp ERR! stack at Function._load (node:internal/modules/cjs/loader:1275:12)
node-pre-gyp ERR! stack at TracingChannel.traceSync (node:diagnostics_channel:322:14)
node-pre-gyp ERR! stack at wrapModuleLoad (node:internal/modules/cjs/loader:234:24)
node-pre-gyp ERR! stack at Module.require (node:internal/modules/cjs/loader:1480:12)
node-pre-gyp ERR! stack at require (node:internal/modules/helpers:135:16)
node-pre-gyp ERR! stack at Object. (C:\Users\Dell\Documents\GitHub\App\node_modules\tar\lib\pack.js:26:14)
node-pre-gyp ERR! stack at Object..js (node:internal/modules/cjs/loader:1888:10)
node-pre-gyp ERR! stack at Module.load (node:internal/modules/cjs/loader:1458:32)
node-pre-gyp ERR! stack at Function._load (node:internal/modules/cjs/loader:1275:12)
node-pre-gyp ERR! stack at TracingChannel.traceSync (node:diagnostics_channel:322:14)
node-pre-gyp ERR! stack at wrapModuleLoad (node:internal/modules/cjs/loader:234:24)
node-pre-gyp ERR! stack at Module.require (node:internal/modules/cjs/loader:1480:12)
node-pre-gyp ERR! stack at require (node:internal/modules/helpers:135:16)
node-pre-gyp ERR! stack at Object. (C:\Users\Dell\Documents\GitHub\App\node_modules\tar\lib\pack.js:26:14)
node-pre-gyp ERR! stack at Function._load (node:internal/modules/cjs/loader:1275:12)
node-pre-gyp ERR! stack at TracingChannel.traceSync (node:diagnostics_channel:322:14)
node-pre-gyp ERR! stack at wrapModuleLoad (node:internal/modules/cjs/loader:234:24)
node-pre-gyp ERR! stack at Module.require (node:internal/modules/cjs/loader:1480:12)
node-pre-gyp ERR! stack at require (node:internal/modules/helpers:135:16)
node-pre-gyp ERR! stack at Object. (C:\Users\Dell\Documents\GitHub\App\node_modules\tar\lib\pack.js:26:14)
node-pre-gyp ERR! stack at Module.require (node:internal/modules/cjs/loader:1480:12)
node-pre-gyp ERR! stack at require (node:internal/modules/helpers:135:16)
node-pre-gyp ERR! stack at Object. (C:\Users\Dell\Documents\GitHub\App\node_modules\tar\lib\pack.js:26:14)
node-pre-gyp ERR! stack at require (node:internal/modules/helpers:135:16)
node-pre-gyp ERR! stack at Object. (C:\Users\Dell\Documents\GitHub\App\node_modules\tar\lib\pack.js:26:14)
node-pre-gyp ERR! stack at Object. (C:\Users\Dell\Documents\GitHub\App\node_modules\tar\lib\pack.js:26:14)
node-pre-gyp ERR! System Windows_NT 10.0.26120
node-pre-gyp ERR! command "C:\\Program Files\\nodejs\\node.exe" "C:\\Users\\Dell\\Documents\\GitHub\\App\\node_modules\\@mapbox\\node-pre-gyp\\bin\\node-pre-gyp" "install" "--fallback-to-build" "--update-binary"
node-pre-gyp ERR! cwd C:\Users\Dell\Documents\GitHub\App\node_modules\canvas-chan\node_modules\canvas
node-pre-gyp ERR! node -v v23.7.0
node-pre-gyp ERR! node-pre-gyp -v v1.0.11

error: install script from "canvas" exited with 7
```

Contributor guide

No contributing guide indexed for this repository

Research direction

Reproduce the installation on Windows with Node v23.7.0 and canvas ^3.1.0, starting from the reported node-pre-gyp command and the minizlib and tar stack traces. Check whether the failure is specific to the canvas install path; done means the package installs successfully without the reported Class extends error.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript, node.js
Domain
build-system
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.