-
-
Notifications
You must be signed in to change notification settings - Fork 328
Rethinking Zarr's core dependencies #2391
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
👍 this seems good to me. |
I think sharding is a big enough part of what zarr v3 promises, that it's worth having crc32c as part of the default dependencies. Looking at their files on PyPI the package is very light (~40kB), and it doesn't have any other requirements. fsspec is also small (200kB), so I wonder if it's worth keeping default too so users don't have to jump through extra hoops to open remote arrays? Given a large use case of zarr is a format for large data > a lot of the time users will be accessing it remotely. What are the reasons for removing these? Definitely open to considering it, but given they're lightweight deps at the moment I'm thinking we should keep them as default. |
Is there a reason why we shouldn't put sharding in numcodecs? then the crc32c dependency would live there. |
👍 for that |
Here's my thought on @d-v-b and/or @dstansby - can one of you open an issue on |
That makes sense to me on I opened an issue for |
I also think that we should only drop |
This also would fix #1370 👍 |
I'd like to open the conversation about what Zarr's core dependencies are for 3.0. Currently, this looks like:
zarr-python/pyproject.toml
Lines 25 to 34 in 1131253
Some of these are not used anymore (
asciitree
andfasteners
) so those can safely go.Then there is
fsspec
andcrc32c
. These are only needed for theRemoteStore
andShardingCodec
, respectively. What do we think about making these optional?One proposed diff in our dependencies would look something like:
Notes:
The text was updated successfully, but these errors were encountered: