image v0.23.13 Release Notes

    • ๐Ÿ›  Fix an inconsistency in supported formats of different methods for encoding an image.
    • ๐Ÿ›  Fix thumbnail choosing an empty image. It now always prefer non-empty image dimensions.
    • ๐Ÿ›  Fix integer overflow in calculating requires bytes for decoded image buffers for farbfeld, hdr, and pnm decoders. These will now error early.
    • ๐Ÿ›  Fix a panic decoding certain jpeg image without frames or meta data.
    • โšก๏ธ Optimized the jpeg encoder.
    • โšก๏ธ Optimized GenericImage::copy_from default impl in various cases.

    • โž• Add avif decoders. You must enable it explicitly and it is not covered by our usual MSRV policy of Rust 1.34. Instead, only latest stable is supported.

    • Add ImageFormat::{can_read, can_write}

    • โž• Add Frame::buffer_mut

    • โž• Add speed and quality options on avif encoder.

    • โž• Add speed parameter to gif encoder.

    • ๐Ÿ”ฆ Expose control over sequence repeat to the gif encoder.

    • Add {contrast,brighten,huerotate}_in_place functions in imageproc.

    • 0๏ธโƒฃ Relax Default impl of ImageBuffer, removing the bound on the color type.

    • Derive Debug, Hash, PartialEq, Eq for DynamicImage