Metadata-Version: 2.1
Name: python-semantic-release
Version: 9.3.0
Summary: Automatic Semantic Versioning for Python projects
Author-email: Rolf Erik Lekang <me@rolflekang.com>
License: MIT
Project-URL: changelog, https://github.com/python-semantic-release/python-semantic-release/blob/master/CHANGELOG.md
Project-URL: documentation, https://python-semantic-release.readthedocs.io
Project-URL: homepage, https://python-semantic-release.readthedocs.io
Project-URL: issues, https://github.com/python-semantic-release/python-semantic-release/issues
Project-URL: repository, http://github.com/python-semantic-release/python-semantic-release.git
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Requires-Python: >=3.8
Description-Content-Type: text/x-rst
License-File: LICENSE
License-File: AUTHORS.rst
Requires-Dist: click<9,>=8
Requires-Dist: click-option-group~=0.5
Requires-Dist: gitpython<4,>=3.0.8
Requires-Dist: requests<3,>=2.25
Requires-Dist: jinja2<4,>=3.1.2
Requires-Dist: python-gitlab<5,>=2
Requires-Dist: tomlkit~=0.11
Requires-Dist: dotty-dict<2,>=1.3.0
Requires-Dist: importlib-resources<7,>=5.7
Requires-Dist: pydantic<3,>=2
Requires-Dist: rich>=12.5.1
Requires-Dist: shellingham>=1.5.0.post1
Provides-Extra: docs
Requires-Dist: Sphinx<=6.0.0; extra == "docs"
Requires-Dist: sphinxcontrib-apidoc==0.3.0; extra == "docs"
Requires-Dist: sphinx-autobuild==2021.03.14; extra == "docs"
Requires-Dist: furo>=2023.3.27; extra == "docs"
Provides-Extra: test
Requires-Dist: coverage[toml]<8,>=6; extra == "test"
Requires-Dist: pytest<8,>=7; extra == "test"
Requires-Dist: pytest-env~=1.0; extra == "test"
Requires-Dist: pytest-xdist<4,>=2; extra == "test"
Requires-Dist: pytest-mock<4,>=3; extra == "test"
Requires-Dist: pytest-lazy-fixture~=0.6.3; extra == "test"
Requires-Dist: pytest-cov<5,>=4; extra == "test"
Requires-Dist: pytest-pretty<2,>=1.2.0; extra == "test"
Requires-Dist: pytest-clarity>=1.0.1; extra == "test"
Requires-Dist: responses==0.23.3; extra == "test"
Requires-Dist: requests-mock<2,>=1.10.0; extra == "test"
Requires-Dist: types-pytest-lazy-fixture>=0.6.3.3; extra == "test"
Provides-Extra: dev
Requires-Dist: pre-commit; extra == "dev"
Requires-Dist: tox; extra == "dev"
Requires-Dist: ruff==0.3.2; extra == "dev"
Provides-Extra: mypy
Requires-Dist: mypy; extra == "mypy"
Requires-Dist: types-requests; extra == "mypy"

Python Semantic Release
***********************

|Ruff| |Test Status| |PyPI Version| |conda-forge version| |Read the Docs Status| |Pre-Commit Enabled|

Automatic Semantic Versioning for Python projects. This is a Python
implementation of `semantic-release`_ for JS by Stephan Bönnemann. If
you find this topic interesting you should check out his `talk from
JSConf Budapest`_.

The general idea is to be able to detect what the next version of the
project should be based on the commits. This tool will use that to
automate the whole release, upload to an artifact repository and post changelogs to
GitHub. You can run the tool on a CI service, or just run it locally.

Installation
============

::

  python3 -m pip install python-semantic-release
  semantic-release --help

Python Semantic Release is also available from `conda-forge`_ or as a `GitHub Action`_.
Read more about the setup and configuration in our `getting started guide`_.

.. _semantic-release: https://github.com/semantic-release/semantic-release
.. _talk from JSConf Budapest: https://www.youtube.com/watch?v=tc2UgG5L7WM
.. _getting started guide: https://python-semantic-release.readthedocs.io/en/latest/#getting-started
.. _GitHub Action: https://python-semantic-release.readthedocs.io/en/latest/automatic-releases/github-actions.html
.. _conda-forge: https://anaconda.org/conda-forge/python-semantic-release

.. |Test Status| image:: https://img.shields.io/github/actions/workflow/status/python-semantic-release/python-semantic-release/main.yml?branch=master&label=Test%20Status&logo=github
   :target: https://github.com/python-semantic-release/python-semantic-release/actions/workflows/main.yml
   :alt: test-status
.. |PyPI Version| image:: https://img.shields.io/pypi/v/python-semantic-release?label=PyPI&logo=pypi
   :target: https://pypi.org/project/python-semantic-release/
   :alt: pypi
.. |conda-forge Version| image:: https://img.shields.io/conda/vn/conda-forge/python-semantic-release?logo=anaconda
   :target: https://anaconda.org/conda-forge/python-semantic-release
   :alt: conda-forge
.. |Read the Docs Status| image:: https://img.shields.io/readthedocs/python-semantic-release?label=Read%20the%20Docs&logo=Read%20the%20Docs
   :target: https://python-semantic-release.readthedocs.io/en/latest/
   :alt: docs
.. |Pre-Commit Enabled| image:: https://img.shields.io/badge/pre--commit-enabled-brightgreen?logo=pre-commit
   :target: https://github.com/pre-commit/pre-commit
   :alt: pre-commit
.. |Ruff| image:: https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/astral-sh/ruff/main/assets/badge/v2.json
    :target: https://github.com/astral-sh/ruff
    :alt: Ruff
