Skip to content

Commit

Permalink
Prep for release v0.0.5 (#38)
Browse files Browse the repository at this point in the history
* Install auditwheel for build job.

* Add dry-run release job.

* Remove dry-run release job.
  • Loading branch information
aliddell authored Jan 9, 2025
1 parent 690d59f commit dd44786
Show file tree
Hide file tree
Showing 2 changed files with 7 additions and 67 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -152,7 +152,7 @@ jobs:
shell: bash

- name: Install dependencies
run: python -m pip install -U pip "pybind11[global]" cmake build
run: python -m pip install -U pip "pybind11[global]" cmake build auditwheel

- name: Build
run: python -m build
Expand Down
72 changes: 6 additions & 66 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -120,82 +120,23 @@ jobs:
name: macos-latest binaries
path: ${{github.workspace}}/*.zip

build-and-test-wheels:
name: Build and test wheels for Python 3.11, 3.12, and 3.13
build-wheel:
name: Build wheels for Python
strategy:
matrix:
platform:
- "windows-latest"
- "ubuntu-22.04"
- "macos-latest" # TODO (aliddell): universal binary?
python:
- "3.9"
- "3.10"
- "3.11"
- "3.12"
- "3.13"

runs-on: ${{ matrix.platform }}

permissions:
actions: write

concurrency:
group: ${{ github.workflow }}-${{ github.ref }}-${{ matrix.platform }}-test-python
cancel-in-progress: ${{ github.ref != 'refs/heads/main' }}

steps:
- uses: actions/checkout@v3
with:
submodules: true

- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: "3.12"

- name: Install system dependencies
run: |
sudo apt-get install patchelf
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-11 90
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-11 90
- name: Install Python dependencies
run: python -m pip install -U pip "pybind11[global]" cmake build numpy pytest auditwheel

- name: Install
run: python -m pip install ".[testing]"

- name: Test
run: python -m pytest -v

- name: Build
run: python -m build -o dist

- name: Fix wheel for manylinux
if: ${{ matrix.platform == 'ubuntu-22.04' }}
run: |
auditwheel repair dist/*.whl -w dist --plat manylinux_2_35_x86_64
rm dist/*-linux_*.whl
- name: Upload wheel
uses: actions/upload-artifact@v4
with:
name: ${{ matrix.platform }} ${{ matrix.python }} wheel
path: ${{ github.workspace }}/dist

build-wheel-no-tests:
name: Build wheels for Python 3.9 and 3.10
strategy:
matrix:
platform:
- "windows-latest"
- "ubuntu-22.04"
- "macos-latest" # TODO (aliddell): universal binary?
python:
- "3.9"
- "3.10"

runs-on: ${{ matrix.platform }}

permissions:
actions: write

Expand Down Expand Up @@ -251,8 +192,7 @@ jobs:
needs:
- windows-and-linux-build
- mac-build
- build-and-test-wheels
- build-wheel-no-tests
- build-wheel
name: "Release"
runs-on: "ubuntu-latest"

Expand All @@ -274,7 +214,7 @@ jobs:
run: |
mkdir -p dist
mv ${{steps.download.outputs.download-path}}/*/*.whl dist
find ${{steps.download.outputs.download-path}}/ -type f -name *.tar.gz -exec mv {} dist \; -quit
find ${{steps.download.outputs.download-path}}/ -type f -name *.tar.gz -exec mv {} dist \; -quit
- name: Tagged release
if: ${{ github.ref_name != 'nightly' }}
Expand Down

0 comments on commit dd44786

Please sign in to comment.