zarr-developers / zarr-python

An implementation of chunked, compressed, N-dimensional arrays for Python.
https://zarr.readthedocs.io
MIT License
1.45k stars 273 forks source link

[v3] reorganize package - move most modules to zarr.core #2072

Closed jhamman closed 4 weeks ago

jhamman commented 1 month ago

This PR creates a core subpackage in the zarr package and begins to move some modules there. As I explained in https://github.com/zarr-developers/zarr-python/issues/2037#issuecomment-2229473273, this is designed to clarify which parts of the zarr project are public API and which are internal (everything in core).

In my in my initial commit, I only moved array.py, config.py, group.py, indexing.py, and sync.py. More to be done but I wanted to put this up for an initial reactions before going through the complete set of modules.

closes #2037

jhamman commented 1 month ago

@zarr-developers/python-core-devs - this is ready for a real review now. Thanks @dstansby and @normanrz for an initial look. With these changes, the package organization now looks like this:

.
├── __init__.py
├── abc
│   ├── __init__.py
│   ├── codec.py
│   ├── metadata.py
│   └── store.py
├── api
│   ├── __init__.py
│   ├── asynchronous.py
│   └── synchronous.py
├── codecs
│   ├── __init__.py
│   ├── _v2.py
│   ├── blosc.py
│   ├── bytes.py
│   ├── crc32c_.py
│   ├── gzip.py
│   ├── pipeline.py
│   ├── registry.py
│   ├── sharding.py
│   ├── transpose.py
│   └── zstd.py
├── convenience.py
├── core
│   ├── __init__.py
│   ├── array.py
│   ├── array_spec.py
│   ├── attributes.py
│   ├── buffer.py
│   ├── chunk_grids.py
│   ├── chunk_key_encodings.py
│   ├── common.py
│   ├── config.py
│   ├── group.py
│   ├── indexing.py
│   ├── metadata.py
│   └── sync.py
├── creation.py
├── errors.py
├── py.typed
├── registry.py
├── store
│   ├── __init__.py
│   ├── _utils.py
│   ├── common.py
│   ├── local.py
│   ├── memory.py
│   └── remote.py
├── strategies.py
├── testing
│   ├── __init__.py
│   ├── buffer.py
│   ├── store.py
│   └── utils.py
d-v-b commented 4 weeks ago

merging! thanks @jhamman