Automated submodule update: vrs #1168
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Build and Test | |
| on: | |
| push: | |
| branches: [main] | |
| pull_request: | |
| branches: [main] | |
| jobs: | |
| build: | |
| name: Build pyvrs on ${{ matrix.os }} | |
| runs-on: ${{ matrix.os }} | |
| strategy: | |
| matrix: | |
| os: [ubuntu-latest, macOS-latest] | |
| fail-fast: false | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| with: | |
| submodules: recursive | |
| - name: Set up Python | |
| uses: actions/setup-python@v5 | |
| with: | |
| python-version: "3.9" | |
| - name: Install dependencies | |
| run: | | |
| if [ "$RUNNER_OS" == "Linux" ]; then | |
| sudo apt-get update -y | |
| sudo apt-get install -o Acquire::Retries=5 \ | |
| cmake git ninja-build libgtest-dev libfmt-dev \ | |
| libjpeg-dev libturbojpeg-dev libpng-dev \ | |
| liblz4-dev libzstd-dev libxxhash-dev \ | |
| libboost-system-dev libboost-filesystem-dev libboost-thread-dev libboost-chrono-dev libboost-date-time-dev \ | |
| portaudio19-dev libopus-dev | |
| python -m pip install -U pip | |
| python -m pip install pybind11[global] | |
| elif [ "$RUNNER_OS" == "macOS" ]; then | |
| brew install cmake git ninja googletest glog fmt \ | |
| jpeg-turbo libpng \ | |
| lz4 zstd xxhash \ | |
| boost \ | |
| portaudio opus pybind11 | |
| else | |
| echo "$RUNNER_OS not supported" | |
| exit 1 | |
| fi | |
| python -m pip install -U pip | |
| python -m pip install numpy typing dataclasses pytest parameterized Pillow | |
| python -m pip install cibuildwheel==2.17.0 | |
| - name: Build wheels for CPython | |
| run: | | |
| python -m cibuildwheel --output-dir dist | |
| env: | |
| CIBW_ARCHS_LINUX: x86_64 | |
| CIBW_ARCHS_MACOS: "x86_64 arm64" | |
| CIBW_BUILD: "cp39-*64 cp310-*64 cp311-*64 cp312-*64" | |
| CIBW_BEFORE_BUILD_LINUX: bash scripts/install-manylinux-deps.sh | |
| CIBW_BEFORE_BUILD_MACOS: bash scripts/install-macos-deps.sh | |
| CIBW_SKIP: "*-manylinux_i686 *musllinux*" | |
| - name: Build and Test Python | |
| shell: bash | |
| run: | | |
| pip install -e . | |
| python -m pytest test |