fix(docs): build docs.rs with an engine feature - #50
Merged
Merged
Conversation
docs.rs rustdoc ran rong_crypto with no engine, so rong::JSContext was missing. Tell docs.rs to enable quickjs and bump to 0.6.1 so the docs rebuild.
The missing engine feature is not a crypto problem. Every module crate hides its public API behind an engine, so rustdoc run with default features sees nothing and the build fails. Today that is 14 of them red on docs.rs — `rong_http`, `rong_abort`, `rong_redis`, `rong_s3`, `rong_url`, `rong_buffer`, `rong_encoding`, `rong_console`, `rong_stream`, `rong_timer`, `rong_event`, `rong_exception`, `rong_modules`, and the `rong_crypto` page this branch started with. Only `rong`, `rong_core` and `rong_rt` are green. Each of the twelve builds its docs under `quickjs` alone, checked with `cargo doc --no-deps -p <crate> --features quickjs` rather than assumed; none needs a second feature, so they all carry the same two lines `rong_crypto` already got. No version bumps here beyond the `rong_crypto` one already on the branch. docs.rs cannot rebuild a version in place, so a red page only turns green on the next publish of that crate — which makes this a release decision, not a fix-PR decision. The metadata is what has to be in place first.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
GitHub Publish Packages succeeded. docs.rs failed for
rong_crypto0.6.0: rustdoc ran with no engine feature, sorong::JSContext/JSValuewere cfg'd out.That turned out not to be a crypto problem. No crate in the repo had
[package.metadata.docs.rs], and every module crate hides its public API behind an engine feature, so the same failure is waiting for all of them. Checking docs.rs directly: 14 crates are red, and onlyrong,rong_coreandrong_rtare green.What
[package.metadata.docs.rs] features = ["quickjs"]on all 14 — the same requirement ascargo publish --features quickjs.rong_crypto0.6.0 → 0.6.1 so its page rebuilds (0.6.0 cannot be fixed in place).Each of the other twelve was verified to build its docs under
quickjsalone —cargo doc --no-deps -p <crate> --features quickjs, all OK — so none needs a different or additional feature.The version bumps are deliberately not here
docs.rs cannot rebuild a version in place, so a red page only turns green when that crate next publishes. Turning the other twelve green now would mean patch-bumping and republishing twelve crates, which is a release decision and belongs in the
chore(release)commit, not in a fix PR. What has to happen first is the metadata, so that whenever each one next ships, it ships with working docs.Worth deciding as part of the next release wave: bump and republish the twelve to clear the backlog in one go, or let them turn green individually as they change.
After merge
Publish Packages from
master:package_scope=rust,rust_selection=--crate rong_crypto,package_tags=always.Validation
cargo doc --no-deps -p <crate> --features quickjsfor all 14cargo metadataparses every manifest