Skip to content

Scoreboards

Scoreboards #1383

Workflow file for this run

name: Rust
on:
pull_request:
merge_group:
push: # Run CI on the main branch after every merge. This is important to fill the GitHub Actions cache in a way that pull requests can see it
branches:
- main
env:
CARGO_TERM_COLOR: always
jobs:
valence-fmt:
strategy:
fail-fast: true
matrix:
platform: [ubuntu-latest]
style: [default]
rust:
- nightly-2023-06-20
include:
- style: default
flags: ""
runs-on: ${{ matrix.platform }}
steps:
- uses: actions/checkout@v3
- name: Setup Rust toolchain and cache
uses: actions-rust-lang/[email protected]
with:
toolchain: "nightly-2023-06-20"
components: "rustfmt"
- name: "Copy playground"
run: cp tools/playground/src/playground.template.rs tools/playground/src/playground.rs
- name: cargo fmt
run: cargo fmt --all -- --check
valence-clippy:
strategy:
fail-fast: true
matrix:
platform: [windows-latest, macos-latest, ubuntu-latest]
style: [default]
rust:
- stable
include:
- style: default
flags: ""
runs-on: ${{ matrix.platform }}
steps:
- uses: actions/checkout@v3
- name: Setup Rust toolchain and cache
uses: actions-rust-lang/[email protected]
with:
toolchain: "stable"
components: "clippy"
- name: "Copy playground"
run: cp tools/playground/src/playground.template.rs tools/playground/src/playground.rs
- name: Install Dependencies (Linux)
run: sudo apt-get update && sudo apt-get install -y libxcb-render0-dev libxcb-shape0-dev libxcb-xfixes0-dev libxkbcommon-dev libssl-dev libclang-dev libgtk-3-dev
if: matrix.platform == 'ubuntu-latest'
- name: Clippy
run: cargo clippy --workspace ${{ matrix.flags }}--no-deps --all-features --all-targets -- -D warnings
valence-tests:
strategy:
fail-fast: true
matrix:
platform: [windows-latest, macos-latest, ubuntu-latest]
style: [default]
rust:
- stable
include:
- style: default
flags: ""
runs-on: ${{ matrix.platform }}
steps:
- uses: actions/checkout@v3
- name: Setup Rust toolchain and cache
uses: actions-rust-lang/[email protected]
- name: "Copy playground"
run: cp tools/playground/src/playground.template.rs tools/playground/src/playground.rs
- name: Install Dependencies (Linux)
run: sudo apt-get update && sudo apt-get install -y libxcb-render0-dev libxcb-shape0-dev libxcb-xfixes0-dev libxkbcommon-dev libssl-dev libclang-dev libgtk-3-dev
if: matrix.platform == 'ubuntu-latest'
- name: Run tests
run: cargo test --workspace ${{ matrix.flags }}--all-features --all-targets
- name: Run doctests
run: cargo test --workspace ${{ matrix.flags }}--all-features --doc
- name: Run valence_nbt tests without preserve_order feature
run: cargo test -p valence_nbt --all-targets
extractor-tests:
strategy:
fail-fast: true
matrix:
platform: [windows-latest, macos-latest, ubuntu-latest]
runs-on: ${{ matrix.platform }}
steps:
- uses: actions/checkout@v3
- name: Setup Java
uses: actions/setup-java@v2
with:
distribution: "zulu"
java-version: "17"
- name: Test Build
run: ./gradlew build
working-directory: extractor
valence-docs:
strategy:
fail-fast: true
matrix:
platform: [windows-latest, macos-latest, ubuntu-latest]
style: [default]
rust:
- stable
include:
- style: default
flags: ""
runs-on: ${{ matrix.platform }}
steps:
- uses: actions/checkout@v3
- name: Setup Rust toolchain and cache
uses: actions-rust-lang/[email protected]
- name: "Copy playground"
run: cp tools/playground/src/playground.template.rs tools/playground/src/playground.rs
- name: Install Dependencies (Linux)
run: sudo apt-get update && sudo apt-get install -y libxcb-render0-dev libxcb-shape0-dev libxcb-xfixes0-dev libxkbcommon-dev libssl-dev libclang-dev libgtk-3-dev
if: matrix.platform == 'ubuntu-latest'
- name: Validate documentation
run: cargo doc --workspace ${{ matrix.flags }}--no-deps --all-features --document-private-items