Skip to content

Avoid unnecessary realloc when creating C-style strings #645

Avoid unnecessary realloc when creating C-style strings

Avoid unnecessary realloc when creating C-style strings #645

Workflow file for this run

name: ci
on:
push:
branches: [master]
pull_request:
branches: [master]
env:
rust_version: 1.70.0
jobs:
lint:
runs-on: ubuntu-20.04
steps:
- uses: actions/checkout@v3
- uses: dtolnay/rust-toolchain@stable
with:
toolchain: ${{ env.rust_version }}
components: rustfmt, clippy
- run: cargo fmt -- --check
- run: cargo clippy -- -Dwarnings
- run: cargo clippy --tests -- -Dwarnings
- run: cargo test --doc
check:
strategy:
matrix:
include:
- os: macos-11.0
- os: windows-2019
features: cmake-build,libz-static,curl-static
rdkafka-sys-features: cmake-build,libz-static,curl-static
- os: ubuntu-20.04
features: tracing
- os: ubuntu-20.04
features: cmake-build,ssl-vendored,gssapi-vendored,libz-static,curl-static,zstd
rdkafka-sys-features: cmake-build,ssl-vendored,gssapi-vendored,libz-static,curl-static,zstd
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v3
- uses: lukka/get-cmake@latest
- uses: dtolnay/rust-toolchain@stable
with:
toolchain: ${{ env.rust_version }}
- run: cargo build --all-targets --verbose --features "${{ matrix.features }}"
- run: cd rdkafka-sys && cargo test --features "${{ matrix.rdkafka-sys-features }}"
# Use the `minimal-versions` resolver to ensure we're not claiming to support
# an older version of a dependency than we actually do.
check-minimal-versions:
runs-on: ubuntu-20.04
steps:
- uses: actions/checkout@v3
- uses: dtolnay/rust-toolchain@stable
with:
# The version of this toolchain doesn't matter much. It's only used to
# generate the minimal-versions lockfile, not to actually run `cargo
# check`.
toolchain: nightly
components: rustfmt, clippy
- uses: dtolnay/rust-toolchain@stable
with:
toolchain: ${{ env.rust_version }}
- run: rustup default ${{ env.rust_version }}
- run: cargo +nightly -Z minimal-versions generate-lockfile
# Default features and features that require optional dependencies should be
# explicitly checked.
- run: cargo check --features libz,tokio,tracing
test:
strategy:
fail-fast: false
# The test suite doesn't support concurrent runs.
max-parallel: 1
matrix:
include:
- confluent-version: 7.7.0
kafka-version: 3.7
- confluent-version: 7.5.1
kafka-version: 3.6
- confluent-version: 7.5.1
kafka-version: 3.5
runs-on: ubuntu-20.04
steps:
- uses: actions/checkout@v3
- uses: lukka/get-cmake@latest
- uses: dtolnay/rust-toolchain@stable
with:
toolchain: ${{ env.rust_version }}
# - run: sudo apt-get update
# - run: sudo apt-get install -qy valgrind # Valgrind currently disabled in testing
- run: ./test_suite.sh
env:
CONFLUENT_VERSION: ${{ matrix.confluent-version }}
KAFKA_VERSION: ${{ matrix.kafka-version }}
TERM: xterm-256color