-
Notifications
You must be signed in to change notification settings - Fork 892
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
Making docs optional again #998
Comments
Another problem are network file systems. For me it takes minutes to install the docs, the rest finishes almost instantly. |
I'd prefer to leave docs as optional since I use the online version only and don't want to waste disk space or increase rustup update time. |
The major missing feature is that the manifest format needs to be extended to understand optional features: #1006. |
Yes, please make docs optional again! We work a lot with Raspberry Pis where space is very limited! |
This would certainly be nice for CI. |
And when updating a nightly or when different projects use different nightlies (with a |
Is it still? Because now we have plenty of optional components in rustup (rust-std-*, rust-src, clippy-preview, etc). The problem is (among others) that $toolchain/share/doc contains nearly 15000 files which is a big pressure on disk during toolchain updates - on Windows it takes a really significant amount of time to install rust-docs. From #903:
I am fine with default (though I really doubt that those who really need docs can't install them as a component), but let's make them as opt-out, so rustup would remember during the next update that rust-docs doesn't need to be downloaded. |
I can confirm that it takes a long time to install the docs on windows, and I'm dealing with multiple nightlies for different projects (with But I'd prefer if the docs were opt-in, because most people only use the online docs. An internet connection is required to be able to use Rust anyway.. |
@pravic The issue is that the manifest does not have a way express opt-out components, only opt-in. |
The playground docker images are also about 300MB larger than they need to be because of the docs (which I'm working on removing at the moment). |
Installation of docs makes rustup hang at the end of the install process: #1464 |
It takes ages for us to install Rust on Travis/Windows. Any progress on sorting this out? Really delays builds by 10 minutes or more which is impossible to work in productive way without wasting 2 hours on CI each day. |
I have a plan for profiles which will address this. I hope to implement in the next few weeks |
@nrc I'm sure this is nothing new to you, but wanted to provide another data point. Building a https://travis-ci.org/johnthagen/min-sized-rust/builds/465623377 The profile work will have a great impact on CI. ❤️ |
@nrc What's the status on that? rust-docs takes minutes to install when I never use them. |
@kinnison Any way the community could help? If there are smaller sub tasks, I don't mind trying my hand at it. |
I am very looking forward to see an update on this issue. |
"rustup docs" can be smart: if there is offline docs use it else go online. |
Until there is no way to opt-out of docs, they should not be installed by default
This is especially making me happy |
I'm fine with docs by default as long as there is a way to opt out for use cases where they are not needed. |
we moved to azure + appveyor "enterprise" and built images containing rust already installed it was the only way to avoid timeouts it's not cheap tho |
Is there a place where I can read up on profiles. I've only found this open pull without a description #1673 |
Currently there's not anything concrete to read about, sorry, no. |
@softprops let profiles = &[
("minimal", vec!["rustc", "cargo", "rust-std"]),
("default", vec!["rustc", "cargo", "rust-std", "rust-docs"]),
(
"complete",
vec!["rustc", "cargo", "rust-std", "rust-docs", "rust-src"],
),
]; |
You can see the initial design discussion at https://internals.rust-lang.org/t/pre-rfc-improve-access-to-rustup-components/8318 |
Thanks @ashthespy. I'll follow this issue's progress. For context I'm interested in slimming down the docker builder image for aws lambda softprops/lambda-rust#1. I really just need to cargo build tool chain. The bundled docs artifacts aren't useful in this context and yet they aren't currently possible to opt out of. This |
@kinnison is this issue addressed by the |
This appears to do what I want and not include the docs!
❤️ |
It is also possible again to remove the |
@vks yup, I was very happy to do
Note that this doesn't work for very old releases (like 1.0.0), which predate the concept of components. However, I'll take the savings for the versions which do! |
I believe this is now covered so I'm going to close the issue. Thanks all for your patience. |
Leaving a trail for those who are looking to do this with the offline installer:
|
See as docs are required again due to #903, can we track what's necessary to make them optional again here? As one of my laptops doesn't have space for the docs (16G disk :( ), I'd be interested in helping fix the relevant issues. The two mentioned issues I've seen are:
Are there any others? And if you prefer to track this information elsewhere, please close this bug and point me in the right direction!
The text was updated successfully, but these errors were encountered: