1name: build 2 3on: 4 push: 5 branches: [ "master" ] 6 pull_request: 7 branches: [ "master" ] 8 9env: 10 CARGO_INCREMENTAL: 0 11 CARGO_TERM_COLOR: always 12 RUST_BACKTRACE: 1 13 RUSTFLAGS: -D warnings 14 RUSTDOCFLAGS: -D warnings 15 16jobs: 17 build: 18 runs-on: ubuntu-latest 19 steps: 20 - uses: actions/checkout@v4 21 - name: Build 22 run: cargo build --verbose 23 - name: Run tests 24 run: cargo test --verbose 25 - name: Build docs 26 run: cargo doc 27 - name: Check formatting 28 run: cargo fmt --check 29 - name: Check clippy 30 run: cargo clippy --verbose --lib --tests 31 - name: Build (no default features) 32 run: cargo build --verbose --no-default-features 33 - name: Run tests (no default features) 34 run: cargo test --verbose --no-default-features 35 - name: Check clippy (no default features) 36 run: cargo clippy --verbose --lib --tests --no-default-features 37 38 regen: 39 runs-on: ubuntu-latest 40 steps: 41 - uses: actions/checkout@v4 42 - uses: actions/setup-python@v5 43 with: 44 python-version: '3.12' 45 - name: Regen 46 run: rm tests/emoji-test.txt && cd scripts && python3 unicode.py 47 - name: Diff 48 run: git update-index --refresh && git diff-index --quiet HEAD -- 49