Release notes¶
0.3.0¶
- The
numcodecs.blosc.Blosc
codec has been made robust for usage in both multithreading and multiprocessing programs, regardless of whether Blosc has been configured to use multiple threads internally or not (#41, #42). - The
numcodecs.blosc.Blosc
codec now supports anAUTOSHUFFLE
argument when encoding (compressing) which activates bit- or byte-shuffle depending on the itemsize of the incoming buffer (#37, #42). This is also now the default. - The
numcodecs.blosc.Blosc
codec now raises an exception when an invalid compressor name is provided under all circumstances (#40, #42). - The bundled version of the c-blosc library has been upgraded to version 1.12.1 (#45, #42).
- An improvement has been made to the system detection capabilities during compilation of C extensions (by Prakhar Goel; #36, #38).
- Arrays with datetime64 or timedelta64 can now be passed directly to compressor codecs (#39, #46).
0.2.0¶
New codecs:
- The
numcodecs.quantize.Quantize
codec, which provides support for reducing the precision of floating-point data, has been ported over from Zarr (#28, #31).
Other changes:
- The
numcodecs.zlib.Zlib
codec is now also registered under the alias ‘gzip’ (#29, #32).
Maintenance work:
0.1.1¶
This release includes a small modification to the setup.py script to provide greater control over how compiler options for different instruction sets are configured (#24, #27).
0.1.0¶
New codecs:
- Two new compressor codecs
numcodecs.zstd.Zstd
andnumcodecs.lz4.LZ4
have been added (#3, #22). These provide direct support for compression/decompression using Zstandard and LZ4 respectively. - A new
numcodecs.msgpacks.MsgPack
codec has been added which uses msgpack-python to perform encoding/decoding, including support for arrays of Python objects (Jeff Reback; #5, #6, #8, #21). - A new
numcodecs.pickles.Pickle
codec has been added which uses the Python pickle protocol to perform encoding/decoding, including support for arrays of Python objects (Jeff Reback; #5, #6, #21). - A new
numcodecs.astype.AsType
codec has been added which uses NumPy to perform type conversion (John Kirkham; #7, #12, #14).
Other new features:
- The
numcodecs.lzma.LZMA
codec is now supported on Python 2.7 if backports.lzma is installed (John Kirkham; #11, #13). - The bundled c-blosc library has been upgraded to version 1.11.2 (#10, #18).
- An option has been added to the
numcodecs.blosc.Blosc
codec to allow the block size to be manually configured (#9, #19). - The representation string for the
numcodecs.blosc.Blosc
codec has been tweaked to help with understanding the shuffle option (#4, #19). - Options have been added to manually control how the C extensions are built regardless of the architecture of the system on which the build is run. To disable support for AVX2 set the environment variable “DISABLE_NUMCODECS_AVX2”. To disable support for SSE2 set the environment variable “DISABLE_NUMCODECS_SSE2”. To disable C extensions altogether set the environment variable “DISABLE_NUMCODECS_CEXT” (#24, #26).
Maintenance work:
0.0.1¶
Fixed project description in setup.py.
0.0.0¶
First release. This version is a port of the codecs
module from Zarr 2.1.0. The following changes have been made from
the original Zarr module:
- Codec classes have been re-organized into separate modules, mostly one per codec class, for ease of maintenance.
- Two new codec classes have been added based on 32-bit checksums:
numcodecs.checksum32.CRC32
andnumcodecs.checksum32.Adler32
. - The Blosc extension has been refactored to remove code duplications related to handling of buffer compatibility.