Skip to content

v1.3.0

Choose a tag to compare

@github-actions github-actions released this 01 Jun 18:49
a4dcdcc

Wakaru v1.3.0

This release focuses on broader bundle support, stronger TypeScript helper recovery, safer minimal-mode rewrites, and continued correctness work from the Test262 round-trip suite.

Highlights

  • Added multi-source unpacking for entry + chunk workflows.
  • Added SystemJS bundle unpacking, with coverage for Babel, webpack, and SystemJS compiler output.
  • Added cross-module TypeScript helper facts so helper modules can be recognized and consumed more reliably.
  • Expanded tslib and TypeScript helper recovery, including namespace helper aliases, exported helpers, async helpers, class helpers, private fields, object rest/spread, and spread helpers.
  • Improved class and field recovery for Babel, TSC WeakMap private fields, defineProperty prototype methods, and instance fields.
  • Added React 19 hook tuple renaming and improved JSX recovery/naming behavior.
  • Added shareable playground state with a version hash.
  • Improved rule and unpack performance with additional pre-checks, cached helper detection, and narrower unpack cleanup passes.

Correctness and Safety

This release tightens many edge cases found by reproduction matrices and Test262 sweeps:

  • Preserves eval-observed declarations and global var semantics.
  • Avoids unsafe rewrites around TDZ, with scopes, parameter aliases, initializer captures, sliced-array elisions, object rest helper dependencies, and async context effects.
  • Requires unresolved builtins for alias inlining and proven TypeScript async helpers before recovery.
  • Preserves binding contexts in recovered parameters, ArgRest, UnEnum, JSX names, and computed property keys.
  • Gates more speculative rewrites by rewrite level, including JSX recovery and array concat spread recovery.

No Breaking Changes

No user-facing breaking changes are expected. Existing CLI usage should continue to work.

Full Changelog: v1.2.0...v1.3.0