Earlier quoted context omitted.
With pipx when you install things they go into isolated environments. With pip you're just installing things globally. This difference is important due to dependencies- if you have two different CLI tools you want to install but they have conflicting dependencies then pip is going to put at least one of them into an unusable state, while pipx will allow them to both coexist on the same system.
You can get this with standard pip by setting the PIP_REQUIRE_VIRTUALENV env variable.
My Python Development Environment, 2020 Edition
21–30 of 241 posts
Re: My Python Development Environment, 2020 Edition
#22Re: My Python Development Environment, 2020 Edition
#23Re: My Python Development Environment, 2020 Edition
#24Re: My Python Development Environment, 2020 Edition
#25Curious to hear other's experiences with pipenv vs poetry. Has anyone made the switch?
Re: My Python Development Environment, 2020 Edition
#26Curious to hear other's experiences with pipenv vs poetry. Has anyone made the switch?
I did a quick comparison here[0], and I'm planning to do an update with the latest version of Poetry.
[0] https://johnfraney.ca/posts/2019/03/06/pipenv-poetry-benchma...
Re: My Python Development Environment, 2020 Edition
#27How so? I've been using Docker for development for years now and haven't experienced this EXCEPT with some slowness I experienced with Docker Compose upon upgrading to MacOS Catalina (which turned out to be bug with PyInstaller, not Docker or Docker Compose). This is on a Mac, btw; I hear that Docker on Linux is blazing fast.
I personally would absolutely leverage Docker for the setup being described here: multiple versions with lots of environmental differences between each other. That's what Docker was made for!
Re: My Python Development Environment, 2020 Edition
#28Why pipx vs just using pip?
With pipx when you install things they go into isolated environments. With pip you're just installing things globally. This difference is important due to dependencies- if you have two different CLI tools you want to install but they have conflicting dependencies then pip is going to put at least one of them into an unusable state, while pipx will allow them to both coexist on the same system.
Re: My Python Development Environment, 2020 Edition
#29Curious to hear other's experiences with pipenv vs poetry. Has anyone made the switch?
But what really pushed me away is that installing or upgrading any single package upgraded all dependencies, with no way to disable this behavior. (I believe you can now.) A package manager should help me manage change (and thereby risk), not prevent me from doing so.
Poetry is probably the best of the all-in-one solutions. It does its job well but I've found the documentation lacking.
In the end, I've settled on pyenv-virtualenv to manage my environments and pip-tools to manage dependencies. It's simple and meets my needs.
Re: My Python Development Environment, 2020 Edition
#30Earlier quoted context omitted.
1. The author of this post helped to create the Django framework and runs a successful Python consultancy. 2. Conda is not used as much as you might think... it's really only used within the data science community.
1. Argument from authority doesn’t mean anything to me. I also don’t believe creating Django or running a Python consultancy endow someone with especially useful opinions of Python packaging tooling. (Not that the author isn’t knowledgeable, just you seem to think there’s an A implies B relationship between those two items and having good opinions about Python packaging, and there’s not). 2. Conda is quite widely use…
> large Fortune 500 e-commerce companies
Sorry, but argument from authority doesn't mean anything to me.
In all seriousness though, you literally did not provide any logical reasons to think conda is better.