Skip to content

build: validate rustdoc across feature selections - #261

Closed
tisonkun wants to merge 2 commits into
mainfrom
codex/prepare-0.7.0-final-review
Closed

build: validate rustdoc across feature selections#261
tisonkun wants to merge 2 commits into
mainfrom
codex/prepare-0.7.0-final-review

Conversation

@tisonkun

Copy link
Copy Markdown
Member

Summary

  • Keep the crate-level API map navigable when optional features are disabled.
  • Fix the rwlock guide's link to the independently gated mutex API.
  • Run rustdoc with warnings denied for the no-feature configuration, every individual public feature, and the existing all-features workspace configuration.

Design Notes

Asyncband has no default features, so no-feature and single-feature dependency configurations are part of the supported surface. Before this change, cargo doc -p asyncband --no-default-features failed on the crate's API map, while the rwlock-only configuration failed on its cross-feature Mutex link. The existing all-features documentation check hid both failures.

This intentionally limits the 0.7.0 audit follow-up to reproducible failures. It does not include speculative API redesigns, mechanical trait additions, test deletion, or performance changes without evidence.

Validation

  • cargo x lint
  • cargo x check
  • cargo x test
  • cargo x miri
  • RUSTUP_TOOLCHAIN=1.86.0 cargo x test --no-capture
  • cargo x semver --release-version 0.7.0 --acknowledge-breaking-changes
  • cargo package --package asyncband

Asyncband exposes no APIs by default, but the crate overview and the rwlock guide linked directly to modules that may be disabled. Documentation builds with warnings denied therefore failed for legitimate dependency configurations. Use docs.rs targets so the feature catalog remains navigable without requiring unrelated features.

Signed-off-by: tison <wander4096@gmail.com>
The all-features documentation build hides links that accidentally cross feature boundaries. Exercise the no-feature and every single-feature configurations so cargo x lint catches documentation that downstream users cannot build.

Signed-off-by: tison <wander4096@gmail.com>
@tisonkun tisonkun closed this Aug 31, 2026
@tisonkun

Copy link
Copy Markdown
Member Author

No. We only care about docs build on docs.rs.

@tisonkun
tisonkun deleted the codex/prepare-0.7.0-final-review branch August 31, 2026 17:52
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