I like to add `--upgrade-deps` as well. This automatically updates pip and setuptools within the venv after creation.
Didn't know about this .. thanks!
Exactly. People complain about Python's package management story, but for 99% of use cases a workflow that consists of Python's built-in venv, pip, requirements.txt, and constraints.txt is completely fine.
Even more if you use the legendary "pip-chill" to trim down the requirements file ;-)
Sorry. Shameless plug.
Poetry tracks your direct vs transient dependencies for you, and poetry run is stateless and easier to work with than a stateful activated venv
My work saw a 5x speedup (~2min to ~20s) with a cold cache and like 200-500x (~20s to <0.1s) with a hot cache in our CI pipelines when we switched to uv.