Transition Acorn first party dependencies (lib folder) to Python packages
Presently, many of the first party dependencies we use inside of Acorn are embedded as submodules. While this generally works, it deviates from the Python best practice of managing dependencies from pip
. The packages should be migrated to a module structure (with a semantic versioning scheme) and embedded in the requirements.txt
.
General Reference:
- How to Build Python Packages: https://www.oak-tree.tech/blog/python-packaging-primer
Development tasks:
-
Create module structures for the major dependencies in lib
under the "Packages" group in Django apps: https://code.oak-tree.tech/django-apps/packages -
Package structure should follow the Git pattern described in the reference article above. (Eg, package repository is separate from the code repository and where the code repository is pulled at the time of git
checkout.)