Skip to content

build: update pyproject.toml license metadata #694

build: update pyproject.toml license metadata

build: update pyproject.toml license metadata #694

Workflow file for this run

on:
push:
workflow_dispatch:
inputs:
save:
description: 'Save Wheels'
required: true
default: false
type: boolean
name: Multi-platform Compatibility Test (Tox)
jobs:
build:
runs-on: ${{ matrix.os }}
env:
PIP_EXTRA_INDEX_URL: ${{vars.PIP_EXTRA_INDEX_URL}}
UV_EXTRA_INDEX_URL: ${{vars.PIP_EXTRA_INDEX_URL}}
strategy:
matrix:
os: [ubuntu-latest, macos-latest, windows-2019]
python-version: ['3.9', '3.10', '3.11', '3.12', '3.13']
include:
- os: macos-latest
compiler_version: 14
compiler_libcxx: libc++
- os: ubuntu-latest
compiler_version: 11.4
compiler_libcxx: libstdc++11
- os: windows-2019
compiler_version: 16
fail-fast: false
name: Python ${{ matrix.python-version }} ${{ matrix.os }} build
steps:
- uses: actions/github-script@v6
id: conan-path-script
with:
result-encoding: string
script: |
if ('${{matrix.os}}' === 'windows-2019'){
return 'C:/Users/runneradmin'
}
if ('${{matrix.os}}' === 'ubuntu-latest'){
return '/home/runner'
}
if ('${{matrix.os}}' === 'macos-latest'){
return '/Users/runner'
}
return ''
- uses: actions/github-script@v6
id: tox-env
with:
script: |
const frontend = "${{matrix.frontend}}"
const toxEnv = "py${{matrix.python-version}}".replace('.','')
if(frontend === ""){
return toxEnv
}
return "py${{matrix.python-version}}".replace('.','') + "-${{matrix.frontend}}"
result-encoding: string
- uses: actions/checkout@v3
- uses: actions/setup-python@v4
with:
python-version: ${{ matrix.python-version }}
cache: 'pip' # caching pip dependencies
cache-dependency-path: |
requirements-dev.txt
requirements/requirements-*.txt
- name: Install dependencies
run: |
pip install -r requirements-dev.txt
- name: Ensure conan settings has current compiler as valid
if: "!contains(matrix.os, 'windows')"
env:
CONAN_USER_HOME: "${{steps.conan-path-script.outputs.result}}"
run: |
conan config init
python ci/docker/python/linux/shared/ensure_compiler_support_by_conan.py $(conan config home)/settings.yml $(cc -dumpfullversion -dumpversion | grep -oE "^([0-9]+(\.)?)([0-9]+?)")
conan profile update settings.compiler.version=${{matrix.compiler_version}} default
- name: Remove Strawberry Perl (Windows only)
if: contains(matrix.os, 'windows')
run: Remove-Item –path C:\\Strawberry –recurse –force
- name: Cache Conan
id: cache-conan
uses: actions/cache@v3
with:
path: "${{steps.conan-path-script.outputs.result}}/.conan"
key: ${{ runner.os }}-conan-${{ hashFiles('conanfile.py') }}
- name: Prebuild Conan packages (Windows)
if: |
contains(matrix.os, 'windows') && steps.cache-conan.outputs.cache-hit != 'true'
shell: cmd
env:
CONAN_USER_HOME: "${{steps.conan-path-script.outputs.result}}"
run: |
call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Auxiliary\Build\vcvars64.bat"
conan profile new default --detect
conan install . --build missing --no-import
- name: Prebuild Conan packages
env:
CONAN_USER_HOME: "${{steps.conan-path-script.outputs.result}}"
if: "!contains(matrix.os, 'windows') && steps.cache-conan.outputs.cache-hit != 'true'"
run: |
conan install . --build missing --no-import
- name: Run Tox (Windows)
if: contains(matrix.os, 'windows')
shell: cmd
run: |
call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Auxiliary\Build\vcvars64.bat"
tox run
env:
TOX_ENV: "${{ steps.tox-env.outputs.result }}"
CONAN_USER_HOME: "${{steps.conan-path-script.outputs.result}}"
- name: Run Tox
if: "!contains(matrix.os, 'windows')"
run: cc --version && cc -dumpfullversion -dumpversion && tox run -vvv
env:
TOX_ENV: "${{ steps.tox-env.outputs.result }}"
CONAN_USER_HOME: "${{steps.conan-path-script.outputs.result}}"
CONAN_COMPILER_VERSION: ${{ matrix.compiler_version }}
CONAN_COMPILER_LIBCXX: ${{ matrix.compiler_libcxx }}
# CIBW_SOME_OPTION: value
- uses: actions/upload-artifact@v4
if: ${{ inputs.save }}
with:
name: uiucprescon.ocr-wheels
path: ./wheelhouse/*.whl