Introduction to pyproject.toml
When preparing a Python project for distribution, you use pyproject.toml to define its metadata, dependencies, and build settings. It is the modern standard that replaces most uses of setup.py, offering a clean and tool-independent configuration.
The pyproject.toml file keeps all essential package information, such as name, version, and build requirements, in one place. Modern tools like pip and build rely on this file, making packaging more reliable and consistent.
A minimal pyproject.toml must contain at least a [build-system] section, which tells build tools what backend to use and what dependencies are needed to build the package. You can also add a [project] section to specify metadata such as the package name and version.
[build-system]
requires = ["setuptools>=61.0"]
build-backend = "setuptools.build_meta"
[project]
name = "my_sample_package"
version = "0.1.0"
description = "A simple example package"
authors = [
{ name = "Jane Doe", email = "jane@example.com" }
]
Tack för dina kommentarer!
Fråga AI
Fråga AI
Fråga vad du vill eller prova någon av de föreslagna frågorna för att starta vårt samtal
What are the required sections in a pyproject.toml file?
Can you explain the purpose of each section in the example pyproject.toml?
How do I add dependencies or optional features to pyproject.toml?
Fantastiskt!
Completion betyg förbättrat till 7.14
Introduction to pyproject.toml
Svep för att visa menyn
When preparing a Python project for distribution, you use pyproject.toml to define its metadata, dependencies, and build settings. It is the modern standard that replaces most uses of setup.py, offering a clean and tool-independent configuration.
The pyproject.toml file keeps all essential package information, such as name, version, and build requirements, in one place. Modern tools like pip and build rely on this file, making packaging more reliable and consistent.
A minimal pyproject.toml must contain at least a [build-system] section, which tells build tools what backend to use and what dependencies are needed to build the package. You can also add a [project] section to specify metadata such as the package name and version.
[build-system]
requires = ["setuptools>=61.0"]
build-backend = "setuptools.build_meta"
[project]
name = "my_sample_package"
version = "0.1.0"
description = "A simple example package"
authors = [
{ name = "Jane Doe", email = "jane@example.com" }
]
Tack för dina kommentarer!