Skip to content

Commit 33c288b

Browse files
authored
MNT: pin xtensor, fix RTD, update pixi conf (#176)
* pin xtensor in ci dev conda environments * doc: try fix RTD builds * ci: remove ubuntu 20.04 from py test matrix * pixi: add cxx-compiler and update lockfile * ci: try fix mypy I don't have any error locally. * ci python wheels: bump upload-artifact action v4 * update cibuildwheels config Can now build natively on MacOS arm64. * ci workflow typo * try fix ci wheels on macos * add github integration (dependabot, release, codecov) * ci tests: bump pixi action version * ci build wheels: re-deactivate numba tests for py313 * ci: fix pixi (update pixi lock file)
1 parent 101bb56 commit 33c288b

File tree

13 files changed

+4323
-2892
lines changed

13 files changed

+4323
-2892
lines changed

.github/codecov.yml

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
codecov:
2+
notify:
3+
after_n_builds: 3
4+
coverage:
5+
status:
6+
project:
7+
default:
8+
target: auto
9+
threshold: 5%
10+
patch:
11+
default:
12+
informational: true

.github/dependabot.yml

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
version: 2
2+
updates:
3+
- package-ecosystem: "github-actions"
4+
directory: "/"
5+
schedule:
6+
interval: "monthly"
7+
groups:
8+
dependencies:
9+
patterns:
10+
- "*"

.github/release.yml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
changelog:
2+
exclude:
3+
authors:
4+
- dependabot
5+
- pre-commit-ci

.github/workflows/python-wheels.yml

Lines changed: 30 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -21,35 +21,52 @@ jobs:
2121
- name: Upload SDist
2222
uses: actions/upload-artifact@v4
2323
with:
24-
path: dist/*.tar.gz
24+
name: release-sdist
25+
path: ./dist/*.tar.gz
26+
retention-days: 30
2527

2628
build_wheels:
2729
name: Build wheel (${{ matrix.os }})
2830
runs-on: ${{ matrix.os }}
2931
strategy:
3032
fail-fast: false
3133
matrix:
32-
os: [ubuntu-latest, windows-latest, macos-latest]
34+
include:
35+
- os: ubuntu-latest
36+
arch: x86_64
37+
- os: windows-2019
38+
arch: AMD64
39+
msvc_arch: x64
40+
- os: macos-13
41+
arch: x86_64
42+
cmake_osx_architectures: x86_64
43+
macosx_deployment_target: 10.13
44+
- os: macos-14
45+
arch: arm64
46+
cmake_osx_architectures: arm64
47+
macosx_deployment_target: 14.0
3348
steps:
3449
- name: Checkout repo
3550
uses: actions/checkout@v4
3651

3752
- name: Build wheels
38-
uses: pypa/cibuildwheel@v2.21
53+
uses: pypa/cibuildwheel@v2.22
3954
env:
4055
# skip PyPy and muslinux (for now)
4156
CIBW_SKIP: "pp* *musllinux*"
42-
# skip 32-bits platforms on linux and windows
43-
CIBW_ARCHS_LINUX: "auto64"
44-
CIBW_ARCHS_WINDOWS: "auto64"
45-
# macos: opt-in cross-compile on arm64
46-
CIBW_ARCHS_MACOS: "x86_64 arm64"
47-
CIBW_TEST_SKIP: "*_arm64 *_universal2:arm64"
57+
CIBW_ARCHS: ${{ matrix.arch }}
58+
# need also to redefine here some environment vars defined in pyprojet.toml
59+
CIBW_ENVIRONMENT_MACOS:
60+
MACOSX_DEPLOYMENT_TARGET=${{ matrix.macosx_deployment_target }}
61+
CMAKE_OSX_ARCHITECTURES='${{ matrix.cmake_osx_architectures }}'
62+
SKBUILD_CMAKE_ARGS='-DFS_DOWNLOAD_XTENSOR_PYTHON=ON'
4863

4964
- name: Upload wheels
50-
uses: actions/upload-artifact@v3
65+
uses: actions/upload-artifact@v4
5166
with:
52-
path: wheelhouse/*.whl
67+
name: release-${{ matrix.os }}-${{ matrix.arch }}
68+
path: ./wheelhouse/*.whl
69+
retention-days: 5
5370

5471
upload_all:
5572
needs: [build_wheels, make_sdist]
@@ -62,7 +79,8 @@ jobs:
6279
- name: Get dist files
6380
uses: actions/download-artifact@v4
6481
with:
65-
name: artifact
82+
pattern: release-*
83+
merge-multiple: true
6684
path: dist
6785

6886
- name: Publish on PyPI

.github/workflows/tests.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,7 @@ jobs:
6363
strategy:
6464
fail-fast: false
6565
matrix:
66-
os: ["ubuntu-20.04", "ubuntu-latest", "macos-latest", "windows-latest"]
66+
os: ["ubuntu-latest", "macos-latest", "windows-latest"]
6767
python-version: ["3.10", "3.11", "3.12"]
6868
steps:
6969
- name: Checkout repo
@@ -114,7 +114,7 @@ jobs:
114114
- name: Checkout repo
115115
uses: actions/checkout@v4
116116

117-
- uses: prefix-dev/[email protected].1
117+
- uses: prefix-dev/[email protected].10
118118
with:
119119
pixi-version: v0.40.1
120120
cache: true

.readthedocs.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,5 +13,6 @@ conda:
1313

1414
sphinx:
1515
fail_on_warning: true
16+
configuration: doc/source/conf.py
1617

1718
formats: []

doc/environment.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ dependencies:
55
- python=3.11
66
- breathe
77
- cmake
8-
- xtensor-python
8+
- xtensor-python>=0.27,<0.28
99
- pybind11
1010
- scikit-build-core
1111
- numpy

environment-dev.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ name: fastscapelib-dev
22
channels:
33
- conda-forge
44
dependencies:
5-
- xtensor
5+
- xtensor>=0.25,<0.26
66
- cmake
77
- gtest
88
- benchmark

environment-python-dev.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ dependencies:
55
- python>=3.10
66
- numpy
77
- numba
8-
- xtensor-python
8+
- xtensor-python>=0.27,<0.28
99
- pybind11
1010
- cmake
1111
- scikit-build-core

pixi.lock

Lines changed: 4252 additions & 2871 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)