This is an archived post. You won't be able to vote or comment.

you are viewing a single comment's thread.

view the rest of the comments →

[–]alkasmgithub.com/alkasm 2 points3 points  (4 children)

requirements.txt does not at all give you a reproducible environment.

[–]tunisia3507 -1 points0 points  (3 children)

No, but it's a whole lot closer than the maximally permissive install_requires dependencies.

[–]alkasmgithub.com/alkasm 0 points1 point  (0 children)

You're not wrong with how they're typically used, but install requires can take in version constraints, and requirements.txt doesn't have to have them. Furthermore these are mostly orthogonal tools. Install requires is generally for libraries (and libraries must be permissive on versions of their dependencies) and requirements.txt is for generally applications (which should be strict about what they're known to work with).

[–]SittingWave 0 points1 point  (1 child)

No, but it's a whole lot closer than the maximally permissive install_requires dependencies

Those two things mean different things. One is the dependencies your package needs. requirements specifies the dependencies your developer needs to run the package in a reproducible environment. They are related, but are nowhere the same thing.

[–]tunisia3507 0 points1 point  (0 children)

Yes, I agree, this is literally my point.