Skip to content

Releases: Blosc/python-blosc2

Release 0.6.1

30 Nov 17:37

Choose a tag to compare

Changes from 0.5.2 to 0.6.1

  • Support for Python prefilters and postfilters. With this, you can pre-process or post-process data in super-chunks automatically. This machinery is handled internally by C-Blosc2, so it is very efficient (although it cannot work in multi-thread mode due to the GIL). See the examples/ directory for different ways of using this.

  • Support for fillers. This is a specialization of a prefilter, and it allows to use Python functions to create new super-chunks from different kind of inputs (NumPy, SChunk instances, scalars), allowing computations among them and getting the result automatically compressed. See a sample script in the examples/ directory.

  • Lots of small improvements in the style, consistency and other glitches in the code. Thanks to Dimitri Papadopoulos for hist attention to detail.

  • No need to compile C-Blosc2 tests, benchs or fuzzers. Compilation time is much shorter now.

  • Added cratio, nbytes and cbytes properties to SChunk instances.

  • Added setters for dparams and cparams attributes in SChunk.

Release 0.5.2

23 Oct 16:05

Choose a tag to compare

Changes from 0.5.1 to 0.5.2

  • Honor nested cparams properties in kwargs. E.g. you can do:
blosc2.save_tensor(a, "test.bl2", mode="w",
                   filters=[blosc2.Filter.TRUNC_PREC, blosc2.Filter.BITSHUFFLE],
                   filters_meta=[13, 0],
                   codec=blosc2.Codec.LZ4,
                   clevel=9)

without a need to build a proper cparams dict first.

  • C-Blosc2 upgraded to 2.4.3. It should improve cratio for BloscLZ in combination with bitshuffle.

  • Prefer pack_tensor/save_tensor in benchs and examples

Release 0.5.1

12 Oct 14:38

Choose a tag to compare

Changes from 0.5.0 to 0.5.1

  • Remove the testing of packing PyTorch or TensorFlow objects during wheels build.

Release 0.5.0

12 Oct 12:09

Choose a tag to compare

Changes from 0.4.1 to 0.5.0

  • New pack_tensor, unpack_tensor, save_tensor and load_tensor functions for serializing/deserializing PyTorch and TensorFlow tensor objects. They also understand NumPy arrays, so these are the new recommended ones for serialization.

  • pack_array2 do not modify the value of a possible cparams parameter anymore.

  • The pack_array2 / save_array have changed the serialization format to follow the new standard introduced in pack_tensor. In the future pack_array2 / save_array will probably be deprecated, so please change to pack_tensor / save_tensor as soon as you can.

  • The new 'standard' for serialization relies on using the __pack_tensor__ attribute as a vlmeta (variable length) metalayer.

Release 0.4.1

03 Oct 12:24

Choose a tag to compare

Changes from 0.4.0 to 0.4.1

  • Add msgpack as a runtime requirement

Release 0.4.0

01 Oct 10:22

Choose a tag to compare

Changes from 0.3.2 to 0.4.0

  • New pack_array2() and unpack_array2() functions for packing NumPy arrays. Contrarily to pack_array() and unpack_array() counterparts, the new ones allow for compressing arrays larger than 2 GB in size.

  • New Scunk.to_cframe() and blosc2.from_cframe() methods for serializing/deserialzing SChunk instances.

  • New Schunk.get_slice(), SChunk.__getitem__() and SChunk.__setitem__() methods for getting/setting slices from/to SChunk instances.

  • The compcode parameter has been renamed to codec. A NameError exception will be raised when using the old name. Please update your code when you see this exception.

  • More doc restructurings. Hopefully, they are more pleasant to read now :-)

Release 0.3.2

24 Aug 16:06

Choose a tag to compare

Changes from 0.3.1 to 0.3.2

  • Several leaks fixed. Thanks to Christoph Gohlke.

  • Internal C-Blosc2 updated to 2.3.1

Release 0.3.0

05 Jul 11:15

Choose a tag to compare

Changes from 0.2.0 to 0.3.0

  • Added a new blosc2.open(urlpath, mode) function to be able to open persisted super-chunks.

  • Added a new tutorial in notebook format (examples/tutorial-basics.ipynb) about the basics of python-blosc2.

  • Internal C-Blosc2 updated to 2.2.0

Release 0.2.0

07 Oct 16:12

Choose a tag to compare

Release notes

Changes from python-blosc2 0.1.10 to python-blosc2 0.2.0

  • Internal C-Blosc updated to 2.0.4.

New super-chunk implementation

  • New SChunk class that allows to create super-chunks.
    This includes the capability of storing data in 4
    different ways (sparse/contiguous and in memory/on-disk),
    as well as storing variable length metalayers.

  • Also, during the contruction of a SChunk instance,
    an arbitrarily large data buffer can be given so that it is
    automatically split in chunks and those are appended to the
    SChunk.

  • See examples/schunk.py and examples/vlmeta.py for some examples.

  • Documentation of the new API is here: https://python-blosc2.readthedocs.io

This release is the result of a grant offered by
the Python Software Foundation to Marta Iborra.
A blog entry was written describing the difficulties and relevant
aspects learned during the work:
https://www.blosc.org/posts/python-blosc2-initial-release/

Release 0.1.10

10 Jul 13:24

Choose a tag to compare

Changes from python-blosc2 0.1.9 to python-blosc2 0.1.10

  • Release with C-Blosc 2.0.2 sources and binaries.