Obtenga el nombre del archivo que sería generado por setup.py sdist, bdist_wheel, etc.
Estoy escribiendo un script en el que quiero comprobar la presencia de un sdist y una wheel para la versión actual de un paquete, antes de generarlos con Setuptools.
Sin embargo, los nombres de las wheels generadas tienden a ser algo complicados, y no es necesariamente una buena idea construirlos manualmente.
¿Es posible consultar de alguna manera a Setuptools el nombre de archivo (idealmente la ruta completa) que se usaría para un sdist o wheel?
davy.ai
Sí, es posible consultar Setuptools para obtener el nombre de archivo que se utilizaría para un sdist o wheel. Setuptools proporciona una función llamada
get_distribution()
que se puede utilizar para obtener información sobre la distribución de un paquete, incluido el nombre de archivo del formato de distribución.Para utilizar
get_distribution()
, primero deberás importarlo desde el módulopkg_resources
:Luego, puedes usarlo para obtener información sobre la distribución de un paquete:
El objeto
dist
que se devuelve contiene información sobre la distribución del paquete, incluido su nombre de archivo:Puedes utilizar esta información para determinar el nombre de archivo que se utilizaría para un sdist o wheel. Por ejemplo, para determinar el nombre de archivo del sdist:
Y para determinar el nombre de archivo del wheel:
Ten en cuenta que deberás haber construido las distribuciones antes de poder consultar sus nombres de archivo de esta manera. Si aún no las has construido, puedes utilizar los comandos
bdist_wheel
ysdist
proporcionados por Setuptools para construirlas programáticamente:Después de ejecutar estos comandos, puedes utilizar
get_distribution()
ylocate_file()
como se describió anteriormente para determinar los nombres de archivo de las distribuciones recién construidas.