Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We鈥檒l occasionally send you account related emails.

Already on GitHub? Sign in to your account

Test feature flags #2004

Closed
wants to merge 2 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
58 changes: 26 additions & 32 deletions .github/workflows/rust.yml
Expand Up @@ -87,34 +87,6 @@ jobs:
cargo run --example dynamic_types
cargo run --example read_csv
cargo run --example read_csv_infer_schema
- name: Test compilation of arrow library crate with different feature combinations
run: |
cargo check -p arrow
cargo check -p arrow --no-default-features
- name: Test compilation of arrow targets with different feature combinations
run: |
cargo check -p arrow --all-targets
cargo check -p arrow --no-default-features --all-targets
cargo check -p arrow --no-default-features --all-targets --features test_utils
- name: Re-run tests on arrow-flight with all features
run: |
cargo test -p arrow-flight --all-features
- name: Re-run tests on parquet crate with all features
run: |
cargo test -p parquet --all-features
- name: Test compilation of parquet library crate with different feature combinations
run: |
cargo check -p parquet
cargo check -p parquet --no-default-features
cargo check -p parquet --no-default-features --features arrow
- name: Test compilation of parquet targets with different feature combinations
run: |
cargo check -p parquet --all-targets
cargo check -p parquet --no-default-features --all-targets
cargo check -p parquet --no-default-features --features arrow --all-targets
- name: Test compilation of parquet_derive macro with different feature combinations
run: |
cargo check -p parquet_derive

# test the --features "simd" of the arrow crate. This requires nightly.
linux-test-simd:
Expand Down Expand Up @@ -142,10 +114,32 @@ jobs:
- name: Run tests
run: |
cargo test -p arrow --features "simd"
- name: Check compilation with simd features
run: |
cargo check -p arrow --features simd
cargo check -p arrow --features simd --all-targets

check-features:
name: Test feature combinations on AMD64 Rust ${{ matrix.rust }}
runs-on: ubuntu-latest
strategy:
matrix:
arch: [ amd64 ]
rust: [ nightly ]
container:
image: ${{ matrix.arch }}/rust
env:
# Disable full debug symbol generation to speed up CI build and keep memory down
# "1" means line tables only, which is useful for panic tracebacks.
RUSTFLAGS: "-C debuginfo=1"
steps:
- uses: actions/checkout@v2
with:
submodules: true
- name: Setup Rust toolchain
uses: ./.github/actions/setup-builder
with:
rust-version: ${{ matrix.rust }}
- name: Install cargo hack
run: cargo install cargo-hack
- name: Check feature powerset
run: cargo hack check --feature-powerset --workspace

windows-and-macos:
name: Test on ${{ matrix.os }} Rust ${{ matrix.rust }}
Expand Down
2 changes: 1 addition & 1 deletion parquet/Cargo.toml
Expand Up @@ -72,7 +72,7 @@ arrow = ["dep:arrow", "base64"]
# Enable CLI tools
cli = ["serde_json", "base64", "clap","arrow/csv"]
# Enable internal testing APIs
test_common = []
test_common = ["arrow/test_utils"]
# Experimental, unstable functionality primarily used for testing
experimental = []
# Enable async APIs
Expand Down