You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Teach rustup/rustbuild about optional components #1006
Today rustup knows about two types of packages: components (required), and extensions (optional, non-default). Some components though want to be installed by default, but optional (like docs).
To do this we have to change the manifest format in a backwards-compatible way. I suggest that we add a key "optional = true" to components that don't need to be installed. The build-manifest tool invoked by rustbuild needs to be modified to emit this key, and rustup needs to be taught to consume it.
I have a slight preference for doing the opposite (ie. flagging extensions as being "install-by-default") so that components are always required, and extensions are always optional. What do you think?
Once this feature exists, rustup-init also needs to be modified with a non-interactive commandline option to disable default components. If the interactive installer allows component selection (I don't recall) then that needs to be modified too, though it could be done as a followup.
This work has been folded into the concept of installation profiles, which we're actively working on, though the over-all progress is slowed due to recent CI problems with Windows. You can follow the work in #1673
Activity
Diggsey commentedon Mar 23, 2017
I have a slight preference for doing the opposite (ie. flagging extensions as being "install-by-default") so that components are always required, and extensions are always optional. What do you think?
brson commentedon May 11, 2017
@Diggsey per discussion we decided to go with the original design, for backwards-compatibility concerns.
brson commentedon May 12, 2017
Once this feature exists, rustup-init also needs to be modified with a non-interactive commandline option to disable default components. If the interactive installer allows component selection (I don't recall) then that needs to be modified too, though it could be done as a followup.
mikhail-m1 commentedon May 16, 2017
I take it, Should I change https://github.com/rust-lang/rust/blob/master/src/tools/build-manifest/src/main.rs or wait until #1112?
mikhail-m1 commentedon May 18, 2017
add optional to build-manifest tool mikhail-m1/rust@35a30af. Shell I do pull request to rust-lang/rust?
mathstuf commentedon Jul 25, 2019
Ping? Any progress on this? I'd like to reduce the size of our multi-toolchain build images by nuking docs…
kinnison commentedon Jul 28, 2019
This work has been folded into the concept of installation profiles, which we're actively working on, though the over-all progress is slowed due to recent CI problems with Windows. You can follow the work in #1673
mathstuf commentedon Oct 25, 2019
Now that profiles have landed, I think this can be closed.
kinnison commentedon Oct 25, 2019
I concur, thank you for the triage.