-
Notifications
You must be signed in to change notification settings - Fork 91
Open
Description
Problem
Every time we update our package's conda-forge feedstock this requires manual correction.
Cause
When the bot updates a feedstock with ruamel.yaml as a run dependency, it rewrites it as ruamel_yaml in meta.yaml, which does not exist on conda-forge and breaks the build:
Could not solve for environment specs
└─ ruamel_yaml >=0.17,<1.0 * does not exist
The static mapping at conda_forge_tick/pypi_name_mapping_static.yaml already has the correct entry:
- pypi_name: ruamel-yaml
import_name: ruamel.yaml
conda_name: ruamel.yamlThe problem is that the mapping is keyed on the dash-normalized PyPI name (ruamel-yaml), but when the bot encounters ruamel.yaml in wheel metadata it normalizes dots to underscores (ruamel_yaml) before the lookup, so the mapping is never hit and the bad name passes through.
Possible fixes:
- Quick fix: Add a second entry to the static mapping with the underscore form so the lookup hits regardless:
- pypi_name: ruamel_yaml
import_name: ruamel.yaml
conda_name: ruamel.yaml- Proper fix: Normalize to dashes (not underscores) before the mapping lookup —
ruamel.yaml→ruamel-yaml→ lookup hit →ruamel.yaml✓. This would fix the same bug for any other dot-named packages without needing duplicate entries.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels