docs: known issue — NetCDF-4 unlimited dimensions report size 0

Found while checking the README refresh: clawhdf5-netcdf4 reads an
unlimited dimension's size from its dimension-scale dataset, which
netCDF-C never extends, so a dimension with 2 records reports 0.
Variable shapes and values are right. To be fixed separately.

Co-Authored-By: Claude Opus 5.5 (1M context) <[email protected]>
This commit is contained in:
osobh
2026-09-28 11:15:51 -05:00
co-authored by Claude Opus 5.5
parent 3100f0143b
commit a48cb9f1a4
+16
View File
@@ -15,6 +15,7 @@ Checked against `main` at `9b5803f` on 2026-09-28.
| Issue | Kind | Since | | Issue | Kind | Since |
|---|---|---| |---|---|---|
| [NetCDF-4: an unlimited dimension reports size 0](#netcdf-4-an-unlimited-dimension-reports-size-0) | **wrong metadata** (dimension size; variable shapes and values are right) | 2026-09-28 |
| [In-place modification (`FileEditor`) limits](#in-place-modification-fileeditor-limits) | refused edits (`Error::Unsupported`), space reuse per editor, no journal | 2026-09-26 | | [In-place modification (`FileEditor`) limits](#in-place-modification-fileeditor-limits) | refused edits (`Error::Unsupported`), space reuse per editor, no journal | 2026-09-26 |
| [Python in-place editing limits](#python-in-place-editing-clawhdf5filepath-r-limits) | refused writes (`NotImplementedError`), deliberate conversion differences | 2026-09-27 | | [Python in-place editing limits](#python-in-place-editing-clawhdf5filepath-r-limits) | refused writes (`NotImplementedError`), deliberate conversion differences | 2026-09-27 |
| [Selection reads that decode more than the selection](#selection-reads-that-decode-more-than-the-selection) | speed only | 2026-09-26 | | [Selection reads that decode more than the selection](#selection-reads-that-decode-more-than-the-selection) | speed only | 2026-09-26 |
@@ -399,6 +400,21 @@ always expose it. A fix belongs in `conformance/ref_bugs.py` (more or more
varied reads for this object) or in documenting the file as a known varied reads for this object) or in documenting the file as a known
refusal; neither is done. refusal; neither is done.
## NetCDF-4: an unlimited dimension reports size 0
**Status:** open (found 2026-09-28 while verifying the README refresh).
`clawhdf5-netcdf4`'s `NetCDF4File::dimensions()` reports an unlimited
dimension's `size` as 0 when variables along it hold records. Reproducer: with
netCDF4-python, create dimension `time` (unlimited) and `x` (3), a variable
`t(time, x)`, and write 2 records; netCDF4 reports `time` = 2 and `t` shape
(2, 3). clawhdf5-netcdf4 reports `dim time size 0 unlimited true`, while
`variable("t").shape()` correctly gives `[2, 3]`. In NetCDF-4 an unlimited
dimension's length is the largest extent of the variables that use it (its
dimension-scale dataset is not extended by netCDF-C), and the size is read
from the dimension scale instead. Variable shapes and values are correct;
only `Dimension::size` of unlimited dimensions is wrong. Workaround: use the
variables' shapes.
## The Node.js package (`packages/clawhdf5-node`) does not work ## The Node.js package (`packages/clawhdf5-node`) does not work
**Status:** open (found 2026-09-25; re-checked 2026-09-28, unchanged). **Status:** open (found 2026-09-25; re-checked 2026-09-28, unchanged).