diff --git a/.github/dependabot.yml b/.github/dependabot.yml new file mode 100644 index 0000000..11b328a --- /dev/null +++ b/.github/dependabot.yml @@ -0,0 +1,8 @@ +version: 2 +updates: +- package-ecosystem: cargo + directory: "/" + schedule: + interval: daily + time: "03:30" + open-pull-requests-limit: 10 diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 0000000..fe9b7cc --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,57 @@ +name: ci +on: [push, pull_request] + +jobs: + test: + name: Cargo build & test + runs-on: ubuntu-latest + strategy: + matrix: + rust: + - 1.66.1 + - 1.67.1 + - 1.68.2 + - 1.69.0 + - 1.70.0 + - 1.71.1 + - 1.72.1 + - 1.73.0 + - 1.74.1 + - 1.75.0 + - 1.76.0 + - 1.77.2 + - stable + - beta + - nightly + steps: + - uses: actions/checkout@v4 + - name: Install Rust ${{ matrix.rust }} + run: rustup toolchain install ${{ matrix.rust }} + - name: Run cargo build + run: cargo +${{ matrix.rust }} build --verbose + - name: Run cargo test + run: cargo +${{ matrix.rust }} test --verbose + formatting: + name: Cargo fmt + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - name: Update Rust + run: rustup update stable + - name: Run cargo fmt + run: cargo +stable fmt --all -- --check + clippy: + name: Clippy + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - name: Update Rust + run: rustup update stable + - name: Run clippy + run: cargo +stable clippy --all-features + cargo-deny: + name: Check dependencies + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - uses: EmbarkStudios/cargo-deny-action@v1