siphon
siphon copied to clipboard
Dependencies
Currently the dependency list in README.rst
is out of sync with setup.py. For example, README.rst
has:
requests>=1.2
numpy>=1.8
protobuf>=3.0.0a3
while setup.py
has these additional deps:
beautifulsoup4>=4.6
pandas
Easy fix, but I wonder if there is an easier way to keep these lists in sync, or do we need to hand maintain the two dependency lists?
Also, pandas is missing from environment.yml
. There could also be other differences between setup.py
and environment.yml
, as I didn't do a thorough combing because I wanted to see if there was a way we could reduce the duplication first.
The install guide and developers guide are also out of sync with setup.py
.
We could always make all three of us a file owner on setup.py
, so that potential change to the deps would have to be reviewed by all of us, therefore increasing the likelihood that we'd also check the other places deps are listed?
The only way I can think of automating/eliminating repetition is to use a requirements file that somehow gets embedded into the appropriate doc page (not even sure if that's baked into sphinx). environment.yml
will always be its own thing.
Checklists or a script that compares all of these and fails the build?
While I'm all for automation, that feels like there are many hours hiding in getting that in place--essentially in just making sure the docs stay up to date. setup.py
and environment.yml
are "guaranteed" to be correct because they're used on Travis and AppVeyor, respectively.
I'm a little disturbed that windows builds are working without pandas being listed, but I wonder if pandas is getting pulled in as a dep for something else (xarray?).
Must be - it is a listed dep: http://xarray.pydata.org/en/stable/installing.html