Desarrollo de paquetes en Python
James Fulton
Climate informatics researcher
Dentro de setup.py de mysklearn
setup(
...
classifiers=[
'Development Status :: 2 - Pre-Alpha',
'Intended Audience :: Developers',
'License :: OSI Approved :: MIT License',
'Natural Language :: English',
'Programming Language :: Python :: 3',
'Programming Language :: Python :: 3.6',
'Programming Language :: Python :: 3.7',
'Programming Language :: Python :: 3.8',
],
...
)
mysklearn/
...
|-- README.md
|-- setup.py
|-- Makefile <---
...
Dentro de Makefile
... dist: ## compila el paquete fuente y wheel python3 setup.py sdist bdist_wheelclean-build: ## elimina artefactos de compilación rm -fr build/ rm -fr dist/ rm -fr .eggs/test: ## ejecuta pruebas rápido con el Python por defecto pytestrelease: dist ## empaqueta y sube una versión twine upload dist/*
make <function-name>
mysklearn/ <--- navega aquí
...
|-- README.md
|-- setup.py
|-- Makefile
...
Para usar la función dist, escribe esto en la terminal
make dist
Dentro de Makefile
...
dist: ## compila el paquete fuente y wheel
python3 setup.py sdist bdist_wheel
clean-build: ## elimina artefactos de compilación
rm -fr build/
rm -fr dist/
rm -fr .eggs/
test: ## ejecuta pruebas rápido con el Python por defecto
pytest
release: dist ## empaqueta y sube una versión
twine upload dist/*
make help
clean elimina todos los artefactos de compilación, pruebas, cobertura y Python
clean-build elimina artefactos de compilación
clean-pyc elimina artefactos de archivos de Python
clean-test elimina artefactos de pruebas y cobertura
lint comprueba el estilo con flake8
test ejecuta pruebas rápido con el Python por defecto
test-all ejecuta pruebas en cada versión de Python con tox
release empaqueta y sube una versión
dist compila el paquete fuente y wheel
install instala el paquete en el site-packages del Python activo
Desarrollo de paquetes en Python