Releases: Blosc/c-blosc
Release 1.18.0
Changes from 1.17.1 to 1.18.0
- Fixed the copy of the leftovers of a chunk when its size is not a
multiple of the typesize. Although this is a very unusual situation,
it can certainly happen (e.g.
Blosc/python-blosc#220).
Release 1.17.1
Changes from 1.17.0 to 1.17.1
-
Zstd codec updated to 1.4.4.
-
LZ4 codec updated to 1.9.2.
Release 1.17.0
Changes from 1.16.3 to 1.17.0
-
LZ4 codec updated to 1.9.1.
-
Zstd codec updated to 1.4.1.
-
BloscLZ codec updated to 2.0.0. Although this should be fully backward
compatible, it contains important changes that affects mainly speed, but
also compression ratios. Feedback on how it behaves on your own data is
appreciated.
Release 1.16.3
Changes from 1.16.2 to 1.16.3
-
Fix for building for clang with -march=haswell. See PR #262.
-
Fix all the known warnings for GCC/Clang. Still some work to do for MSVC
in this front. -
Due to some problems with several CI systems, the check for library symbols
are deactivated now by default. If you want to enforce this check, use:
cmake .. -DDEACTIVATE_SYMBOLS_CHECK=ON
to re-activate it.
Release 1.16.2
- Correct the check for the compressed size when the buffer is memcpyed. This
was a regression introduced in 1.16.0. Fixes #261.
Release 1.16.1
-
Fixed a regression in 1.16.0 that prevented to compress empty buffers
(see #260). -
Zstd updated to 1.3.8 (from 1.3.7).
Release 1.16.0
-
Now the functions that execute Blosc decompressions are safe by default
for untrusted/possibly corrupted inputs. The additional checks seem to
not affect performance significantly (see some benchmarks in #258), so
this is why they are the default now.The previous functions (with less safety) checks are still available with a
'_unsafe' suffix. The complete list is:- blosc_decompress_unsafe()
- blosc_decompress_ctx_unsafe()
- blosc_getitem_unsafe()
Also, a new API function named blosc_cbuffer_validate(), for validating Blosc
compressed data, has been added.For details, see PR #258. Thanks to Jeremy Maitin-Shepard.
-
Fixed a bug in
blosc_compress()
that could lead to thread deadlock under
some situations. See #251. Thanks to @wenjuno for the report and the fix. -
Fix data race in shuffle.c host_implementation initialization. Fixes #253.
Thanks to Jeremy Maitin-Shepard.
Release 1.15.1
This is a maintenance release that adds a workaround for Visual Studio
2008's lack of a stdint.h file to blosclz.c.
For more info, please see the release notes in:
https://github.com/Blosc/c-blosc/blob/master/RELEASE_NOTES.rst
Release 1.15.0
In this release, the blosc_compress()
and blosc_decompress()
interfaces
are now fork-safe, preventing child-process deadlocks in fork-based
multiprocessing applications. These interfaces with BLOSC_NOLOCK were, and
continue to be, fork-safe. _ctx
interface context reuse continues to be
unsafe in the child process post-fork. Thanks to Alex Ford.
Also, a few bugs have been fixed, more compatibility with oldish compilers
and LZ4 and Zstd codecs have been updated to their latest versions.
For more info, please see the release notes in:
https://github.com/Blosc/c-blosc/blob/master/RELEASE_NOTES.rst
Release 1.14.4
Changes from 1.14.3 to 1.14.4
-
Added a new
DEACTIVATE_SSE2
option for cmake that is useful for disabling
SSE2 when doing cross-compilation (see #236). -
New check for detecting output buffers smaller than BLOSC_MAX_OVERHEAD.
Fixes #234. -
The
complib
andversion
parameters forblosc_get_complib_info()
can be
safely set to NULL now. This allows to call this function even if the user is
not interested in these parameters (so no need to reserve memory for them).
Fixes #228. -
In some situations that a supposedly blosc chunk is passed to
blosc_decompress()
, one might end with anArithmetic exception
. This
is probably due to the chunk not being an actual blosc chunk, and divisions
by zero might occur. A protection has been added for this. See #237.