
* Use old 1.51 toolchain instead of bleeding edge 1.52 and 1.53 has problems with incremental compilation, so some people chose to stay on 1.51 for now. So let's make sure egui supports 1.51 for a while! * Update to cint 0.2.2 to get rust 1.51.0 compatability
149 lines
4.1 KiB
YAML
149 lines
4.1 KiB
YAML
on: [push, pull_request]
|
|
|
|
name: CI
|
|
|
|
env:
|
|
# This is required to enable the web_sys clipboard API which egui_web uses
|
|
# https://rustwasm.github.io/wasm-bindgen/api/web_sys/struct.Clipboard.html
|
|
# https://rustwasm.github.io/docs/wasm-bindgen/web-sys/unstable-apis.html
|
|
RUSTFLAGS: --cfg=web_sys_unstable_apis
|
|
|
|
jobs:
|
|
check_default:
|
|
name: cargo check (default features)
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v2
|
|
- uses: actions-rs/toolchain@v1
|
|
with:
|
|
profile: minimal
|
|
toolchain: 1.51.0
|
|
override: true
|
|
- run: sudo apt-get install libspeechd-dev
|
|
- uses: actions-rs/cargo@v1
|
|
with:
|
|
command: check
|
|
|
|
check_all_features:
|
|
name: cargo check --all-features
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v2
|
|
- uses: actions-rs/toolchain@v1
|
|
with:
|
|
profile: minimal
|
|
toolchain: 1.51.0
|
|
override: true
|
|
- run: sudo apt-get install libspeechd-dev
|
|
- uses: actions-rs/cargo@v1
|
|
with:
|
|
command: check
|
|
args: --all-features
|
|
|
|
check_web_default:
|
|
name: cargo check web (default features)
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v2
|
|
- uses: actions-rs/toolchain@v1
|
|
with:
|
|
profile: minimal
|
|
toolchain: 1.51.0
|
|
override: true
|
|
- run: rustup target add wasm32-unknown-unknown
|
|
- uses: actions-rs/cargo@v1
|
|
with:
|
|
command: check
|
|
args: -p egui_demo_app --lib --target wasm32-unknown-unknown
|
|
|
|
check_web_all_features:
|
|
name: cargo check web --all-features
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v2
|
|
- uses: actions-rs/toolchain@v1
|
|
with:
|
|
profile: minimal
|
|
toolchain: 1.51.0
|
|
override: true
|
|
- run: rustup target add wasm32-unknown-unknown
|
|
- uses: actions-rs/cargo@v1
|
|
with:
|
|
command: check
|
|
args: -p egui_demo_app --lib --target wasm32-unknown-unknown --all-features
|
|
|
|
test:
|
|
name: cargo test
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v2
|
|
- uses: actions-rs/toolchain@v1
|
|
with:
|
|
profile: minimal
|
|
toolchain: 1.51.0
|
|
override: true
|
|
- run: sudo apt-get install libxcb-render0-dev libxcb-shape0-dev libxcb-xfixes0-dev libspeechd-dev
|
|
- uses: actions-rs/cargo@v1
|
|
with:
|
|
command: test
|
|
args: --all-features
|
|
|
|
fmt:
|
|
name: cargo fmt
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v2
|
|
- uses: actions-rs/toolchain@v1
|
|
with:
|
|
profile: minimal
|
|
toolchain: 1.51.0
|
|
override: true
|
|
- run: rustup component add rustfmt
|
|
- uses: actions-rs/cargo@v1
|
|
with:
|
|
command: fmt
|
|
args: --all -- --check
|
|
|
|
clippy:
|
|
name: cargo clippy
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v2
|
|
- uses: actions-rs/toolchain@v1
|
|
with:
|
|
profile: minimal
|
|
toolchain: 1.51.0
|
|
override: true
|
|
- run: rustup component add clippy
|
|
- run: sudo apt-get install libspeechd-dev
|
|
- uses: actions-rs/cargo@v1
|
|
with:
|
|
command: clippy
|
|
args: --workspace --all-targets --all-features -- -D warnings -W clippy::all
|
|
|
|
doc:
|
|
name: cargo doc
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v2
|
|
- uses: actions-rs/toolchain@v1
|
|
with:
|
|
profile: minimal
|
|
toolchain: 1.51.0
|
|
override: true
|
|
- run: sudo apt-get install libspeechd-dev
|
|
- run: cargo doc -p emath -p epaint -p egui -p eframe -p epi -p egui_web -p egui_glium --lib --no-deps --all-features
|
|
|
|
doc_web:
|
|
name: cargo doc web
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v2
|
|
- uses: actions-rs/toolchain@v1
|
|
with:
|
|
profile: minimal
|
|
toolchain: 1.51.0
|
|
override: true
|
|
- run: sudo apt-get install libspeechd-dev
|
|
- run: rustup target add wasm32-unknown-unknown
|
|
- run: cargo doc -p egui_web --target wasm32-unknown-unknown --lib --no-deps --all-features
|