This got long, so TLDR: Micky's reactions are what I would call "correct". If people want reproducible environments that's great, but pip freeze is not going to get you there.
The answer is (like most things in life) it depends. What are you trying to do? I tend to split along this line into two idea groups: "libraries" and "applications".
At this point I'd suggest that you read the following to make sure that we're on the same page about these words.
- setup.py vs requirements.txt by Donald Stufft (https://caremad.io/posts/2013/07/setup-vs-requirement/)
- Pipfile vs setup.py section of the pipenv docs (https://pipenv-fork.readthedocs.io/en/latest/advanced.html#pipfile-vs-setup-py)
Hopefully you read them, but the TLDR on those is:
- Libraries are supposed to work in an ecosystem of things and so should strive to only require the minimum restrictions on dependencies that will still gaurentee a stable API. Here you probably just want to have the core dependencies be specified with minimum version numbers or