Skip to content

refactor!: make tracing feature opt-in instead of default - #12

Merged
ae2rs merged 1 commit into
mainfrom
refactor/make-tracing-opt-in
May 26, 2026
Merged

refactor!: make tracing feature opt-in instead of default#12
ae2rs merged 1 commit into
mainfrom
refactor/make-tracing-opt-in

Conversation

@ae2rs

@ae2rs ae2rs commented May 26, 2026

Copy link
Copy Markdown
Owner

Summary

  • Remove tracing from the default feature set in crates/aerro/Cargo.toml — default is now ["macro"] only
  • Update feature flags documentation in lib.rs and README.md to reflect the new default
  • Bump workspace version from 0.7.0 to 0.8.0 (breaking change)

Motivation

The tracing feature pulls in three additional crates (tracing, tracing-opentelemetry, opentelemetry) that many users don't need. Making it opt-in reduces default compile times and dependency count. The trace.rs module is already properly feature-gated with #[cfg(feature = "tracing")], so this change requires no code modifications — only Cargo.toml and docs.

Migration

Add features = ["tracing"] to your aerro dependency if you rely on automatic OTel trace/span context capture:

[dependencies]
aerro = { version = "0.8", features = ["tracing"] }

Test plan

  • cargo test — all 52 tests pass with default features (no tracing)
  • cargo test --features tracing — all 52 tests pass with tracing enabled
  • cargo clippy --workspace --all-targets — zero warnings

🤖 Generated with Claude Code

The `tracing` feature (which pulls in `tracing`, `tracing-opentelemetry`,
and `opentelemetry` crates) is now opt-in rather than included by default.
This reduces compile times and dependency count for users who don't need
OpenTelemetry trace/span capture.

Users who rely on automatic OTel context propagation should add
`features = ["tracing"]` to their aerro dependency.

BREAKING CHANGE: `tracing` is no longer in the default feature set.
Add `features = ["tracing"]` to restore previous behavior.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@ae2rs
ae2rs merged commit 1a26721 into main May 26, 2026
4 checks passed
@ae2rs
ae2rs deleted the refactor/make-tracing-opt-in branch May 26, 2026 09:24
ae2rs added a commit that referenced this pull request May 26, 2026
The `tracing` feature (which pulls in `tracing`, `tracing-opentelemetry`,
and `opentelemetry` crates) is now opt-in rather than included by default.
This reduces compile times and dependency count for users who don't need
OpenTelemetry trace/span capture.

Users who rely on automatic OTel context propagation should add
`features = ["tracing"]` to their aerro dependency.

BREAKING CHANGE: `tracing` is no longer in the default feature set.
Add `features = ["tracing"]` to restore previous behavior.

Co-authored-by: ae2rs <ae2rs@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant