Skip to content

Switch registry at CI builds explicitly#2075

Merged
ikholopov-omni merged 1 commit intodataform-co:mainfrom
ikholopov-omni:yesyarn
Jan 29, 2026
Merged

Switch registry at CI builds explicitly#2075
ikholopov-omni merged 1 commit intodataform-co:mainfrom
ikholopov-omni:yesyarn

Conversation

@ikholopov-omni
Copy link
Collaborator

@ikholopov-omni ikholopov-omni commented Jan 28, 2026

Dataform uses trusted registry for CI builds. It does that by relying on nodejs's npm install interaction with yarn.lock. This interaction is known to be error-prone (for ex. npm/cli#5126), yarn recommends to only use yarn CLI when working with it's ecosystem. In particular, it blocks update of the Node, forcing us to use the version that is long out of EOL support (v16). Newer version breaks yarn.lock on npm install. Apart from that we don't verify that yarn.lock updates only registry.

Addressing that by reimplementing registry substitution explicitly and switching to yarn install --freeze-lockfile instead of npm install. This will ensure that:

  1. We only change the registry, all other parts of the lock file like versions or hashsums remain the same.
  2. We don't change resolved versions by accident if there is a conflict between package.json spec and lockfile.

Long-term solution would be migration to a supported NodeJS rules (most likely Aspect's), where we would be able to leverage PNPM, whose lockfile doesn't fix registry URL at all - only versions and hashsums.

@ikholopov-omni ikholopov-omni force-pushed the yesyarn branch 3 times, most recently from b0323c0 to 0cf30b1 Compare January 29, 2026 10:09
@ikholopov-omni ikholopov-omni changed the title switch registry explicitly Switch registry at CI builds explicitly Jan 29, 2026
@ikholopov-omni ikholopov-omni marked this pull request as ready for review January 29, 2026 11:20
@ikholopov-omni ikholopov-omni requested a review from a team as a code owner January 29, 2026 11:20
@ikholopov-omni ikholopov-omni requested review from Tuseeq1 and kolina and removed request for a team January 29, 2026 11:20
@ikholopov-omni ikholopov-omni enabled auto-merge (squash) January 29, 2026 11:40
@ikholopov-omni ikholopov-omni merged commit da47bd8 into dataform-co:main Jan 29, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants