Skip to content
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

make shardingcodec pickleable #2011

Merged
merged 12 commits into from
Jul 5, 2024
Merged

make shardingcodec pickleable #2011

merged 12 commits into from
Jul 5, 2024

Conversation

d-v-b
Copy link
Contributor

@d-v-b d-v-b commented Jul 3, 2024

  • Adds dunder methods to ShardingCodec to enable pickling, and adds a simple test for this
  • refactors the codecs test suite. this is the start of a larger effort.
  • fixes a small bug in morton order calculation that broke sharding for 1D arrays, and adds a test for it
  • removes some tests from test_codecs that were not testing codecs, and were instead testing things that we are testing elsewhere. I suspect these tests were copied in from zarrita.

closes #1990

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/tutorial.rst
  • Changes documented in docs/release.rst
  • GitHub Actions have all passed
  • Test coverage is 100% (Codecov passes)

@d-v-b d-v-b requested a review from normanrz July 3, 2024 21:48
Copy link
Contributor

@normanrz normanrz left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks! I love the work on the tests.

tests/v3/test_codecs/test_endian.py Show resolved Hide resolved
@d-v-b d-v-b merged commit e84057a into zarr-developers:v3 Jul 5, 2024
24 checks passed
@d-v-b d-v-b deleted the pickle_tests branch July 5, 2024 08:38
dcherian added a commit to dcherian/zarr-python that referenced this pull request Jul 25, 2024
* v3: (22 commits)
  chore: update pre-commit hooks (zarr-developers#2051)
  Apply ruff/flake8-bandit rule B006 (zarr-developers#2049)
  Move fixtures to `tests` (zarr-developers#1813)
  Multiple imports for an import name (zarr-developers#2047)
  Redundant list comprehension (zarr-developers#2048)
  chore: update pre-commit hooks (zarr-developers#2039)
  Cast fill value to array's dtype (zarr-developers#2020)
  chore: update pre-commit hooks (zarr-developers#2017)
  make shardingcodec pickleable  (zarr-developers#2011)
  doc: copy 3.0.0.alpha changelog into release.rst (zarr-developers#2007)
  build(ci): enable python 3.12 in github actions (zarr-developers#2005)
  Bump NumPy to 2.0 (zarr-developers#1983)
  chore: update pre-commit hooks (zarr-developers#1989)
  Fix indexing with bools (zarr-developers#1968)
  Fix string interpolation (zarr-developers#1998)
  Unnecessary comprehension (zarr-developers#1997)
  Stop ignoring these ruff rules (zarr-developers#2001)
  Merge collapsible if statements (zarr-developers#1999)
  Unnecessary comprehension (zarr-developers#1996)
  Handle Path in `make_store_path` (zarr-developers#1992)
  ...
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

ShardingCodec cannot be pickled
2 participants