Skip to content

Commit

Permalink
feat: migrate to pyo3
Browse files Browse the repository at this point in the history
  • Loading branch information
anonrig committed May 15, 2024
1 parent 8e3c729 commit a93c0aa
Show file tree
Hide file tree
Showing 65 changed files with 1,763 additions and 3,514 deletions.
1 change: 0 additions & 1 deletion .codecov.yml
Original file line number Diff line number Diff line change
@@ -1,3 +1,2 @@
ignore:
- "relay-cabi/**/*.rs"
- "relay-general/derive/**/*.rs"
96 changes: 33 additions & 63 deletions .github/workflows/build_library.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,98 +10,68 @@ env:

jobs:
linux:
timeout-minutes: 30
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
build-arch:
- x86_64
- aarch64

name: Python Linux ${{ matrix.build-arch }}
runs-on: ubuntu-latest

target: [x86_64, aarch64]
steps:
- uses: actions/checkout@v4
with:
submodules: recursive
- run: rustup toolchain install stable --profile minimal --no-self-update
- uses: actions/setup-python@v5

- if: matrix.build-arch == 'aarch64'
uses: docker/setup-qemu-action@v3
- name: Build wheels
uses: PyO3/maturin-action@v1
with:
platforms: arm64
target: ${{ matrix.target }}
args: --release --out dist --find-interpreter
sccache: "true"
manylinux: auto

- name: Build in Docker
run: scripts/docker-manylinux.sh
env:
TARGET: ${{ matrix.build-arch }}

- uses: actions/upload-artifact@v3
- name: Upload wheels
uses: actions/upload-artifact@v3
with:
name: ${{ github.sha }}
path: py/dist/*
path: dist

macos:
runs-on: macos-latest
strategy:
fail-fast: false
matrix:
include:
- target: x86_64-apple-darwin
py-platform: macosx-10_15_x86_64
- target: aarch64-apple-darwin
py-platform: macosx-11_0_arm64

name: Python macOS ${{ matrix.py-platform }}
runs-on: macos-11

target: [x86_64, aarch64]
steps:
- uses: actions/checkout@v4
with:
submodules: recursive

- name: Install Rust Toolchain
run: |
rustup set profile minimal
rustup toolchain install stable
rustup override set stable
rustup target add --toolchain stable ${{ matrix.target }}
- run: rustup toolchain install stable --profile minimal --no-self-update
- uses: actions/setup-python@v5
with:
python-version: '3.10'

- name: Build Wheel
run: |
pip install wheel
python setup.py bdist_wheel -p ${{ matrix.py-platform }}
working-directory: py
env:
# consumed by cargo and setup.py to obtain the target dir
CARGO_BUILD_TARGET: ${{ matrix.target }}
- name: Build wheels
uses: PyO3/maturin-action@v1
with:
target: ${{ matrix.target }}
args: --release --out dist --find-interpreter
sccache: "true"

- uses: actions/upload-artifact@v3
- name: Upload wheels
uses: actions/upload-artifact@v3
with:
name: ${{ github.sha }}
path: py/dist/*
path: dist

sdist:
name: Python sdist
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v4
with:
submodules: recursive

- uses: actions/setup-python@v5
with:
python-version: '3.10'

- name: Build sdist
run: python setup.py sdist --format=zip
uses: PyO3/maturin-action@v1
working-directory: py
with:
command: sdist
args: --out dist

- uses: actions/upload-artifact@v3
- name: Upload sdist
uses: actions/upload-artifact@v3
working-directory: py
with:
name: ${{ github.sha }}
path: py/dist/*
path: dist
8 changes: 7 additions & 1 deletion .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -168,10 +168,16 @@ jobs:
key: ${{ github.job }}

- name: Build and Install Library
run: pip install -v --editable py
run: pip install -r py/requirements_build.txt
env:
RELAY_DEBUG: 1

- name: Build wheels
uses: PyO3/maturin-action@v1
with:
args: --release --find-interpreter
sccache: "true"

- name: Run Python Tests
run: pytest -v py

Expand Down
2 changes: 1 addition & 1 deletion .python-version
Original file line number Diff line number Diff line change
@@ -1 +1 @@
3.11.9
3.10
Loading

0 comments on commit a93c0aa

Please sign in to comment.