Python\'s poetry dependency manager allows specifying optional dependencies via command:
$ poetry add --optional redis
Which results in thi
You need to add a tool.poetry.extras group to your pyproject.toml if you want to use the -E flag during install, as described in this section of the docs:
[tool.poetry.extras]
caching = ["redis"]
The key refers to the word that you use with poetry install -E, and the value is a list of packages that were marked as --optional when they were added. There currently is no support for making optional packages part of a specific group during their addition, so you have to maintain it by hand.
The reason behind this additional layer of abstraction is that extra-installs usually refer to some additional functionality that is enabled through the installation of one or more dependencies. poetry simply mimics setuptools' definition of extra-installs here, which might explain why it's so sparingly documented.