@@ -13,94 +13,60 @@ 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]
18+
19+ defaults :
20+ run :
21+ shell : bash -el {0}
1822
1923 steps :
2024 - name : Checkout source
2125 uses : actions/checkout@v4
2226 with :
2327 submodules : recursive
28+ fetch-depth : 0 # required for version resolution
2429
2530 - name : Set up Conda
26- uses :
conda-incubator/[email protected] .0 31+ uses :
conda-incubator/[email protected] .1 2732 with :
28- channels : conda-forge
29- miniforge-version : latest
30- python-version : ${{ matrix.python-version }}
33+ channels : conda-forge
34+ miniforge-version : latest
35+ python-version : ${{ matrix.python-version }}
3136
32- - name : Show info about `base` environment
33- shell : " bash -l {0}"
34- run : |
35- conda info
36- conda config --show-sources
37- conda list --show-channel-urls
38-
39- - name : Set up `env`
40- shell : " bash -l {0}"
41- run : >
42- conda create -n env
43- c-compiler cxx-compiler
44- python=${{matrix.python-version}} wheel pip
37+ - name : Install compilers
38+ run : conda install -y c-compiler cxx-compiler
4539
4640 - name : Install clang
47- shell : " bash -l {0}"
4841 if : matrix.platform == 'macos-13'
49- run : |
50- conda activate env
51- conda install -y 'clang>=12.0.1,<17'
42+ run : conda install -y 'clang>=12.0.1,<17'
5243
53- - name : Show info about `env` environment
54- shell : " bash -l {0}"
44+ - name : Show conda environment info
5545 run : |
56- conda list --show-channel-urls -n env
46+ conda info
47+ conda config --show-sources
48+ conda list --show-channel-urls
5749
5850 - name : Install numcodecs
59- shell : " bash -l {0}"
6051 run : |
61- conda activate env
6252 export DISABLE_NUMCODECS_AVX2=""
63- # TODO: put back zfpy import when it supports numpy 2.0
64- python -m pip install -v -e .[test,test_extras,msgpack,crc32c]
65-
66- - name : Install pcodec
67- if : matrix.python-version != '3.13'
68- shell : " bash -l {0}"
69- run : |
70- conda activate env
71- python -m pip install -v ".[pcodec]"
53+ python -m pip install -v -e .[test,test_extras,msgpack,crc32c,pcodec,zfpy]
7254
7355 - name : Install zarr-python
74- shell : " bash -l {0}"
7556 # Since zarr v3 requires numpy >= 1.25, on Python 3.11 leave it out
7657 # so we can have some tests of our minimum version of numpy (1.24)
7758 if : matrix.python-version != '3.11'
78- run : |
79- conda activate env
80- # TODO: remove --pre option when zarr v3 is out
81- python -m pip install --pre zarr>=3.0.0b2
82-
83- # This is used to test with zfpy, which does not yet support numpy 2.0
84- - name : Install older numpy and zfpy
85- if : matrix.python-version == '3.11'
86- shell : " bash -l {0}"
87- run : |
88- conda activate env
89- python -m pip install -v ".[zfpy]"
59+ run : python -m pip install zarr>=3
9060
9161 - name : List installed packages
92- shell : " bash -l {0}"
93- run : |
94- conda activate env
95- python -m pip list
62+ run : python -m pip list
9663
9764 - name : Run tests
9865 shell : " bash -l {0}"
99- run : |
100- conda activate env
101- pytest -v
66+ run : pytest -v
10267
10368 - uses : codecov/codecov-action@v5
10469 with :
70+ fail_ci_if_error : true
10571 token : ${{ secrets.CODECOV_TOKEN }}
10672 verbose : true
0 commit comments