Skip to content

Commit ccddf41

Browse files
committed
Merge branch 'main' into mkitti-zstd-stream-decompress
2 parents a903ee5 + 4fdb625 commit ccddf41

21 files changed

+680
-680
lines changed

.github/workflows/ci.yaml

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -13,8 +13,8 @@ jobs:
1313
fail-fast: false
1414
matrix:
1515
python-version: ["3.11", "3.12", "3.13"]
16-
# macos-13 is an intel runner, macos-14 is a arm64 runner
17-
platform: [ubuntu-latest, windows-latest, macos-13, macos-14]
16+
# macos-13 is an intel runner, macos-14 is an arm64 runner
17+
platform: [ubuntu-latest, ubuntu-22.04-arm, windows-latest, macos-13, macos-14]
1818

1919
defaults:
2020
run:
@@ -28,7 +28,7 @@ jobs:
2828
fetch-depth: 0 # required for version resolution
2929

3030
- name: Set up Conda
31-
uses: conda-incubator/[email protected].0
31+
uses: conda-incubator/[email protected].1
3232
with:
3333
channels: conda-forge
3434
miniforge-version: latest
@@ -56,8 +56,7 @@ jobs:
5656
# Since zarr v3 requires numpy >= 1.25, on Python 3.11 leave it out
5757
# so we can have some tests of our minimum version of numpy (1.24)
5858
if: matrix.python-version != '3.11'
59-
# TODO: remove --pre option when zarr v3 is out
60-
run: python -m pip install --pre zarr>=3.0.0b2
59+
run: python -m pip install zarr>=3
6160

6261
- name: List installed packages
6362
run: python -m pip list

.github/workflows/wheel.yaml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -13,8 +13,8 @@ jobs:
1313
strategy:
1414
fail-fast: false
1515
matrix:
16-
# macos-13 is an intel runner, macos-14 is a arm64 runner
17-
os: [ubuntu-latest, windows-latest, macos-13, macos-14]
16+
# macos-13 is an intel runner, macos-14 is an arm64 runner
17+
os: [ubuntu-latest, ubuntu-22.04-arm, windows-latest, macos-13, macos-14]
1818
env:
1919
CIBW_TEST_COMMAND: python -c "import numcodecs"
2020
CIBW_BUILD: "cp311-* cp312-* cp313-*"
@@ -26,7 +26,7 @@ jobs:
2626
with:
2727
submodules: true
2828

29-
- uses: pypa/cibuildwheel@v2.22.0
29+
- uses: pypa/cibuildwheel@v2.23.2
3030

3131
- uses: actions/upload-artifact@v4
3232
with:

.pre-commit-config.yaml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -14,20 +14,20 @@ repos:
1414
- id: debug-statements
1515

1616
- repo: https://github.com/astral-sh/ruff-pre-commit
17-
rev: v0.9.4
17+
rev: v0.11.12
1818
hooks:
1919
- id: ruff
2020
args: ["--fix", "--show-fixes"]
2121
- id: ruff-format
2222

2323
- repo: https://github.com/scientific-python/cookie
24-
rev: 2025.01.22
24+
rev: 2025.05.02
2525
hooks:
2626
- id: sp-repo-review
2727

2828
- repo: https://github.com/pre-commit/mirrors-mypy
29-
rev: v1.14.1
29+
rev: v1.16.0
3030
hooks:
3131
- id: mypy
3232
args: [--config-file, pyproject.toml]
33-
additional_dependencies: [numpy, pytest, crc32c, zfpy, 'zarr>=3.0.0rc1']
33+
additional_dependencies: [numpy, pytest, crc32c, zfpy, 'zarr>=3']

docs/contributing.rst

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -203,12 +203,11 @@ contributors.
203203
Merging pull requests
204204
~~~~~~~~~~~~~~~~~~~~~
205205

206-
Pull requests submitted by an external contributor should be reviewed and approved by at least
207-
one core developers before being merged. Ideally, pull requests submitted by a core developer
208-
should be reviewed and approved by at least one other core developers before being merged.
206+
Pull requests should be reviewed and approved by at least one core developer
207+
(other than the pull request author) before being merged.
209208

210-
Pull requests should not be merged until all CI checks have passed (Travis, AppVeyor,
211-
Codecov) against code that has had the latest main merged in.
209+
Pull requests should not be merged until all CI checks have passed against code
210+
that has had the latest main merged in.
212211

213212
Compatibility and versioning policies
214213
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -278,6 +277,10 @@ hard-and-fast rules, e.g., it is fine to make a minor release to make a single n
278277
feature available; equally, it is fine to make a minor release that includes a number of
279278
changes.
280279

280+
When making a minor release, open an issue stating your intention so other developers
281+
know that a release is planned. At least a week's notice should be given for other
282+
developers to be aware of and possibly add to the contents of the release.
283+
281284
Major releases obviously need to be given careful consideration, and should be done as
282285
infrequently as possible, as they will break existing code and/or affect data
283286
compatibility in some way.

docs/release.rst

Lines changed: 78 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,82 @@ Release notes
1717
Unreleased
1818
----------
1919

20+
Enhancements
21+
~~~~~~~~~~~~
22+
23+
Improvements
24+
~~~~~~~~~~~~
25+
26+
* In ``vlen``, define and use ``const`` ``HEADER_LENGTH``.
27+
By :user:`John Kirkham <jakirkham>`, :issue:`723`
28+
* All codecs are now pickleable.
29+
By :user:`Tom Nicholas <TomNicholas>`, :issue:`744`
30+
31+
Fixes
32+
~~~~~
33+
34+
* Fix ``const`` discard warnings in ``fletcher32``.
35+
By :user:`John Kirkham <jakirkham>`, :issue:`728`
36+
37+
* Update ``license*`` metadata and include third-party licenses.
38+
By :user:`John Kirkham <jakirkham>`, :issue:`729`
39+
40+
* Add ``#ifndef`` guard around ``PyBytes_RESIZE``.
41+
By :user:`John Kirkham <jakirkham>`, :issue:`732`
42+
43+
* Remove ``typesize`` from ``Blosc.get_config`` output
44+
By :user:`Ilan Gold <ilan-gold>`
45+
46+
Maintenance
47+
~~~~~~~~~~~
48+
49+
50+
0.16.0
51+
------
52+
53+
Enhancements
54+
~~~~~~~~~~~~
55+
56+
* Add ``typesize`` argument to ``Blosc`` to allow for buffers that are passed to ``encode``
57+
use that information. zarr v3 currently has its Blosc codec as bytes-to-bytes but does retain
58+
the size information so using it here allows for massive compression ratio gains.
59+
By :user:`Ilan Gold <ilan-gold>`
60+
* Add support for the Linux aarch64 architecture,
61+
By :user:`Agriya Khetarpal <agriyakhetarpal>`, :issue:`288`.
62+
* Preallocate output buffers and resize directly as needed.
63+
By :user:`John Kirkham <jakirkham>`, :issue:`656`
64+
* ``Checksum32`` is now an abstract base clase, with ``checksum()`` as an abstract method.
65+
This helps ensure that any subclasses implement the ``checksum()`` method.
66+
:issue:`711`
67+
68+
Removals
69+
~~~~~~~~
70+
71+
The following ``blosc`` funcitons are removed, with no replacement.
72+
This is because they were not intended to be public API.
73+
74+
- ``numcodecs.blosc.init``
75+
- ``numcodecs.blosc.destroy``
76+
- ``numcodecs.blosc.compname_to_compcode``
77+
- ``numcodecs.blosc.cbuffer_sizes``
78+
- ``numcodecs.blosc.cbuffer_metainfo``
79+
80+
In addition, ``numcodecs.blosc.decompress_partial`` is removed as
81+
has always been experimental and there is no equivalent in the official
82+
blsoc Python package.
83+
By :user:`David Stansby <dstansby>`, :issue:`712`
84+
85+
Maintenance
86+
~~~~~~~~~~~
87+
* Replace internal ``Buffer`` usage with ``memoryview``\ s.
88+
By :user:`John Kirkham <jakirkham>`, :issue:`656`
89+
* Bump the minimum macOS deployment target for x86_64 to 10.13.
90+
By :user:`Agriya Khetarpal <agriyakhetarpal>`, :issue:`288`.
91+
92+
93+
0.15.1
94+
------
95+
2096
Improvements
2197
~~~~~~~~~~~~
2298
* Add streaming decompression for ZSTD (:issue:`699`)
@@ -42,7 +118,7 @@ Breaking changes
42118

43119
Deprecations
44120
~~~~~~~~~~~~
45-
The following ``blosc`` funcitons are deprecated, with no replacement.
121+
The following ``blosc`` functions are deprecated, with no replacement.
46122
This is because they are not intended to be public API.
47123

48124
- ``numcodecs.blosc.init``
@@ -54,7 +130,7 @@ This is because they are not intended to be public API.
54130
In addition, ``numcodecs.blosc.decompress_partial`` is deprecated as
55131
has always been experimental and there is no equivalent in the official
56132
blsoc Python package.
57-
By :user:`David Stansby <dstansby>`, :issue`619`
133+
By :user:`David Stansby <dstansby>`, :issue:`619`
58134

59135
Fixes
60136
~~~~~

numcodecs/__init__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,7 @@
5151
ncores = 1
5252
blosc._init()
5353
blosc.set_nthreads(min(8, ncores))
54-
atexit.register(blosc.destroy)
54+
atexit.register(blosc._destroy)
5555

5656
from numcodecs import zstd as zstd
5757
from numcodecs.zstd import Zstd

0 commit comments

Comments
 (0)