• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

thanos / ExZarr
65%
main: 76%

Build:
Build:
LAST BUILD BRANCH: nx_integration
DEFAULT BRANCH: main
Repo Added 23 Jan 2026 01:09AM UTC
Token mnDAJKXYlqUdJFD6kwG0lS3CGdp3TUrtI regen
Build 70 Last
Files 46
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

LAST BUILD ON BRANCH Complete_Zarr_v3_Metadata_Handling
branch: Complete_Zarr_v3_Metadata_Handling
CHANGE BRANCH
x
Reset
Sync Branches
  • Complete_Zarr_v3_Metadata_Handling
  • Additional_Data_Types
  • Array_Operations
  • Chunking_and_Group
  • Concurrent_RW_Support
  • Documentation_and_Examples
  • Google_Cloud_Storage_backend
  • S3_storage_backend
  • doc_cleanup
  • docs_fix
  • github_setup
  • main
  • new_documentaion
  • new_notebooks
  • nx_integration
  • performance_and_benchmarks
  • release_v1.0.0
  • v0.3.0
  • v2_and_v3_formats_conversions
  • zarr3_extras
  • zarr_v3
  • zarr_v3_metadata_support

25 Jan 2026 08:09PM UTC coverage: 65.199% (+1.3%) from 63.945%
608a06b3cb08046d976cdd7d004548104599f7e0-PR-131

Pull #131

github

thanos
closed #129
New Functions Added to lib/ex_zarr/metadata_v3.ex

  1. to_json/1 - Converts MetadataV3 struct to JSON string
    - Leverages existing Jason.Encoder implementation
    - Returns {:ok, json_string} or {:error, reason}
    - Properly handles all v3 features
  2. from_json/1 - Parses JSON (string or map) to MetadataV3 struct
    - Handles both JSON strings and decoded maps
    - Converts lists to tuples for shape/chunk_shape
    - Parses string node_type ("array", "group") to atoms
    - Returns {:ok, metadata} or {:error, reason}
  3. Helper parsing functions (238 lines total):
    - parse_metadata_map/1 - Main parsing logic
    - parse_node_type/1 - Converts string to atom
    - parse_shape/1 - Converts lists to tuples
    - parse_chunk_grid/1 - Handles regular and irregular grids
    - parse_chunk_grid_config/2 - Grid-specific parsing
    - parse_codecs/1 - Parses codec pipeline
    - parse_codec/1 - Individual codec parsing
    - parse_codec_configuration/2 - Codec-specific config (especially sharding)

  Comprehensive Test Suite Added to test/ex_zarr/metadata_v3_test.exs

  Added 54 new tests (547 lines) covering:

  1. JSON Encoding (to_json/1) - 5 tests
    - Basic array metadata
    - Group metadata
    - Dimension names
    - Sharding codec with nested configurations
    - Storage transformers (transpose, quantize, bitround)
  2. JSON Decoding (from_json/1) - 10 tests
    - Parsing from JSON string
    - Parsing from map
    - Group metadata
    - Dimension names
    - Sharding codec with nested configurations
    - Storage transformers
    - Round-trip encoding/decoding
    - Error handling (invalid JSON, missing fields, invalid input types)
  3. Zarr-Python File Compatibility - 5 tests
    - Write/read zarr.json file
    - Sharded array metadata
    - Group metadata
    - Irregular chunk grid parsing
    - Full round-trip file I/O

   Features Fully Supported

  The implementation handles all Zarr v3 features:

  -  Regular chunk g... (continued)
Pull Request #131: closed #129

40 of 63 new or added lines in 1 file covered. (63.49%)

1806 of 2770 relevant lines covered (65.2%)

1118.24 hits per line

Relevant lines Covered
Build:
Build:
2770 RELEVANT LINES 1806 COVERED LINES
1118.24 HITS PER LINE
Source Files on Complete_Zarr_v3_Metadata_Handling
  • Tree
  • List 34
  • Changed 1
  • Source Changed 0
  • Coverage Changed 1
Coverage ∆ File Lines Relevant Covered Missed Hits/Line

Recent builds

Builds Branch Commit Type Ran Committer Via Coverage
608a06b3... Complete_Zarr_v3_Metadata_Handling closed #129 New Functions Added to lib/ex_zarr/metadata_v3.ex 1. to_json/1 - Converts MetadataV3 struct to JSON string - Leverages existing Jason.Encoder implementation - Returns {:ok, json_string} or {:error, reason} - Properly han... Pull #131 25 Jan 2026 08:14PM UTC thanos github
65.2
See All Builds (70)

Badge your Repo: ExZarr

We detected this repo isn’t badged! Grab the embed code to the right, add it to your repo to show off your code coverage, and when the badge is live hit the refresh button to remove this message.

Could not find badge in README.

Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

Refresh
  • Settings
  • Repo on GitHub
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc