Skip to content

Conversation

@ilan-gold
Copy link
Contributor

@ilan-gold ilan-gold commented Oct 27, 2025

Given that a lot of people are using the private Array._async_array, I think it should be documented and put in a public namespace. This PR specifically does not make zarr.core.sync.sync public because I'm not 100% sure it's necessary in the day-and-age of obstore but also because I can definitely see arguments why a better API might be useful, certain one that does:

some_batching_api(my_sync_array.async_array.getitem(...), my_other_sync_array.async_array.getitem(...))

instead of

zarr.core.sync(asyncio.gather(my_sync_array.async_array.getitem(...), my_other_sync_array.async_array.getitem(...)))

Another reason I think making this public is because you may want to batch together these low level requests just because of the way people's APIs are structured rather than forcing everything to go through something like

some_batching_api(sync_arrays, selections)

Definitely open to opinions on this! Marked as draft for now!

TODO:

  • Add unit tests and/or doctests in docstrings
  • Add docstrings and API docs for any new/modified user-facing classes and functions
  • New/modified features documented in docs/user-guide/*.md
  • Changes documented as a new file in changes/
  • GitHub Actions have all passed
  • Test coverage is 100% (Codecov passes)

@github-actions github-actions bot added the needs release notes Automatically applied to PRs which haven't added release notes label Oct 27, 2025
@codecov
Copy link

codecov bot commented Oct 27, 2025

Codecov Report

❌ Patch coverage is 91.11111% with 4 lines in your changes missing coverage. Please review.
✅ Project coverage is 61.76%. Comparing base (b3e9aed) to head (0600057).

Files with missing lines Patch % Lines
src/zarr/core/array.py 91.11% 4 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main    #3556      +/-   ##
==========================================
- Coverage   61.77%   61.76%   -0.01%     
==========================================
  Files          85       85              
  Lines       10165    10168       +3     
==========================================
+ Hits         6279     6280       +1     
- Misses       3886     3888       +2     
Files with missing lines Coverage Δ
src/zarr/core/array.py 68.51% <91.11%> (-0.12%) ⬇️
🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

needs release notes Automatically applied to PRs which haven't added release notes

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant