npm / vgpu
vgpu
What changed in vgpu 0.4 to 0.6, from its official release notes, upgrade guides and advisories. Sources checked 2026-10-19.
4 breaking12 new APIs and options2 performance4 behavior and defaults1 tooling8 fixes and other
See which of these apply to your code, ranked, in your agent:
npx @unstale/cli initvgpu 0.618 changes
Breaking changes 1
Preparation must be awaited before entering synchronous frame callbacks.
New APIs and options 9
Canvas surfaces support optional depth/MSAA.
canvasMouseTracker exposes normalized and drawing-buffer pixel coordinates explicitly.
Frame-owned compute passes preserve compute/render ordering and capture managed uniform values per operation.
Device loss has an explicit gpu.lost notification.
Pipelines can be prepared outside frames.
Dynamic shaders use prepareShader() for shader preparation.
Scene composition uses explicit transforms, camera state, hierarchy evaluation and fixed-capacity instances; applications own shading, lights, input handling and scheduling.
Prepared ShaderSource v2 artifacts move WGSL reflection into the build; dynamic shaders use prepareShader().
Next.js Turbopack integrations gain a rule with compiler-aware persistent caches.
Performance 2
Managed uniforms reuse unchanged work.
Repeated encodes reuse unchanged work.
Behavior and default changes 1
Sampled intermediate work uses offscreen targets.
Fixes and other changes 5
Bundle ownership has a clearer contract and diagnostics.
Consumer lifetimes have a clearer contract and diagnostics.
A multi-binding Draw.set({ a, b }) can partially apply before throwing; repair bindings and explicitly re-record affected bundles before replay.
Resource binding validation has a clearer contract and diagnostics.
Odd-length Uint16 index uploads are accepted while logical draw/write bounds are retained.
vgpu 0.512 changes
Breaking changes 2
Allocations are immutable across core and public APIs.
Native tooling requires an Apple Silicon build host, Node.js 22, and Xcode with its Metal compiler component; its worker is ad hoc signed and not notarized.
New APIs and options 3
Authored entry-point metadata is available.
Texture shapes and usage can now be specified explicitly across core and public APIs.
Readback now supports mip and region operations across core and public APIs.
Behavior and default changes 3
WGSL host layouts are intrinsic.
Binding values are strictly JavaScript-owned.
Vulkan is now the default for Node/Linux, including hosts with X11 or Wayland.
Tooling 1
Optional beta tooling generates Swift/Metal packages and bundles a pinned, authenticated Tint worker at installation.
Fixes and other changes 3
Destroyed resources are validated.
Stale bundles are detected.
Replacing target/texture pairs is safer.
vgpu 0.41 changes
Breaking changes 1
Prereleases now use the canary channel, changing how developers select prerelease versions.