Replies: 2 comments 1 reply
-
As far as I know, That’s how I see it (I don’t really use |
Beta Was this translation helpful? Give feedback.
-
Hi @AdamJel, thanks for the interesting question. My experience with tox is admittedly quite shallow. But here's my perspective on how the two projects compare. Firstly poethepoet is essentially an env aware task runner, and doesn't really try to be anything else. On the other hand tox is primarily a testing/CI automation tool, that happens to be highly configurable and also usable as a task runner. However it lacks a niceties you might appreciate in a dedicated task runner like automatic documentation of tasks in the CLI, directly invoking python functions, or shell completion of task names. I think it's telling that there are a number of things that are simple to achieve with poe, but I couldn't easily work out whether they are possible with tox because the tox documentation focuses on other use cases. Poethepoet was initially created to be the missing task runner for poetry, and so emphasizes seamless integration into the poetry configuration (i.e. using pyproject.toml), running tasks in the poetry managed venv, and can integrate tightly with the poetry cli if installed as a plugin. In scope it aims to be a friendlier, better integrated, but similarly powerful alternative to using a Makefile as one might in python projects (some work still to do in terms of matching features). It can also be used completely independently of poetry, if configured to use some other venv, or none at all. I do this regularly. Tox's killer feature is managing multiple environments as one might wish to do for testing a python package with multiple versions of python. It has some support for use with poetry though I haven't tired it, and generally they take different approaches to overlapping concerns. As of this writing it sort of works with pyproject.toml, but usually uses a separate tox.ini file. Tox can be used for dev tasks unrelated to testing, though I've also seen people use make as an entry point for running tox, so one might also reasonably prefer to use poe to run tox rather than invoking tox directly. So in summary, tox and poe serve different purposes. Tox is a mature, and very flexible automation tool, but I would argue that poe is more delightful and powerful as a task runner, especially when used in conjunction with poetry. |
Beta Was this translation helpful? Give feedback.
-
Hello @nat-n & all,
I would like to ask about features of
poethepoet
in comparison totox
. Is there any overlap of features? Doespoethepoet
aim to replace tox completely? Is it already possible to replace tox entirely?I would like to know these first, before I try to implement it in my project :)
Thanks a lot
Beta Was this translation helpful? Give feedback.
All reactions