docs.rs
docs.rs copied to clipboard
Make nightly version configurable
It happens from time to time that some crate can't build on a nightly version which results in broken documentation. In this case the author of the crate usually has to wait for the nightly version docs.rs uses to be bumped and hope that problems will go away.
Right now, my crate barrel fails to build documentation because the diesel version I require requires a newer nightly.
It would be so much better if, apart from bumping the nightly version from time to time, enabling users to tell docs.rs what nightly version to use. This way users can either opt-into the current nightly or pin documentation on a version they know works.
Edit After having seen https://github.com/onur/docs.rs/pull/225 I'm wondering what other work is needed to make the rust version used by docs.rs configurable.
This should be less of an issue since we now always use the latest nightly. I would like to be able to choose between stable, beta, and nightly though. I'm not quite sure I see the use case for a specific nightly version, but if someone wants to explain I'm happy to listen :)
A few options used by docs.rs on rustdoc to generate docs are unstable.
@jyn514 I found a use-case: my specific-nightly-only crate's docs.rs build will be broken until https://github.com/rust-lang/rust/issues/110395 is re-implemented.
@hecatia-elegua that seems like a misfeature, we should not be building docs that enable features that don't exist in the language anymore
@jyn514 but it is just getting re-implemented
It felt like anything that can build locally should be able to get onto docs.rs, since it's "just" docs. I do understand however that there's a lack of contributors and therefore that won't happen.
Anyways, I'll just feature gate the nightly stuff, thanks for answering!
I'm not sure if this will ever be possible, since we rely on nightly-only things that were builts specifically for docs.rs.
And when docs.rs needs something new in rustdoc, we definitely need a minimum nightly version that includes this new feature. Most recent example was around how static filenames are rendered for better caching.