Welcome to pyproject-patcher’s documentation!¶
Description¶
This Python package is an attempt to make it a little easier to
patch pyproject.toml in place.
It is mainly useful for maintainers of system packages.
If you’re not a maintainer of system packages, or if you don’t know
what that means, then pyproject-patcher is probably not for you.
Examples¶
Recommended import statement¶
The following examples all assume the following import statement:
from pyproject_patcher import patch_in_place
Set a static project version¶
with patch_in_place('pyproject.toml') as toml:
toml.set_project_version('1.2.3')
Strip the version constraint of a dependency¶
with patch_in_place('pyproject.toml') as toml:
toml.strip_build_system_dependency_constraint('setuptools-git-versioning')
# or, equivalently:
# toml.build_system_requires.strip_constraint('setuptools-git-versioning')
Remove an entry from a dependency list¶
with patch_in_place('pyproject.toml') as toml:
toml.remove_build_system_dependency('setuptools-git-versioning')
# or, equivalently:
# toml.build_system_requires.remove_dependency('setuptools-git-versioning')
Remove setuptools-git-versioning from pyproject.toml entirely¶
with patch_in_place('pyproject.toml') as toml:
toml.set_project_version('1.2.3')
toml.tools.setuptools_git_versioning.remove()
Configure a version template without a .dirty suffix¶
with patch_in_place('pyproject.toml') as toml:
toml.tools.setuptools_git_versioning.template_ignore_dirty_git()