Skip to content

Conversation

@clicktodev
Copy link

@clicktodev clicktodev commented Oct 31, 2025

Description

Specify that the project requires Node.js version 20 or higher in the package.json file.
This is to discourage the usage of unsupported node releases during development.

@github-actions
Copy link

github-actions bot commented Oct 31, 2025

📦 Bundle size

Full ESM build, minified and gzipped.

Before After Diff
WebGL 356.38
86.5
356.38
86.5
+0 B
+0 B
WebGPU 609.66
171.01
609.66
171.01
+0 B
+0 B
WebGPU Nodes 608.27
170.75
608.27
170.75
+0 B
+0 B

🌳 Bundle size after tree-shaking

Minimal build including a renderer, camera, empty scene, and dependencies.

Before After Diff
WebGL 488
121.24
488
121.24
+0 B
+0 B
WebGPU 678.52
186.29
678.52
186.29
+0 B
+0 B
WebGPU Nodes 620.51
169.56
620.51
169.56
+0 B
+0 B

@Mugen87
Copy link
Collaborator

Mugen87 commented Oct 31, 2025

What problems occur if you try to build the project with node 19 or a lower version?

@clicktodev
Copy link
Author

clicktodev commented Nov 6, 2025

nothing should break but this is mainly to encourage the usage of actively maintained releases to reduce the chances of node bugs present in unmaintained releases from affecting the dev env or build process.

@clicktodev clicktodev changed the title Update Node.js version requirement to 20 or higher Update Node.js version requirement and package manager requirement Nov 6, 2025
@Mugen87
Copy link
Collaborator

Mugen87 commented Nov 6, 2025

What I don't like about such entries is that we hardly encode a version in package.json that we now have to maintain over the years. I. know this is a minor task but the smaller package.json is, the less we have to think about.

@mrdoob I personally favor simplicity but if you think that change is worth it I won't object merging it.

@clicktodev
Copy link
Author

also added an package manager check to avoid someone accidentally committing a yarn or pnpm lock file

@clicktodev
Copy link
Author

actually considering the package.json is also published in npm, this may affect consumers of the lib, not just the repo devs.
maybe the devEngines property is more suitable

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 this pull request may close these issues.

2 participants