Repository navigation
three.js R181 broken against "*" named in packages.md #51
Description
There is a misalignment in package.json and other points in the Git repo (especially in the examples, but also in "core"):
"three": "*",
"@types/three": "^0.181.0"
Details:
"three": "*"
packages/core/package.json:95
"@types/three": "^0.181.0"
package.json:91
packages/core/package.json:92
examples/audio/package.json:25
examples/browser-first/package.json:26
examples/depth-occlusion/package.json:25
examples/environment-raycast/package.json:25
examples/grab/package.json:25
examples/layers/package.json:25
examples/locomotion/package.json:25
examples/physics/package.json:25
examples/poke/package.json:25
examples/scene-understanding/package.json:25
For better safety and stability, each version should be tested before allowing an untested choice or release. It should be:
"three": "0.185.0",
"@types/three": "0.185.0"
From R181 to R185, some APIs used have been redesigned, developed further, or changed more deeply. This may cause compatibility and stability issues if anyone gets the "latest" version from three.js through "three": "". The APIs used in R181 are:
Scene
Object3D
PerspectiveCamera
WebGLRenderer
Mesh
Material
Texture
Vector
Matrix*
Raycaster
GLTFLoader
During the bump, these are affected in the following ways (generic description):
-
Minor internal API updates; no functional impact is expected:
Scene
PerspectiveCamera -
Internal API updates with changes to references and imports/exports from other routines or internals; tests are needed, but there should be no impact:
Object3D
Mesh
Material
Texture
Vector*
Matrix*
Raycaster
GLTFLoader -
Deeper API development, which may cause issues if the previous hybrid state */0.181.0 was used strictly or in borderline ways:
WebGLRenderer
renderer.xr
shadow mapping
transmission
render targets
depth / occlusion
XR layers
Due to Murphy's Law, the biggest developments involve XR... :)
BTW, some other components included in PACKAGES.md are outdated (such as npm/pnpm; configuration files and RC environment variables were also changed, resulting in this test warning: "This will stop working in the next major version of npm. See npm help npmrc for supported config options.")
PS: The PR will be sent; no changelogs or version/revision fields will be touched. I have left a "test/" folder with all the scripts used to test and process the files as proof. I also did not touch "contributors" in package.md, since this will be a PR from a fork, not a direct contribution.
PPS: The MIT headers in the various files were inconsistent; I will provide aligned ones.
Activity
Sythos commentedon Aug 16, 2026
once this PR merged i've a render api rework to include updated WebGPU with WegGL2 fallback
@felixtrz I see you active but i'm not getting some points, is this project still alive and really open source? i see barely activity once per week and honestly i'm not sure if keep on this attentions and time is worth...
fix(core): pin the supported Three.js runtime
felixtrz commentedon Oct 19, 2026
Thanks for flagging this.
@iwsdk/core0.3.0 declaredthree: "*", so a fresh install could pull a newer Three.js than the one IWSDK was tested with. Since 1.0.0 (79b2740),@iwsdk/corepins an exactthree(npm:super-three@0.181.0in 1.0.x), and a CI check fails the build if any published package declares a differentthree. 1.1.0 moves tonpm:super-three@0.185.0with@types/three^0.185.0; it's available now as1.1.0-rc.1on thenexttag.If the PACKAGES.md,
.npmrcor WebGPU points still matter to you, please open a separate issue for each so we can track them. Closing this as fixed; reopen it if you still hit a version mismatch on 1.0.x.