Skip to content

feat: Adding support for MPS files #292

feat: Adding support for MPS files

feat: Adding support for MPS files #292

Workflow file for this run

on:
push:
# Trigger on push events to the main branch and on changes to specific files
branches:
- "main"
paths:
- "**.rs"
- "**/Cargo.toml"
- "**/Cargo.lock"
- "**.yml"
pull_request:
# Trigger on pull request events to the main branch and on changes to specific files
types: [assigned, opened, synchronize, reopened]
paths:
- "**.rs"
- "**/Cargo.toml"
- "**/Cargo.lock"
- "**.yml"
name: Cargo Test
env:
CARGO_TERM_COLOR: always # Ensure colored output in Cargo
CI: true # Indicate that this is a CI environment
CARGO_INCREMENTAL: 0
concurrency:
group: ${{ github.workflow }}-${{ github.ref }} # Group by workflow and branch
cancel-in-progress: true # Cancel any in-progress runs for the same group
permissions:
contents: read
pull-requests: read
jobs:
format:
name: Format
runs-on: ubuntu-24.04-arm
steps:
- uses: actions/checkout@v6
- run: rustup component add rustfmt
- run: cargo fmt --all -- --check
lint:
runs-on: ubuntu-24.04-arm
steps:
- uses: actions/checkout@v6
- name: Setup Rust
uses: actions-rs/toolchain@v1
with:
toolchain: stable
# Cache Rust dependencies to speed up builds
- uses: Swatinem/rust-cache@v2
- name: Run Clippy
run: cargo clippy --all-targets --all-features -- -D warnings
test:
runs-on: ubuntu-24.04-arm
steps:
# Check out the repository code
- uses: actions/checkout@v6
# Ensure Rust is installed and set up the active toolchain
- name: Setup Rust
run: rustup show active-toolchain || rustup toolchain install
# Install CBC solver for lp-solvers integration tests
- name: Install CBC solver
run: sudo apt-get update && sudo apt-get install -y coinor-cbc
# Cache Rust dependencies to speed up builds
- uses: Swatinem/rust-cache@v2
# Run all tests with all features enabled (including CBC solver test via test-cbc feature)
- name: Run tests
run: cargo test --all-features