Composable, lazy coordinate transforms for Zarr array indexing.
Project description
zarr-indexing
Composable, lazy coordinate transforms for Zarr array indexing.
Documentation: https://zarr-indexing.readthedocs.io/
This package implements TensorStore-inspired index transforms. The core idea: every indexing operation (slicing, fancy indexing, etc.) produces a coordinate mapping from user space to storage space. These mappings compose lazily — no I/O until you explicitly read or write.
Key types:
IndexDomain— a rectangular region of integer coordinatesIndexTransform— maps input coordinates to storage coordinatesConstantMap,DimensionMap,ArrayMap— the three ways a single output dimension can depend on the inputcompose— chain two transforms into one
The package depends only on NumPy and the standard library; it does not import
zarr. It is developed in the zarr-python
repository and consumed by zarr to resolve array indexing operations.
Installation
pip install zarr-indexing
Developing
Package-scoped development commands live in the justfile
(requires just):
just test # run the test suite (extra args go to pytest)
just lint # ruff, same invocation as CI
just typecheck # pyright, same invocation as CI
just docs-check # strict build of the docs site
just check # all of the above
just docs-serve # serve the docs site locally
Run them from this directory, or from anywhere in the repository as
just packages/zarr-indexing/<recipe>.
The test recipe runs against the workspace-root environment, because the
chunk-resolution tests exercise this package against zarr's chunk grids and
zarr is deliberately not a dependency of this package.
License
MIT
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file zarr_indexing-0.1.0.tar.gz.
File metadata
- Download URL: zarr_indexing-0.1.0.tar.gz
- Upload date:
- Size: 124.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
672675a53a32d12e31007e6852f1d59a79b7d2993205af7568e8a0c50c2a2f3a
|
|
| MD5 |
6721fedf0ff45b92db6c4885b48448cc
|
|
| BLAKE2b-256 |
429bce8e30e46deb0ba9e6c481d7e9e39d3cf5e7bc84bfd82431dfaaa39f7d3d
|
Provenance
The following attestation bundles were made for zarr_indexing-0.1.0.tar.gz:
Publisher:
zarr-indexing-release.yml on zarr-developers/zarr-python
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
zarr_indexing-0.1.0.tar.gz -
Subject digest:
672675a53a32d12e31007e6852f1d59a79b7d2993205af7568e8a0c50c2a2f3a - Sigstore transparency entry: 2300055324
- Sigstore integration time:
-
Permalink:
zarr-developers/zarr-python@a994a4fc972fed428eab6a26d4f14bb95d22c144 -
Branch / Tag:
refs/tags/zarr_indexing-v0.1.0 - Owner: https://github.com/zarr-developers
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
zarr-indexing-release.yml@a994a4fc972fed428eab6a26d4f14bb95d22c144 -
Trigger Event:
push
-
Statement type:
File details
Details for the file zarr_indexing-0.1.0-py3-none-any.whl.
File metadata
- Download URL: zarr_indexing-0.1.0-py3-none-any.whl
- Upload date:
- Size: 39.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
cb21425a69bdf4ef33ec0cf9ab9ac4fcfe1e2a7a0a8a9c1752d39791ee1fdc9a
|
|
| MD5 |
53712818cd9d2a76990bea1858f2cba0
|
|
| BLAKE2b-256 |
86d81288d04953b75ad63bfd2c18ce894b17bc2143841af69ace0872e37b0e77
|
Provenance
The following attestation bundles were made for zarr_indexing-0.1.0-py3-none-any.whl:
Publisher:
zarr-indexing-release.yml on zarr-developers/zarr-python
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
zarr_indexing-0.1.0-py3-none-any.whl -
Subject digest:
cb21425a69bdf4ef33ec0cf9ab9ac4fcfe1e2a7a0a8a9c1752d39791ee1fdc9a - Sigstore transparency entry: 2300055416
- Sigstore integration time:
-
Permalink:
zarr-developers/zarr-python@a994a4fc972fed428eab6a26d4f14bb95d22c144 -
Branch / Tag:
refs/tags/zarr_indexing-v0.1.0 - Owner: https://github.com/zarr-developers
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
zarr-indexing-release.yml@a994a4fc972fed428eab6a26d4f14bb95d22c144 -
Trigger Event:
push
-
Statement type: