added scip_cmd, added uv #763
Workflow file for this run
This file contains 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: Python package | |
on: [push, pull_request, workflow_dispatch] | |
jobs: | |
build: | |
runs-on: ${{ matrix.os }} | |
strategy: | |
max-parallel: 21 | |
matrix: | |
python-version: ['3.8', '3.9', '3.10', '3.11', '3.12'] | |
os: [ubuntu-latest, macOS-latest, windows-latest] | |
exclude: | |
- os: macOS-latest | |
python-version: '3.8' | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Set up Python ${{ matrix.python-version }} | |
uses: actions/setup-python@v5 | |
with: | |
python-version: ${{ matrix.python-version }} | |
- name: Install uv and set the python version | |
uses: astral-sh/setup-uv@v5 | |
with: | |
python-version: ${{ matrix.python-version }} | |
- name: Update pip, install dev deps | |
run: uv pip install -r requirements-dev.txt | |
- name: Code Quality | |
run: black pulp/ --check | |
- name: Type Check | |
run: mypy ./ | |
- name: install ubuntu-only solvers | |
if: matrix.os == 'ubuntu-latest' | |
run: | | |
sudo apt update -qq | |
sudo apt install -qq glpk-utils | |
- name: install xpress | |
if: matrix.os != 'macOS-latest' && matrix.python-version != '3.12' | |
run: uv pip install xpress | |
- name: Install other solvers, gurobi, highspy, coptpy, saspy, swat, SCIP_PY | |
run: | | |
uv pip install gurobipy highspy "numpy<2" coptpy saspy swat pyscipopt . | |
- name: Install highspy cmd | |
if: matrix.os == 'ubuntu-latest' | |
uses: supplypike/setup-bin@v4 | |
with: | |
uri: 'https://github.com/JuliaBinaryWrappers/HiGHSstatic_jll.jl/releases/download/HiGHSstatic-v1.7.1%2B0/HiGHSstatic.v1.7.1.x86_64-linux-gnu-cxx11.tar.gz' | |
subPath: 'bin' | |
name: 'highs' | |
version: '1.7.1' | |
- name: Install SCIP_CMD | |
if: matrix.os == 'ubuntu-latest' | |
uses: supplypike/setup-bin@v4 | |
with: | |
uri: 'https://www.scipopt.org/download/release/SCIPOptSuite-9.2.1-Linux-ubuntu24.deb' | |
name: 'SCIPOptSuite-9.2.1-Linux-ubuntu24.deb' | |
version: '9.2.1' | |
command: "sudo apt install -qq ./SCIPOptSuite-9.2.1-Linux-ubuntu24.deb" | |
- name: Test with pulptest | |
run: uv run --no-project pulp/tests/run_tests.py |