pip -e: No hay subrayado mágico para reemplazar el guión

En algún lugar, los guiones bajos se cambian a guiones, si se instala con un git repo con “pip install -e …”.

¿Hay alguna manera de parar esto?

Quiero automatizar cosas. Quiero que repo foo_bar sea ~/src/foo_bar , no ~/src/foo-bar .

Por lo que puedo ver de esta pregunta y esta respuesta en la lista de correo de Python, parece que esto se debe a las numerosas convenciones de denominación en todo el sistema de empaquetado de Python, y la compatibilidad entre ellas.

Pythons setuptools ejecuta safe_name que:

Convertir una cadena arbitraria a un nombre de distribución estándar

Cualquier ejecución de no alfanumérica. Los caracteres se reemplazan con un solo ‘-‘.

A pesar de que pip , easy_install y PyPi pueden aceptar el guión bajo, al instalarlo se cambia a un solo ‘-‘ para los estándares de setuptools.