Skip to content

v2.1.0

Latest
Compare
Choose a tag to compare
@lifthrasiir lifthrasiir released this 13 Sep 00:22
· 1 commit to main since this release

Compression improvements:

  • The compressor now uses a specialized WebAssembly implementation by default. (c2bd435, d9a3897)
  • Cache the result of JavaScript code transformation during the optimization. Combined with the WebAssembly implementation, the optimization is up to 2.5 times faster than 2.0.0. (02d09a3)
  • Removed a special result by the optimizer for turning JS inputs into texts and made the equivalent a separate option (-Zdy). This also allows for using JS-specific modelling for texts if beneficial, and avoids the UI confusion present in the online demo. (4dd5fe7)
  • The rANS state is now embedded directly into the compressed data. (48ace3d)
  • The decoder is now slightly smaller. (819a574, eb74630, c6a88ee)
  • Tools no longer generate a newline between the first and second "lines". (eb06edd)

UI/API improvements:

  • -OO option is added to the CLI, which runs a series of optimizations forever until a user request. The optimization now proceeds using the best parameters so far when the user has aborted the search with Ctrl-C even in other optimization levels. (974a9ee)
  • Renamed ArrayBufferPool to ResourcePool to allow using it for other uses (e.g. WebAssembly modules). Also made it clear that ResourcePool.allocate should not be used outside of Roadroller. (3f073cf)
  • Packer now creates its own ResourcePool if not given, so Packer.optimize is now equally fast with or without the pool. (2c727ea)
  • The online demo deallocates the pool a minute after the last compression. (5e86a59)
  • compressWithDefaultModel has been added as a shortcut (and optimized version) for compressWithModel with DefaultModel. (1a644e9)

Bugfixes:

  • Fixed a typo in index.d.ts. (3f073cf)

Deprecations:

  • ArrayBufferPool and arrayBufferPool fields are now deprecated in favor of ResourcePool and resourcePool. (3f073cf)
  • OptimizedPackerOptions.preferTextOverJS is no longer used and thus deprecated. (4dd5fe7)