From 4f49fbd00a13f4b5573fc62c3f2a9944818a91c1 Mon Sep 17 00:00:00 2001 From: Lachlan Deakin Date: Thu, 9 Jan 2025 12:02:18 +1100 Subject: [PATCH] chore: use `zarr-python` 3.0.0 in compatibility tests --- CHANGELOG.md | 1 + zarrs/src/array.rs | 18 +++++++ .../tests/data/v2/array_blosc_C.zarr/.zarray | 41 ++++++++-------- .../tests/data/v2/array_blosc_C.zarr/.zattrs | 2 +- .../tests/data/v2/array_blosc_F.zarr/.zarray | 41 ++++++++-------- .../tests/data/v2/array_blosc_F.zarr/.zattrs | 2 +- zarrs/tests/data/v2/array_blosc_F.zarr/0.0 | Bin 116 -> 116 bytes zarrs/tests/data/v2/array_blosc_F.zarr/0.1 | Bin 116 -> 116 bytes zarrs/tests/data/v2/array_blosc_F.zarr/1.0 | Bin 116 -> 116 bytes zarrs/tests/data/v2/array_blosc_F.zarr/1.1 | Bin 116 -> 116 bytes zarrs/tests/data/v2/array_bz2_C.zarr/.zarray | 35 +++++++------- zarrs/tests/data/v2/array_bz2_C.zarr/.zattrs | 2 +- zarrs/tests/data/v2/array_gzip_C.zarr/.zarray | 35 +++++++------- zarrs/tests/data/v2/array_gzip_C.zarr/.zattrs | 2 +- zarrs/tests/data/v2/array_gzip_C.zarr/0.0 | Bin 83 -> 83 bytes zarrs/tests/data/v2/array_gzip_C.zarr/0.1 | Bin 83 -> 83 bytes zarrs/tests/data/v2/array_gzip_C.zarr/1.0 | Bin 81 -> 81 bytes zarrs/tests/data/v2/array_gzip_C.zarr/1.1 | Bin 79 -> 79 bytes zarrs/tests/data/v2/array_none_C.zarr/.zarray | 17 +++++++ zarrs/tests/data/v2/array_none_C.zarr/.zattrs | 3 ++ zarrs/tests/data/v2/array_none_C.zarr/0.0 | Bin 0 -> 100 bytes zarrs/tests/data/v2/array_none_C.zarr/0.1 | Bin 0 -> 100 bytes zarrs/tests/data/v2/array_none_C.zarr/1.0 | Bin 0 -> 100 bytes zarrs/tests/data/v2/array_none_C.zarr/1.1 | Bin 0 -> 100 bytes zarrs/tests/data/v2/array_none_F.zarr/.zarray | 17 +++++++ zarrs/tests/data/v2/array_none_F.zarr/.zattrs | 3 ++ zarrs/tests/data/v2/array_none_F.zarr/0.0 | Bin 0 -> 100 bytes zarrs/tests/data/v2/array_none_F.zarr/0.1 | Bin 0 -> 100 bytes zarrs/tests/data/v2/array_none_F.zarr/1.0 | Bin 0 -> 100 bytes zarrs/tests/data/v2/array_none_F.zarr/1.1 | Bin 0 -> 100 bytes .../tests/data/v2/array_pcodec_C.zarr/.zarray | 43 +++++++++-------- .../tests/data/v2/array_pcodec_C.zarr/.zattrs | 2 +- zarrs/tests/data/v2/array_pcodec_C.zarr/0.0 | Bin 58 -> 48 bytes zarrs/tests/data/v2/array_pcodec_C.zarr/0.1 | Bin 49 -> 49 bytes zarrs/tests/data/v2/array_pcodec_C.zarr/1.0 | Bin 49 -> 49 bytes zarrs/tests/data/v2/array_pcodec_C.zarr/1.1 | Bin 49 -> 49 bytes zarrs/tests/data/v2/array_zfpy_C.zarr/.zarray | 45 +++++++++--------- zarrs/tests/data/v2/array_zfpy_C.zarr/.zattrs | 2 +- zarrs/tests/data/v2/array_zstd_C.zarr/.zarray | 36 +++++++------- zarrs/tests/data/v2/array_zstd_C.zarr/.zattrs | 2 +- zarrs/tests/data/v2_generate.py | 45 +++++++++++++----- zarrs/tests/data/v3/array_blosc.zarr/.zarray | 6 +-- zarrs/tests/data/v3/array_none.zarr/.zarray | 18 +++++++ zarrs/tests/data/v3/array_none.zarr/.zattrs | 3 ++ zarrs/tests/data/v3/array_none.zarr/0.0 | Bin 0 -> 100 bytes zarrs/tests/data/v3/array_none.zarr/0.1 | Bin 0 -> 100 bytes zarrs/tests/data/v3/array_none.zarr/1.0 | Bin 0 -> 100 bytes zarrs/tests/data/v3/array_none.zarr/1.1 | Bin 0 -> 100 bytes zarrs/tests/data/v3/array_none.zarr/zarr.json | 36 ++++++++++++++ zarrs/tests/data/v3/array_pcodec.zarr/.zarray | 8 ++-- .../tests/data/v3/array_pcodec.zarr/zarr.json | 8 ++-- zarrs/tests/data/v3/array_zfp.zarr/.zarray | 6 +-- zarrs/tests/data/v3/array_zstd.zarr/.zarray | 1 - 53 files changed, 313 insertions(+), 167 deletions(-) create mode 100644 zarrs/tests/data/v2/array_none_C.zarr/.zarray create mode 100644 zarrs/tests/data/v2/array_none_C.zarr/.zattrs create mode 100644 zarrs/tests/data/v2/array_none_C.zarr/0.0 create mode 100644 zarrs/tests/data/v2/array_none_C.zarr/0.1 create mode 100644 zarrs/tests/data/v2/array_none_C.zarr/1.0 create mode 100644 zarrs/tests/data/v2/array_none_C.zarr/1.1 create mode 100644 zarrs/tests/data/v2/array_none_F.zarr/.zarray create mode 100644 zarrs/tests/data/v2/array_none_F.zarr/.zattrs create mode 100644 zarrs/tests/data/v2/array_none_F.zarr/0.0 create mode 100644 zarrs/tests/data/v2/array_none_F.zarr/0.1 create mode 100644 zarrs/tests/data/v2/array_none_F.zarr/1.0 create mode 100644 zarrs/tests/data/v2/array_none_F.zarr/1.1 create mode 100644 zarrs/tests/data/v3/array_none.zarr/.zarray create mode 100644 zarrs/tests/data/v3/array_none.zarr/.zattrs create mode 100644 zarrs/tests/data/v3/array_none.zarr/0.0 create mode 100644 zarrs/tests/data/v3/array_none.zarr/0.1 create mode 100644 zarrs/tests/data/v3/array_none.zarr/1.0 create mode 100644 zarrs/tests/data/v3/array_none.zarr/1.1 create mode 100644 zarrs/tests/data/v3/array_none.zarr/zarr.json diff --git a/CHANGELOG.md b/CHANGELOG.md index a2f487f1..4f3ddfd9 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -33,6 +33,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - **Breaking**: Make `VlenV2Codec` private - Bump `itertools` to 0.14 - Indicate that `zfp` / `zfpy` codecs have different metadata in codec table +- Use `zarr-python` 3.0.0 in compatibility tests ### Removed - Remove support for pcodec `Try{FloatMult,FloatQuant,IntMult}` mode specs diff --git a/zarrs/src/array.rs b/zarrs/src/array.rs index b63679d7..69d8040e 100644 --- a/zarrs/src/array.rs +++ b/zarrs/src/array.rs @@ -1094,6 +1094,23 @@ mod tests { } } + #[test] + fn array_v2_none_c() { + array_v2_to_v3( + "tests/data/v2/array_none_C.zarr", + "tests/data/v3/array_none.zarr", + ) + } + + #[ignore] // FIXME: Reported upstream https://github.com/zarr-developers/zarr-python/issues/2675 + #[test] + fn array_v2_none_f() { + array_v2_to_v3( + "tests/data/v2/array_none_F.zarr", + "tests/data/v3/array_none_tranpose.zarr", + ) + } + #[cfg(feature = "blosc")] #[test] #[cfg_attr(miri, ignore)] @@ -1105,6 +1122,7 @@ mod tests { } #[cfg(feature = "blosc")] + #[ignore] // FIXME: Reported upstream https://github.com/zarr-developers/zarr-python/issues/2675 #[test] #[cfg_attr(miri, ignore)] fn array_v2_blosc_f() { diff --git a/zarrs/tests/data/v2/array_blosc_C.zarr/.zarray b/zarrs/tests/data/v2/array_blosc_C.zarr/.zarray index 45496252..18342f94 100644 --- a/zarrs/tests/data/v2/array_blosc_C.zarr/.zarray +++ b/zarrs/tests/data/v2/array_blosc_C.zarr/.zarray @@ -1,22 +1,23 @@ { - "chunks": [ - 5, - 5 - ], - "compressor": { - "blocksize": 0, - "clevel": 1, - "cname": "zstd", - "id": "blosc", - "shuffle": 2 - }, - "dtype": "$sfnZ<*kO>@tzz7b&6lSB*Xmli_(ckmk|K01m)l^BJ1^-&) e6QRLPQb59tf(<(koVak~fwE*^;V{5sM943qyAYuO literal 116 zcmZQ#oW_#Ez`y{)B|r=T3XTj63xN0o5Gyz_Ff`aRFc<*YD}eY15UT*i7#x5I$ld_N k3_!jH5IX?H0)YG-K+FQ<>i}^BP%Ht+KLErWK)!(!0Iv%Wp#T5? diff --git a/zarrs/tests/data/v2/array_blosc_F.zarr/0.1 b/zarrs/tests/data/v2/array_blosc_F.zarr/0.1 index 4343539f204c43f512a6ef078f590129e08b5371..91cfc08883f5cb9d03b24b790619586b874738b9 100644 GIT binary patch literal 116 zcmWm4Ar?R|0LS4!Z&45ygdIZ=gxT9s96)dYQItH}Hhon<1TE gx{#njsxe`~iVX*DJb00iQ3XCM8aTA*(8D8!4|p3A@&Et; literal 116 zcmZQ#oW_#Ez`y{)B|yx;u)u+Vp}>)W;RF!#I59Ao0Pz8!SObuM0f+^Fd?vBcOE=>@#e#qpZftur4`Ts literal 116 zcmWl|u?c`M07b!X$YiN3EG$wufCE^hu&~GgA|hffBH{odA`a)v!I^BawWKsq%AM4( e=gNx(0|#!rS+eEGoew=bPCWRsV&u$|pZfufr4`Ts diff --git a/zarrs/tests/data/v2/array_blosc_F.zarr/1.1 b/zarrs/tests/data/v2/array_blosc_F.zarr/1.1 index 26bceb7a4ee707ced926d9b38f3a7363e0324970..55c1b71f553bc0b0dc22ed43f0597e053ebe097e 100644 GIT binary patch literal 116 zcmWl|u?c`M07b!XaI(x{ks^hKr4xt*$pAq_96&_G0Yrj0m(PPUMJm0de@m&dlA~wM bh8=qb4vb73IdSH~l^b^+JbCeE=EK*1j@1_s literal 116 zcmWl|u?c`M07b!XaI(x{ks^hKr4xt*$pAq_96&_G0Yrj0m(PPUMJm0de@m&dQpd!V b7ae2L}gJNRk00$pDgM07){J_v%GtDI&M9w6eCbwX=6{baHla Ob#wRd^z!!c^-Dj)yA?M8 literal 0 HcmV?d00001 diff --git a/zarrs/tests/data/v2/array_none_F.zarr/.zarray b/zarrs/tests/data/v2/array_none_F.zarr/.zarray new file mode 100644 index 00000000..38db0b4c --- /dev/null +++ b/zarrs/tests/data/v2/array_none_F.zarr/.zarray @@ -0,0 +1,17 @@ +{ + "shape": [ + 10, + 10 + ], + "chunks": [ + 5, + 5 + ], + "fill_value": 0.0, + "order": "F", + "filters": null, + "dimension_separator": ".", + "compressor": null, + "zarr_format": 2, + "dtype": "2L}gJNRk00$pDgM07){J_v%GtDI&M9w6eCbwX=6{baHla Ob#wRd^z!!c^-Dj)yA?M8 literal 0 HcmV?d00001 diff --git a/zarrs/tests/data/v2/array_pcodec_C.zarr/.zarray b/zarrs/tests/data/v2/array_pcodec_C.zarr/.zarray index fbcd53ec..1d30d67d 100644 --- a/zarrs/tests/data/v2/array_pcodec_C.zarr/.zarray +++ b/zarrs/tests/data/v2/array_pcodec_C.zarr/.zarray @@ -1,22 +1,25 @@ { - "chunks": [ - 5, - 5 - ], - "compressor": { - "delta_encoding_order": null, - "equal_pages_up_to": 262144, - "id": "pcodec", - "level": 8, - "mode_spec": "auto" - }, - "dtype": "&$iyJaz`(#Ez|6ql01{$gXaEy(>3n-Q833851_}TG literal 58 zcmXR&&R1k|VPj&IU|>+5D9B*Jz`!tpfrEiTfteA=1OWvGhG?c{#y<=n`WcLk)dWMph$U|=}F!~`UPK*NB6;rX0GcaFqX0iaj|NEiUO{Rd$H literal 49 zcmXR&&R1k|VPj&IU|>)dV1R%I2MLbUL@D*Yl*~V1R%I2Z<9dq1Ucf%1g}4Sha4W&1F*t0MNh- ArvLx| literal 49 zcmXR&&R1k|VPj&IU|2L}gJNRk00$pDgM07){J_v%GtDI&M9w6eCbwX=6{baHla Ob#wRd^z!!c^-Dj)yA?M8 literal 0 HcmV?d00001 diff --git a/zarrs/tests/data/v3/array_none.zarr/zarr.json b/zarrs/tests/data/v3/array_none.zarr/zarr.json new file mode 100644 index 00000000..d21827c3 --- /dev/null +++ b/zarrs/tests/data/v3/array_none.zarr/zarr.json @@ -0,0 +1,36 @@ +{ + "zarr_format": 3, + "node_type": "array", + "shape": [ + 10, + 10 + ], + "data_type": "float32", + "chunk_grid": { + "name": "regular", + "configuration": { + "chunk_shape": [ + 5, + 5 + ] + } + }, + "chunk_key_encoding": { + "name": "v2", + "configuration": { + "separator": "." + } + }, + "fill_value": 0.0, + "codecs": [ + { + "name": "bytes", + "configuration": { + "endian": "little" + } + } + ], + "attributes": { + "key": "value" + } +} \ No newline at end of file diff --git a/zarrs/tests/data/v3/array_pcodec.zarr/.zarray b/zarrs/tests/data/v3/array_pcodec.zarr/.zarray index a814efda..c78548f8 100644 --- a/zarrs/tests/data/v3/array_pcodec.zarr/.zarray +++ b/zarrs/tests/data/v3/array_pcodec.zarr/.zarray @@ -12,10 +12,12 @@ "dtype": "