Skip to content

Deps migration A: three 0.171 -> 0.185 + threlte prerelease -> stable - #62

Merged
AlexZ005 merged 2 commits into
release/1.1from
feat/deps-migration-three-threlte
Jul 28, 2026
Merged

Deps migration A: three 0.171 -> 0.185 + threlte prerelease -> stable#62
AlexZ005 merged 2 commits into
release/1.1from
feat/deps-migration-three-threlte

Conversation

@AlexZ005

Copy link
Copy Markdown
Collaborator

Part A of the post-1.0 dependency migrations (plans-core/pending/deps-migrations-post-1.0.md), targeting the release/1.1 integration branch.

  • three ^0.185.1; @threlte core 8.5.16 / extras 9.21.0 / xr 1.6.1 (off the year-old -next pins)
  • guardThrelteXr vite transform DELETED - the stable xr package rewrote input handling; the Cardboard teardown crash no longer exists upstream
  • all three/examples/jsm imports -> three/addons; breaking-change sweep vs the official migration guide came back clean
  • FOUND+FIXED in flight: Chromium <=150 (ANGLE) links any shader compiled while the N8AO pass is enabled as broken -> black viewport at boot / invisible new meshes. AO now gates OFF on those engines (one-time toast) + a 10-frame boot warm-up; verified with screenshots driving the installed Edge channel
  • camera-controls pinned 3.1.0 via overrides (3.1.2 wants node>=22; project is engine-strict on node 20)
  • postprocessing 6.39 officially supports three 0.185: plain npm install works again (no --legacy-peer-deps)
  • svelte-check baseline held at 476/62; full e2e verdict pending (run in progress - do not merge to main until reviewed)

🤖 Generated with Claude Code

AlexZ005 and others added 2 commits July 28, 2026 22:54
…able lockstep

- three ^0.185.1; @threlte/core 8.5.16, extras 9.21.0, xr 1.6.1 (off the
  year-old -next pins)
- guardThrelteXr vite transform + optimizeDeps.exclude DELETED: the stable
  xr package rewrote input handling (setupInputSources keyed map) - the
  unguarded handedness indexing behind the Cardboard teardown crash no
  longer exists in the dist; useHand/useController/component APIs unchanged
- all 21 three/examples/jsm imports -> three/addons (10 files)
- breaking-change sweep vs the official r171->r185 guide: no PCFSoftShadowMap/
  RGBELoader/Clock/ColorManagement-rename/toTrianglesDrawMode usages;
  CapsuleGeometry uses positional args; FBX imports now auto-convert Z-up to
  Y-up upstream (r183 behavior change, no code needed)
- overrides: camera-controls pinned 3.1.0 (3.1.2 declares node>=22 engines;
  project is engine-strict on node 20; patch-level diff)
- postprocessing 6.39 officially supports three 0.185: npm install no longer
  needs --legacy-peer-deps

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…oot warm-up)

three 0.185 + Chromium <=150 (ANGLE D3D11): any shader program FIRST COMPILED
while the N8AO pass is enabled links broken - with AO on from boot the whole
scene is black (outline pass only); with AO enabled later, every mesh created
afterwards renders invisible (its outline still draws). Chromium 151+ fixed
the underlying bug, which is why Playwright chromium (151) passed while real
Edge/Chrome/Android (150) broke.

Fix: AO is gated OFF on Chromium <=150 (UA major) with a one-time toast -
lights/shadows/outlines keep working, AO returns with a browser update. A
~10-frame boot warm-up stays as belt-and-braces for unknown engines.

Repro/verify: headed+headless screenshots via the installed msedge channel
(boot-black, invisible-new-mesh, and post-fix live orbit + toast).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@AlexZ005
AlexZ005 merged commit 2c5132c into release/1.1 Jul 28, 2026
@AlexZ005
AlexZ005 deleted the feat/deps-migration-three-threlte branch August 5, 2026 20:25
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.

1 participant