Merge branch 'feat/p2b-blosc2' into feat/p2b-scale

# Conflicts:
#	CHANGELOG.md
This commit is contained in:
osobh
2026-09-26 11:57:11 -05:00
60 changed files with 2276 additions and 33 deletions
+10 -5
View File
@@ -221,11 +221,16 @@ fill-value item that did is fixed).
bitshuffle, bzip2 and Blosc 1 (`bitshuffle`, `bzip2`, `blosc`, or
`plugin-filters` for all), read and write, pure Rust; h5ex_d_lzf,
h5ex_d_bshuf, h5ex_d_bzip2 and h5ex_d_blosc now read (conformance 573 of
697 ok). **Still open:** Blosc2 (32026 — hdf5plugin stores each chunk as a
Blosc2 super-chunk frame, and n-D chunks as B2ND arrays) and ZFP (32013);
both fail with an `UnsupportedFilter` error that names the filter, and
either can be plugged in with `filter_registry::register_filter` (32023,
Granular BitRound, too, since 2026-09-26 even with the `pcodec` feature).
697 ok). **Fixed 2026-09-26** for Blosc2 (32026, `blosc2` feature, also
in `plugin-filters`), read only: hdf5plugin's frames and B2ND arrays, every
codec and filter it offers; h5ex_d_blosc2 now reads (conformance 576 of
697 ok, tank, `conformance/run.sh --no-fetch`). Blosc2 frames using
dictionaries, lazy chunks, variable-length blocks, user-defined codecs or
registered filters (e.g. bytedelta) are refused with an error.
**Still open:** ZFP (32013) fails with an `UnsupportedFilter` error that
names the filter, and can be plugged in with
`filter_registry::register_filter` (32023, Granular BitRound, too, since
2026-09-26 even with the `pcodec` feature). clawhdf5 cannot write Blosc2.
- **Wrong data: a chunk whose filters decode to fewer bytes than the chunk
read with zeros for the missing bytes** (any filter; found reviewing the plugin
filters). **Fixed 2026-09-26:** it is an error naming the chunk. A corrupt