NASA-AMMOS / AIT-DSN

MIT License
19 stars 10 forks source link

Packaging and Dev Tooling Rework #180

Open nttoole opened 2 years ago

nttoole commented 2 years ago

A parent ticket to track various updates and additions to our packaging and dev tooling.

Packaging Having all of our package configuration in setup.py is very out of date. At the minimum we should move stuff into pyproject.toml (see PEP 517 / 518) and setup.cfg. We should also consider Poetry or a similar "package manager", if only for the benefit of better dependency pinning and resolution handling.

Dev Tooling Our tooling is pretty lacking. Outside of a single githook there's not really much of anything here.

Swap from nose to pytest Add pre-commit for better / easier pre-commit/push hooking pipelines Add black and flake8 for auto-formatting and linting checks Add mypy so we can start type annotating the toolkit Add tox so we can simplify our testing / build entry points. Additionally, easier to support testing across multiple versions.

(related to https://github.com/NASA-AMMOS/AIT-Core/issues/364)