-
Notifications
You must be signed in to change notification settings - Fork 703
chore(layers): unify layer crates and gate dtrace on linux #7094
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
- add crate-level docs, doc_cfg, and missing_docs lint across layer crates - mark layers non_exhaustive and hide internal accessors/wrappers - move dtrace dependency to linux target and tidy Cargo.toml/workspace dependency specs
There was a problem hiding this 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 unifies layer crates across the OpenDAL project by standardizing their structure and documentation.
- Adds comprehensive crate-level documentation,
doc_cfgattributes, andmissing_docslints to all layer crates - Standardizes layer structs by adding
non_exhaustiveattribute and providingnew()constructors - Marks internal accessor and wrapper types as
#[doc(hidden)]to clean up the public API surface
Reviewed changes
Copilot reviewed 34 out of 36 changed files in this pull request and generated 12 comments.
Show a summary per file
| File | Description |
|---|---|
| core/layers/tracing/src/lib.rs | Added crate docs, marked TracingLayer non_exhaustive, hid internal types |
| core/layers/timeout/src/lib.rs | Added crate docs, updated examples, removed Clone from accessor |
| core/layers/timeout/Cargo.toml | Removed unnecessary default-features specification |
| core/layers/throttle/src/lib.rs | Added crate docs, hid internal types, removed Clone from accessor |
| core/layers/throttle/Cargo.toml | Removed unnecessary features specification for governor |
| core/layers/tail-cut/src/lib.rs | Added crate docs, reorganized Default/new methods |
| core/layers/retry/src/lib.rs | Added crate docs, updated examples to use default(), improved test error handling |
| core/layers/retry/Cargo.toml | Cleaned up dev-dependency specifications |
| core/layers/prometheus/src/lib.rs | Added crate docs, hid internal interceptor |
| core/layers/prometheus/Cargo.toml | Removed default-features from observe-metrics-common |
| core/layers/prometheus-client/src/lib.rs | Added crate docs, hid internal interceptor |
| core/layers/prometheus-client/Cargo.toml | Removed default-features from observe-metrics-common |
| core/layers/oteltrace/src/lib.rs | Added crate docs, marked layer non_exhaustive with new() |
| core/layers/otelmetrics/src/lib.rs | Added crate docs, hid internal interceptor |
| core/layers/otelmetrics/Cargo.toml | Removed default-features from observe-metrics-common |
| core/layers/observe-metrics-common/src/lib.rs | Updated library description, formatted tables, hid internal types |
| core/layers/observe-metrics-common/Cargo.toml | Simplified futures dependency specification |
| core/layers/mime-guess/src/lib.rs | Added crate docs, improved tests with Result, removed Clone from accessor |
| core/layers/metrics/src/lib.rs | Added crate docs, marked layer non_exhaustive, simplified interceptor |
| core/layers/logging/src/lib.rs | Added crate docs, added Clone to layer, removed from accessor |
| core/layers/immutable-index/src/lib.rs | Added crate docs, fixed doc example format, removed Clone from accessor |
| core/layers/hotpath/src/lib.rs | Added crate docs, marked layer non_exhaustive |
| core/layers/fastrace/src/lib.rs | Added crate docs, marked layer non_exhaustive |
| core/layers/fastmetrics/src/lib.rs | Added crate docs, hid internal interceptor |
| core/layers/fastmetrics/Cargo.toml | Removed unnecessary features specification |
| core/layers/dtrace/src/lib.rs | Added crate docs, gated to Linux-only with cfg, fixed example |
| core/layers/dtrace/Cargo.toml | Moved dependencies to Linux-specific target configuration |
| core/layers/concurrent-limit/src/lib.rs | Added crate docs, cleaned up imports, removed Clone from accessor |
| core/layers/chaos/src/lib.rs | Added crate docs, reorganized imports |
| core/layers/capability-check/src/lib.rs | Added crate docs, reorganized Debug impl |
| core/layers/await-tree/src/lib.rs | Added crate docs, removed Clone from accessor |
| core/layers/async-backtrace/src/lib.rs | Added crate docs, removed Clone from accessor |
| core/core/src/docs/upgrade.md | Fixed trailing whitespace and formatting |
| core/core/src/docs/performance/http_optimization.md | Fixed trailing whitespace |
| core/Cargo.toml | Moved dtrace dependency to Linux-specific target |
| core/Cargo.lock | Updated with tokio dependency for dtrace |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Xuanwo
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thank you for working on this!
* chore(layers): unify layer crates and gate dtrace on linux - add crate-level docs, doc_cfg, and missing_docs lint across layer crates - mark layers non_exhaustive and hide internal accessors/wrappers - move dtrace dependency to linux target and tidy Cargo.toml/workspace dependency specs * fix toml fmt * update docs
Which issue does this PR close?
Closes #.
Rationale for this change
What changes are included in this PR?
Are there any user-facing changes?
AI Usage Statement
Zed with GPT-5.1 Codex-Max