Summary
The Zarr V3 spec supports fill values that include special floating-point values (NaN, Infinity, -Infinity) and variable-length data types (e.g., variable-length UTF-8 strings). The current implementation may not handle all of these correctly.
Specific cases to address
Special float fill values
NaN — Zarr V3 encodes as the string "NaN" in JSON metadata
Infinity / -Infinity — encoded as "Infinity" / "-Infinity"
- These need special parsing since JSON doesn't natively support these values
Variable-length strings
- Zarr V3 has a
string data type with variable-length UTF-8 encoding
- Fill value is typically
"" (empty string)
- The current Julia bindings support 14 numeric types but may not handle string arrays
Acceptance criteria
🤖 Generated with Claude Code
Summary
The Zarr V3 spec supports fill values that include special floating-point values (
NaN,Infinity,-Infinity) and variable-length data types (e.g., variable-length UTF-8 strings). The current implementation may not handle all of these correctly.Specific cases to address
Special float fill values
NaN— Zarr V3 encodes as the string"NaN"in JSON metadataInfinity/-Infinity— encoded as"Infinity"/"-Infinity"Variable-length strings
stringdata type with variable-length UTF-8 encoding""(empty string)Acceptance criteria
NaNfill value can be created and read back correctlyInfinity/-Infinityfill values work correctly🤖 Generated with Claude Code