- Datatype::parse returns Datatype::Complex for class 11 (also inside
compounds, arrays and VL types) instead of the {r, i} compound view.
- Facade: DType::Complex(Box<DType>); read_complex_f32/f64 accept it.
- h5rs dump/ls/diff print native complex as h5dump/h5ls/h5diff 2.2.0 do
(checked against a fixture written by h5py 3.16 / libhdf5 2.0.0);
dump --json keeps the {r, i} compound (hdf5-json has no complex class).
- clawhdf5-wasm reads native complex datasets as [re, im] pairs.
- Python: clawhdf5.File(path, 'w', libver=...) with h5py's values,
mapped to FileBuilder::libver_bounds; 'v108' output opens in HDF5 1.8.23.
- Docs: known-issues entry moved to Fixed (history), CHANGELOG, READMEs.
Co-Authored-By: Claude Opus 5.5 (1M context) <[email protected]>
clawhdf5 documentation
Every document in the repository, one line each. Start with the README and the quick start.
Using clawhdf5
| Document | What it covers |
|---|---|
| README | What clawhdf5 is, the evidence, the feature matrix, install, quick starts, crate map |
| QUICKSTART.md | Working examples: HDF5 in Rust and Python, remote files, SWMR, NetCDF-4, h5rs, agent memory, CLI |
| USE_CASES.md | Where clawhdf5 fits, and when to use something else |
| agent-memory.md | The agent-memory store: search, durability, signing, modules, performance, schema, CLI, SQLite migration |
| known-issues.md | Open limits and fixed bugs, dated — read before relying on an edge case |
| openclaw.md | Why clawhdf5 is not an OpenClaw memory plugin, and what one would need |
| CHANGELOG.md | Every change by release, with upgrade notes; "Unreleased" is everything since v2.7.0 |
Evidence
| Document | What it covers |
|---|---|
| CONFORMANCE.md | Generated report: 697 public HDF5 files read by clawhdf5 and h5py and compared; the CVE corpus against h5dump and h5py |
| conformance/README.md | How the conformance sweep works and how to run it |
| BENCHMARKS.md | Every measurement with date, machine and command: HDF5 reads and writes, concurrency, deflate backends, search, LongMemEval, footprint |
| benchmarks/longmemeval/README.md | Downloading the LongMemEval data |
| benchmarks/2026-03-01-oracle-xeon.md | An early (March 2026) benchmark run on a Xeon server; superseded by BENCHMARKS.md |
Design
| Document | What it covers |
|---|---|
| design/range-reads.md | Reading through a Storage trait: milestones M0–M5 (indexed lookups, storage, raw data, remote files, the browser, SWMR) |
| design/swmr.md | Reading files a libhdf5 SWMR writer is appending to (M5) |
| design/tools/ | Scripts behind the range-read design's measurements (inventory.py, libhdf5_reads.py, range-trace) |
Crates and packages
| Document | What it covers |
|---|---|
| crates/clawhdf5 | The facade: File, FileBuilder, FileEditor |
| crates/clawhdf5-format | The format implementation and codecs; fuzzing |
| crates/clawhdf5-filters | Deflate backends |
| crates/clawhdf5-io | I/O helpers (mmap, async, HSDS, MPI) |
| crates/clawhdf5-remote | Remote files: HTTP(S), object stores, block cache |
| crates/clawhdf5-netcdf4 | NetCDF-4 layer |
| crates/clawhdf5-derive | Derive macros |
| crates/clawhdf5-tools | h5rs |
| crates/clawhdf5-py | Python bindings |
| crates/clawhdf5-wasm | The browser reader crate |
| examples/wasm-viewer | Browser viewer and the clawhdf5-wasm JavaScript API |
| crates/clawhdf5-napi, packages/clawhdf5-node | Node.js bindings and package (unpublished, does not work) |
| crates/clawhdf5-android | Android JNI bindings for the agent store |
| crates/clawhdf5-agent | Agent memory (full guide: agent-memory.md) |
| crates/clawhdf5-ann | HNSW index |
| crates/clawhdf5-accel | SIMD kernels |
| crates/clawhdf5-gpu | GPU vector distances |
| crates/clawhdf5-migrate | SQLite migration |
| crates/clawhdf5-cli | The agent-memory CLI |
| crates/clawhdf5-bench | Benchmarks and harnesses |
Project history and working notes
| Document | What it covers |
|---|---|
| ROADMAP.md | What has shipped (releases and PRs since v2.7.0) and what is next |
| CLAUDE.md | Architecture and workflow notes for contributors and coding agents |
| archive/IMPROVEMENT_LOG.md, archive/IMPROVEMENT_SCAN.md | Logs of earlier automated improvement passes (archived, historical) |
| archive/plans/ | Implementation plans from June 2026 (filter codecs, format write extensions, MPI-IO); archived, historical |
| research/ | Research briefs from August 2026 (performance, security, provenance) |