allocation free on Handlers that use closures https://github.com/mimr… #493
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: CI | |
on: | |
push: | |
# push: | |
# branches: [master, staging, trying] | |
# pull_request: | |
# branches: [master] | |
env: | |
RUST_BACKTRACE: 1 | |
CARGO_TERM_COLOR: always | |
jobs: | |
lint: | |
name: Lint | |
runs-on: ubuntu-latest | |
timeout-minutes: 15 | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
with: | |
submodules: recursive | |
- name: Install Rust | |
uses: dtolnay/rust-toolchain@stable | |
with: | |
toolchain: stable | |
components: clippy, rustfmt | |
# aeron archive cmake for some reason starts java | |
- name: Install Java | |
uses: actions/setup-java@v4 | |
with: | |
distribution: 'temurin' | |
java-version: '17' | |
- name: Check formatting | |
run: cargo fmt --all -- --check | |
- name: Check clippy lints | |
run: cargo clippy --all -- --deny warnings | |
- name: Check docs | |
run: | | |
sudo apt-get update && sudo apt-get install -y uuid-dev | |
cargo test --doc | |
build: | |
name: Build | |
runs-on: ${{ matrix.os }} | |
timeout-minutes: 45 | |
strategy: | |
fail-fast: false | |
matrix: | |
# os: [ubuntu-latest, windows-latest, macos-latest] | |
os: [ubuntu-latest, macos-latest] | |
# os: [ubuntu-latest] | |
features: [default, static] | |
# rust-version: ["stable", "stable 6 months ago"] | |
rust-version: ["stable"] | |
env: | |
feature-flags: ${{ matrix.features != 'default' && format('--features {0}', matrix.features) || '' }} | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
with: | |
submodules: recursive | |
fetch-depth: 0 | |
- name: Install Rust | |
uses: dtolnay/rust-toolchain@stable | |
with: | |
toolchain: ${{ matrix.rust-version }} | |
components: clippy, rustfmt | |
- name: Install dependencies on Ubuntu | |
if: runner.os == 'Linux' | |
run: sudo apt-get update && sudo apt-get install -y curl pkg-config libssl-dev uuid-dev ca-certificates make cmake gcc g++ clang zlib1g-dev libbsd-dev | |
# aeron archive cmake for some reason starts java | |
- name: Install Java | |
uses: actions/setup-java@v4 | |
with: | |
distribution: 'temurin' | |
java-version: '23' | |
- name: Build and Test | |
run: | | |
cargo build --workspace ${{ env.feature-flags }} | |
cargo test --workspace --all --all-targets ${{ env.feature-flags }} -- --nocapture |