Unidata / siphon

Siphon - A collection of Python utilities for retrieving atmospheric and oceanic data from remote sources, focusing on being able to retrieve data from Unidata data technologies, such as the THREDDS data server.
https://unidata.github.io/siphon
BSD 3-Clause "New" or "Revised" License
216 stars 75 forks source link

Dependencies #164

Closed lesserwhirls closed 7 hours ago

lesserwhirls commented 7 years ago

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.

lesserwhirls commented 7 years ago

The install guide and developers guide are also out of sync with setup.py.

lesserwhirls commented 7 years ago

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?

dopplershift commented 7 years ago

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.

jrleeman commented 7 years ago

Checklists or a script that compares all of these and fails the build?

dopplershift commented 7 years ago

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?).

jrleeman commented 7 years ago

Must be - it is a listed dep: http://xarray.pydata.org/en/stable/installing.html

dopplershift commented 7 hours ago

810 switched us over to include (now) pyproject.toml directly in the install guide.