4 ms·
For those new or unfamiliar with python, I think the best solution is the simplest: pip and virtualenv
by Evidlo 7y ago
For those new or unfamiliar with python, I think the best solution is the simplest: pip and virtualenv
- ramraj07 7y agoSeriously. The author is bending over backwards to accommodate poetry from every direction, from the stupidest installation instructions I've heard, to "can't transfer from requirements.txt" to "it doesn't work well with docker but doable". Like what exactly does it add that's worth all this complexity? Make you a maitai every hour?
- Daishiman 7y agoDid you even read the article?
- Twirrim 7y agoI did, certainly don't see what specific value poetry is providing from what he said.
- raihansaputra 7y agoAFAIK, pipenv and poetry also pins down the dependencies requirements to the same versions, while pip don't (?).
- yjftsjthsd-h 7y agohttps://news.ycombinator.com/newsguidelines.html https://news.ycombinator.com/newsguidelines.html > Please don't comment on whether someone read an article. "Did you even read the article? It mentions that" can be shortened to "The article mentions that."
- thesuperbigfrog 7y agopip and virtualenv are my preferred solution too because they are simple and easy to use. However, you can run into issues if you are using different versions of Python, or Python on different operating systems.
- ropans808 7y agoThat's my general solution as well, but when pip fails at dependency resolution tools like poetry become really nice.
- ph2082 7y agoSmall python projects I did, I used venv and pip. Learned my lesson through wasting couple of hours after fighting through dependency issues. Being from JAVA Shop for long time, If I have to switch between different version of JAVA, all I do is change JAVA_HOME to point to correct version, go to base project directory and "mvn clean install" does the job. :).
- j88439h84 7y agoNah, Poetry does the work of both and more.
- Grue3 7y agoI would actually recommend conda, it solves the "multiple version" issue and is compatible with virtualenv/pip so you can keep using them as usual.
- ScoutOrgo 7y agoMiniconda makes this really simple and their doc on environments is easy to read/understand. The benefits of conda really shine when trying to install a package with external dependencies to an environment. The one thing I thought was neat here was pipx. I do have a few CLIs set up in my default conda env and haven't run into any dependency problems yet, but have occasionally tried to use them while another env is activated. Having a separate env automatically created for the entry points is a nice value add.
- aequitas 7y agoI would add pip-tools to that so the requirements update process can be automated.
- globular-toast 7y agoYes, definitely. But other tools can be used in addition to solve their own problems. Need to have multiple versions of python installed and easily accessible? Use pyenv. Need to run tests across multiple versions of python? Use tox. Need to freeze environments for deployment purposes? Use pip-tools. Need to freeze the entire operating system? Use docker or vagrant. Don't use tools you don't need. That would be silly.