Skip to content

build(deps): bump the rust-dependencies group across 1 directory with 33 updates#6571

Open
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/cargo/quickwit/rust-dependencies-c450afab73
Open

build(deps): bump the rust-dependencies group across 1 directory with 33 updates#6571
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/cargo/quickwit/rust-dependencies-c450afab73

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Jul 1, 2026

Copy link
Copy Markdown
Contributor

Bumps the rust-dependencies group with 32 updates in the /quickwit directory:

Package From To
arrow 58.3.0 59.0.0
bytes 1.11.1 1.12.0
bytesize 2.3.1 2.4.0
cron 0.16.0 0.17.0
google-cloud-gax 0.19.2 1.10.0
hyper 1.9.0 1.10.1
itertools 0.14.0 0.15.0
mockall 0.14.0 0.15.0
parquet 58.3.0 59.0.0
procfs 0.17.0 0.18.0
pulsar 6.7.2 6.8.0
quick_cache 0.6.21 0.7.0
reqwest-middleware 0.4.2 0.5.2
reqwest-retry 0.8.0 0.9.1
sea-query 0.32.7 1.0.1
serde_qs 0.15.0 1.1.2
serde_with 3.20.0 3.21.0
serial_test 3.4.0 3.5.0
tabled 0.20.0 0.21.0
tower-http 0.6.10 0.7.0
utoipa 4.2.3 5.5.0
vrl 0.32.0 0.33.1
aws-smithy-types 1.4.7 1.5.0
opendal 0.56.0 0.57.0
datafusion 53.1.0 54.0.0
datafusion-substrait 53.1.0 54.0.0
datafusion-datasource 53.1.0 54.0.0
datafusion-physical-plan 53.1.0 54.0.0
datafusion-datasource-parquet 53.1.0 54.0.0
datafusion-distributed 1.0.0 2.0.0
object_store 0.13.2 0.14.0
thrift 0.17.0 0.23.0

Updates arrow from 58.3.0 to 59.0.0

Release notes

Sourced from arrow's releases.

arrow 59.0.0

Changelog

59.0.0 (2026-06-04)

Full Changelog

Breaking changes:

Implemented enhancements:

  • Allow casting plain struct to dictionary encoded struct #10038 [arrow]
  • Optimize arrow-flight #10029
  • Align buffers when importing via from_ffi / ArrowArrayStreamReader #10028 [arrow]
  • Switch Parquet LogicalType enum to macro generated version #9995 [parquet]
  • Future proof Parquet Thrift parser #9973 [parquet]
  • Add DatePart 1-indexed variants #9964 [arrow]
  • perf: Rework Parquet Thrift handling of boolean fields #9946 [parquet]
  • Add benchmarks for REE to parquet #9935 [parquet] [arrow]
  • (re) Allow Large FixedSizeBinaryArrays #9906 [arrow]

... (truncated)

Changelog

Sourced from arrow's changelog.

59.0.0 (2026-06-04)

Full Changelog

Breaking changes:

Implemented enhancements:

  • Allow casting plain struct to dictionary encoded struct #10038 [arrow]
  • Optimize arrow-flight #10029
  • Align buffers when importing via from_ffi / ArrowArrayStreamReader #10028 [arrow]
  • Switch Parquet LogicalType enum to macro generated version #9995 [parquet]
  • Future proof Parquet Thrift parser #9973 [parquet]
  • Add DatePart 1-indexed variants #9964 [arrow]
  • perf: Rework Parquet Thrift handling of boolean fields #9946 [parquet]
  • Add benchmarks for REE to parquet #9935 [parquet] [arrow]
  • (re) Allow Large FixedSizeBinaryArrays #9906 [arrow]
  • Add a is_normalized flag to DictionaryArray #9841
  • [Variant] Remove BorrowedShreddingState #9790
  • [parquet] Expose whether FileDecryptionProperties uses a KeyRetriever #9721 [parquet]
  • Align cast logic for from/to_decimal for variant to cast kernel #9688 [arrow]

Fixed bugs:

  • parquet-variant build might fail on s390x #10026
  • FixedSizeBinaryArray implements From<Vec<&[u8]>> etc despite conversion being fallible #10018 [parquet] [arrow]
  • string -> decimal cast should not treat empty string as 0 #10009 [arrow]
  • Cast FixedSizeList to List will lost datatype metadata in list #10004 [arrow]
  • Record reader panics with "index out of bounds" when row group num_rows exceeds actual column data #9992 [parquet]
  • parquet predicate-cache: panic / silent row drop on single-leaf nullable struct #9982 [parquet]
  • parquet-variant doesn't build on 32-bit targets #9977
  • Date32 doesn't parse date with large year #9960 [arrow]
  • msrv check failing on main due to tonic@0.14.6 #9938 [parquet] [arrow] [arrow-flight]

Documentation updates:

... (truncated)

Commits
  • e5e66fa Add test for parquet-testing/bad_data/ARROW-[GH-47662](https://github.com/apache/arrow-rs/issues/47662).parquet (#10077)
  • 9f96a8f Prepare for 59.0.0 release (#10063)
  • d7ef673 Bump max throughput in flight benchmark before blocking (#10070)
  • 8042ea2 Pluggable page spilling API for the Parquet ArrowWriter (PageStore) (#10020)
  • 1e8ea5e fix(parquet): bound data page byte size for large variable-width values (#9972)
  • 2a1d40d Reduce Miri runtime even more (#9650)
  • 97f4b14 arrow-buffer: i256: implement ilog (#9453)
  • 6c39797 Improve email created by create_tarball.sh script (#9944)
  • 9949226 perf(parquet): LevelInfoBuilder batch write when no repetition childs (#10037)
  • 58bdc7d arrow-buffer: i256: Implement num_traits wrapping shift (#9418)
  • Additional commits viewable in compare view

Updates bytes from 1.11.1 to 1.12.0

Release notes

Sourced from bytes's releases.

Bytes v1.12.0

1.12.0 (June 18th, 2026)

Added

  • Add BytesMut::extend_from_within() (#818)
  • Add BytesMut::try_unsplit() (#746)

Fixed

  • Fix panic in get_int if nbytes is zero (#806)

Changed

  • Pass vtable data by value (#826)
  • Exclude development scripts from published package (#810)

Documented

  • Document that BytesMut::{reserve,try_reserve} doesn't preserve unused capacity (#808)
Changelog

Sourced from bytes's changelog.

1.12.0 (June 18th, 2026)

Added

  • Add BytesMut::extend_from_within() (#818)
  • Add BytesMut::try_unsplit() (#746)

Fixed

  • Fix panic in get_int if nbytes is zero (#806)

Changed

  • Pass vtable data by value (#826)
  • Exclude development scripts from published package (#810)

Documented

  • Document that BytesMut::{reserve,try_reserve} doesn't preserve unused capacity (#808)
Commits

Updates bytesize from 2.3.1 to 2.4.0

Release notes

Sourced from bytesize's releases.

bytesize: v2.4.0

  • Implement Sum for ByteSize.
  • Minimum supported Rust version (MSRV) is now 1.85.
Changelog

Sourced from bytesize's changelog.

2.4.0

  • Implement Sum for ByteSize.
  • Minimum supported Rust version (MSRV) is now 1.85.
Commits
  • ebf8ed3 chore: release v2.4.0 (#161)
  • 2a1423f feat: implement Sum for ByteSize (#169)
  • b2b22f3 ci: pin actions
  • 3c02c4c chore: update msrv to 1.85
  • 227baa7 chore(deps): bump rand from 0.10.0 to 0.10.1 (#162)
  • 9a4a9c7 chore(deps): bump toml from 1.0.6+spec-1.1.0 to 1.1.2+spec-1.1.0 (#160)
  • b695837 chore(deps): bump taiki-e/install-action from 2.70.3 to 2.75.27 (#158)
  • 94e559a chore(deps): bump actions-rust-lang/setup-rust-toolchain (#159)
  • 1cacb79 chore(deps): bump actions-rust-lang/setup-rust-toolchain (#151)
  • ed48c91 chore(deps): bump taiki-e/install-action from 2.68.15 to 2.70.3 (#150)
  • Additional commits viewable in compare view

Updates cron from 0.16.0 to 0.17.0

Commits

Updates google-cloud-gax from 0.19.2 to 1.10.0

Release notes

Sourced from google-cloud-gax's releases.

v1.0.0

First GA release

We are proud to announce the 1.0 release of the Google Cloud client libraries for Rust. This is the first GA version of the client libraries.

What's Included

  • Fully asynchronous clients for over 140 services, including Cloud Storage, Vertex AI, Secret Manager, and Key Management Service.
  • Fully asynchronous auth library, with support for application default credentials, service account credentials, user credentials, compute engine metadata service, and OIDC-based external credentials[^1].
  • Idiomatic abstractions for long-running operations and pagination APIs.
  • Automatic retries for requests that fail due to transient errors.
  • Automatic demarshalling of error details into idiomatic types.
  • Automatic resumes for uploads to and downloads from Cloud Storage.
  • Support for streaming uploads to Cloud Storage, with retries on errors.
  • Automatic checksumming of data uploaded to or downloaded from Cloud Storage.

What's changed

Compared to the previous release (v0.12.0) this release bumps the version numbers to 1.0.0 and updates README files.

Full Changelog: googleapis/google-cloud-rust@v0.12.0...v1.0.0

Footnotes

[^1]: Also known as workload identify federation or "bring your own id".

Commits

Updates hyper from 1.9.0 to 1.10.1

Release notes

Sourced from hyper's releases.

v1.10.1

What's Changed

Full Changelog: hyperium/hyper@v1.10.0...v1.10.1

v1.10.0

Features

Bug Fixes

  • http1:
  • http2:
    • do not reserve capacity before body data is available (#4061) (99f24345, closes #4003)
    • reading trailers shouldn't propagate NO_ERROR from early response (#3998) (e5ad96b1)

Refactors, chores, et al

New Contributors

... (truncated)

Changelog

Sourced from hyper's changelog.

v1.10.1 (2026-05-29)

Bug Fixes

  • http1: fix busy loop when peer half-closes and open body (#4086) (c6cb906f, closes #4085)

v1.10.0 (2026-05-27)

Bug Fixes

  • http1:
  • http2:
    • do not reserve capacity before body data is available (#4061) (99f24345, closes #4003)
    • reading trailers shouldn't propagate NO_ERROR from early response (#3998) (e5ad96b1)

Features

Commits

Updates itertools from 0.14.0 to 0.15.0

Changelog

Sourced from itertools's changelog.

0.15.0

Breaking

  • Restructure Position as struct instead of enum (#1042, #1043)
  • Canonicalize all_equal_value's error type (#1032)

Added

  • Add *_with_hasher adaptors (#1007)
  • Add strip_prefix and strip_prefix_by methods (#1104)

Changed

  • Remove Clone bounds from tuple_combinations and array_combinations(#1011)
  • must_use for collect_vec (#1009)
  • Make izip! temporary friendly (#1021)
  • Add array_combinations_with_replacement (#1033)
  • Implement Debug for remaining public types (#1038)
  • Specialize ExactlyOneError::count (#1046)
  • Implement PeekingNext for more types, in particular vec::IntoIter (#1059, #1073)
  • Fix PadUsing::next_back (#1082)
  • Introduce [circular_]array_windows, deprecate tuple_windows (#1086)
  • Deprecate tuple_combinations (replaced by array_combinations) (#1085)

Notable Internal Changes

Commits
  • 37bd72a Update CHANGELOG.md: strip_prefix[_by]
  • 86ec635 Use ControlFlow in fold_while implementation
  • d5897f7 refactor(strip_prefix): use try_for_each and drop PartialEq, Eq on StripPrefi...
  • b2a978a feat(Itertools): add strip_prefix and strip_prefix_by methods
  • 12b6ec6 Update CHANGELOG.md for all_equal_value_error's error type
  • 121821e AllEqualValueError implements std::error::Error
  • adac44e Introduce AllEqualValueError
  • 5707384 Update CHANGELOG.md
  • df60ff0 Update CHANGELOG.md
  • 113b850 Update CHANGELOG.md to include with_hasher
  • Additional commits viewable in compare view

Updates mockall from 0.14.0 to 0.15.0

Changelog

Sourced from mockall's changelog.

[ 0.15.0 ] - 2026-06-28

Added

  • Compatibility with the #[auto_impl] macro. (#686)
Commits
  • fc2c853 chore: Release
  • 551fadd Merge pull request #688 from asomers/audit-job-lockfile
  • 21529e3 Fix the audit CI job
  • 2270cdb Merge pull request #686 from Kranzes/automock-auto_impl-compat
  • d3b041d Add compatibility with the #[auto_impl] macro
  • 055886e Merge pull request #687 from asomers/clippy-june-2026
  • ed4bf07 Clippy cleanup
  • f7a4d6f Merge pull request #685 from asomers/clippy=may-2026
  • ba15180 Clippy cleanup: useless_borrows_in_formatting
  • de22d57 Merge pull request #684 from asomers/github-workflows
  • Additional commits viewable in compare view

Updates parquet from 58.3.0 to 59.0.0

Release notes

Sourced from parquet's releases.

arrow 59.0.0

Changelog

59.0.0 (2026-06-04)

Full Changelog

Breaking changes:

Implemented enhancements:

  • Allow casting plain struct to dictionary encoded struct #10038 [arrow]
  • Optimize arrow-flight #10029
  • Align buffers when importing via from_ffi / ArrowArrayStreamReader #10028 [arrow]
  • Switch Parquet LogicalType enum to macro generated version #9995 [parquet]
  • Future proof Parquet Thrift parser #9973 [parquet]
  • Add DatePart 1-indexed variants #9964 [arrow]
  • perf: Rework Parquet Thrift handling of boolean fields #9946 [parquet]
  • Add benchmarks for REE to parquet #9935 [parquet] [arrow]
  • (re) Allow Large FixedSizeBinaryArrays #9906 [arrow]

... (truncated)

Changelog

Sourced from parquet's changelog.

59.0.0 (2026-06-04)

Full Changelog

Breaking changes:

Implemented enhancements:

  • Allow casting plain struct to dictionary encoded struct #10038 [arrow]
  • Optimize arrow-flight #10029
  • Align buffers when importing via from_ffi / ArrowArrayStreamReader #10028 [arrow]
  • Switch Parquet LogicalType enum to macro generated version #9995 [parquet]
  • Future proof Parquet Thrift parser #9973 [parquet]
  • Add DatePart 1-indexed variants #9964 [arrow]
  • perf: Rework Parquet Thrift handling of boolean fields #9946 [parquet]
  • Add benchmarks for REE to parquet #9935 [parquet] [arrow]
  • (re) Allow Large FixedSizeBinaryArrays #9906 [arrow]
  • Add a is_normalized flag to DictionaryArray #9841
  • [Variant] Remove BorrowedShreddingState #9790
  • [parquet] Expose whether FileDecryptionProperties uses a KeyRetriever #9721 [parquet]
  • Align cast logic for from/to_decimal for variant to cast kernel #9688 [arrow]

Fixed bugs:

  • parquet-variant build might fail on s390x #10026
  • FixedSizeBinaryArray implements From<Vec<&[u8]>> etc despite conversion being fallible #10018 [parquet] [arrow]
  • string -> decimal cast should not treat empty string as 0 #10009 [arrow]
  • Cast FixedSizeList to List will lost datatype metadata in list #10004 [arrow]
  • Record reader panics with "index out of bounds" when row group num_rows exceeds actual column data #9992 [parquet]
  • parquet predicate-cache: panic / silent row drop on single-leaf nullable struct #9982 [parquet]
  • parquet-variant doesn't build on 32-bit targets #9977
  • Date32 doesn't parse date with large year Description has been truncated

@dependabot dependabot Bot added dependencies Pull requests that update a dependency file rust Pull requests that update Rust code labels Jul 1, 2026
@dependabot dependabot Bot requested review from a team as code owners July 1, 2026 22:49
@dependabot dependabot Bot added dependencies Pull requests that update a dependency file rust Pull requests that update Rust code labels Jul 1, 2026

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 969f726007

ℹ️ About Codex in GitHub

Codex has been enabled to automatically review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

When you sign up for Codex through ChatGPT, Codex can also answer questions or update the PR, like "@codex address that feedback".

Comment thread quickwit/Cargo.toml
anyhow = "1"
arc-swap = "1.9"
arrow = { version = "58", default-features = false, features = ["ipc"] }
arrow = { version = "59", default-features = false, features = ["ipc"] }

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Badge Keep Arrow on DataFusion's version

When building the DataFusion crates, this workspace arrow now resolves to 59 while datafusion 54.0.0 in the lockfile still depends on arrow 58.3.0. Existing code passes workspace Arrow values into DataFusion APIs, for example quickwit-df-core/src/service.rs builds a RecordBatchStreamAdapter from arrow::datatypes::SchemaRef and arrow::record_batch::RecordBatch; with two Arrow versions these are distinct types, so the datafusion path will not compile until Arrow is kept on 58 or DataFusion is upgraded to a release using Arrow 59.

Useful? React with 👍 / 👎.

Comment thread quickwit/Cargo.toml
# of google-cloud-pubsub is "0.30" which explicitly depends on: google-cloud-auth ^0.17 and google-cloud-gax ^0.19.
google-cloud-auth = { version = "0.17.2", default-features = false, features = ["rustls-tls"] }
google-cloud-gax = "0.19.2"
google-cloud-gax = "1.10.0"

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Keep google-cloud-gax compatible with pubsub

When the gcp-pubsub feature is enabled, quickwit-indexing now imports google_cloud_gax::retry::RetrySetting from the direct 1.x dependency, but google-cloud-pubsub 0.30.0 still depends on and exposes APIs typed with google-cloud-gax 0.19.x; the source calls subscription.exists(Some(RetrySetting::default())), which then passes the wrong crate's type. The comment immediately above this line documents why this dependency cannot be upgraded independently of pubsub.

Useful? React with 👍 / 👎.

Comment thread quickwit/Cargo.toml
rustls = "0.23"
rustls-pemfile = "2.2"
sea-query = { version = "0.32" }
sea-query = { version = "1.0" }

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Badge Keep sea-query aligned with sea-query-binder

When the postgres metastore feature is enabled, this direct dependency now resolves to sea-query 1.0.1, while sea-query-binder 0.7.0 in the lockfile still depends on sea-query 0.32.7. The postgres code imports sea_query::{Query, PostgresQueryBuilder} and sea_query_binder::SqlxBinder and calls .build_sqlx(...); the binder trait is implemented for the 0.32 types, not the 1.0 SelectStatement, so those builds lose build_sqlx and fail unless the binder is upgraded compatibly too.

Useful? React with 👍 / 👎.

Comment thread quickwit/Cargo.toml
# 1. The `OpenApi` struct structure changed (fields are private), breaking our manual merging logic in openapi.rs
# in `quickwit-serve`. This code is fundamentally incompatible with version 5.x.
utoipa = { version = "4.2", features = ["time", "ulid"] }
utoipa = { version = "5.5", features = ["time", "ulid"] }

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Badge Do not upgrade utoipa without porting OpenAPI merging

Any build including quickwit-serve still uses the manual OpenAPI merging called out in the comment above this line: openapi.rs assigns docs_base.tags, takes self.paths.paths, and extends component maps directly. That comment says Utoipa 5 makes the OpenApi structure private/incompatible with this code, so bumping to 5.5 here leaves the serve crate unable to compile unless the merge logic is ported in the same change.

Useful? React with 👍 / 👎.

datafusion-physical-plan = "54"
datafusion-datasource-parquet = "54"
datafusion-distributed = "2.0"
object_store = "0.14"

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Badge Keep object_store on DataFusion's version

When building quickwit-datafusion, DataFusion 54 still resolves to object_store 0.13.2, but this crate now imports the direct object_store 0.14 and implements DataFusion's ObjectStoreRegistry with Arc<dyn ObjectStore> in object_store_registry.rs. The trait methods require the ObjectStore trait from DataFusion's 0.13 dependency, so the 0.14 store types/signatures no longer match for register_store, get_store, and the cached stores.

Useful? React with 👍 / 👎.

Comment thread quickwit/Cargo.toml
] }
ouroboros = "0.18"
parquet = { version = "58", default-features = false, features = ["arrow", "experimental", "snap", "variant_experimental", "zstd"] }
parquet = { version = "59", default-features = false, features = ["arrow", "experimental", "snap", "variant_experimental", "zstd"] }

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Badge Keep parquet 58 until the streaming reader is ported

When quickwit-parquet-engine is built, streaming_reader.rs still imports parquet::format::{PageHeader, PageType} and parquet::thrift::TSerializable; its own comment says parquet::format is scheduled for removal in parquet 59 and the migration was deferred. Bumping the workspace parquet dependency to 59 here therefore removes the public API this reader uses, so the parquet engine will not compile until that reader is updated to the new public metadata/thrift path.

Useful? React with 👍 / 👎.

Comment thread quickwit/Cargo.toml
] }
reqwest-middleware = "0.4"
reqwest-retry = "0.8"
reqwest-middleware = "0.5"

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Badge Keep reqwest-middleware on the reqwest 0.12 line

When building the REST client, this upgrade makes reqwest-middleware 0.5.2 (and reqwest-retry 0.9.1) use reqwest 0.13.3, while the workspace reqwest remains 0.12.28. quickwit-rest-client/src/rest_client.rs passes a workspace reqwest::Client into ReqwestMiddlewareClientBuilder::new, so the builder now expects a different Client type than the one constructed by our code; keep the middleware/retry crates on their reqwest-0.12-compatible versions or bump reqwest too.

Useful? React with 👍 / 👎.

Comment thread quickwit/Cargo.toml
] }
quanta = "0.12"
quick_cache = "0.6.21"
quick_cache = "0.7.0"

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Badge Port quick_cache lifecycle implementation

When quickwit-storage is built, this bump moves quick_cache to 0.7, but base_cache.rs still implements the 0.6 Lifecycle API with begin_request to initialize QuickCacheQueryEffect. In quick_cache 0.7 the request state is created via Default and begin_request is no longer a trait method, so the cache implementation will not compile until the lifecycle impl is ported or the dependency stays on 0.6.

Useful? React with 👍 / 👎.

@dependabot dependabot Bot force-pushed the dependabot/cargo/quickwit/rust-dependencies-c450afab73 branch from 969f726 to 5f3afce Compare July 2, 2026 08:23

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 5f3afce711

ℹ️ About Codex in GitHub

Codex has been enabled to automatically review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

When you sign up for Codex through ChatGPT, Codex can also answer questions or update the PR, like "@codex address that feedback".

object_store = "0.13"
datafusion = "54"
datafusion-substrait = "54"
datafusion-distributed = "2.0"

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Badge Port the datafusion-distributed 2 planner API

When building quickwit-df-core, this bump to datafusion-distributed 2.0 leaves the crate on the 1.x API: session.rs still imports/registers DistributedPhysicalOptimizerRule, while the 2.x public setup is SessionStateBuilderExt::with_distributed_planner(), and task_estimator.rs still wraps leaves with the old PartitionIsolatorExec instead of the 2.x leaf-planning API. Any build that includes the DataFusion path will fail until these usages are ported or this dependency stays on 1.x.

Useful? React with 👍 / 👎.

serde_with = { workspace = true }
thiserror = { workspace = true }
thrift = { version = "0.17", default-features = false }
thrift = { version = "0.23", default-features = false }

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Badge Keep thrift aligned with parquet's generated types

The streaming reader decodes PageHeader via parquet::thrift::TSerializable but constructs the protocols from the direct thrift dependency (TCompactInputProtocol/TCompactOutputProtocol). With this line on 0.23 while the parquet types that still expose those APIs are generated against thrift 0.17, Rust sees two different thrift crates, so PageHeader::read_from_in_protocol(&mut prot) and the test write_to_out_protocol no longer accept the protocol values even after the parquet version is kept compatible.

Useful? React with 👍 / 👎.

datafusion-datasource-parquet = "53"
datafusion-distributed = "1.0"
object_store = "0.13"
datafusion = "54"

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Badge Port DataFusion downcasts to the 54 API

When quickwit-datafusion is built against DataFusion 54, the metrics table/schema providers and custom UDFs still implement as_any for TableProvider, SchemaProvider, AggregateUDFImpl, and ScalarUDFImpl, and the DataFusion service/optimizer code still calls .as_any() on DataFusion ExecutionPlan/PhysicalExpr objects. DataFusion 54 removed these trait methods in favor of direct downcast_ref/is, so this crate needs those implementations and call sites ported before the version bump can compile.

Useful? React with 👍 / 👎.

… 33 updates

Bumps the rust-dependencies group with 32 updates in the /quickwit directory:

| Package | From | To |
| --- | --- | --- |
| [arrow](https://github.com/apache/arrow-rs) | `58.3.0` | `59.0.0` |
| [bytes](https://github.com/tokio-rs/bytes) | `1.11.1` | `1.12.0` |
| [bytesize](https://github.com/bytesize-rs/bytesize) | `2.3.1` | `2.4.0` |
| [cron](https://github.com/zslayton/cron) | `0.16.0` | `0.17.0` |
| [google-cloud-gax](https://github.com/googleapis/google-cloud-rust) | `0.19.2` | `1.10.0` |
| [hyper](https://github.com/hyperium/hyper) | `1.9.0` | `1.10.1` |
| [itertools](https://github.com/rust-itertools/itertools) | `0.14.0` | `0.15.0` |
| [mockall](https://github.com/asomers/mockall) | `0.14.0` | `0.15.0` |
| [parquet](https://github.com/apache/arrow-rs) | `58.3.0` | `59.0.0` |
| [procfs](https://github.com/eminence/procfs) | `0.17.0` | `0.18.0` |
| [pulsar](https://github.com/streamnative/pulsar-rs) | `6.7.2` | `6.8.0` |
| [quick_cache](https://github.com/arthurprs/quick-cache) | `0.6.21` | `0.7.0` |
| [reqwest-middleware](https://github.com/TrueLayer/reqwest-middleware) | `0.4.2` | `0.5.2` |
| [reqwest-retry](https://github.com/TrueLayer/reqwest-middleware) | `0.8.0` | `0.9.1` |
| [sea-query](https://github.com/SeaQL/sea-query) | `0.32.7` | `1.0.1` |
| [serde_qs](https://github.com/samscott89/serde_qs) | `0.15.0` | `1.1.2` |
| [serde_with](https://github.com/jonasbb/serde_with) | `3.20.0` | `3.21.0` |
| [serial_test](https://github.com/palfrey/serial_test) | `3.4.0` | `3.5.0` |
| [tabled](https://github.com/zhiburt/tabled) | `0.20.0` | `0.21.0` |
| [tower-http](https://github.com/tower-rs/tower-http) | `0.6.10` | `0.7.0` |
| [utoipa](https://github.com/juhaku/utoipa) | `4.2.3` | `5.5.0` |
| [vrl](https://github.com/vectordotdev/vrl) | `0.32.0` | `0.33.1` |
| [aws-smithy-types](https://github.com/smithy-lang/smithy-rs) | `1.4.7` | `1.5.0` |
| [opendal](https://github.com/apache/opendal) | `0.56.0` | `0.57.0` |
| [datafusion](https://github.com/apache/datafusion) | `53.1.0` | `54.0.0` |
| [datafusion-substrait](https://github.com/apache/datafusion) | `53.1.0` | `54.0.0` |
| [datafusion-datasource](https://github.com/apache/datafusion) | `53.1.0` | `54.0.0` |
| [datafusion-physical-plan](https://github.com/apache/datafusion) | `53.1.0` | `54.0.0` |
| [datafusion-datasource-parquet](https://github.com/apache/datafusion) | `53.1.0` | `54.0.0` |
| [datafusion-distributed](https://github.com/datafusion-contrib/datafusion-distributed) | `1.0.0` | `2.0.0` |
| [object_store](https://github.com/apache/arrow-rs-object-store) | `0.13.2` | `0.14.0` |
| [thrift](https://github.com/apache/thrift) | `0.17.0` | `0.23.0` |



Updates `arrow` from 58.3.0 to 59.0.0
- [Release notes](https://github.com/apache/arrow-rs/releases)
- [Changelog](https://github.com/apache/arrow-rs/blob/main/CHANGELOG.md)
- [Commits](apache/arrow-rs@58.3.0...59.0.0)

Updates `bytes` from 1.11.1 to 1.12.0
- [Release notes](https://github.com/tokio-rs/bytes/releases)
- [Changelog](https://github.com/tokio-rs/bytes/blob/master/CHANGELOG.md)
- [Commits](tokio-rs/bytes@v1.11.1...v1.12.0)

Updates `bytesize` from 2.3.1 to 2.4.0
- [Release notes](https://github.com/bytesize-rs/bytesize/releases)
- [Changelog](https://github.com/bytesize-rs/bytesize/blob/master/CHANGELOG.md)
- [Commits](bytesize-rs/bytesize@bytesize-v2.3.1...bytesize-v2.4.0)

Updates `cron` from 0.16.0 to 0.17.0
- [Release notes](https://github.com/zslayton/cron/releases)
- [Commits](https://github.com/zslayton/cron/commits)

Updates `google-cloud-gax` from 0.19.2 to 1.10.0
- [Release notes](https://github.com/googleapis/google-cloud-rust/releases)
- [Commits](https://github.com/googleapis/google-cloud-rust/commits)

Updates `hyper` from 1.9.0 to 1.10.1
- [Release notes](https://github.com/hyperium/hyper/releases)
- [Changelog](https://github.com/hyperium/hyper/blob/master/CHANGELOG.md)
- [Commits](hyperium/hyper@v1.9.0...v1.10.1)

Updates `itertools` from 0.14.0 to 0.15.0
- [Changelog](https://github.com/rust-itertools/itertools/blob/master/CHANGELOG.md)
- [Commits](rust-itertools/itertools@v0.14.0...v0.15.0)

Updates `mockall` from 0.14.0 to 0.15.0
- [Changelog](https://github.com/asomers/mockall/blob/master/CHANGELOG.md)
- [Commits](asomers/mockall@v0.14.0...v0.15.0)

Updates `parquet` from 58.3.0 to 59.0.0
- [Release notes](https://github.com/apache/arrow-rs/releases)
- [Changelog](https://github.com/apache/arrow-rs/blob/main/CHANGELOG.md)
- [Commits](apache/arrow-rs@58.3.0...59.0.0)

Updates `procfs` from 0.17.0 to 0.18.0
- [Release notes](https://github.com/eminence/procfs/releases)
- [Commits](eminence/procfs@v0.17.0...v0.18.0)

Updates `pulsar` from 6.7.2 to 6.8.0
- [Release notes](https://github.com/streamnative/pulsar-rs/releases)
- [Commits](streamnative/pulsar-rs@v6.7.2...v6.8.0)

Updates `quick_cache` from 0.6.21 to 0.7.0
- [Release notes](https://github.com/arthurprs/quick-cache/releases)
- [Commits](arthurprs/quick-cache@v0.6.21...v0.7.0)

Updates `reqwest-middleware` from 0.4.2 to 0.5.2
- [Release notes](https://github.com/TrueLayer/reqwest-middleware/releases)
- [Commits](TrueLayer/reqwest-middleware@reqwest-middleware-v0.4.2...reqwest-middleware-v0.5.2)

Updates `reqwest-retry` from 0.8.0 to 0.9.1
- [Release notes](https://github.com/TrueLayer/reqwest-middleware/releases)
- [Commits](https://github.com/TrueLayer/reqwest-middleware/commits/reqwest-retry-v0.9.1)

Updates `sea-query` from 0.32.7 to 1.0.1
- [Release notes](https://github.com/SeaQL/sea-query/releases)
- [Changelog](https://github.com/SeaQL/sea-query/blob/master/CHANGELOG.md)
- [Commits](https://github.com/SeaQL/sea-query/commits)

Updates `serde_json` from 1.0.149 to 1.0.150
- [Release notes](https://github.com/serde-rs/json/releases)
- [Commits](serde-rs/json@v1.0.149...v1.0.150)

Updates `serde_qs` from 0.15.0 to 1.1.2
- [Release notes](https://github.com/samscott89/serde_qs/releases)
- [Changelog](https://github.com/samscott89/serde_qs/blob/main/CHANGELOG.md)
- [Commits](samscott89/serde_qs@v0.15.0...v1.1.2)

Updates `serde_with` from 3.20.0 to 3.21.0
- [Release notes](https://github.com/jonasbb/serde_with/releases)
- [Commits](jonasbb/serde_with@v3.20.0...v3.21.0)

Updates `serial_test` from 3.4.0 to 3.5.0
- [Release notes](https://github.com/palfrey/serial_test/releases)
- [Commits](palfrey/serial_test@v3.4.0...v3.5.0)

Updates `tabled` from 0.20.0 to 0.21.0
- [Changelog](https://github.com/zhiburt/tabled/blob/master/CHANGELOG.md)
- [Commits](https://github.com/zhiburt/tabled/commits)

Updates `tower-http` from 0.6.10 to 0.7.0
- [Release notes](https://github.com/tower-rs/tower-http/releases)
- [Commits](tower-rs/tower-http@tower-http-0.6.10...tower-http-0.7.0)

Updates `utoipa` from 4.2.3 to 5.5.0
- [Release notes](https://github.com/juhaku/utoipa/releases)
- [Changelog](https://github.com/juhaku/utoipa/blob/master/utoipa-rapidoc/CHANGELOG.md)
- [Commits](juhaku/utoipa@utoipa-4.2.3...utoipa-5.5.0)

Updates `vrl` from 0.32.0 to 0.33.1
- [Changelog](https://github.com/vectordotdev/vrl/blob/main/CHANGELOG.md)
- [Commits](vectordotdev/vrl@v0.32.0...v0.33.1)

Updates `aws-smithy-types` from 1.4.7 to 1.5.0
- [Release notes](https://github.com/smithy-lang/smithy-rs/releases)
- [Changelog](https://github.com/smithy-lang/smithy-rs/blob/main/CHANGELOG.md)
- [Commits](https://github.com/smithy-lang/smithy-rs/commits)

Updates `opendal` from 0.56.0 to 0.57.0
- [Release notes](https://github.com/apache/opendal/releases)
- [Changelog](https://github.com/apache/opendal/blob/main/CHANGELOG.md)
- [Commits](apache/opendal@v0.56.0...v0.57.0)

Updates `datafusion` from 53.1.0 to 54.0.0
- [Changelog](https://github.com/apache/datafusion/blob/main/CHANGELOG.md)
- [Commits](apache/datafusion@53.1.0...54.0.0)

Updates `datafusion-substrait` from 53.1.0 to 54.0.0
- [Changelog](https://github.com/apache/datafusion/blob/main/CHANGELOG.md)
- [Commits](apache/datafusion@53.1.0...54.0.0)

Updates `datafusion-datasource` from 53.1.0 to 54.0.0
- [Changelog](https://github.com/apache/datafusion/blob/main/CHANGELOG.md)
- [Commits](apache/datafusion@53.1.0...54.0.0)

Updates `datafusion-physical-plan` from 53.1.0 to 54.0.0
- [Changelog](https://github.com/apache/datafusion/blob/main/CHANGELOG.md)
- [Commits](apache/datafusion@53.1.0...54.0.0)

Updates `datafusion-datasource-parquet` from 53.1.0 to 54.0.0
- [Changelog](https://github.com/apache/datafusion/blob/main/CHANGELOG.md)
- [Commits](apache/datafusion@53.1.0...54.0.0)

Updates `datafusion-distributed` from 1.0.0 to 2.0.0
- [Release notes](https://github.com/datafusion-contrib/datafusion-distributed/releases)
- [Commits](datafusion-contrib/datafusion-distributed@v1.0.0...v2.0.0)

Updates `object_store` from 0.13.2 to 0.14.0
- [Changelog](https://github.com/apache/arrow-rs-object-store/blob/main/CHANGELOG-old.md)
- [Commits](apache/arrow-rs-object-store@v0.13.2...v0.14.0)

Updates `thrift` from 0.17.0 to 0.23.0
- [Release notes](https://github.com/apache/thrift/releases)
- [Changelog](https://github.com/apache/thrift/blob/master/CHANGES.md)
- [Commits](apache/thrift@v0.17.0...v0.23.0)

---
updated-dependencies:
- dependency-name: arrow
  dependency-version: 59.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: rust-dependencies
- dependency-name: aws-smithy-types
  dependency-version: 1.5.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: rust-dependencies
- dependency-name: bytes
  dependency-version: 1.12.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: rust-dependencies
- dependency-name: bytesize
  dependency-version: 2.4.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: rust-dependencies
- dependency-name: cron
  dependency-version: 0.17.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: rust-dependencies
- dependency-name: datafusion
  dependency-version: 54.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: rust-dependencies
- dependency-name: datafusion-datasource
  dependency-version: 54.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: rust-dependencies
- dependency-name: datafusion-datasource-parquet
  dependency-version: 54.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: rust-dependencies
- dependency-name: datafusion-distributed
  dependency-version: 2.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: rust-dependencies
- dependency-name: datafusion-physical-plan
  dependency-version: 54.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: rust-dependencies
- dependency-name: datafusion-substrait
  dependency-version: 54.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: rust-dependencies
- dependency-name: google-cloud-gax
  dependency-version: 1.10.0
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: rust-dependencies
- dependency-name: hyper
  dependency-version: 1.10.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: rust-dependencies
- dependency-name: itertools
  dependency-version: 0.15.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: rust-dependencies
- dependency-name: mockall
  dependency-version: 0.15.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: rust-dependencies
- dependency-name: object_store
  dependency-version: 0.14.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: rust-dependencies
- dependency-name: opendal
  dependency-version: 0.57.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: rust-dependencies
- dependency-name: parquet
  dependency-version: 59.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: rust-dependencies
- dependency-name: procfs
  dependency-version: 0.18.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: rust-dependencies
- dependency-name: pulsar
  dependency-version: 6.8.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: rust-dependencies
- dependency-name: quick_cache
  dependency-version: 0.7.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: rust-dependencies
- dependency-name: reqwest-middleware
  dependency-version: 0.5.2
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: rust-dependencies
- dependency-name: reqwest-retry
  dependency-version: 0.9.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: rust-dependencies
- dependency-name: sea-query
  dependency-version: 1.0.1
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: rust-dependencies
- dependency-name: serde_json
  dependency-version: 1.0.150
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: rust-dependencies
- dependency-name: serde_qs
  dependency-version: 1.1.2
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: rust-dependencies
- dependency-name: serde_with
  dependency-version: 3.21.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: rust-dependencies
- dependency-name: serial_test
  dependency-version: 3.5.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: rust-dependencies
- dependency-name: tabled
  dependency-version: 0.21.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: rust-dependencies
- dependency-name: thrift
  dependency-version: 0.23.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: rust-dependencies
- dependency-name: tower-http
  dependency-version: 0.7.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: rust-dependencies
- dependency-name: utoipa
  dependency-version: 5.5.0
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: rust-dependencies
- dependency-name: vrl
  dependency-version: 0.33.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: rust-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot Bot force-pushed the dependabot/cargo/quickwit/rust-dependencies-c450afab73 branch from 5f3afce to afa2fca Compare July 2, 2026 09:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file rust Pull requests that update Rust code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants