Skip to content

Commit 2c4e69d

Browse files
authored
Merge pull request #633 from mraspaud/support-3.13
2 parents f16de0f + eb37fa0 commit 2c4e69d

File tree

10 files changed

+29
-78
lines changed

10 files changed

+29
-78
lines changed

.github/workflows/ci.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,10 +15,10 @@ jobs:
1515
fail-fast: true
1616
matrix:
1717
os: ["windows-latest", "ubuntu-latest", "macos-latest"]
18-
python-version: ["3.9", "3.11", "3.12"]
18+
python-version: ["3.11", "3.12", "3.13"]
1919
experimental: [false]
2020
include:
21-
- python-version: "3.12"
21+
- python-version: "3.13"
2222
os: "ubuntu-latest"
2323
experimental: true
2424

.github/workflows/deploy.yaml

Lines changed: 18 additions & 51 deletions
Original file line numberDiff line numberDiff line change
@@ -42,41 +42,36 @@ jobs:
4242
matrix:
4343
include:
4444
- os: windows-2019
45-
cibw_archs: "AMD64 ARM64"
46-
artifact_name: "win"
45+
cibw_archs: "AMD64"
46+
- os: windows-2019
47+
cibw_archs: "ARM64"
4748
- os: macos-13
48-
cibw_archs: "x86_64 arm64"
49-
artifact_name: "mac"
50-
- os: "ubuntu-20.04"
49+
cibw_archs: "x86_64"
50+
- os: macos-14
51+
cibw_archs: "arm64"
52+
- os: "ubuntu-24.04-arm"
5153
cibw_archs: "aarch64"
52-
artifact_name: "ubuntu-aarch"
53-
- os: "ubuntu-20.04"
54+
- os: "ubuntu-22.04"
5455
cibw_archs: "x86_64"
55-
artifact_name: "ubuntu-x86_64"
5656

5757
steps:
5858
- uses: actions/checkout@v4
5959
- run: |
6060
git fetch --prune --unshallow
6161
62-
- name: Set up QEMU
63-
if: runner.os == 'Linux'
64-
uses: docker/setup-qemu-action@v3
65-
with:
66-
platforms: all
67-
6862
- name: Build wheels
6963
uses: pypa/[email protected]
7064
env:
71-
CIBW_SKIP: "cp36-* cp37-* cp38-* cp313-* pp* *i686 *-musllinux*"
65+
CIBW_SKIP: "cp36-* cp37-* cp38-* cp39-* cp310-* pp* *i686 *-musllinux*"
7266
CIBW_ARCHS: "${{ matrix.cibw_archs }}"
7367
CIBW_TEST_COMMAND: "python -c \"import pyresample; assert 'unknown' not in pyresample.__version__, 'incorrect version found'\""
74-
CIBW_TEST_SKIP: "*_arm64 *_universal2:arm64"
68+
CIBW_TEST_SKIP: "*-win_arm64"
69+
CIBW_BUILD_VERBOSITY: 1
7570

7671
- name: Upload wheel(s) as build artifacts
7772
uses: actions/upload-artifact@v4
7873
with:
79-
name: wheels-${{ matrix.artifact_name }}
74+
name: "wheels-${{ matrix.os }}-${{ matrix.cibw_archs }}"
8075
path: ./wheelhouse/*.whl
8176

8277
upload_test_pypi:
@@ -90,25 +85,11 @@ jobs:
9085
with:
9186
name: sdist
9287
path: dist
93-
- name: Download wheels artifact - win
94-
uses: actions/download-artifact@v4
95-
with:
96-
name: wheels-win
97-
path: dist
98-
- name: Download wheels artifact - mac
99-
uses: actions/download-artifact@v4
100-
with:
101-
name: wheels-mac
102-
path: dist
103-
- name: Download wheels artifact - ubuntu aarch
104-
uses: actions/download-artifact@v4
105-
with:
106-
name: wheels-ubuntu-aarch
107-
path: dist
108-
- name: Download wheels artifact - ubuntu x86_64
88+
- name: Download wheels artifact
10989
uses: actions/download-artifact@v4
11090
with:
111-
name: wheels-ubuntu-x86_64
91+
pattern: wheels-*
92+
merge-multiple: true
11293
path: dist
11394
- name: Publish package to PyPI
11495
if: github.event.action != 'published'
@@ -127,25 +108,11 @@ jobs:
127108
with:
128109
name: sdist
129110
path: dist
130-
- name: Download wheels artifact - win
131-
uses: actions/download-artifact@v4
132-
with:
133-
name: wheels-win
134-
path: dist
135-
- name: Download wheels artifact - mac
136-
uses: actions/download-artifact@v4
137-
with:
138-
name: wheels-mac
139-
path: dist
140-
- name: Download wheels artifact - ubuntu aarch
141-
uses: actions/download-artifact@v4
142-
with:
143-
name: wheels-ubuntu-aarch
144-
path: dist
145-
- name: Download wheels artifact - ubuntu x86_64
111+
- name: Download wheels artifact
146112
uses: actions/download-artifact@v4
147113
with:
148-
name: wheels-ubuntu-x86_64
114+
pattern: wheels-*
115+
merge-multiple: true
149116
path: dist
150117
- name: Publish package to PyPI
151118
if: github.event.action == 'published'

.readthedocs.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
version: 2
22

33
build:
4-
os: "ubuntu-20.04"
4+
os: "ubuntu-lts-latest"
55
tools:
6-
python: "mambaforge-4.10"
6+
python: "mambaforge-latest"
77

88
# Build documentation in the docs/ directory with Sphinx
99
sphinx:

continuous_integration/environment.yaml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,5 @@ dependencies:
2525
- pytest
2626
- pytest-cov
2727
- pytest-lazy-fixtures
28-
- importlib-metadata
2928
- sphinx-reredirects
3029
- odc-geo

docs/environment.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ name: readthedocs
22
channels:
33
- conda-forge
44
dependencies:
5-
- python=3.10
5+
- python=3.12
66
- pip
77
- xarray
88
- zarr

pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ convention = "google"
2222
max-complexity = 10
2323

2424
[tool.mypy]
25-
python_version = "3.9"
25+
python_version = "3.11"
2626
# See https://github.com/python/mypy/issues/12286 for automatic multi-platform support
2727
platform = "linux"
2828
# platform = win32

pyresample/_compat.py

Lines changed: 1 addition & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -17,15 +17,4 @@
1717
# satpy. If not, see <http://www.gnu.org/licenses/>.
1818
"""Backports and compatibility fixes for pyresample."""
1919

20-
import sys
21-
22-
if sys.version_info < (3, 10):
23-
from importlib_metadata import entry_points # noqa
24-
else:
25-
from importlib.metadata import entry_points # noqa
26-
27-
try:
28-
from numpy.typing import ArrayLike # noqa
29-
except ImportError:
30-
# numpy <1.20
31-
from numpy import ndarray as ArrayLike # noqa
20+
from importlib.metadata import entry_points # noqa

pyresample/geometry.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2126,8 +2126,8 @@ def update_hash(self, existing_hash: Optional[_Hash] = None) -> _Hash:
21262126
if existing_hash is None:
21272127
existing_hash = hashlib.sha1() # nosec: B324
21282128
existing_hash.update(self.crs_wkt.encode('utf-8'))
2129-
existing_hash.update(np.array(self.shape))
2130-
existing_hash.update(np.array(self.area_extent))
2129+
existing_hash.update(np.array(self.shape)) # type: ignore[arg-type]
2130+
existing_hash.update(np.array(self.area_extent)) # type: ignore[arg-type]
21312131
return existing_hash
21322132

21332133
@daskify_2in_2out

pyresample/utils/__init__.py

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -16,12 +16,8 @@
1616
# You should have received a copy of the GNU Lesser General Public License along
1717
# with this program. If not, see <http://www.gnu.org/licenses/>.
1818
"""Miscellaneous utility functions for pyresample."""
19-
try:
20-
from collections.abc import Mapping
21-
except ImportError:
22-
from collections import Mapping
23-
2419
import warnings
20+
from collections.abc import Mapping
2521

2622
import numpy as np
2723

setup.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -102,7 +102,7 @@
102102
packages=find_packages(),
103103
package_data={'pyresample.test': ['test_files/*']},
104104
include_package_data=True,
105-
python_requires='>=3.9',
105+
python_requires='>=3.11',
106106
setup_requires=['setuptools>=3.2'],
107107
install_requires=requirements,
108108
extras_require=extras_require,

0 commit comments

Comments
 (0)