unstale

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 init

@unstale/cli on npm

vgpu 0.618 changes

Breaking changes 1

  • Preparation must be awaited before entering synchronous frame callbacks.

    0.6.0release notes

New APIs and options 9

  • Canvas surfaces support optional depth/MSAA.

    0.6.0release notes

  • canvasMouseTracker exposes normalized and drawing-buffer pixel coordinates explicitly.

    0.6.0release notes

  • Frame-owned compute passes preserve compute/render ordering and capture managed uniform values per operation.

    0.6.0release notes

  • Device loss has an explicit gpu.lost notification.

    0.6.0release notes

  • Pipelines can be prepared outside frames.

    0.6.0release notes

  • Dynamic shaders use prepareShader() for shader preparation.

    0.6.0release notes

  • Scene composition uses explicit transforms, camera state, hierarchy evaluation and fixed-capacity instances; applications own shading, lights, input handling and scheduling.

    0.6.0release notes

  • Prepared ShaderSource v2 artifacts move WGSL reflection into the build; dynamic shaders use prepareShader().

    0.6.0release notes

  • Next.js Turbopack integrations gain a rule with compiler-aware persistent caches.

    0.6.0release notes

Performance 2

Behavior and default changes 1

  • Sampled intermediate work uses offscreen targets.

    0.6.0release notes

Fixes and other changes 5

  • Bundle ownership has a clearer contract and diagnostics.

    0.6.0release notes

  • Consumer lifetimes have a clearer contract and diagnostics.

    0.6.0release notes

  • A multi-binding Draw.set({ a, b }) can partially apply before throwing; repair bindings and explicitly re-record affected bundles before replay.

    0.6.0release notes

  • Resource binding validation has a clearer contract and diagnostics.

    0.6.0release notes

  • Odd-length Uint16 index uploads are accepted while logical draw/write bounds are retained.

    0.6.0release notes

vgpu 0.512 changes

Breaking changes 2

  • Allocations are immutable across core and public APIs.

    0.5.0release notes

  • 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.

    0.5.0release notes

New APIs and options 3

  • Authored entry-point metadata is available.

    0.5.0release notes

  • Texture shapes and usage can now be specified explicitly across core and public APIs.

    0.5.0release notes

  • Readback now supports mip and region operations across core and public APIs.

    0.5.0release notes

Behavior and default changes 3

  • WGSL host layouts are intrinsic.

    0.5.0release notes

  • Binding values are strictly JavaScript-owned.

    0.5.0release notes

  • Vulkan is now the default for Node/Linux, including hosts with X11 or Wayland.

    0.5.0release notes

Tooling 1

  • Optional beta tooling generates Swift/Metal packages and bundles a pinned, authenticated Tint worker at installation.

    0.5.0release notes

Fixes and other changes 3

vgpu 0.41 changes

Breaking changes 1

  • Prereleases now use the canary channel, changing how developers select prerelease versions.

    0.4.1release notes