Hacker News new | ask | show | jobs
by EsssM7QVMehFPAs 2375 days ago
Why would I use this instead of Anaconda?
3 comments

They are pretty different tools. Poetry is a dependency manager and packaging tool, Anaconda is a pre-configured environment for scientific Python.
I guess the comparison would be to Conda which also allows for declaring dependencies and building environments.
They are referring to conda, which is a generic package manager, dependency resolution and build tool.
They might be referring to conda, the package manager used with Anaconda.
Can you define dependencies loosely and still have a lock file in Anaconda so when you come back to the project a year later you can install the exact same dependencies at the same versions? (Honest question, not familiar with Anaconda.)
If you have these requirements, why not vendorize all your dependencies?
So you want to define your dependencies loosely or lock them?
You can do both! Your general file can loosely define dependencies like greater than this version, less than this version, skip this version, etc

Then you “lock” and it builds a dependency tree with the newest version of everything that satisfies your loose requirements.

Then you can choose to install dependencies from your lockfile, which is exact frozen versions OR you can re-run the lock later, which will again attempt to update everything to the latest versions that satisfy your loose constraints

You can pip freeze
Why would I use Anaconda instead of Nix?
A bit of a shameless self-plug, but you can use both Poetry _and_ Nix! https://github.com/nix-community/poetry2nix