Skip to content

Detect the correct ABI tag for the debug free-threaded build of Python #481

Detect the correct ABI tag for the debug free-threaded build of Python

Detect the correct ABI tag for the debug free-threaded build of Python #481

Workflow file for this run

name: CI
on:
push:
paths-ignore:
- '**.md'
- 'delayload/**'
- 'scripts/**'
pull_request:
workflow_dispatch:
env:
PIP_CACHE_DIR: ${{ github.workspace }}\pipcache
jobs:
build_windows:
runs-on: windows-2022
steps:
- name: check out repository
uses: actions/checkout@v4
with:
fetch-depth: 2
- name: download pip cache
uses: actions/cache@v4
with:
key: pipcache-run-${{ github.run_number}}
restore-keys: pipcache-run-
path: ${{ env.PIP_CACHE_DIR }}
- name: set up Python 3.12
uses: actions/setup-python@v5
with:
python-version: '3.12'
- name: build and install
working-directory: ${{ github.workspace }}
run: |
pip install build
python -m build
pip install $(Get-ChildItem dist\delvewheel-*.whl)
if ((git diff-tree --no-commit-id --name-only -r ${{ github.sha }} | Out-String).Contains("delvewheel/_version.py`r`n")) {
echo VERSION_CHANGED=1 | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append
}
- name: upload build artifacts
uses: actions/upload-artifact@v4
with:
name: delvewheel
path: ${{ github.workspace }}\dist\*
compression-level: 0
- name: run tests with Python 3.12
working-directory: ${{ github.workspace }}\tests
run: |
pip install setuptools
python run_tests.py -v
- name: set up Python 3.8
uses: actions/setup-python@v5
with:
python-version: '3.8'
- name: run tests with Python 3.8
working-directory: ${{ github.workspace }}\tests
run: |
pip install wheel
pip install $(Get-ChildItem ..\dist\delvewheel-*.whl)
python run_tests.py -v Python38TestCase
- name: set up PyPy3.10
uses: actions/setup-python@v5
with:
python-version: 'pypy3.10'
- name: run tests with PyPy3.10
working-directory: ${{ github.workspace }}\tests
run: |
pip install wheel
pip install $(Get-ChildItem ..\dist\delvewheel-*.whl)
python run_tests.py -v PyPyTestCase
- name: set up Ubuntu 24.04
uses: Vampire/setup-wsl@v3
with:
distribution: Ubuntu-24.04
additional-packages: python-is-python3 python3-pip python3-wheel python3-venv
- name: run tests on Ubuntu 24.04
working-directory: ${{ github.workspace }}\tests
shell: wsl-bash {0}
run: |
export PIP_CACHE_DIR=$(wslpath '${{ env.PIP_CACHE_DIR }}')
python -m venv venv
source venv/bin/activate
pip install ../dist/delvewheel-*.whl
python run_tests.py -v LinuxTestCase
- name: deploy
if: env.VERSION_CHANGED == '1' && github.event_name == 'push' && github.ref == 'refs/heads/master' && github.repository_owner == 'adang1345'
working-directory: ${{ github.workspace }}
run: |
pip install twine
twine upload --skip-existing -u __token__ -p ${{ secrets.PYPI_TOKEN }} dist\*