4 ms·
What's the benefit to one using this over Poetry [which already has all of these commands built-in]? Are you using it to avoid Poetry for one of the use cases
by tedmiston 3y ago
What's the benefit to one using this over Poetry [which already has all of these commands built-in]?
Are you using it to avoid Poetry for one of the use cases it doesn't handle well? (Otherwise, I don't see why one would use it.)
- jzombie 3y agoPrimary reason is that it works "out of the box" for Python packages that don't use Poetry. Of course, it could include a way to "convert" a pip-based package to Poetry, or whatnot.
- tedmiston 3y agoCan you give more specific examples of what you mean by "packages that don't use Poetry" (AFAIK one can install any Python package with Poetry)? Like, I know developing a package with Poetry can be painful. And I also use pipx for use cases like running CLIs installed globally. Or maybe you mean contributing to a third-party open-source project that doesn't use Poetry and the maintainers don't want to migrate to it for some reason. I don't see anything like that mentioned in the readme. Maybe it would help to document the intended use cases?
- jzombie 3y agoIf I come across a package that relies on pip, and I intend to fork it, introduce changes that might affect the requirements.txt file, and potentially submit a pull request to the original repository, I find it more straightforward to stick with pip itself. This is because Poetry, while versatile, doesn't seamlessly integrate with requirements.txt (it can be configured to work with it, but it doesn't write back to it). In essence, I see pip as the more standardized option, given its inclusion with Python. However, I initially turned to Poetry because I prefer its commands over those of pip. What slightly disappoints me is Poetry's divergence from pip's workflow. I appreciate your suggestion in the README! At the moment it's definitely more of a personal endeavor rather than trying to persuade anyone to use it... however, it doesn't intend to introduce anything new, it's just a CLI wrapper around standard Python tools.