Skip to content

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

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

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

Conversation

@dependabot

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

Copy link
Copy Markdown
Contributor

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

Package From To
arrow 58.3.0 59.1.0
base64 0.22.1 0.23.0
google-cloud-gax 0.19.2 1.12.0
http-body 1.0.1 1.1.0
hyper 1.10.1 1.11.0
itertools 0.14.0 0.15.0
lambda_runtime 1.2.1 1.3.0
mockall 0.14.0 0.15.0
parquet 58.3.0 59.1.0
prettyplease 0.2.37 0.3.0
reqwest-middleware 0.4.2 0.5.2
reqwest-retry 0.8.0 0.9.1
rust-embed 8.11.0 8.12.0
sea-query 0.32.7 1.0.1
serial_test 3.5.0 4.0.1
syn 2.0.118 3.0.3
tokio 1.52.3 1.53.1
tower-http 0.6.11 0.7.0
ulid 1.2.1 3.0.0
utoipa 4.2.3 5.5.0
uuid 1.23.4 1.24.0
aws-sdk-s3 1.138.0 1.138.1
aws-smithy-mocks 0.2.6 0.3.0
aws-smithy-runtime-api 1.13.0 1.14.0
aws-types 1.4.0 1.5.0
datafusion 53.1.0 54.1.0
datafusion-substrait 53.1.0 54.1.0
datafusion-datasource 53.1.0 54.1.0
datafusion-physical-plan 53.1.0 54.1.0
datafusion-datasource-parquet 53.1.0 54.1.0
datafusion-distributed 1.0.0 2.0.0
object_store 0.13.2 0.14.1
thrift 0.17.0 0.24.0

Updates arrow from 58.3.0 to 59.1.0

Release notes

Sourced from arrow's releases.

arrow 59.1.0

Changelog

59.1.0 (2026-07-03)

Full Changelog

Implemented enhancements:

  • Fast path for nested DictionaryArray casting #10247 [arrow]
  • parquet/arrow: reading multiple nested columns fails with "Not all children array length are the same!" when a list continues across DataPageV2 page boundary #10243 [parquet]
  • Add product aggregate kernel to arrow-rs #10150 [arrow]
  • Stricter DataType parsing #10146 [arrow]
  • Support validating CSV headers against Schema #10143 [arrow]
  • arrow-ipc: Supports compression level configuration for arrow-ipc writer #10132 [arrow]
  • [Variant] VariantArray field API naming #10093
  • Add StructArray::field_ APIs symmetric to StructArray::column_ ones #10092 [arrow]
  • arrow-buffer: implement Saturating, CheckedShl, Not num-traits for i256 #10087 [arrow]
  • feat: native concat for MapArray #10047 [arrow]
  • [Variant] Add variant_to_arrow Dictionary/REE type support #10013

Fixed bugs:

  • arrow-row on fixed size binary/list with size 0 and no nulls return wrong length #10270
  • casting list to 0-size fixedsizelist can cause incorrect output length #10227 [arrow]
  • Buffer count mismatched with metadata when encoding records with dictionary of dictionaries #10213 [arrow]
  • Buffer::into_mutable is not consistent regarding sliced data and can lead to panics #10117 [arrow]
  • parquet_derive: cannot read or write columns whose name is a Rust keyword (raw identifiers like r#type become column "r#type") #10112
  • parquet: fix OffsetBuffer panic on corrupt input #10107 [parquet]
  • Parquet geospatial conversion uses metadata key "algorithm" instead of "edges" in geoarrow metadata #9929 [parquet]

... (truncated)

Changelog

Sourced from arrow's changelog.

59.1.0 (2026-07-03)

Full Changelog

Implemented enhancements:

  • Fast path for nested DictionaryArray casting #10247 [arrow]
  • parquet/arrow: reading multiple nested columns fails with "Not all children array length are the same!" when a list continues across DataPageV2 page boundary #10243 [parquet]
  • Add product aggregate kernel to arrow-rs #10150 [arrow]
  • Stricter DataType parsing #10146 [arrow]
  • Support validating CSV headers against Schema #10143 [arrow]
  • arrow-ipc: Supports compression level configuration for arrow-ipc writer #10132 [arrow]
  • [Variant] VariantArray field API naming #10093
  • Add StructArray::field_ APIs symmetric to StructArray::column_ ones #10092 [arrow]
  • arrow-buffer: implement Saturating, CheckedShl, Not num-traits for i256 #10087 [arrow]
  • feat: native concat for MapArray #10047 [arrow]
  • [Variant] Add variant_to_arrow Dictionary/REE type support #10013

Fixed bugs:

  • arrow-row on fixed size binary/list with size 0 and no nulls return wrong length #10270
  • casting list to 0-size fixedsizelist can cause incorrect output length #10227 [arrow]
  • Buffer count mismatched with metadata when encoding records with dictionary of dictionaries #10213 [arrow]
  • Buffer::into_mutable is not consistent regarding sliced data and can lead to panics #10117 [arrow]
  • parquet_derive: cannot read or write columns whose name is a Rust keyword (raw identifiers like r#type become column "r#type") #10112
  • parquet: fix OffsetBuffer panic on corrupt input #10107 [parquet]
  • Parquet geospatial conversion uses metadata key "algorithm" instead of "edges" in geoarrow metadata #9929 [parquet]

Documentation updates:

Performance improvements:

Closed issues:

  • Soundness: Unsound alignment contract in public FromBytes trait and BitReader::get_batch #10164 [parquet]
  • ParquetPushDecoder: expose the next row-group index that try_next_reader will yield #10148 [parquet]

... (truncated)

Commits
  • b1de629 Prepare for 59.1.0 release (#10274)
  • c36e926 feat: Add support for MapArray in arrow_row (#9486)
  • d2519a1 fix(arrow-row): allow to convert non empty fixed size binary/list array with ...
  • ddef6cf chore: Fix audit CI run by ignore quick-xml audit advisories (#10267)
  • d969025 fix main: parquet test compilation failure (#10266)
  • c7dc6b8 Add validated row decode benchmark (#10259)
  • 7307740 fix: write error for dbg output of out of range timestamps (#10130)
  • af1c24a minor: drive-by refactors for dicts in substring & filter (#10264)
  • 7095ce4 Replace conversion of binary->string in arrow-row from arraydata to direct co...
  • 8c7df18 reduce noise in flight benchmarks [tokio-threads] [# of columns in benchmarks...
  • Additional commits viewable in compare view

Updates base64 from 0.22.1 to 0.23.0

Changelog

Sourced from base64's changelog.

0.23.0

  • Added more consts for preconfigured configs and engines
  • Make DecodeError::InvalidLastSymbol more clear by including the decoded value
  • Added SIMD-accelerated engines behind the default-on simd-unsafe feature: Simd picks the best instruction set at runtime (AVX2 on x86_64, NEON on aarch64) and falls back to the scalar GeneralPurpose engine, while Avx2 and Neon target one instruction set with no runtime detection and work in no_std. The engines support the standard and URL-safe alphabets.
  • Update MSRV to 1.71.0
  • Add support for custom padding symbols
Commits
  • 9e9220a v0.23.0
  • 870326e Merge pull request #306 from marshallpierce/mp/trailing-bits-docs
  • fbec5f1 Document no trailing trailing bits
  • 0a23549 Merge pull request #305 from marshallpierce/mp/edition-2021
  • f10b7e2 Update deps & edition
  • 9d21a59 Merge pull request #304 from marshallpierce/mp/custom-padding-rebase
  • f70bad2 Support custom padding symbols
  • 684d79c Merge pull request #301 from marshallpierce/mp/simd-gardening
  • 5bf66f2 Merge pull request #284 from AbeZbm/add-tests
  • d3831cf Followups to SIMD work
  • Additional commits viewable in compare view

Updates google-cloud-gax from 0.19.2 to 1.12.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 http-body from 1.0.1 to 1.1.0

Commits

Updates hyper from 1.10.1 to 1.11.0

Release notes

Sourced from hyper's releases.

v1.11.0

Features

  • rt: add ReadBufCursor::initialized_unfilled() method (#4115) (ccc1e850)

Bug Fixes

All PRs

New Contributors

... (truncated)

Changelog

Sourced from hyper's changelog.

v1.11.0 (2026-07-20)

Bug Fixes

Features

  • rt: add ReadBufCursor::initialized_unfilled() method (#4115) (ccc1e850)
Commits
  • 67ace64 v1.11.0
  • 540fff9 fix(http1): discard content-length header when received before transfer-encod...
  • ccc1e85 feat(rt): add ReadBufCursor::initialized_unfilled() method (#4115)
  • 0ea8bc2 docs(maintainers): move some collaborators to emeriti (#4125)
  • 2fc06fc docs(governance): define Advisor role (#4098)
  • e0d14d1 style(proto): explicitly allow decimal_literal_representation lint (#4117)
  • de1483d fix(http1): use append for repeat trailer values in encoder (#4118)
  • 08c3416 style(headers): small refactor to remove question_mark lint (#4116)
  • aecf5ab fix(http2): avoid buffering Upgraded writes without send capacity (#4102)
  • f584091 fix(http1): allow up to max_headers trailers (#4108)
  • Additional commits viewable in compare view

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 lambda_runtime from 1.2.1 to 1.3.0

Commits

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.1.0

Release notes

Sourced from parquet's releases.

arrow 59.1.0

Changelog

59.1.0 (2026-07-03)

Full Changelog

Implemented enhancements:

  • Fast path for nested DictionaryArray casting #10247 [arrow]
  • parquet/arrow: reading multiple nested columns fails with "Not all children array length are the same!" when a list continues across DataPageV2 page boundary #10243 [parquet]
  • Add product aggregate kernel to arrow-rs #10150 [arrow]
  • Stricter DataType parsing #10146 [arrow]
  • Support validating CSV headers against Schema #10143 [arrow]
  • arrow-ipc: Supports compression level configuration for arrow-ipc writer #10132 [arrow]
  • [Variant] VariantArray field API naming #10093
  • Add StructArray::field_ APIs symmetric to StructArray::column_ ones #10092 [arrow]
  • arrow-buffer: implement Saturating, CheckedShl, Not num-traits for i256 #10087 [arrow]
  • feat: native concat for MapArray #10047 [arrow]
  • [Variant] Add variant_to_arrow Dictionary/REE type support #10013

Fixed bugs:

  • arrow-row on fixed size binary/list with size 0 and no nulls return wrong length #10270
  • casting list to 0-size fixedsizelist can cause incorrect output length #10227 [arrow]
  • Buffer count mismatched with metadata when encoding records with dictionary of dictionaries #10213 [arrow]
  • Buffer::into_mutable is not consistent regarding sliced data and can lead to panics #10117 [arrow]
  • parquet_derive: cannot read or write columns whose name is a Rust keyword (raw identifiers like r#type become column "r#type") #10112
  • parquet: fix OffsetBuffer panic on corrupt input #10107 [parquet]
  • Parquet geospatial conversion uses metadata key "algorithm" instead of "edges" in geoarrow metadata #9929 [parquet]

... (truncated)

Changelog

Sourced from parquet's changelog.

59.1.0 (2026-07-03)

Full Changelog

Implemented enhancements:

  • Fast path for nested DictionaryArray casting #10247 [arrow]
  • parquet/arrow: reading multiple nested columns fails with "Not all children array length are the same!" when a list continues across DataPageV2 page boundary #10243 [parquet]
  • Add product aggregate kernel to arrow-rs #10150 [arrow]
  • Stricter DataType parsing #10146 [arrow]
  • Support validating CSV headers against Schema #10143 [arrow]
  • arrow-ipc: Supports compression level configuration for arrow-ipc writer #10132 [arrow]
  • [Variant] VariantArray field API naming #10093
  • Add StructArray::field_ APIs symmetric to StructArray::column_ ones #10092 [arrow]
  • arrow-buffer: implement Saturating, CheckedShl, Not num-traits for i256 #10087 [arrow]
  • feat: native concat for MapArray #10047 [arrow]
  • [Variant] Add variant_to_arrow Dictionary/REE type support #10013

Fixed bugs:

  • arrow-row on fixed size binary/list with size 0 and no nulls return wrong length #10270
  • casting list to 0-size fixedsizelist can cause incorrect output length #10227 [arrow]
  • Buffer count mismatched with metadata when encoding records with dictionary of dictionaries #10213 [arrow]
  • Buffer::into_mutable is not consistent regarding sliced data and can lead to panics #10117 [arrow]
  • parquet_derive: cannot read or write columns whose name is a Rust keyword (raw identifiers like r#type become column "r#type") #10112
  • parquet: fix OffsetBuffer panic on corrupt input #10107 [parquet]
  • Parquet geospatial conversion uses metadata key "algorithm" instead of "edges" in geoarrow metadata #9929 [parquet]

Documentation updates:

Performance improvements:

Closed issues:

  • Soundness: Unsound alignment contract in public FromBytes trait and BitReader::get_batch #10164 [parquet]
  • ParquetPushDecoder: expose the next row-group index that try_next_reader will yield #10148 [parquet]

... (truncated)

Commits
  • b1de629 Prepare for 59.1.0 release (#10274)
  • c36e926 feat: Add support for MapArray in arrow_row (#9486)
  • d2519a1 fix(arrow-row): allow to convert non empty fixed size binary/list array with ...
  • ddef6cf chore: Fix audit CI run by ignore quick-xml audit advisories (#10267)
  • d969025 fix main: parquet test compilation failure (#10266)
  • c7dc6b8 Add validated row decode benchmark (#10259)
  • 7307740 fix: write error for dbg output of out of range timestamps (#10130)
  • af1c24a minor: d...

    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 30, 2026
@dependabot
dependabot Bot requested review from a team as code owners July 30, 2026 16:41
@dependabot dependabot Bot added dependencies Pull requests that update a dependency file rust Pull requests that update Rust code labels Jul 30, 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: a60f288cdf

ℹ️ 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 aligned with DataFusion

DataFusion 54.1.0 in the updated lockfile still depends on Arrow/Parquet 58.3.0, while this workspace dependency now exposes Arrow 59.1.0 to Quickwit crates. That creates incompatible arrow types across the DataFusion boundary; for example quickwit-datafusion implements DataFusion UDF/TableProvider code with direct arrow::datatypes::DataType/Field values and also exchanges Arrow fields from quickwit-parquet-engine, so those values no longer match DataFusion's Arrow 58 APIs. Keep the workspace Arrow/Parquet versions on DataFusion's Arrow line, or upgrade DataFusion to a release that uses Arrow 59 too.

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", default-features = false, features = ["rustls-tls"] }
google-cloud-gax = "0.19"
google-cloud-gax = "1.12"

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 on Pub/Sub's version

When the gcp-pubsub feature is enabled, quickwit-indexing imports google_cloud_gax::retry::RetrySetting directly and passes it to google_cloud_pubsub::subscription::Subscription::exists. This bump makes Quickwit use google-cloud-gax 1.12.0 while google-cloud-pubsub 0.30.0 still depends on google-cloud-gax 0.19.2, so that argument is from the wrong crate version and the GCP Pub/Sub source will not compile; this is exactly the incompatibility described in the adjacent comment.

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 compatible with SqlxBinder

With the postgres feature, quickwit-metastore uses sea_query::Query together with sea_query_binder::SqlxBinder for calls such as build_sqlx in quickwit-metastore/src/metastore/postgres/metastore.rs. The updated lockfile now selects sea-query 1.0.1 for Quickwit while sea-query-binder 0.7.0 still depends on sea-query 0.32.7, so the binder trait is implemented for a different sea-query crate version than the query builders used here. Keep sea-query at 0.32 or upgrade the binder in the same change.

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 bump utoipa past the documented 4.x ceiling

The OpenAPI builder still mutates utoipa::openapi::OpenApi internals directly in quickwit-serve/src/openapi.rs (docs_base.tags, self.paths.paths, schema.components, etc.). The comment immediately above this dependency states that utoipa 5.x made those fields private and that the current merge logic is incompatible, so bumping to 5.5 without rewriting that code breaks the serve/OpenAPI build path.

Useful? React with 👍 / 👎.

Comment thread quickwit/Cargo.toml
Comment on lines +251 to +252
reqwest-middleware = "0.5"
reqwest-retry = "0.9"

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 and middleware on the same major line

quickwit-rest-client still builds a reqwest::Client from the workspace reqwest 0.12 dependency and passes it to reqwest_middleware::ClientBuilder::new, but the bumped middleware/retry crates now pull reqwest 0.13. The lockfile consequently has quickwit-rest-client depending on reqwest 0.12.28 alongside reqwest-middleware 0.5.2/reqwest-retry 0.9.1, whose APIs are typed against reqwest 0.13.4, so the rest client no longer compiles until these are upgraded together.

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 aligned with DataFusion

quickwit-datafusion implements DataFusion's ObjectStoreRegistry but imports object_store::ObjectStore directly for the method signatures and cached stores. DataFusion 54.1.0 in the lockfile still depends on object_store 0.13.2, while this line makes the crate use object_store 0.14.1, so the registry implementation returns a different Arc<dyn ObjectStore> type than the DataFusion trait expects; keep the direct dependency on DataFusion's object_store version or upgrade DataFusion to the same one.

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 Migrate parquet::format before bumping Parquet

quickwit-parquet-engine still imports parquet::format::{PageHeader, PageType} and parquet::thrift::TSerializable in the streaming/page decoder paths, and its own comment notes that parquet::format was scheduled for removal in Parquet 59. This bump moves the workspace to Parquet 59 without migrating those call sites, so the parquet engine build breaks before any metrics parquet reads can run.

Useful? React with 👍 / 👎.

serde_with = { workspace = true }
thiserror = { workspace = true }
thrift = { version = "0.17", default-features = false }
thrift = { version = "0.24", 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 compatible with Parquet's protocol traits

quickwit-parquet-engine/src/storage/streaming_reader.rs constructs thrift::protocol::TCompactInputProtocol/TCompactOutputProtocol and passes them through Parquet's TSerializable helpers for page headers. Those helpers are tied to the thrift crate version used by Parquet; changing this direct dependency to 0.24 while the code still uses Parquet's thrift serialization path gives protocol types from the wrong crate version. Keep thrift on the Parquet-compatible 0.17 line until the streaming reader is migrated off that API.

Useful? React with 👍 / 👎.

… 33 updates

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

| Package | From | To |
| --- | --- | --- |
| [arrow](https://github.com/apache/arrow-rs) | `58.3.0` | `59.1.0` |
| [base64](https://github.com/marshallpierce/rust-base64) | `0.22.1` | `0.23.0` |
| [google-cloud-gax](https://github.com/googleapis/google-cloud-rust) | `0.19.2` | `1.12.0` |
| [http-body](https://github.com/hyperium/http-body) | `1.0.1` | `1.1.0` |
| [hyper](https://github.com/hyperium/hyper) | `1.10.1` | `1.11.0` |
| [itertools](https://github.com/rust-itertools/itertools) | `0.14.0` | `0.15.0` |
| [lambda_runtime](https://github.com/aws/aws-lambda-rust-runtime) | `1.2.1` | `1.3.0` |
| [mockall](https://github.com/asomers/mockall) | `0.14.0` | `0.15.0` |
| [parquet](https://github.com/apache/arrow-rs) | `58.3.0` | `59.1.0` |
| [prettyplease](https://github.com/dtolnay/prettyplease) | `0.2.37` | `0.3.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` |
| rust-embed | `8.11.0` | `8.12.0` |
| [sea-query](https://github.com/SeaQL/sea-query) | `0.32.7` | `1.0.1` |
| [serial_test](https://github.com/palfrey/serial_test) | `3.5.0` | `4.0.1` |
| [syn](https://github.com/dtolnay/syn) | `2.0.118` | `3.0.3` |
| [tokio](https://github.com/tokio-rs/tokio) | `1.52.3` | `1.53.1` |
| [tower-http](https://github.com/tower-rs/tower-http) | `0.6.11` | `0.7.0` |
| [ulid](https://github.com/dylanhart/ulid-rs) | `1.2.1` | `3.0.0` |
| [utoipa](https://github.com/juhaku/utoipa) | `4.2.3` | `5.5.0` |
| [uuid](https://github.com/uuid-rs/uuid) | `1.23.4` | `1.24.0` |
| [aws-sdk-s3](https://github.com/awslabs/aws-sdk-rust) | `1.138.0` | `1.138.1` |
| [aws-smithy-mocks](https://github.com/smithy-lang/smithy-rs) | `0.2.6` | `0.3.0` |
| [aws-smithy-runtime-api](https://github.com/smithy-lang/smithy-rs) | `1.13.0` | `1.14.0` |
| [aws-types](https://github.com/smithy-lang/smithy-rs) | `1.4.0` | `1.5.0` |
| [datafusion](https://github.com/apache/datafusion) | `53.1.0` | `54.1.0` |
| [datafusion-substrait](https://github.com/apache/datafusion) | `53.1.0` | `54.1.0` |
| [datafusion-datasource](https://github.com/apache/datafusion) | `53.1.0` | `54.1.0` |
| [datafusion-physical-plan](https://github.com/apache/datafusion) | `53.1.0` | `54.1.0` |
| [datafusion-datasource-parquet](https://github.com/apache/datafusion) | `53.1.0` | `54.1.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.1` |
| [thrift](https://github.com/apache/thrift) | `0.17.0` | `0.24.0` |



Updates `arrow` from 58.3.0 to 59.1.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.1.0)

Updates `base64` from 0.22.1 to 0.23.0
- [Changelog](https://github.com/marshallpierce/rust-base64/blob/master/RELEASE-NOTES.md)
- [Commits](marshallpierce/rust-base64@v0.22.1...v0.23.0)

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

Updates `http-body` from 1.0.1 to 1.1.0
- [Release notes](https://github.com/hyperium/http-body/releases)
- [Commits](hyperium/http-body@v1.0.1...v1.1.0)

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

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 `lambda_runtime` from 1.2.1 to 1.3.0
- [Release notes](https://github.com/aws/aws-lambda-rust-runtime/releases)
- [Changelog](https://github.com/aws/aws-lambda-rust-runtime/blob/main/release-plz.toml)
- [Commits](aws/aws-lambda-rust-runtime@lambda_runtime-v1.2.1...lambda_runtime-v1.3.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.1.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.1.0)

Updates `prettyplease` from 0.2.37 to 0.3.0
- [Release notes](https://github.com/dtolnay/prettyplease/releases)
- [Commits](dtolnay/prettyplease@0.2.37...0.3.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 `rust-embed` from 8.11.0 to 8.12.0

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 `serial_test` from 3.5.0 to 4.0.1
- [Release notes](https://github.com/palfrey/serial_test/releases)
- [Commits](palfrey/serial_test@v3.5.0...v4.0.1)

Updates `syn` from 2.0.118 to 3.0.3
- [Release notes](https://github.com/dtolnay/syn/releases)
- [Commits](dtolnay/syn@2.0.118...3.0.3)

Updates `tokio` from 1.52.3 to 1.53.1
- [Release notes](https://github.com/tokio-rs/tokio/releases)
- [Commits](tokio-rs/tokio@tokio-1.52.3...tokio-1.53.1)

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

Updates `ulid` from 1.2.1 to 3.0.0
- [Commits](dylanhart/ulid-rs@v1.2.1...v3.0.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 `uuid` from 1.23.4 to 1.24.0
- [Release notes](https://github.com/uuid-rs/uuid/releases)
- [Commits](uuid-rs/uuid@v1.23.4...v1.24.0)

Updates `aws-sdk-s3` from 1.138.0 to 1.138.1
- [Release notes](https://github.com/awslabs/aws-sdk-rust/releases)
- [Commits](https://github.com/awslabs/aws-sdk-rust/commits)

Updates `aws-smithy-mocks` from 0.2.6 to 0.3.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 `aws-smithy-runtime-api` from 1.13.0 to 1.14.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 `aws-types` from 1.4.0 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 `datafusion` from 53.1.0 to 54.1.0
- [Changelog](https://github.com/apache/datafusion/blob/main/CHANGELOG.md)
- [Commits](apache/datafusion@53.1.0...54.1.0)

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

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

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

Updates `datafusion-datasource-parquet` from 53.1.0 to 54.1.0
- [Changelog](https://github.com/apache/datafusion/blob/main/CHANGELOG.md)
- [Commits](apache/datafusion@53.1.0...54.1.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.1
- [Release notes](https://github.com/apache/arrow-rs-object-store/releases)
- [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.1)

Updates `thrift` from 0.17.0 to 0.24.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.24.0)

---
updated-dependencies:
- dependency-name: arrow
  dependency-version: 59.1.0
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: rust-dependencies
- dependency-name: aws-sdk-s3
  dependency-version: 1.138.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: rust-dependencies
- dependency-name: aws-smithy-mocks
  dependency-version: 0.3.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: rust-dependencies
- dependency-name: aws-smithy-runtime-api
  dependency-version: 1.14.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: rust-dependencies
- dependency-name: aws-types
  dependency-version: 1.5.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: rust-dependencies
- dependency-name: base64
  dependency-version: 0.23.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: rust-dependencies
- dependency-name: datafusion
  dependency-version: 54.1.0
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: rust-dependencies
- dependency-name: datafusion-datasource
  dependency-version: 54.1.0
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: rust-dependencies
- dependency-name: datafusion-datasource-parquet
  dependency-version: 54.1.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.1.0
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: rust-dependencies
- dependency-name: datafusion-substrait
  dependency-version: 54.1.0
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: rust-dependencies
- dependency-name: google-cloud-gax
  dependency-version: 1.12.0
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: rust-dependencies
- dependency-name: http-body
  dependency-version: 1.1.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: rust-dependencies
- dependency-name: hyper
  dependency-version: 1.11.0
  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: lambda_runtime
  dependency-version: 1.3.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.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: rust-dependencies
- dependency-name: parquet
  dependency-version: 59.1.0
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: rust-dependencies
- dependency-name: prettyplease
  dependency-version: 0.3.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: rust-embed
  dependency-version: 8.12.0
  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: serial_test
  dependency-version: 4.0.1
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: rust-dependencies
- dependency-name: syn
  dependency-version: 3.0.3
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: rust-dependencies
- dependency-name: thrift
  dependency-version: 0.24.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: rust-dependencies
- dependency-name: tokio
  dependency-version: 1.53.1
  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: ulid
  dependency-version: 3.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
  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: uuid
  dependency-version: 1.24.0
  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-420d9a83e9 branch from a60f288 to 72b9a13 Compare July 30, 2026 17:42

@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: 72b9a132b5

ℹ️ 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".

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 Remove DataFusion as_any usages before upgrading

When compiling quickwit-datafusion/quickwit-df-core against DataFusion 54, this bump hits the 54.0 API removal of as_any from DataFusion traits: the repo still implements fn as_any for SchemaProvider, TableProvider, ScalarUDFImpl, and AggregateUDFImpl, and still calls plan.as_any() in quickwit-df-core. Those crates won't build until the impl methods are removed and downcasts use the new direct trait-object methods documented in the DataFusion 54 upgrade guide.

Useful? React with 👍 / 👎.

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 Migrate datafusion-distributed APIs before bumping

When building the DataFusion runtime with datafusion-distributed 2.0, this bump leaves quickwit-df-core on the 1.x integration surface: session.rs still imports and installs DistributedPhysicalOptimizerRule even though 2.0 exposes SessionStateBuilderExt::with_distributed_planner() for planner injection, and the local TaskEstimator::scale_up_leaf_node impls still return plain Option while the 2.0 trait now requires Result<Option<Arc<dyn ExecutionPlan>>> (planner docs, estimator docs). The distributed DataFusion crates won't compile until those call sites are migrated or this dependency stays on 1.x.

Useful? React with 👍 / 👎.

Comment thread quickwit/Cargo.toml
] }
# legacy version because of warp
tower-http = { version = "0.6", features = [
tower-http = { version = "0.7", features = [

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 Use u64 compression thresholds with tower-http 0.7

When building quickwit-serve with this tower-http bump, the compression setup still converts QW_MINIMUM_COMPRESSION_SIZE to Option<u16> and maps it directly into SizeAbove::new, but tower-http 0.7 changed that constructor's threshold from u16 to u64 (release notes); the serve crate will not type-check until the local threshold type/clamping is migrated or this dependency stays on 0.6.

Useful? React with 👍 / 👎.

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