If I compare python against: go, npm, ruby, jvm - it clearly has better user/dev experience.
pipx just works and it is a pretty decent failsafe option. perl5 was a sad hell last I had to use it.
If I compare python against: go, npm, ruby, jvm - it clearly has better user/dev experience.
pipx just works and it is a pretty decent failsafe option. perl5 was a sad hell last I had to use it.
pip + setuptools using setup.cfg works very well.
It seems to me the Python packaging community is chasing the nodejs community for very little value and a lot more added complexity and very little regard to the community and package maintainers in general.
It is a solution to the problem of: how do I run something without having to install it into my user environment and having to worry if it conflicts with package versions used by other things in my user environment. I often use it for simple code demos, share a pipx command to run code from some github repo I made to show how something can be done in python.
And it does not require any special consideration from package maintainers.
Nobody wants to fiddle with python -m venv + source bin/activate manually just to install and use a command line utility.
That said, you could probably reinvent pipx with 10 lines of shell-script and get 90% of it's utility.