From 2ddadafd413c8b035b8f6339e8ea603bb416f011 Mon Sep 17 00:00:00 2001 From: Christoph Gohlke Date: Sun, 31 Dec 2023 04:59:06 +0000 Subject: [PATCH] Release v2024.1.1 --- README.rst | 147 ++++++++++++++++++++--------------------------------- 1 file changed, 56 insertions(+), 91 deletions(-) diff --git a/README.rst b/README.rst index 884ab3d..fb86586 100644 --- a/README.rst +++ b/README.rst @@ -7,19 +7,21 @@ Czifile, Zarr, kerchunk, and other scientific image input/output packages. Decode and/or encode functions are implemented for Zlib (DEFLATE), GZIP, ZStandard (ZSTD), Blosc, Brotli, Snappy, LZMA, BZ2, LZ4, LZ4F, LZ4HC, LZ4H5, -LZW, LZF, LZFSE, LZHAM, PGLZ (PostgreSQL LZ), RCOMP (Rice), ZFP, AEC, SZIP, -LERC, EER, NPY, BCn, DDS, PNG, APNG, GIF, TIFF, WebP, QOI, JPEG 8 and 12-bit, -Lossless JPEG (LJPEG, LJ92, JPEGLL), JPEG 2000 (JP2, J2K), JPEG LS, JPEG XL, -JPEG XR (WDP, HD Photo), MOZJPEG, AVIF, HEIF, RGBE (HDR), Jetraw, PackBits, -Packed Integers, Delta, XOR Delta, Floating Point Predictor, Bitorder reversal, -Byteshuffle, Bitshuffle, Quantize (Scale, BitGroom, BitRound, GranularBR), -Float24 (24-bit floating point), and CMS (color space transformations). +LZW, LZO, LZF, LZFSE, LZHAM, PGLZ (PostgreSQL LZ), RCOMP (Rice), ZFP, SPERR, +AEC, SZIP, LERC, EER, NPY, BCn, DDS, BMP, PNG, APNG, GIF, TIFF, WebP, QOI, +JPEG 8 and 12-bit, Lossless JPEG (LJPEG, LJ92, JPEGLL), JPEG 2000 (JP2, J2K), +JPEG LS, JPEG XL, JPEG XR (WDP, HD Photo), MOZJPEG, AVIF, HEIF, RGBE (HDR), +Jetraw, DICOMRLE, PackBits, Packed Integers, Delta, XOR Delta, +Floating Point Predictor, Bitorder reversal, Byteshuffle, Bitshuffle, +Float24 (24-bit floating point), +Quantize (Scale, BitGroom, BitRound, GranularBR), and +CMS (color space transformations). Checksum functions are implemented for crc32, adler32, fletcher32, and Jenkins lookup3. :Author: `Christoph Gohlke `_ :License: BSD 3-Clause -:Version: 2023.9.18 +:Version: 2024.1.1 :DOI: `10.5281/zenodo.6915978 `_ Quickstart @@ -48,38 +50,38 @@ Requirements This revision was tested with the following requirements and dependencies (other versions may work): -- `CPython `_ 3.9.13, 3.10.11, 3.11.4, 3.12.0rc, 64-bit -- `Numpy `_ 1.25.2 -- `numcodecs `_ 0.11.0 +- `CPython `_ 3.9.13, 3.10.11, 3.11.7, 3.12.1, 64-bit +- `Numpy `_ 1.26.2 +- `numcodecs `_ 0.12.1 (optional, for Zarr compatible codecs) Build requirements: -- `Cython `_ 0.29.36 +- `Cython `_ 3.0.7 - `brotli `_ 1.1.0 - `brunsli `_ 0.1 - `bzip2 `_ 1.0.8 - `c-blosc `_ 1.21.5 -- `c-blosc2 `_ 2.10.3 +- `c-blosc2 `_ 2.12.0 - `charls `_ 2.4.2 - `giflib `_ 5.2.1 -- `jetraw `_ 22.02.16.1 +- `jetraw `_ 23.03.16.4 - `jxrlib `_ 1.2 -- `lcms `_ 2.15 +- `lcms2 `_ 2.16.0 - `lerc `_ 4.0.0 -- `libaec `_ 1.0.6 -- `libavif `_ 1.0.1 - (`aom `_ 3.7.0, - `dav1d `_ 1.2.1, +- `libaec `_ 1.1.2 +- `libavif `_ 1.0.3 + (`aom `_ 3.8.0, + `dav1d `_ 1.3.0, `rav1e `_ 0.6.6, - `svt-av1 `_ 1.7.0) + `svt-av1 `_ 1.8.0) - `libdeflate `_ 1.19 -- `libheif `_ 1.16.2 - (`libde265 `_ 1.0.12, +- `libheif `_ 1.17.6 + (`libde265 `_ 1.0.15, `x265 `_ 3.5) -- `libjpeg-turbo `_ 3.0.0 -- `libjxl `_ 0.8.2 -- `liblzma `_ 5.4.4 +- `libjpeg-turbo `_ 3.0.1 +- `libjxl `_ 0.9.0 +- `liblzma `_ 5.4.5 - `libpng `_ 1.6.40 - `libpng-apng `_ 1.6.40 - `libtiff `_ 4.6.0 @@ -87,12 +89,14 @@ Build requirements: - `lz4 `_ 1.9.4 - `lzfse `_ 1.0 - `lzham_codec `_ 1.0 -- `mozjpeg `_ 4.1.1 +- `lzokay `_ db2df1f +- `mozjpeg `_ 4.1.5 - `openjpeg `_ 2.5.0 - `snappy `_ 1.1.10 -- `zfp `_ 1.0.0 +- `sperr `_ 0.8.0 +- `zfp `_ 1.0.1 - `zlib `_ 1.3 -- `zlib-ng `_ 2.1.3 +- `zlib-ng `_ 2.1.5 - `zopfli `_ 1.0.3 - `zstd `_ 1.5.5 @@ -117,33 +121,46 @@ Vendored requirements: Test requirements: -- `tifffile `_ 2023.9.18 +- `tifffile `_ 2023.12.9 - `czifile `_ 2019.7.2 - `zarr `_ 2.16.1 - `python-blosc `_ 1.11.1 -- `python-blosc2 `_ 2.2.7 +- `python-blosc2 `_ 2.4.0 - `python-brotli `_ 1.0.9 - `python-lz4 `_ 4.3.2 - `python-lzf `_ 0.2.4 - `python-snappy `_ 0.6.1 - `python-zstd `_ 1.5.5.1 - `pyliblzfse `_ 0.4.1 -- `zopflipy `_ 1.8 +- `zopflipy `_ 1.9 Revisions --------- +2024.1.1 + +- Pass 7420 tests. +- Add 8/24-bit BMP codec. +- Add SPERR codec based on SPERR library. +- Add LZO decoder based on lzokay library. +- Add DICOMRLE decoder. +- Enable float16 in CMS codec. +- Enable MCT for lossless JPEG2K encoder (#88). +- Ignore pad-byte in PackBits decoder (#86). +- Fix heif_write_callback error message not set. +- Require lcms2 2.16 with issue-420 fixes. +- Require libjxl 0.9, libaec 1.1, Cython 3. + 2023.9.18 -- Pass 7110 tests. -- Rebuild with updated dependencies fixes CVE-2023-4863. +- Rebuild with updated dependencies fixes CVE-2024-4863. 2023.9.4 - Map avif_encode level parameter to quality (breaking). - Support monochrome images in avif_encode. - Add numthreads parameter to avif_decode (fix imread of AVIF). -- Add experimental quantize filter (BitGroom, BitRound, GBR) via nc4var.c. +- Add quantize filter (BitGroom, BitRound, GBR) via nc4var.c. - Add LZ4H5 codec. - Support more BCn compressed DDS fourcc types. - Require libavif 1.0. @@ -200,58 +217,6 @@ Revisions 2022.12.24 -- Fix PNG codec error handling. -- Fix truncated transferfunctions in cms_profile (#57). -- Fix exceptions not raised in cdef functions not returning Python object. - -2022.12.22 - -- Require libtiff 4.5. -- Require libavif 0.11. -- Change jpegxl_encode level parameter to resemble libjpeg quality (breaking). -- Add LZFSE codec via lzfse library. -- Add LZHAM codec via lzham library. -- Fix AttributeError in cms_profile (#52). -- Support gamma argument in cms_profile (#53). -- Raise limit of TIFF pages to 1048576. -- Use libtiff thread-safe error/warning handlers. -- Add option to specify filters and strategy in png_encode. -- Add option to specify integrity check type in lzma_encode. -- Fix DeprecationWarning with NumPy 1.24. -- Support Python 3.11 and win-arm64. - -2022.9.26 - -- Support JPEG XL multi-channel (planar grayscale only) and multi-frame. -- Require libjxl 0.7. -- Switch to Blosc2 API and require c-blosc 2.4 (breaking). -- Return LogLuv encoded TIFF as float32. -- Add RGBE codec via rgbe.c. - -2022.8.8 - -- Drop support for libjpeg. -- Fix encoding JPEG in RGB color space. -- Require ZFP 1.0. - -2022.7.31 - -- Add option to decode WebP as RGBA. -- Add option to specify WebP compression method. -- Use exact lossless WebP encoding. - -2022.7.27 - -- Add LZW encoder. -- Add QOI codec via qoi.h (#37). -- Add HEIF codec via libheif (source only; #33). -- Add JETRAW codec via Jetraw demo (source only). -- Add ByteShuffle codec, a generic version of FloatPred. -- Replace imcd_floatpred by imcd_byteshuffle (breaking). -- Use bool type in imcd (breaking). - -2022.2.22 - - … Refer to the CHANGES file for older revisions. @@ -302,8 +267,8 @@ Wheels may not be available for all platforms and all releases. Only the ``win_amd64`` wheels include all features. -The ``tiff``, ``bcn``, ``dds``, ``eer``, ``packints``, and ``jpegsof3`` codecs -are currently decode-only. +The ``tiff``, ``bcn``, ``dds``, ``dicomrle``, ``eer``, ``lzo``, ``packints``, +and ``jpegsof3`` codecs are currently decode-only. The ``heif`` and ``jetraw`` codecs are distributed as source code only due to license and possible patent usage issues. @@ -340,8 +305,8 @@ specific extensions, for example: --global-option="--skip-bitshuffle"`` The ``apng``, ``avif``, ``jetraw``, ``jpegls``, ``jpegxl``, ``lerc``, -``lz4f``, ``lzfse``, ``lzham``, ``mozjpeg``, ``zfp``, and ``zlibng`` -extensions are disabled by default when building from source. +``lz4f``, ``lzfse``, ``lzham``, ``lzo``, ``mozjpeg``, ``sperr``, ``zfp``, +and ``zlibng`` extensions are disabled by default when building from source. To modify other build settings such as library names and compiler arguments, provide a ``imagecodecs_distributor_setup.customize_build`` function, which @@ -390,7 +355,7 @@ Other Python packages and C libraries providing imaging or compression codecs: `Wuffs `_, `TinyDNG `_, `OpenJPH `_, -`SPERR `_ (GPL), +`Grok `_ (AGPL), `MAFISC `_, `B3D `_.