Skip to content

Releases: Emerging-Patterns/ezimg

v1.2.0

Choose a tag to compare

@github-actions github-actions released this 30 Sep 00:14
2dc35a9

1.2.0 (2026-09-30)

Features

  • lift the PNG pixel stage to decode_png, and prove the one-block PNG round trip (#64) (56a42da)
  • prove IMG-JPG-2, the JPEG planes from Array.set to decode_jpeg's pixels (#67) (75c266c)
  • prove IMG-PNG-3 and IMG-PNG-4, the PNG encoder's refusals and IHDR (#56) (94e3312)
  • prove IMG-RAS-1 to IMG-RAS-4, the raster helpers (#58) (3bd0909)
  • prove the PNG round trip (IMG-PNG-2), and IMG-PNG-9 and IMG-PIX-1 with ancillary chunks (#69) (316f3ef)

Bug Fixes

  • exact T.871 colour conversion in JPEG decode; settle IMG-JPG-2, IMG-JPG-3 and IMG-JPG-6 (#61) (f452c29)

v1.1.0

Choose a tag to compare

@github-actions github-actions released this 25 Sep 14:16
50f1ea8

1.1.0 (2026-09-25)

⚠ BREAKING CHANGES

  • premultiply and straight are removed from main.bend.
  • encode_jpeg returns Maybe<&2, List<&2, U32>>.

Features

  • add U32 equality lemmas and prove IMG-PNG-1 (#49) (82b90f8)
  • prove IMG-JPG-1 and IMG-JPG-5, and the JPEG side of IMG-PIX-1 (#55) (e8328ed)
  • prove IMG-PIX-2 (JPEG encode ignores alpha) and IMG-RAS-5 (map) (#44) (037b1ee)
  • prove IMG-PNG-1's forward half and reword IMG-JPG-2 (#47) (46e42a6)
  • prove IMG-PNG-5, the chunk CRC is ISO 3309 CRC-32 (#52) (1e2d7a3)
  • prove IMG-PNG-6, unfiltering follows the PNG filter definitions (#53) (659cd65)
  • prove IMG-PNG-8 and the pixel stage of IMG-PNG-9 (#51) (73dbf09)

Bug Fixes

  • encode_jpeg returns Maybe and refuses what encode_png refuses (#42) (33a2ef4)
  • remove premultiply and straight (#43) (8573fb1)

v1.0.0

Choose a tag to compare

@github-actions github-actions released this 25 Sep 01:54
a57dbfb

1.0.0 (2026-09-25)

⚠ BREAKING CHANGES

  • JPEG samples are 0xAARRGGBB; a gray sample is no longer the bare Y value.
  • land SPEC.md and retire the closed laws (#39)

Features

  • land SPEC.md and retire the closed laws (#39) (15b3540)

Bug Fixes

  • decode 4:2:2 and every other non-square JPEG MCU correctly (#41) (e87696d)
  • JPEG decode returns opaque 0xAARRGGBB samples (#40) (670e134)

v0.2.1

Choose a tag to compare

@github-actions github-actions released this 22 Sep 12:29
cbc4358

0.2.1 (2026-09-22)

Performance Improvements

  • build JPEG cosine kernel once per encode (#32) (55d7a74)

v0.2.0

Choose a tag to compare

@github-actions github-actions released this 22 Sep 12:14
41001e5

0.2.0 (2026-09-22)

Features

  • add Nix Pillow vs ezimg bench check (#31) (cad590b)

v0.1.0

Choose a tag to compare

@github-actions github-actions released this 22 Sep 02:41
4ffabb4

What's Changed

  • Scaffold ezimg by @noah-emp in #1
  • Drop pixel-op laws from Compliance by @noah-emp in #2
  • Add crop blit map pixel ops with laws by @noah-emp in #3
  • PNG decode with DEFLATE and laws by @noah-emp in #4
  • JPEG baseline decode with laws by @noah-emp in #5
  • PNG encode with round-trip laws by @noah-emp in #6
  • JPEG baseline encode with laws by @noah-emp in #7
  • Fix JPEG baseline encoder loss in the forward DCT by @noah-emp in #8
  • Skip the forward DCT for a neutral JPEG block by @noah-emp in #9
  • Encode an all-neutral JPEG without per-channel scans by @noah-emp in #10
  • ci: adopt release-please for version bumps by @noah-emp in #11

New Contributors

Full Changelog: https://github.com/Emerging-Patterns/ezimg/commits/v0.1.0