pep621: array form of tool.uv.sources is silently ignored, lookups go to the wrong registry
#44948
How are you running Renovate?A Mend.io-hosted app Which platform you running Renovate on?GitHub.com Which version of Renovate are you using?44.0.1 Please tell us more about your question or problemWhat happensuv supports two spellings for [tool.uv.sources]
my-package = { index = "custom" }and an array form for multiple sources split by environment markers (https://docs.astral.sh/uv/concepts/projects/dependencies/, "Multiple sources"). [tool.uv.sources]
my-package = [{ index = "custom" }]Renovate only understands the first one. Root causeIn renovate/lib/modules/manager/pep621/schema.ts Lines 142 to 149 in ba0182f renovate/lib/modules/manager/pep621/schema.ts Lines 156 to 160 in ba0182f ImpactWhat you see depends on whether the name exists on pypi.org:
uv accepts both forms and produces the same Expected behaviorThe array form is parsed like uv does, e.g. Minimal reproductionhttps://github.com/ntsk/reproduce-array-form-uv-sources The repo pins To reproduce:
The repo also has a GitHub Actions workflow that runs both forms and asserts The Mend-hosted app is installed on that repo as well and shows the same Logs (if relevant)LogsArray form (lookup goes to pypi.org and fails): Single-table form (the only change, declared index is used): |
Replies: 1 comment 1 reply
|
Thanks for the detailed report. PRs are welcome with the fix mentioned in the description. |
Thanks for the detailed report. PRs are welcome with the fix mentioned in the description.