From a542835c7fad9e0bb5b26e4a4781b9cecb8901ef Mon Sep 17 00:00:00 2001 From: Josh Levy-Kramer Date: Thu, 3 Oct 2024 14:17:57 +0100 Subject: [PATCH] Drop py3.13 --- .github/workflows/build_wheels.yml | 39 +++++++++++++----------------- README_dev.md | 30 ++++++++++++++++++++--- 2 files changed, 43 insertions(+), 26 deletions(-) diff --git a/.github/workflows/build_wheels.yml b/.github/workflows/build_wheels.yml index 2accef2..a9e5506 100644 --- a/.github/workflows/build_wheels.yml +++ b/.github/workflows/build_wheels.yml @@ -19,28 +19,23 @@ jobs: runs-on: ${{ matrix.os }} strategy: matrix: - os: [ubuntu-20.04, macos-12, windows-2022] - python: [cp310, cp311, cp312, cp313] - arch: [x86_64, aarch64, AMD64, arm64] - # Included archs: - # Ubuntu: x86_64, aarch64 - # MacOS: x86_64, arm64 - # Windows: AMD64 - exclude: - - os: ubuntu-20.04 - arch: AMD64 - - os: ubuntu-20.04 - arch: arm64 - - os: macos-12 - arch: aarch64 - - os: macos-12 - arch: AMD64 - - os: windows-2022 - arch: x86_64 - - os: windows-2022 - arch: aarch64 - - os: windows-2022 - arch: arm64 + os: [ubuntu-latest, windows-latest, macos-13, macos-14] + python: [cp310, cp311, cp312] # As of 3/Oct/24 ortools was not compatible with cp313 + include: + # Linux builds (x86_64 and ARM) + - os: ubuntu-latest + arch: "x86_64" + - os: ubuntu-latest + arch: "aarch64" + # Windows builds (x86_64 only) + - os: windows-latest + arch: "AMD64" + # macOS Intel + - os: macos-13 + arch: "x86_64" + # macOS Apple Silicon + - os: macos-14 + arch: "arm64" fail-fast: false steps: diff --git a/README_dev.md b/README_dev.md index 8c9d7cf..61d6bce 100644 --- a/README_dev.md +++ b/README_dev.md @@ -1,6 +1,19 @@ # Build and test -To build cython exstentions in source: +Notes: +* Numpy build version is in `pyproject.toml` while the runtime version is in `requirements.txt` +* Check which Python versions a new version of Numpy is compatible with. Also check ortools as this is slower to update. +* Change the Python versions in the GitHub action and the badge in the README +* You might need to increase the ciwheelbuild version in the GitHub action to be able to use new Python versions +* Check ciwheelbuild example if you need to change runner image versions (e.g. MacOS, Windows or Ubuntu): + https://github.com/pypa/cibuildwheel/blob/main/examples/github-with-qemu.yml +* Add changes to the change log + +Steps: + +1. Build and test locally: + +To build Cython extensions in source: ```shell script make compile ``` @@ -10,6 +23,17 @@ To test: pytest ``` +2. Push changes to GitHub to build it for all platforms (if you get errors check notes above) + MacOS isn't tested so download a copy and test locally. + +3. Add changes to change log and bump version (major, minor or patch): + +```shell script +bump2version patch +``` + + + Push to GitHub to build for many version. The MacOS ARM build isn't automatically tested and so should be tested locally. # Push to PyPi @@ -18,9 +42,7 @@ Don't forget to increment version number Bump version (major, minor or patch): -```shell script -bump2version patch -``` + Download distributions (artifacts)