Loading workspace insights... Statistics interval
7 days30 daysLatest CI Pipeline Executions
690cf0d5 fix(core): expand env var references in yarn berry registry config
nx migrate spawns npm to resolve and fetch packages, with an npm_config_*
env overlay reproducing the workspace package manager's registry/auth/TLS
resolution. The yarn berry resolver consumed raw .yarnrc.yml values, but berry
expands ${VAR}/${VAR-default}/${VAR:-default} in every string setting at parse
time. So a registry like `npmRegistryServer: "${REGISTRY}"` was nerf-darted as
the literal placeholder (its URL parse fails), emitting no auth/TLS key for the
real host, and `npmAuthIdent: "${IDENT}"` had its base64 decision made on the
unexpanded value. Expand env var references on the registry URL (top-level and
scoped), npmAuthToken, npmAuthIdent, and proxies before any URL parse,
nerf-dart, or base64, matching berry.
Also:
- Run `npm pack` from the workspace root with --pack-destination so it reads
the workspace .npmrc natively, matching packageRegistryView (previously a
token in the workspace .npmrc was honored by view but not by pack).
- Warn once when the yarn version cannot be determined and registry config is
skipped, so the silent fall back to npm's default registry is diagnosable. 690cf0d5 fix(core): expand env var references in yarn berry registry config
nx migrate spawns npm to resolve and fetch packages, with an npm_config_*
env overlay reproducing the workspace package manager's registry/auth/TLS
resolution. The yarn berry resolver consumed raw .yarnrc.yml values, but berry
expands ${VAR}/${VAR-default}/${VAR:-default} in every string setting at parse
time. So a registry like `npmRegistryServer: "${REGISTRY}"` was nerf-darted as
the literal placeholder (its URL parse fails), emitting no auth/TLS key for the
real host, and `npmAuthIdent: "${IDENT}"` had its base64 decision made on the
unexpanded value. Expand env var references on the registry URL (top-level and
scoped), npmAuthToken, npmAuthIdent, and proxies before any URL parse,
nerf-dart, or base64, matching berry.
Also:
- Run `npm pack` from the workspace root with --pack-destination so it reads
the workspace .npmrc natively, matching packageRegistryView (previously a
token in the workspace .npmrc was honored by view but not by pack).
- Warn once when the yarn version cannot be determined and registry config is
skipped, so the silent fall back to npm's default registry is diagnosable.