KitwareMedical / KitwareMedical/VolViewCustomAppTemplate

Build fails on Node.js versions newer than 18.17.1

Open
#11 2 comments 0 reactions 0 assignees View on GitHub
Dominant language
TypeScript
Stars
5
Forks
2
PR merge metrics
No merged PRs in 30d

Description

npm install fails on Node.js versions newer than v18.17.1, including all recent LTS releases (v20, v22+).

The installation process requires compiling the canvas package from source, which fails for two primary reasons:

- The version of canvas used in the dependency tree relies on V8 APIs that were removed in newer versions of Node.js. This results in C++ compilation errors like error: no template named 'CopyablePersistentTraits' in namespace 'v8'.
- The build script requires Python's distutils module, which was removed in Python 3.12+. This causes a ModuleNotFoundError on systems with modern Python installations.

The only successful build environment requires pinning the Node.js version to 18.17.1 and ensuring the Python environment includes setuptools, and upgrading vite and vuetify. Not sure if this will break things, but the build works.

Contributor guide

No contributing guide indexed for this repository

Research direction

Reproduce npm install with Node.js 18.17.1 and a newer LTS, then inspect the dependency tree and build-script requirements around canvas, Vite, and Python. Confirm the failure modes for Python 3.12+ and newer Node.js versions; done means a clean install and build on recent LTS releases without requiring the removed distutils module.

Written by the indexing model from the issue text.

Assessment

Tech stack
node.js, python, typescript, vite
Domain
build-system
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.