Skip to content

dependency-groups cross link Added in Pyproject.toml page #1847

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 8 commits into
base: main
Choose a base branch
from
23 changes: 20 additions & 3 deletions source/specifications/pyproject-toml.rst
Original file line number Diff line number Diff line change
Expand Up @@ -16,13 +16,15 @@ tools (as well as other tools).

.. note:: This specification was originally defined in :pep:`518` and :pep:`621`.

The ``pyproject.toml`` file is written in `TOML <https://toml.io>`_. Three
The ``pyproject.toml`` file is written in `TOML <https://toml.io>`_. Several
tables are currently specified, namely
:ref:`[build-system] <pyproject-build-system-table>`,
:ref:`[project] <pyproject-project-table>` and
:ref:`[tool] <pyproject-tool-table>`. Other tables are reserved for future
:ref:`[project] <pyproject-project-table>`,
:ref:`[tool] <pyproject-tool-table>`, and
:ref:`[dependency-groups] <pyproject-dependency-groups-table>`. Other tables are reserved for future
use (tool-specific configuration should use the ``[tool]`` table).


.. _pyproject-build-system-table:

Declaring build system dependencies: the ``[build-system]`` table
Expand Down Expand Up @@ -541,4 +543,19 @@ History
added and ``License::`` classifiers were deprecated through :pep:`639`.


.. _pyproject-dependency-groups-table:

Declaring dependency groups: the ``[dependency-groups]`` table
==============================================================

This specification defines Dependency Groups, a mechanism for storing package requirements in
``[pyproject.toml]`` files such that they are not included in project metadata when it is built.

The ``[dependency-groups]`` table is an optional top-level table that allows defining non-distribution dependencies used for internal tooling, such as testing or linting.
Dependency groups are also suitable for use in projects which are not built for distribution, such as collections of related scripts.

For the full specification and behavior, refer to the `Dependency Groups specification <https://packaging.python.org/en/latest/specifications/dependency-groups/>`_.



.. _TOML: https://toml.io