The point is that if I'm writing a
library and I specify `requests == 1.2.3`, then what are you going to do in your
application if you need both my library
and `requests == 1.2.4`?
This is why libraries should not use lockfiles, they should be written to safely use as wide a range of dependencies' versions as possible.
It's the developers of an application who should use a lockfile to lock transitive dependencies.