Vendor dependencies

This commit is contained in:
2026-08-01 16:11:49 +03:00
parent 7f139a0241
commit 6b5e7f0f8b
29706 changed files with 9575646 additions and 0 deletions
@@ -0,0 +1,17 @@
name: Security audit
on:
pull_request:
push:
branches:
- master
schedule:
- cron: '0 0 * * 0'
jobs:
security_audit:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions-rs/audit-check@35b7b53b1e25b55642157ac01b4adceb5b9ebef3
with:
token: ${{ secrets.GITHUB_TOKEN }}
@@ -0,0 +1,53 @@
name: Coverage
on:
push:
branches:
- master
pull_request:
env:
CARGO_TERM_COLOR: always
RUST_BACKTRACE: full
jobs:
coverage:
name: Coverage
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v2
- name: Install Rust
uses: actions-rs/toolchain@v1
with:
toolchain: nightly
profile: minimal
default: true
- name: Pre-installing grcov
uses: actions-rs/install@v0.1
with:
crate: grcov
use-tool-cache: true
- name: Restore cache
uses: Swatinem/rust-cache@v1
- name: Run tests
run: cargo test --all --all-features
env:
CARGO_INCREMENTAL: '0'
RUSTFLAGS: '-Zprofile -Ccodegen-units=1 -Cinline-threshold=0 -Clink-dead-code -Coverflow-checks=off -Cpanic=abort -Zpanic_abort_tests'
RUSTDOCFLAGS: '-Zprofile -Ccodegen-units=1 -Cinline-threshold=0 -Clink-dead-code -Coverflow-checks=off -Cpanic=abort -Zpanic_abort_tests'
# This seems not to work, the C code can't seem to find the gcov functions. By not providing this, we probably give up coverage from these :-(
#CFLAGS: --coverage
#CXXFLAGS: --coverage
- name: Generate coverage
uses: actions-rs/grcov@v0.1
- name: Upload to codecov.io
uses: codecov/codecov-action@5a8bb4701eca7ba3673f21664b887f652c58d0a3
with:
token: ${{ secrets.CODECOV_TOKEN }}
@@ -0,0 +1,233 @@
name: test
on:
push:
branches:
- master
pull_request:
env:
CARGO_TERM_COLOR: always
RUST_BACKTRACE: full
jobs:
test:
name: Build & test
strategy:
fail-fast: false
matrix:
os:
- ubuntu-latest
- macos-latest
- windows-latest
rust:
- stable
- beta
- nightly
# Introduction of self: Arc<..>, needed for the iterator module
- 1.36.0
# Introduction of non_exhaustive, used at certain exfiltrators
- 1.40.0
runs-on: ${{ matrix.os }}
steps:
- name: checkout
uses: actions/checkout@v2
- name: Install Rust
uses: actions-rs/toolchain@v1
with:
toolchain: ${{ matrix.rust }}
default: true
profile: minimal
- name: Restore cache
uses: Swatinem/rust-cache@v1
- name: Build & test
env:
RUST_VERSION: ${{ matrix.rust }}
OS: ${{ matrix.os }}
run: ./ci-check.sh
rustfmt:
name: Check formatting
runs-on: ubuntu-latest
steps:
- name: checkout
uses: actions/checkout@v2
- name: Install Rust
uses: actions-rs/toolchain@v1
with:
profile: minimal
toolchain: stable
default: true
components: rustfmt
- run: cargo fmt --all -- --check
links:
name: Check documentation links
runs-on: ubuntu-latest
steps:
- name: checkout
uses: actions/checkout@v2
- name: Install Rust
uses: actions-rs/toolchain@v1
with:
toolchain: stable
default: true
- name: Restore cache
uses: Swatinem/rust-cache@v1
- name: Install cargo-deadlinks
uses: actions-rs/install@v0.1
with:
crate: cargo-deadlinks
use-tool-cache: true
- name: Check links
run: |
for package in $(cargo metadata --no-deps --format-version=1 | jq -r '.packages[] | .name'); do
cargo rustdoc -p "$package" --all-features -- -D warnings
dname=$(echo "$package" | tr '-' '_')
cargo deadlinks --dir "target/doc/$dname" --check-http --ignore-fragments
done
ancient-registry:
name: Check compilation of signal-hook-registry on 1.26.0
strategy:
matrix:
os:
- ubuntu-latest
- macos-latest
- windows-latest
runs-on: ${{ matrix.os }}
steps:
- name: checkout
uses: actions/checkout@v2
- name: Install Rust
uses: actions-rs/toolchain@v1
with:
toolchain: 1.26.0
default: true
profile: minimal
- name: Restore cache
uses: Swatinem/rust-cache@v1
- name: Check compilation
run: |
rm Cargo.toml
cd signal-hook-registry
sed -i -e '/signal-hook =/d' Cargo.toml
cargo check
ancient:
name: Check compilation on 1.31.0
strategy:
matrix:
os:
- ubuntu-latest
- macos-latest
- windows-latest
runs-on: ${{ matrix.os }}
steps:
- name: checkout
uses: actions/checkout@v2
- name: Install Rust
uses: actions-rs/toolchain@v1
with:
toolchain: 1.31.0
default: true
profile: minimal
- name: Restore cache
uses: Swatinem/rust-cache@v1
- name: Check compilation
run: |
rm Cargo.lock
cargo update
cargo check --no-default-features
clippy:
name: Clippy lints
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v2
- name: Install Rust
uses: actions-rs/toolchain@v1
with:
toolchain: stable
profile: minimal
default: true
components: clippy
- name: Restore cache
uses: Swatinem/rust-cache@v1
- name: Run clippy linter
run: cargo clippy --all --all-features --tests -- -D clippy::all -D warnings
# There's bunch of platforms that have some weird quirks (or we don't know
# that they don't). While fully compiling and testing on them is a bit of a
# challenge, running cargo check on them should be easy enough and should
# catch at least some problems (like different sizes of types).
weird_platforms:
name: Check weird platforms
strategy:
fail-fast: false
matrix:
target:
- x86_64-unknown-linux-musl
- x86_64-pc-solaris
- x86_64-linux-android
- aarch64-linux-android
- arm-linux-androideabi
- mips-unknown-linux-musl
- x86_64-unknown-netbsd
- x86_64-unknown-freebsd
extra-args:
- "--all --all-features"
include:
# - wasm32-wasi (not yet? Or not ever?)
# - x86_64-unknown-redox (Is that platform even usable on stable?)
- { target: x86_64-fuchsia, extra-args: "--all-features" }
- { target: asmjs-unknown-emscripten, extra-args: "--all-features" }
# Seems we have some trouble with properly running C compiler on these. Might as well be problem with cross-compilation setup, but who knows
# So we avoid the exfiltrator part/signal-hook-sys :-(
- { target: x86_64-apple-darwin, extra-args: "--features=iterator --all --exclude signal-hook-sys" }
- { target: x86_64-apple-ios, extra-args: "--features=iterator --all --exclude signal-hook-sys" }
runs-on: ubuntu-latest
steps:
- name: checkout
uses: actions/checkout@v2
- name: Install Rust
uses: actions-rs/toolchain@v1
with:
toolchain: stable
profile: minimal
default: true
target: ${{ matrix.target }}
- name: Restore cache
uses: Swatinem/rust-cache@v1
- name: Run the check
uses: actions-rs/cargo@v1
with:
command: check
args: ${{ matrix.extra-args }} --tests --target=${{ matrix.target }}
use-cross: true