persona github
La publicación de paquetes de Python en PyPI (Índice de paquetes de Python) es un proceso de varios pasos. Estos son los pasos generales:
1. Prepara tu proyecto
Asegúrese de que su proyecto tenga un setup.py
archivo que describa su paquete y sus dependencias. Uno simple setup.py
podría verse así:
from setuptools import setup, find_packages
setup(
name='your_package_name',
version='0.1',
packages=find_packages(),
install_requires=[
# list your project dependencies here
],
)
2. Crea una cuenta PyPI
Si aún no tiene una cuenta PyPI, deberá crear una en el sitio web de PyPI .
3. Instale las herramientas necesarias
setuptools
Asegúrese de tener e instalar wheel
, estas herramientas lo ayudarán a empaquetar su biblioteca.
pip install setuptools wheel
También es necesario instalarlo twine
para cargar paquetes en PyPI.
pip install twine
4. Empaqueta tu proyecto
Ejecute el siguiente comando en el directorio de su proyecto:
python setup.py sdist bdist_wheel
Esto creará dist/
dos archivos en el directorio: una distribución fuente ( .tar.gz
) y una distribución construida ( .whl
).
5. Revisa el paquete
Antes de cargar, use twine
el paquete de verificación para asegurarse de que todo esté bien:
twine check dist/*
6. Sube tu paquete
Ahora puedes twine
subir tu paquete a PyPI usando .
twine upload dist/*
Esto le solicitará sus credenciales de PyPI. Después de una carga exitosa, su paquete debería aparecer en el panel de control de su cuenta PyPI y estar disponible para que cualquiera pueda pip install your_package_name
instalarlo.
Precauciones
- Asegúrese de que el nombre de su paquete sea único; de lo contrario, PyPI lo rechazará.
- Asegúrese de que su
README
,LICENSE
y otra documentación estén incluidas en su paquete. - Antes de cargar una nueva versión, recuerde
setup.py
el número de versión de la actualización.
Esta es sólo una guía básica. Dependiendo de sus necesidades específicas, el proceso de publicación puede variar. ¡Espero que esto te ayude! ¿Tiene otras preguntas?
¿Cuál es la diferencia entre la distribución fuente (.tar.gz) y la distribución construida (.whl)?
La distribución de código fuente ( .tar.gz
) y la distribución construida ( .whl
) son dos tipos diferentes de distribución de paquetes de Python y tienen sus propias ventajas y usos.
Distribución de fuentes ( .tar.gz
)
- Multiplataforma : la distribución del código fuente contiene el código y
setup.py
los archivos originales del proyecto. Los usuarios pueden compilarlo e instalarlo en varios sistemas operativos y plataformas. - Flexibilidad : debido a que la distribución fuente contiene el código original, los usuarios pueden ver o modificar el código más fácilmente.
- Dependencia de herramientas externas : la instalación de una distribución fuente generalmente requiere un entorno de compilación, que puede no estar disponible en todos los sistemas.
- Tiempo de instalación : la instalación desde el código fuente suele llevar más tiempo porque el código debe compilarse en la máquina de destino.
distribución_construcción( .whl
)
- Instalación rápida : los archivos Wheel están precompilados, lo que significa que el proceso de instalación suele ser más rápido que la instalación desde el código fuente.
- No se requiere un entorno de compilación : dado que los archivos wheel están precompilados, generalmente no requieren que el usuario tenga un entorno de compilación.
- Específico de la plataforma : los archivos Wheel pueden ser específicos de la plataforma, lo que significa que un archivo Wheel creado para Windows puede no funcionar en Linux o MacOS.
- Compatibilidad de versiones : el formato Wheel admite el marcado explícito de versiones e implementaciones de Python (como CPython vs PyPy), lo que ayuda a garantizar la compatibilidad.
Resumir
- Si desea un paquete que funcione en múltiples entornos y no le importa el paso de compilación adicional, una distribución fuente podría ser una buena opción.
- Si desea un paquete instalado rápidamente que pueda ser específico de la plataforma o de la versión de Python, entonces un archivo Wheel puede ser más adecuado para usted.
Generalmente, la mejor práctica es ofrecer ambos tipos de distribución para que los usuarios puedan elegir el tipo de distribución que mejor les funcione según sus necesidades específicas. .tar.gz
Esta es también la razón por la que muchas bibliotecas de Python se proporcionan y .whl
documentan en PyPI .