Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Make nightly version configurable #228

Open
spacekookie opened this issue Aug 18, 2018 · 6 comments
Open

Make nightly version configurable #228

spacekookie opened this issue Aug 18, 2018 · 6 comments
Labels
A-builds Area: Building the documentation for a crate C-enhancement Category: This is a new feature E-medium Effort: This requires a fair amount of work

Comments

@spacekookie
Copy link
Member

spacekookie commented Aug 18, 2018

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.

spacekookie added a commit to spacekookie/docs.rs that referenced this issue Aug 18, 2018
This code is maybe not as elegant as it could be but should hopefully work? I'm
not 100% sure how the crates are built (i.e. how the working directories are
built and scoped) so I hope that `rustup` is invoked in the correct directory.

If that's not the case, then this can be changed.

Additionally I am aware that this is a **work in progress** and further changes
are required on docs.rs and the compilers part to make "hot-swapping" versions
easier. See rust-lang#225 for more details. This PR addresses rust-lang#228
@jyn514
Copy link
Member

jyn514 commented Nov 27, 2019

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 :)

@GuillaumeGomez
Copy link
Member

A few options used by docs.rs on rustdoc to generate docs are unstable.

@jyn514 jyn514 added A-builds Area: Building the documentation for a crate C-enhancement Category: This is a new feature labels Jul 6, 2020
@jyn514 jyn514 mentioned this issue Apr 5, 2023
@hecatia-elegua
Copy link

@jyn514 I found a use-case: my specific-nightly-only crate's docs.rs build will be broken until rust-lang/rust#110395 is re-implemented.

@jyn514
Copy link
Member

jyn514 commented May 12, 2023

@hecatia-elegua that seems like a misfeature, we should not be building docs that enable features that don't exist in the language anymore

@hecatia-elegua
Copy link

@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!

@syphar
Copy link
Member

syphar commented Oct 24, 2023

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.

@syphar syphar added the E-medium Effort: This requires a fair amount of work label Oct 24, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-builds Area: Building the documentation for a crate C-enhancement Category: This is a new feature E-medium Effort: This requires a fair amount of work
Projects
None yet
Development

No branches or pull requests

5 participants