Closed wedaly closed 10 years ago
I'd like to go even farther and reorganize the requirements files. What's the difference between requirements.txt
, base_requirements.txt
, and pre-requirements.txt
? Why are some of the development requirements (like coverage
and sphinx
) mixed in with the requirements to actually run the code?
I think it would be better to have two requirements files: requirements.txt
and dev-requirements.txt
. The former contains all the requirements to actually run all the functionality with ease
. The latter contains other requirements necessary to develop the code: running tests, building documentation, etc. You can even pass both of these sets of dependencies to the setup()
function: the first list for the install_requires
argument, and the second list for the tests_require
argument. https://pythonhosted.org/setuptools/setuptools.html#new-and-changed-setup-keywords
@singingwolfboy I think the reason why the requirements files are organized this way is (a) to ensure that numpy is installed before scipy (https://github.com/edx/discern/issues/18), and (b) to avoid installing numpy/scipy/scikit in Travis.
In addition, some of our deploy scripts currently assume that the requirements files are set up a certain way, and I'm concerned about messing that up.
That said, I agree that the requirements files could be cleaned up -- I just think it's outside the scope of this PR.
I'll totally accept "outside the scope of this PR" as a valid reason not to do this right now. :) Your changes look good to me! :+1:
@singingwolfboy This should pull in the requirements for EASE during
pip install
. Looks okay?