-
Notifications
You must be signed in to change notification settings - Fork 2.1k
Description
Checklist
- I added a descriptive title
- I searched open requests and couldn't find a duplicate
What is the idea?
Determine if repodata v3 format, proposed in the draft CEP, can be backwards compatible with existing clients. Can older clients parse v3 files by ignoring new fields for wheels (extras, conditional dependencies, flags) while still using basic package metadata?
Why is this needed?
We want to make use of the repodata v3 format for supporting extras and conditionals when extending the repodata to include wheels, so this discovery should be focused on that use case.
Repodata v3 adds extras, conditional dependencies (pywin32; if __win), and flags. Currently, conda blocks any repodata_version > 2 with a CondaUpgradeError, which means deploying v3 would break all existing clients immediately. Backwards compatibility would enable gradual adoption without breaking users.
What should happen?
Investigate whether current parsing can handle v3 gracefully. For MatchSpec parsing - conditional dependencies extend syntax with ; if <CONDITION> in the depends list. Can existing parsers handle this or will they fail? Also verify solver compatibility and test with sample v3 repodata files.
Additional Context
No response
Metadata
Metadata
Assignees
Labels
Type
Projects
Status