Skip to content

Commit

Permalink
Check semver compatibility in CI
Browse files Browse the repository at this point in the history
This aims at automatically raising issues with semver compatibility.
This is a quick and somewhat dirty shot to get the check in place at
all. There is surely room for improvement.
  • Loading branch information
sirhcel authored and eldruin committed Jan 13, 2025
1 parent e641688 commit 773b958
Showing 1 changed file with 37 additions and 0 deletions.
37 changes: 37 additions & 0 deletions .github/workflows/ci.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -105,6 +105,43 @@ jobs:
target: x86_64-unknown-netbsd
toolchain: "1.59.0"

# --------------------------------------------------------------------------
# Semantic Versioning
#
# Check at least once per platform as we heavily depend on platform-specific
# code. The feature groups are used for attempting to cover different
# backends for a platform (like Linux with and without libudev).

semver-aarch64-apple-darwin:
runs-on: ubuntu-latest
strategy:
matrix:
target:
- aarch64-apple-darwin
- arm-linux-androideabi
- x86_64-pc-windows-msvc
- x86_64-unknown-freebsd
- x86_64-unknown-linux-gnu
- x86_64-unknown-netbsd
feature-group:
- "only-explicit-features"
- "all-features"
steps:
- run: |
# TODO: Harmonize with build.yaml
sudo sed -i 's/azure.archive.ubuntu.com/archive.ubuntu.com/' /etc/apt/sources.list
sudo apt-get -qq update
sudo apt-get -qq -y install build-essential curl git pkg-config libudev-dev
- uses: actions/checkout@v2
- uses: dtolnay/rust-toolchain@stable
with:
target: ${{ matrix.target }}
- uses: Swatinem/rust-cache@v2
- uses: obi1kenobi/cargo-semver-checks-action@v2
with:
rust-target: ${{ matrix.target }}
feature-group: ${{ matrix.feature-group }}

# --------------------------------------------------------------------------
# cargo-deny

Expand Down

0 comments on commit 773b958

Please sign in to comment.