Skip to content

fix: remove unintentional default-features=false for azure_data_cosmos workspace dep#4219

Merged
tvaron3 merged 1 commit into
release/azure_data_cosmos-previewsfrom
fix/cosmos-workspace-default-features
Apr 20, 2026
Merged

fix: remove unintentional default-features=false for azure_data_cosmos workspace dep#4219
tvaron3 merged 1 commit into
release/azure_data_cosmos-previewsfrom
fix/cosmos-workspace-default-features

Conversation

@tvaron3
Copy link
Copy Markdown
Member

@tvaron3 tvaron3 commented Apr 19, 2026

Problem

The merge commit e753b8e ("Merge branch 'main' into release/azure_data_cosmos-previews") introduced a new [workspace.dependencies.azure_data_cosmos] block with default-features = false. This block did not exist in either merge parent — it was created during conflict resolution, modeled after the azure_data_cosmos_driver block which legitimately disables defaults.

With default features disabled, the reqwest feature is no longer enabled for downstream workspace crates like azure_data_cosmos_perf. This causes a compilation failure because cosmos_client_builder.rs uses COSMOS_ALLOWED_HEADERS and AZURE_COSMOS_PER_PARTITION_CIRCUIT_BREAKER_ENABLED unconditionally, but their imports are gated behind #[cfg(feature = "reqwest")]:

error[E0425]: cannot find value `COSMOS_ALLOWED_HEADERS` in this scope
  --> sdk/cosmos/azure_data_cosmos/src/clients/cosmos_client_builder.rs:312:27

error[E0425]: cannot find value `AZURE_COSMOS_PER_PARTITION_CIRCUIT_BREAKER_ENABLED` in this scope
  --> sdk/cosmos/azure_data_cosmos/src/clients/cosmos_client_builder.rs:371:27

Impact

This broke the AKS perf CronJob (cosmos-perf-updater) in rg-cosmos-perf-pr4159. The updater correctly detected the new commit and attempted to rebuild, but the Docker image build fails due to the compilation error above. The perf workload is stuck on commit 0b99c1158 and cannot auto-update.

Fix

Remove default-features = false from the [workspace.dependencies.azure_data_cosmos] block. This restores the default feature set (which includes reqwest) and allows the perf crate to compile.

Verification

  • Neither merge parent had this workspace dependency block, confirming it was introduced during conflict resolution
  • main branch does not have a [workspace.dependencies.azure_data_cosmos] block at all
  • The azure_data_cosmos crate's default features include reqwest, which is required for the unconditional use of COSMOS_ALLOWED_HEADERS and AZURE_COSMOS_PER_PARTITION_CIRCUIT_BREAKER_ENABLED

…s workspace dep

The merge commit e753b8e ("Merge branch 'main' into release/azure_data_cosmos-previews")
introduced a new [workspace.dependencies.azure_data_cosmos] block with
default-features = false. This block did not exist in either merge parent —
it was created during conflict resolution, modeled after the
azure_data_cosmos_driver block.

With default-features disabled, the reqwest feature is no longer enabled for
downstream crates like azure_data_cosmos_perf. This causes a compilation
failure because cosmos_client_builder.rs uses COSMOS_ALLOWED_HEADERS and
AZURE_COSMOS_PER_PARTITION_CIRCUIT_BREAKER_ENABLED unconditionally, but
their imports are gated behind #[cfg(feature = "reqwest")].

This also broke the AKS perf CronJob (cosmos-perf-updater) in
rg-cosmos-perf-pr4159: the updater detected the new commit and attempted
to rebuild, but the build fails with:

  error[E0425]: cannot find value COSMOS_ALLOWED_HEADERS in this scope
  error[E0425]: cannot find value AZURE_COSMOS_PER_PARTITION_CIRCUIT_BREAKER_ENABLED in this scope

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@tvaron3 tvaron3 added the Client This issue points to a problem in the data-plane of the library. label Apr 19, 2026
@tvaron3 tvaron3 requested a review from LarryOsterman as a code owner April 19, 2026 06:19
@tvaron3 tvaron3 added Cosmos The azure_cosmos crate Client This issue points to a problem in the data-plane of the library. labels Apr 19, 2026
Copilot AI review requested due to automatic review settings April 19, 2026 06:19
@tvaron3 tvaron3 added the Cosmos The azure_cosmos crate label Apr 19, 2026
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

This PR fixes a workspace feature-resolution regression by restoring azure_data_cosmos’s default features when consumed via the root workspace dependency, preventing downstream workspace crates (notably azure_data_cosmos_perf) from losing the reqwest feature unintentionally.

Changes:

  • Remove default-features = false from [workspace.dependencies.azure_data_cosmos] in the workspace Cargo.toml.

Copy link
Copy Markdown
Member

@FabianMeiswinkel FabianMeiswinkel left a comment

Choose a reason for hiding this comment

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

LGTM

@github-project-automation github-project-automation Bot moved this from Todo to Approved in CosmosDB Go/Rust Crew Apr 20, 2026
@tvaron3 tvaron3 merged commit 61f1f61 into release/azure_data_cosmos-previews Apr 20, 2026
27 checks passed
@tvaron3 tvaron3 deleted the fix/cosmos-workspace-default-features branch April 20, 2026 18:10
@github-project-automation github-project-automation Bot moved this from Approved to Done in CosmosDB Go/Rust Crew Apr 20, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Client This issue points to a problem in the data-plane of the library. Cosmos The azure_cosmos crate

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

3 participants