Skip to content

a bit more refactoring #175

a bit more refactoring

a bit more refactoring #175

Workflow file for this run

name: CI
on:
push:
paths: ['**.rs', '**.toml', '**/rust.yml', '**.lock']
pull_request:
paths: ['**.rs', '**.toml', '**/rust.yml', '**.lock']
env:
CARGO_TERM_COLOR: always
jobs:
ubuntu:
name: full check on ubuntu (${{ matrix.toolchain }} channel)
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
toolchain: [stable, beta, nightly]
steps:
- uses: actions/checkout@v4
- name: switch to ${{ matrix.toolchain }} channel
run: rustup update ${{ matrix.toolchain }} && rustup default ${{ matrix.toolchain }} && rustup component add rustfmt clippy
- name: build
run: cargo b -vv
- name: fmt and clippy check
if: ${{ matrix.toolchain == 'nightly' }}
run: cargo fmt -- --check && cargo clippy -- -D warnings
- name: test
run: cargo t -v
msys2:
name: full check on windows (msys2 - ${{ matrix.sys }})
runs-on: windows-latest
strategy:
fail-fast: false
matrix:
include:
- { sys: CLANG64, prefix: clang64 }
- { sys: UCRT64, prefix: ucrt64 }
steps:
- uses: actions/checkout@v4
- uses: msys2/setup-msys2@v2
with:
update: true
msystem: ${{ matrix.sys }}
location: 'D:\M'
pacboy: rust:p
- name: hack rustup
run: |
rustup toolchain link msys2 D:\M\msys64\${{ matrix.prefix }}
rustup default msys2
- name: Add staging repo
shell: msys2 {0}
run: |
cp /etc/pacman.conf /etc/pacman.conf.bak
grep -qFx '[staging]' /etc/pacman.conf || sed -i '/^# \[staging\]/,/^$/ s|^# ||g' /etc/pacman.conf
- name: Update using staging
run: |
msys2 -c 'pacman --noconfirm -Suuy'
msys2 -c 'pacman --noconfirm -Suu'
- name: build
shell: msys2 {0}
run: cargo b -vv
- name: clippy
shell: msys2 {0}
run: cargo clippy -- -D warnings
- name: test
shell: msys2 {0}
run: cargo t -v