Skip to content

Releases: connerfritz/imagetune

v2.0.0

28 Apr 02:45

Choose a tag to compare

2.0.0 (2026-04-28)

⚠ BREAKING CHANGES

  • tune() now resolves with a Blob, not a data URL
    string. Use URL.createObjectURL(blob) for previews, or call the new
    tuneToDataURL() helper for v1-compatible behavior.
  • gif and avif are removed from the OutputFormat union.
    canvas.toBlob('image/gif') silently fell back to PNG in every browser
    in v1 (so it never actually emitted GIFs), and no production browser
    encodes AVIF via canvas as of early 2026. Pass 'png' or 'webp' instead.
  • errors now reject the returned promise instead of
    silently hanging. Callers without .catch on tune()/tuneToDataURL()
    that relied on the v1 silent-failure behavior must now handle errors.
  • the default export was removed in favor of named
    exports. var ImageTune = require('imagetune') no longer works as a
    namespace; use const { tune, tuneToDataURL, ImageTune } = require(...)
    or import { tune } from 'imagetune'.
  • the published distribution is now ESM + CJS via the
    exports map. The bare index.js and index.html at the repo root no
    longer exist. Bundlers should resolve correctly via the new exports
    field; <script src> users should target the unpkg/jsdelivr URL.

Bug Fixes

  • switch commit-analyzer to conventionalcommits preset (c80b4c5)