Skip to content

Canonicalize resolved extra availability in lockfiles - #1743

Draft
zaniebot wants to merge 1 commit into
zb/future-20260912-resolver-27from
zb/future-20260912-resolver-28
Draft

Canonicalize resolved extra availability in lockfiles#1743
zaniebot wants to merge 1 commit into
zb/future-20260912-resolver-27from
zb/future-20260912-resolver-28

Conversation

@zaniebot

@zaniebot zaniebot commented Sep 13, 2026

Copy link
Copy Markdown
Collaborator

A universal lock can retain a requested extra after all of that extra's resolved dependencies have been ruled out by markers. The serializer omits the empty section, so reading and refreshing the just-written lock removes the incoming extra reference. Drop empty extra sections after assembling the resolver output, then normalize incoming extra references before sorting and validating dependency edges. Existing locks may use an explicitly empty section to activate marked dependencies, so the reader retains those sections. Declaration-level provides-extras metadata remains available, and extras with reachable dependencies in another marker domain remain in the lock.

@astral-automations-bot astral-automations-bot Bot added area:lock Related to universal resolution and locking bug Something isn't working labels Sep 13, 2026
@zaniebot
zaniebot force-pushed the zb/future-20260912-resolver-28 branch from 45b3039 to 8ccb3a6 Compare September 13, 2026 01:57
@codspeed-hq

codspeed-hq Bot commented Sep 13, 2026

Copy link
Copy Markdown

Merging this PR will not alter performance

✅ 25 untouched benchmarks


Comparing zb/future-20260912-resolver-28 (4276c18) with zb/future-20260912-resolver-27 (e1b348d)

Open in CodSpeed

@zaniebot
zaniebot force-pushed the zb/future-20260912-resolver-28 branch from 8ccb3a6 to 42515af Compare September 13, 2026 02:32
@zaniebot
zaniebot force-pushed the zb/future-20260912-resolver-28 branch from 42515af to 4276c18 Compare September 13, 2026 03:14
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area:lock Related to universal resolution and locking bug Something isn't working

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant