The main highlight is the move to calloop to handle all the requests which makes it possible to remove all the active polling and clean the data reading/writing, as well as accepting arbitrary long payloads. This update also fixes the CI for the repository by moving it to github actions, sets the minimum rust version, and edition to 2021. Fixes #46. Fixes #44. Fixes #34.
52 lines
1.1 KiB
YAML
52 lines
1.1 KiB
YAML
name: CI
|
|
|
|
on:
|
|
pull_request:
|
|
push:
|
|
branches: [main]
|
|
|
|
env:
|
|
RUST_BACKTRACE: 1
|
|
CARGO_INCREMENTAL: 0
|
|
RUSTFLAGS: "-Cdebuginfo=0 --deny=warnings"
|
|
RUSTDOCFLAGS: "--deny=warnings"
|
|
|
|
jobs:
|
|
fmt:
|
|
name: Check Formatting
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
- uses: hecrj/setup-rust-action@v1
|
|
with:
|
|
rust-version: nightly
|
|
components: rustfmt
|
|
- name: Check Formatting
|
|
run: cargo +nightly fmt --all -- --check
|
|
|
|
tests:
|
|
name: Tests
|
|
runs-on: ubuntu-latest
|
|
strategy:
|
|
matrix:
|
|
rust_version: ["1.65", stable, nightly]
|
|
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
|
|
- uses: hecrj/setup-rust-action@v1
|
|
with:
|
|
rust-version: ${{ matrix.rust_version }}
|
|
components: clippy
|
|
|
|
- name: Install system dependencies
|
|
run: sudo apt-get install libxkbcommon-dev libwayland-dev
|
|
|
|
- name: Run tests
|
|
run: cargo test --verbose
|
|
|
|
- name: Clippy
|
|
run: cargo clippy -- -D warnings
|
|
|
|
- name: Check documentation
|
|
run: cargo doc --no-deps --document-private-items
|