Skip to content

Commit 4e3c467

Browse files
authored
Merge branch 'main' into PTC-W0039
2 parents de8154e + 65e16c3 commit 4e3c467

20 files changed

+556
-554
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.8
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.15.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: 73 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,77 @@ 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+
29+
Fixes
30+
~~~~~
31+
32+
* Fix ``const`` discard warnings in ``fletcher32``.
33+
By :user:`John Kirkham <jakirkham>`, :issue:`728`
34+
35+
* Update ``license*`` metadata and include third-party licenses.
36+
By :user:`John Kirkham <jakirkham>`, :issue:`729`
37+
38+
* Add ``#ifndef`` guard around ``PyBytes_RESIZE``.
39+
By :user:`John Kirkham <jakirkham>`, :issue:`732`
40+
41+
Maintenance
42+
~~~~~~~~~~~
43+
44+
45+
0.16.0
46+
------
47+
48+
Enhancements
49+
~~~~~~~~~~~~
50+
51+
* Add ``typesize`` argument to ``Blosc`` to allow for buffers that are passed to ``encode``
52+
use that information. zarr v3 currently has its Blosc codec as bytes-to-bytes but does retain
53+
the size information so using it here allows for massive compression ratio gains.
54+
By :user:`Ilan Gold <ilan-gold>`
55+
* Add support for the Linux aarch64 architecture,
56+
By :user:`Agriya Khetarpal <agriyakhetarpal>`, :issue:`288`.
57+
* Preallocate output buffers and resize directly as needed.
58+
By :user:`John Kirkham <jakirkham>`, :issue:`656`
59+
* ``Checksum32`` is now an abstract base clase, with ``checksum()`` as an abstract method.
60+
This helps ensure that any subclasses implement the ``checksum()`` method.
61+
:issue:`711`
62+
63+
Removals
64+
~~~~~~~~
65+
66+
The following ``blosc`` funcitons are removed, with no replacement.
67+
This is because they were not intended to be public API.
68+
69+
- ``numcodecs.blosc.init``
70+
- ``numcodecs.blosc.destroy``
71+
- ``numcodecs.blosc.compname_to_compcode``
72+
- ``numcodecs.blosc.cbuffer_sizes``
73+
- ``numcodecs.blosc.cbuffer_metainfo``
74+
75+
In addition, ``numcodecs.blosc.decompress_partial`` is removed as
76+
has always been experimental and there is no equivalent in the official
77+
blsoc Python package.
78+
By :user:`David Stansby <dstansby>`, :issue:`712`
79+
80+
Maintenance
81+
~~~~~~~~~~~
82+
* Replace internal ``Buffer`` usage with ``memoryview``\ s.
83+
By :user:`John Kirkham <jakirkham>`, :issue:`656`
84+
* Bump the minimum macOS deployment target for x86_64 to 10.13.
85+
By :user:`Agriya Khetarpal <agriyakhetarpal>`, :issue:`288`.
86+
87+
88+
0.15.1
89+
------
90+
2091
Improvements
2192
~~~~~~~~~~~~
2293
* Raise a custom `UnknownCodecError` when trying to retrieve an unavailable codec.
@@ -40,7 +111,7 @@ Breaking changes
40111

41112
Deprecations
42113
~~~~~~~~~~~~
43-
The following ``blosc`` funcitons are deprecated, with no replacement.
114+
The following ``blosc`` functions are deprecated, with no replacement.
44115
This is because they are not intended to be public API.
45116

46117
- ``numcodecs.blosc.init``
@@ -52,7 +123,7 @@ This is because they are not intended to be public API.
52123
In addition, ``numcodecs.blosc.decompress_partial`` is deprecated as
53124
has always been experimental and there is no equivalent in the official
54125
blsoc Python package.
55-
By :user:`David Stansby <dstansby>`, :issue`619`
126+
By :user:`David Stansby <dstansby>`, :issue:`619`
56127

57128
Fixes
58129
~~~~~

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)