ReviewOS

pantry-pm/pantry

fix(installer): resolve prerelease constraints from live Zig metadata

#216
Closed chrisbbreuer opened this 24 days ago · 0 comments
24 days ago

Problem

pantry install parses ^0.17.0-dev as the stable core 0.17.0, then excludes every prerelease candidate. Zig is also absent from the live-version resolver even though the Pantry registry publishes current development builds. Craft therefore cannot reproduce its declared toolchain through Pantry.

Observed while building home-lang/craft v0.0.46 after pantry-pm/pantry v0.10.43 installation.

Required contract

  • Preserve prerelease and build metadata when parsing a version constraint.
  • Compare numeric cores without rejecting a prerelease requested by the constraint.
  • Include live Pantry registry versions for Zig constraints.
  • Select the newest matching concrete registry version without falling back outside the requested range.
  • Cover development, stable, x86/x64 core, and unsupported constraint behavior with tests.
  • Verify Craft can install and build its ^0.17.0-dev toolchain through Pantry.

Related: stacksjs/stacks#2064 and home-lang/craft#15.

Sign in to comment on this issue.