5 ms·
I agree. None of these myriad package managers does anything that pip doesn't do. Virtualenv + pip still can't be beat.
by olympus 14y ago
I agree. None of these myriad package managers does anything that pip doesn't do. Virtualenv + pip still can't be beat.
- jzwinck 14y agoCan't the same be said of yum or apt or whatever system facilities? I used Python for a couple years with many third party packages and RPMs worked fine. Why does each scripting language need its own package manager? It's madness. They all have the same fundamental needs, don't they?
- olympus 14y agoI'd like to just use apt, it won't work for me. At least with Python, pip easily integrates virtualenv, which isn't true of yum or apt as far as I know. Plus, python devs can package once for pip and have it work on any system, without having to package separate deb, rpm, txz, etc. This strikes the balance of having too many package managers for devs to support and having too many package managers for me to use. I've made my peace with a single package manager per language plus apt for my OS.
- pwang 14y agoHow well does yum work on Windows and Mac?
- jofer 14y agoActually, this particular one does a lot that pip doesn't do... It manages dependencies that aren't python packages. Furthermore, it allows multiple, side-by-side installations of said dependencies in a user's home directory. And it's cross platform. None of the current solutions can do that... (Even including full-blown package managers, as they're effectively limited to a single platform.) I'm not saying that pip is going anywhere, but they did have very good reasons for making yet another python package manager.
- olympus 14y agoI'll concede the point that pip can't handle non-python packages. But it can handle side by side versioning by way of virtualenv. But if I need a specific version for a project I just install that version into my virtualenv's /bin/ folder and that becomes the version used whenever I activate that virtualenv. It's super easy and doesn't add to the cluttered package manager ecosystem.
- jofer 14y agoYeah, I didn't mean to imply that pip didn't handle multiple versions (though my comment certainly reads that way). I intended that to be a comparison of "full-blown" package managers with conda. (As were the user-home-directory and cross-platform comments.) At any rate, pip is really fantastic, and I use it constantly. However, being able to handle non-python dependencies is huge in the scientific world, where lots of python packages have a _lot_ of non-python dependencies. Widely-used packages (e.g. numpy, matplotlib, scipy, etc) don't have very many, and are well supported, but a lot of the less widely-used packages can be a real pain to build. I'm excited about it because conda has the potential to replace a couple of virtual machines I currently keep around for this purpose. I'll certainly admit it's not a majority use-case, but if it works as advertised it will be very useful for me, at any rate.
- travisoliphant 14y agoI wish this were true, I really do, but it's just not true. Maybe for python-only packages. But, for the myriad of python extensions necessary for Scientific Computing with Python, pip and virtualenv are not enough. We think conda is a useful tool, and have freed it for use by everyone. Perhaps something like pip + a better virtualenv + wheel would be close, but we needed something that works now.
- travisoliphant 14y agoI wish this were true, I really do, but it's just not true. Maybe for python-only packages. But, for the myriad of python extensions necessary for Scientific Computing with Python, pip and virtualenv are not enough. We think conda is a useful tool, and have freed it for use by everyone. Perhaps something like pip + a better virtualenv + wheel would be close, but we needed something that works now.