Repository navigation
Conversation
Codecov Report❌ Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## master #73 +/- ##
==========================================
+ Coverage 52.04% 59.53% +7.49%
==========================================
Files 12 13 +1
Lines 490 514 +24
==========================================
+ Hits 255 306 +51
+ Misses 235 208 -27 ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
…ressed create_dataset now forwards `compressor` (Zarr) and `compress` (NetCDF) to the coordinate arrays, not only to the data variables. Other keyword arguments such as filters stay data-variable only, since they can be type specific. NetCDF iscompressed always returned false because NetCDF.jl does not read the deflate level back when opening a variable. Query it with nc_inq_var_deflate instead.
Zarr v3 allows omitting dimension_names, which zarr-python does for 0-dimensional arrays. get_var_dims threw for such arrays because neither dimension_names nor _ARRAY_DIMENSIONS was present. Return an empty list for arrays without dimensions instead.
|
I changed to using the zarr_format function from ZarrCore and renamed the corresponding keyword to format. Why is this breaking? |
|
by loading |
Stop gap till change landed in Zarr.jl
|
The last change is needed until JuliaIO/Zarr.jl#359 lands. |
|
Let's do this update only with the latest version of Zarr, then when a new version is patch-release we come back to this Now, we should do this transition. |
ZGroup has no metadata field in ZarrCore 0.11.1, so zarr_format(ds)
raised a FieldError and every add_var call failed. The format is the
group's zarr_format field, a ZarrFormat{N} that converts to Int.
Co-authored-by: Claude 🤖 <noreply@anthropic.com>
ZarrCore.zcreate takes the format as the zarr_format keyword. The tests that call it directly passed format, which zcreate rejects; format is the keyword of the YAXArrayBase functions only. Co-authored-by: Claude 🤖 <noreply@anthropic.com>
The Zarr v3 zarr.json files carry the format version under the key zarr_format; there is no key named format. Co-authored-by: Claude 🤖 <noreply@anthropic.com>
Zarr 0.11 is an umbrella package: the array, store and codec types live in ZarrCore, and the umbrella re-exports only some of their names. The ZarrDatasets 0.1.7 release depends on ZarrCore and cannot load beside the pre-split Zarr 0.10 that `[sources]` pinned, which is why CI is red on main (`Method overwriting is not permitted during Module precompilation`). - `Project.toml` requires `Zarr = "0.11"`, and `ZarrCore` is a dependency. The names ZarrCore owns are qualified with it (about 190 changed lines in 32 files, nearly all `Zarr.X` -> `ZarrCore.X`), as ExplicitImports requires. - `[sources]` points Zarr, ZarrCore and ZarrZlib at the fork branch `complex-int-dtype-v0.11`: Zarr.jl `main` plus complex-integer arrays, non-finite complex fill values and threaded chunk decoding. ZarrZlib is listed in `[extras]` only so `[sources]` can name it. The docs environment repeats the pin. Not covered: the YAXArrays test is not run, because YAXArrayBase 0.7 requires Zarr 0.10, so YAXArrays cannot be installed beside this package until YAXArrayBase supports Zarr 0.11 (JuliaDataCubes/YAXArrayBase.jl#73). The docs example for it is replaced by a note. Tested locally on Julia 1.13 with 4 threads: 8434 tests pass, none fail, one is marked broken as before, including Aqua and ExplicitImports; the docs build. Julia 1.10 ignores `[sources]` and resolves registered Zarr 0.11.1, which the CI lts jobs exercise. Co-authored-by: Claude 🤖 <noreply@anthropic.com>
Rename the format keyword of create_dataset, create_empty and add_var back to zarr_format, the name ZarrCore uses. With `format` as the keyword, a `zarr_format` passed by the caller reached zcreate, which overrides the group format and split the store into a v2 group with v3 arrays, losing those arrays on reopening. Read the group format with ZarrCore.zarr_format instead of extending it with a method that returned an Int. This needs ZarrCore 0.11.2. Skip the remote Zarr test with a warning when the server can not be reached, instead of failing on TLS or rate limit errors.
|
I think is ok now. The only thing I should have done is to make |
as hinted in #72
Plus is needed to properly implement the multi scales work on PyramidSchemes.jl