Diet-Microbiome-Interactions-Lab / GeneralTools

General Properties of FASTAs
MIT License
3 stars 1 forks source link

Pin dependencies #12

Open mavcook opened 3 months ago

mavcook commented 3 months ago

Can we get some version ranges for our dependencies? Right now we have

    install_requires=[
        'bio',
        'matplotlib',
        'numpy',
        'pandas',
        'pyyaml==6.*',
        'python-json-logger==2.0.7',
    ],

It would be nice to have bio, matplotlib, and pandas narrowed down a bit. (numpy isn't needed, since it is a dependency of pandas)

Background info

At minimum, pinning to a major version (mydependency==2.*) is better than nothing (assuming the project follows semantic versioning). Pinning to an exact version is best for consistent behavior and reproducibility, but...

a problem with pinning versions (to a smaller range) is for people using the package, they might have a different version requirement for say pandas, which would cause install conflicts.

So the range of versions you want is a bit of a balance, and depends on the release strategy of the dependency. Dane, you know the bio package, so I leave that to you. Depending on how we are using pandas, it might be ok to pin it to a major version.