Well, except it breaks Conda and other non-venv forms of environment isolation, because the --user
directory if present gets inserted before sys.path
in the Python module search order; and the workaround in CPython to bump the activated environment path above this is a venv-specific bespoke site hack and doesn’t work more generally. This has caused much grief for Conda users, as even reinstalling Conda (much less a specific environment) won’t remove these potentially conflicting packages; users have to specifically know where to go looking for them to remove them.
For that and other reasons pip and others have apparently been starting to move away from recommending --user
. See discussion in this thread, which also ended up getting on the topic of requiring a venv activated by the default, and the resulting Conda incompatibility: