ci: lint all targets, run interop suites for real, compile benches
- clippy --all-targets plus a clawhdf5-format feature matrix (parallel, lz4, zstd, pcodec, fast-checksum); fix the accumulated lint backlog in test, bench and feature-gated code (no behaviour changes). - Install python3 + h5py/numpy/netCDF4/xarray in the CI container and set CLAWHDF5_REQUIRE_INTEROP=1, which makes a missing interop dependency a test failure. Every h5py/netCDF4 interop test used to skip silently in CI. Run the #[ignore]d writer_h5py_tests suite explicitly. - cargo bench --no-run so benches can't rot; fix bench.rs and memory_bench.rs, which no longer compiled against the current strategy/consolidation APIs. - Optional fuzz smoke run via CLAWHDF5_FUZZ_SECONDS. - CHANGELOG and docs/known-issues.md updated. Co-Authored-By: Claude Fable 5.1 <[email protected]>
This commit is contained in:
co-authored by
Claude Fable 5.1
parent
706189c3ef
commit
bbe1baa208
@@ -189,11 +189,7 @@ mod tests {
|
||||
|
||||
fn build_v1_dataspace(rank: u8, flags: u8, dims: &[u64], max_dims: Option<&[u64]>) -> Vec<u8> {
|
||||
let length_size = 8u8;
|
||||
let mut buf = Vec::new();
|
||||
buf.push(1); // version
|
||||
buf.push(rank);
|
||||
buf.push(flags);
|
||||
buf.push(0); // reserved
|
||||
let mut buf = vec![1, rank, flags, 0]; // version, rank, flags, reserved
|
||||
buf.extend_from_slice(&[0u8; 4]); // reserved(4)
|
||||
for &d in dims {
|
||||
buf.extend_from_slice(&d.to_le_bytes());
|
||||
@@ -214,11 +210,7 @@ mod tests {
|
||||
dims: &[u64],
|
||||
max_dims: Option<&[u64]>,
|
||||
) -> Vec<u8> {
|
||||
let mut buf = Vec::new();
|
||||
buf.push(2); // version
|
||||
buf.push(rank);
|
||||
buf.push(flags);
|
||||
buf.push(type_byte);
|
||||
let mut buf = vec![2, rank, flags, type_byte]; // version, rank, flags, type
|
||||
for &d in dims {
|
||||
buf.extend_from_slice(&d.to_le_bytes());
|
||||
}
|
||||
@@ -298,11 +290,7 @@ mod tests {
|
||||
|
||||
#[test]
|
||||
fn v1_with_4byte_length() {
|
||||
let mut buf = Vec::new();
|
||||
buf.push(1); // version
|
||||
buf.push(1); // rank
|
||||
buf.push(0); // flags
|
||||
buf.push(0); // reserved
|
||||
let mut buf = vec![1, 1, 0, 0]; // version, rank, flags, reserved
|
||||
buf.extend_from_slice(&[0u8; 4]); // reserved(4)
|
||||
buf.extend_from_slice(&10u32.to_le_bytes()); // dim with length_size=4
|
||||
let ds = Dataspace::parse(&buf, 4).unwrap();
|
||||
|
||||
Reference in New Issue
Block a user