Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

Tracking: Deduplicate toolchains, components and/or artifacts

Abierto
#4,663 12 comentarios 9 reacciones 0 asignados Ver en GitHub

Los mantenedores suelen responder en 1 día

@cachebag ya está trabajando en esto.

Desde el 20/7/2026.

  • #4965 de @cachebag — abierto

Evaluación

Dificultad
5/5
Tiempo estimado
Más de una semana
Aptitud para principiantes
30/100
Tipo de issue
Nueva funcionalidad
Claridad
Necesita aclaración
Estado de actividad
Tranquilo
Stack tecnológico
rust
Área
cli, devtools

Línea de trabajo

Comienza revisando los casos reportados (#555, #1974, #1366 y #2617), el comportamiento de rustup toolchain install y las propuestas relacionadas #3937, #731 y #4636. El issue es exploratorio: para darlo por terminado, sería necesario acordar un diseño para deduplicar artefactos, componentes o toolchains antes de poder definir el alcance de la implementación.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

E-mentor enhancement
Problem you are trying to solve

It happens from time to time that the user gets confused about why rustup toolchain install stable, rustup toolchain install 1.92 and rustup toolchain install 1.92.0 require separate and duplicate/redundant downloads when they are essentially the same thing (given that the current stable is 1.92.0).

Such reports include:

The status quo is very well explained in the quote below:

Firstly, 1.70 and 1.70.0 are not the same toolchain. They might be on a given date, but once 1.70.1 releases, they are not.

Secondly, the installed components are currently defined as separate for each toolchain; adding a component that isn't expected might be strange and conceivable a bug for some developers - and turning minor versions into symlinks to concrete versions will have that effect, as you would no longer have separate component lists.
https://github.com/rust-lang/rustup/issues/1366#issuecomment-1633065070

In short, 1.92.0 is a "fixed target" that will always be pointing to that very version of the toolchain, but the other two are "moving target"s: 1.92 will be upgradable to any later 1.92.*, and stable to any later stable. These toolchains are logically separated and I have no intentions to change that, but physically this separation is not an absolute must.

Solution you'd like

A potential solution is to borrow from PNPM and use hard links or junctions that reference a user-global artifact pool. This might have some interesting interactions with multiple proposals, e.g.

  • #3937
  • #731
  • #4636

Another choice could be providing a user-global component (or even toolchain) pool instead of an artifact pool, depending on the flexibility we'd like to achieve.

I personally think choosing the toolchain pool is a bad idea since it turns out sometimes multiple toolchains share the same component esp. when they are not updated.

Notes

No response

Lenguaje dominante
Rust
Estrellas
7.1k
Forks
1.1k
Merge medio
1 d 10 h
PR fusionados (30 d)
42

Preparar el entorno

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de rust-lang/rustup

Todos los issues de rust-lang/rustup

Issues similares

Más issues de Rust

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.