Skip to content

Requirements in setup.py are redundant, and partially inconsistent, with requirements.txt #113

@kandersolar

Description

@kandersolar

index.rst advertises the contents of requirements.txt as the package's dependencies:

numpy>=1.15.0
pandas>=0.24.0,<1.1.0
pvlib>=0.8.0
scipy>=1.2.0
statsmodels>=0.9.0
scikit-image>=0.16.0

But the pandas version range specified in setup.py is in fact slightly different (ref):

pvanalytics/setup.py

Lines 33 to 40 in a3d3860

INSTALL_REQUIRES = [
'numpy >= 1.15.0',
'pandas >= 0.24.0',
'pvlib >= 0.8.0',
'scipy >= 1.2.0',
'statsmodels >= 0.9.0',
'scikit-image >= 0.16.0'
]

Worth considering having a "single source of truth" for the requirement ranges so that there's no way for redundant specs to get out of sync. I think some packages solve this by including a line in setup.py like this: INSTALL_REQUIRES = open('requirements.txt').read().split('\n'). Maybe eliminating requirements.txt and keeping version ranges in setup.py would make more sense in this case.

Same goes for DOCS_REQUIRE and docs/requirements.txt.

Metadata

Metadata

Assignees

No one assigned

    Labels

    dependencyIssues relating to dependencies or dependency management

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions