Таблица [dependency-groups] хранит внутренние наборы инструментов проекта, например тесты или сборку документации. Эти записи не становятся зависимостями опубликованного wheel. pip умеет ставить выбранную группу.
Опишите группу
Значение содержит обычные строки требований, а include-group позволяет включить общий набор в несколько рабочих сценариев без копирования каждой версии между секциями.
[dependency-groups]
test = ["pytest>=8", "coverage"]
Установите через pip
Команда читает pyproject.toml из текущего каталога, разрешает группу вместе с ее зависимостями и не требует превращать проект в публикуемый пакет.
python -m pip install --group test
Группа остается внутренней
Build backend не переносит dependency-groups в METADATA дистрибутива, поэтому пользователь вашей библиотеки не получит pytest или Sphinx при обычной установке.
Закрепите минимальную версию pip в CI, которая поддерживает –group, иначе старый runner примет pyproject.toml, но не узнает новый параметр установки.
Публичные возможности пакета оформляются иначе, через optional-dependencies и extras. Спецификация доступна в Python Packaging User Guide.