Skip to content

fix(docs): build docs.rs with an engine feature - #50

Merged
butterflyfish merged 2 commits into
masterfrom
fix/crypto-docsrs-quickjs
Sep 11, 2026
Merged

butterflyfish merged 2 commits into
masterfrom
fix/crypto-docsrs-quickjs

Conversation

@butterflyfish

@butterflyfish butterflyfish commented Sep 11, 2026 •

Copy link
Copy Markdown
Contributor

Summary

GitHub Publish Packages succeeded. docs.rs failed for rong_crypto 0.6.0: rustdoc ran with no engine feature, so rong::JSContext / JSValue were 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 only rong, rong_core and rong_rt are green.

rong           OK  0.6.0        rong_url       RED 0.6.0
rong_core      OK  0.6.1        rong_buffer    RED 0.6.0
rong_rt        OK  0.6.1        rong_encoding  RED 0.6.0
                                rong_console   RED 0.6.0
rong_crypto    RED 0.6.0        rong_stream    RED 0.6.0
rong_http      RED 0.6.1        rong_timer     RED 0.6.0
rong_abort     RED 0.6.1        rong_event     RED 0.6.0
rong_redis     RED 0.6.0        rong_exception RED 0.6.0
rong_s3        RED 0.6.0        rong_modules   RED 0.6.1

What

  • [package.metadata.docs.rs] features = ["quickjs"] on all 14 — the same requirement as cargo publish --features quickjs.
  • rong_crypto 0.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 quickjs alone — 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 quickjs for all 14
  • cargo metadata parses every manifest
  • Relied on GitHub Actions host CI for platform coverage

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.
@butterflyfish butterflyfish changed the title fix(crypto): build docs.rs with the quickjs engine feature fix(docs): build docs.rs with an engine feature Sep 11, 2026
@butterflyfish
butterflyfish merged commit b39f05a into master Sep 11, 2026
13 checks passed
@butterflyfish
butterflyfish deleted the fix/crypto-docsrs-quickjs branch September 11, 2026 16:50
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