fix(moq-tokio): hold feature-extreme builds to -D warnings - #3584
Conversation
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
PR #3584 — fix(moq-tokio): hold feature-extreme builds to -D warnings
SummaryAdds a private FindingsBlockersNone. Risks
NitsNone material. Small, focused diff. CI
VerdictApprove — merge anytime; good candidate to land first in the batch (tiny, green, unblocks feature-extreme CI hygiene). |
3469112 to
6a4cf9b
Compare
Add a private `_transport` feature, enabled by every backend that can move bytes, so the six-way "has a transport" gate is spelled once. Gate transport-only items on it so a backend-less build has no dead code, and run clippy -D warnings from `just rs tokio-features`. Co-Authored-By: grok-4.6 <noreply@x.ai>
6a4cf9b to
080d525
Compare
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 080d525757
ℹ️ About Codex in GitHub
Your team has set up Codex to 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 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| _certs = ["dep:rcgen", "dep:rustls-webpki"] | ||
| # Private "any transport is compiled" marker. Not one to enable on its own: every | ||
| # backend that can move bytes turns it on, and `uds` reaches it through `tcp`. | ||
| _transport = [] |
There was a problem hiding this comment.
Reject
_transport without an actual backend
Cargo exposes _transport to downstream crates despite the “private” naming convention, so default-features = false, features = ["_transport"] is a valid configuration. In that configuration Client::new selects the successful constructor and the crate exports Server, but no real transport is compiled; dialing only fails later, while a default server can be constructed with an empty listener set. Preserve the concrete-backend predicate for these behaviors or reject the marker-only combination at compile time so unsupported configurations fail immediately.
AGENTS.md reference: AGENTS.md:L44-L47
Useful? React with 👍 / 👎.
Summary
_transportfeature, enabled fromnoq,quinn,quiche,iroh,websocket, andtcp(udsreaches it throughtcp).Client::newonto that feature.clippy -D warnings.just rs tokio-featuresnow runs clippy instead of cargo check. Thequinn/noqwithout crypto-provider loop is unchanged.Public API
None.
_transportis a private crate feature, not for callers to enable.Wire
None.
(written by grok-4.6)