Releases: Blosc/c-blosc2
Release 2.17.0
Changes from 2.16.0 to 2.17.0
-
New b2nd_copy_buffer2() function for copying buffers with typesizes
larger than 255. The previous b2nd_copy_buffer() function is now
deprecated and will be removed in a future release. -
Support repeated values larger than 8-bit, also for n-dim arrays.
This is useful for compressing arrays with large runs of repeated
values, like in the case of images with large areas of the same color. -
Fix a leak in the pthreads emulation for Windows. Fixes #647.
Thanks to @jocbeh for the report and fix (#655). -
Update zstd to 1.5.7. Thanks to Tom Birch.
-
Add BLOSC2_MAXTYPESIZE constant.
Release 2.16.0
Changes from 2.15.2 to 2.16.0
- Use _fseeki64/_ftelli64/_stat64 on Windows for large file (>2 GB) support.
Thanks to Abhi Jaiantilal (@ajaiantilal) for the report and help. - Add 12-byte unshuffle for avx2. Thanks to Tom Birch (@froody).
- Add 12-byte sse2 unshuffle implementation. Thanks to Tom Birch (@froody).
- Better description of the Blosc2 format as a whole.
Release 2.15.2
Changes from 2.15.1 to 2.15.2
-
Support wasm32 by disabling ZLIB WITH_OPTIM option. Thanks to Miles Granger.
-
Avoid rip-relative addressing for OSX x86_64. Thanks to Miles Granger.
-
Added support for nvcc (NVidia Cuda Compiler) in CMake. Thanks to @dqwu.
-
Fix public include directories for blosc2 targets. Thanks to Dmitry Mikushin.
-
Fix ub in shuffle and unshuffle by marking _dst non-const. Thanks to Emil Dohne.
Release 2.15.1
Changes from 2.15.0 to 2.15.1
-
Do not pass
-m
flags when compilingshuffle.c
. This prevents the
compiler from incidentally optimizing the code called independently
of the runtime CPU check to these instruction sets, effectively
causingSIGILL
on other CPUs. Fixes #621. Thanks to @t20100 and @mgorny. -
Internal LZ4 sources bumped to 1.10.0.
-
Allow direct loading of plugins by name, without relying on
the presence of python. Thanks to @boxerab.
Release 2.15.0
Changes from 2.14.4 to 2.15.0
-
Removed some duplicated functions. See #503.
-
Added a new io mode to memory map files. This forced to change the
io_cb
read API.
See /~https://github.com/Blosc/c-blosc2/blob/main/tests/test_mmap.c to see an example on
how to use it. -
Updated the
SOVERSION
to 4 due to the API change inio_cb
read. -
Added functions to get cparams, dparams, storage and io defaults respectively.
-
Internal zstd sources updated to 1.5.6.
-
Fixed a bug when setting a slice using prefilters.
Release 2.14.4
Changes from 2.14.3 to 2.14.4
- Bumped SONAME due to recent API changes. See #581.
Release 2.14.3
Changes from 2.14.2 to 2.14.3
- More fixes for internal fuzzer.
Release 2.14.2
Changes from 2.14.1 to 2.14.2
- Fixes for CVE-2024-3203 and CVE-2024-3204.
Release 2.14.1
Changes from 2.14.0 to 2.14.1
- When loading plugins, first try with
python
and thenpython3
.
This is because many linux distros do not havepython
as a
symlink topython3
anymore.
Release 2.14.0
Changes from 2.13.2 to 2.14.0
-
Fixed a bug preventing buffers to be appended to empty (0-sized) b2nd arrays.
-
New acceleration path for
b2nd_append()
. This new path is
much faster (up to 4x) than the previous one, specially for large arrays.
Seebench/bench_stack_append.c
for a benchmark. -
New examples for using the
b2nd_set_slice_cbuffer()
and
b2nd_append()
functions for adding data into existing b2nd arrays.
Seeexamples/example_stack_images.c
. -
Now,
python3
is used for finding plugins instead ofpython
.
This is because many linux distros do not havepython
as a symlink
topython3
anymore. -
New round of fixing warnings. Now, C-Blosc2 should be relatively free of them.
-
Small performance tweak for clevel 1 in BloscLZ codec.
-
Fixed a leak in frame code. Closes #591. Thanks to @LuMingYinDetect.
-
Disable shuffle repeat in filters pipeline. This was broken
since the initial implemented, and it was never documented.
Also, compression ratios do not seem to be improved in our experiments,
so this capability has been removed completely. -
Support for new Intel compilers (2023.0.1 and on). Fixes #533.
Thanks to Nick Papior.