Bug: corepack ignores COREPACK_NPM_REGISTRY for yarnpkg registry

Abierto
#753 1 comentario 15 reacciones 0 asignados Ver en GitHub

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
4/5
Tiempo estimado
3-5 días
Aptitud para principiantes
48/100
Tipo de issue
Error
Claridad
Bastante claro
Estado de actividad
Tranquilo
Stack tecnológico
node.js, typescript
Área
tooling

Línea de trabajo

Empieza con config.json y el código de gestión de registros en sources/corepackUtils.ts y sources/npmRegistryUtils.ts, especialmente con las líneas mencionadas. Sigue cómo se aplica COREPACK_NPM_REGISTRY a npmjs.org y por qué no cubre registry.yarnpkg.com. Se considera terminado cuando Corepack pueda usar de forma coherente el proxy configurado para el registro de Yarn y el comportamiento de configuración compatible esté claramente establecido.

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

Descripción

Conditions for bug

npmjs.org and yarnpkg.com are blocked on my laptop

Background and things I've tried

We have an internal registry mirror which mirrors both npmjs and yarnpkg. Due to a recent supply chain attack it is a policy that my laptop blocks both npmjs and yarnpkg so I'm not able to reach them directly. All of my JS RC files are set to reach out to corporate proxy:

  • ~/.npmrc
  • ~/.yarnrc
  • ~/.yarnrc.yml

I learned that corepack ignores all of these files and instead reaches out to registries directly. I was able to partially work around this by setting the following environment variable.

export COREPACK_NPM_REGISTRY="<my corporate proxy>"

Setting this environment variable gets me past errors for registry.npmjs.org but still triggers errors for registry.yarnpkg.com.

Potentially buggy lines of code

Because https://registry.yarnpkg.com does not match https://registry.npmjs.org there's no proxying available.

Desired solution

  • Ideally: adhere to ~/.yarnrc.yml
  • Or adhere to COREPACK_NPM_REGISTRY
  • Or introduce a new environment variable COREPACK_YARN_REGISTRY
  • Or more robust environment variable which allows one to substitute multiple registries via some kind of expression syntax.
Lenguaje dominante
TypeScript
Estrellas
3.8k
Forks
279
Merge medio
1 h 47 min
PR fusionados (30 d)
2

Guía de contribución

Abrir la guía de contribución

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 nodejs/corepack

Todos los issues de nodejs/corepack

Issues similares

Más issues de TypeScript

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.