Do you have thoughts on how to avoid duplication of environment specifications for setuptools/pypi packages, docker containers, and CI? It doesn't matter much for this repo but I'd like to eventually be able to avoid boilerplate between travis.yml, setup.py, Dockerfiles, and conda yaml files. For example, conda yaml files take care of that for CI and Docker to a degree, but are there tools for setting requirements in setup.py based on conda environments? Similarly, my travis.yml scripts usually end up with a lot of the same non-python commands as Dockerfiles, which are annoying to keep in sync. Are there any public repos you guys worked on at Spotify that handled all that well?
isort is pretty cool, have not used that before. Did you run it here? I would have expected way more changes with it.
regarding duplication and CI tools (ex: travis.yml), we could always use custom (docker) images for builds thus depending on dockerfiles more. Regarding conda files and setup.py, essentially anything related to setup.py is over complicated, and overall whole package building and deployment of python is bit of a mess, and I usually end up with some extra code to handle this (you probably too?)
yes - I did run isort but only on the src/python directory of this repo
If this looks fine to you, I will add a CI sys (cirleci or travis) to run the code check in a separate PR.