Skip to content

Commit

Permalink
Merge branch 'main' into add-example-arrow-binary-crate
Browse files Browse the repository at this point in the history
  • Loading branch information
rluvaton committed Jan 19, 2025
2 parents 30b432e + 334203a commit 5f9a6c8
Show file tree
Hide file tree
Showing 101 changed files with 3,955 additions and 1,377 deletions.
6 changes: 3 additions & 3 deletions .github/workflows/arrow.yml
Original file line number Diff line number Diff line change
Expand Up @@ -146,11 +146,11 @@ jobs:
- name: Setup Rust toolchain
uses: ./.github/actions/setup-builder
with:
target: wasm32-unknown-unknown,wasm32-wasi
target: wasm32-unknown-unknown,wasm32-wasip1
- name: Build wasm32-unknown-unknown
run: cargo build -p arrow --no-default-features --features=json,csv,ipc,ffi --target wasm32-unknown-unknown
- name: Build wasm32-wasi
run: cargo build -p arrow --no-default-features --features=json,csv,ipc,ffi --target wasm32-wasi
- name: Build wasm32-wasip1
run: cargo build -p arrow --no-default-features --features=json,csv,ipc,ffi --target wasm32-wasip1

clippy:
name: Clippy
Expand Down
3 changes: 1 addition & 2 deletions .github/workflows/integration.yml
Original file line number Diff line number Diff line change
Expand Up @@ -65,8 +65,7 @@ jobs:
ARROW_INTEGRATION_JAVA: ON
ARROW_INTEGRATION_JS: ON
ARCHERY_INTEGRATION_TARGET_IMPLEMENTATIONS: "rust"
# Disable nanoarrow integration, due to https://github.com/apache/arrow-rs/issues/5052
ARCHERY_INTEGRATION_WITH_NANOARROW: "0"
ARCHERY_INTEGRATION_WITH_NANOARROW: "1"
# https://github.com/apache/arrow/pull/38403/files#r1371281630
ARCHERY_INTEGRATION_WITH_RUST: "1"
# These are necessary because the github runner overrides $HOME
Expand Down
10 changes: 7 additions & 3 deletions .github/workflows/object_store.yml
Original file line number Diff line number Diff line change
Expand Up @@ -54,6 +54,10 @@ jobs:
# targets.
- name: Run clippy with default features
run: cargo clippy -- -D warnings
- name: Run clippy without default features
run: cargo clippy --no-default-features -- -D warnings
- name: Run clippy with fs features
run: cargo clippy --no-default-features --features fs -- -D warnings
- name: Run clippy with aws feature
run: cargo clippy --features aws -- -D warnings
- name: Run clippy with gcp feature
Expand Down Expand Up @@ -200,11 +204,11 @@ jobs:
- name: Setup Rust toolchain
uses: ./.github/actions/setup-builder
with:
target: wasm32-unknown-unknown,wasm32-wasi
target: wasm32-unknown-unknown,wasm32-wasip1
- name: Build wasm32-unknown-unknown
run: cargo build --target wasm32-unknown-unknown
- name: Build wasm32-wasi
run: cargo build --target wasm32-wasi
- name: Build wasm32-wasip1
run: cargo build --target wasm32-wasip1

windows:
name: cargo test LocalFileSystem (win64)
Expand Down
8 changes: 5 additions & 3 deletions .github/workflows/parquet.yml
Original file line number Diff line number Diff line change
Expand Up @@ -97,6 +97,8 @@ jobs:
run: cargo check -p parquet --no-default-features
- name: Check compilation --no-default-features --features arrow
run: cargo check -p parquet --no-default-features --features arrow
- name: Check compilation --no-default-features --features simdutf8
run: cargo check -p parquet --no-default-features --features simdutf8
- name: Check compilation --no-default-features --all-features
run: cargo check -p parquet --all-features
- name: Check compilation --all-targets
Expand All @@ -123,13 +125,13 @@ jobs:
- name: Setup Rust toolchain
uses: ./.github/actions/setup-builder
with:
target: wasm32-unknown-unknown,wasm32-wasi
target: wasm32-unknown-unknown,wasm32-wasip1
- name: Install clang # Needed for zlib compilation
run: apt-get update && apt-get install -y clang gcc-multilib
- name: Build wasm32-unknown-unknown
run: cargo build -p parquet --target wasm32-unknown-unknown
- name: Build wasm32-wasi
run: cargo build -p parquet --target wasm32-wasi
- name: Build wasm32-wasip1
run: cargo build -p parquet --target wasm32-wasip1

pyspark-integration-test:
name: PySpark Integration Test
Expand Down
28 changes: 7 additions & 21 deletions .github/workflows/rust.yml
Original file line number Diff line number Diff line change
Expand Up @@ -123,32 +123,18 @@ jobs:
uses: ./.github/actions/setup-builder
- name: Install cargo-msrv
run: cargo install cargo-msrv
- name: Downgrade arrow dependencies
run: cargo update -p ahash --precise 0.8.7
- name: Check arrow
working-directory: arrow
run: |
# run `cd arrow; cargo msrv verify` to see problematic dependencies
cargo msrv verify --output-format=json
- name: Check parquet
working-directory: parquet
run: |
# run `cd parquet; cargo msrv verify` to see problematic dependencies
cargo msrv verify --output-format=json
- name: Check arrow-flight
working-directory: arrow-flight
run: |
# run `cd arrow-flight; cargo msrv verify` to see problematic dependencies
cargo msrv verify --output-format=json
- name: Downgrade object_store dependencies
working-directory: object_store
# Necessary because tokio 1.30.0 updates MSRV to 1.63
# and url 2.5.1, updates to 1.67
run: |
cargo update -p tokio --precise 1.29.1
cargo update -p url --precise 2.5.0
- name: Check object_store
working-directory: object_store
- name: Check all packages
run: |
# run `cd object_store; cargo msrv verify` to see problematic dependencies
cargo msrv verify --output-format=json
# run `cargo msrv verify --manifest-path "path/to/Cargo.toml"` to see problematic dependencies
find . -mindepth 2 -name Cargo.toml | while read -r dir
do
echo "Checking package '$dir'"
cargo msrv verify --manifest-path "$dir" --output-format=json || exit 1
done
2 changes: 1 addition & 1 deletion Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -74,7 +74,7 @@ include = [
"Cargo.toml",
]
edition = "2021"
rust-version = "1.62"
rust-version = "1.70"

[workspace.dependencies]
arrow = { version = "54.0.0", path = "./arrow", default-features = false }
Expand Down
10 changes: 10 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -90,6 +90,16 @@ Planned Release Schedule
| Dec 2024 | `0.11.2` | Minor, NO breaking API changes |
| Feb 2025 | `0.12.0` | Major, potentially breaking API changes |

### Guidelines for `panic` vs `Result`

In general, use panics for bad states that are unreachable, unrecoverable or harmful.
For those caused by invalid user input, however, we prefer to report that invalidity
gracefully as an error result instead of panicking. In general, invalid input should result
in an `Error` as soon as possible. It _is_ ok for code paths after validation to assume
validation has already occurred and panic if not. See [this ticket] for more nuances.

[this ticket]: https://github.com/apache/arrow-rs/issues/6737

### Deprecation Guidelines

Minor releases may deprecate, but not remove APIs. Deprecating APIs allows
Expand Down
Loading

0 comments on commit 5f9a6c8

Please sign in to comment.