# python-semantic-release/python-semantic-release

Automating Releases via SemVer and Commit Message Conventions

Repository: https://github.com/python-semantic-release/python-semantic-release
Canonical: https://ross.abutalabs.com/products/python-semantic-release
Homepage: https://python-semantic-release.readthedocs.io/en/stable/
Language: Python
License: MIT
License Family: permissive
Topics: python, semantic-release, release, tool, tooling
Last push: 2026-08-31T23:04:47+00:00

## Health v2 (maintenance only)
Score: 100/100 (v2, computed 2026-09-03T02:20:16.233290+00:00)
- activity 100, release rhythm 99, longevity 100
- inputs: {"age_days": 4055, "days_push": 2, "days_rel": 5, "gap_med": 3, "n_releases_24m": 42}
- flags: none
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 1055, forks 278 (observed 2026-09-01T02:14:06.114315+00:00)

## What it is
A Python CLI tool that automates semantic version bumping and releases based on commit message conventions. It can be run standalone or via its official GitHub Action to version, tag, and publish releases.

## Use cases
- automatically bump semver versions from commit messages
- generate changelogs from conventional commits
- automate PyPI releases in CI
- run semantic-release for a Python project
- determine next version number from git history
- publish GitHub releases automatically

## When to choose
- you maintain a Python project wanting fully automated versioning and releases
- your team follows conventional commit conventions
- you want a GitHub Action for hands-off release publishing

## When to avoid
- your project doesn't use structured commit message conventions
- you need semantic-release for JavaScript (use semantic-release instead)
- you prefer manual control over version numbers and release timing

## Facets
- artifact type: cli-tool
- maturity: active
- function: build-tool, ci-cd, version-control, developer-tools
- domain: developer-tools, version-control
- platform: python, cli, cross-platform
- tags: semantic-versioning, release-automation, conventional-commits, changelog, github-actions, automation, devops

## Member repositories
- python-semantic-release/python-semantic-release (main) score 100

## Provenance
- Observed fields: from GitHub, fetched 2026-09-01T02:14:06.114315+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-30T07:00:33.042776+00:00, confidence not recorded.
  - readme: https://github.com/python-semantic-release/python-semantic-release (fetched 2026-09-01T02:14:06.114315+00:00, sha 0fc67dba6eab)
  - registry_pypi: https://pypi.org/pypi/python-semantic-release/json (fetched 2026-08-29T13:02:46.718179+00:00, sha dcd9147da808)
- Data as of 2026-08-30T08:39:29.467469+00:00.
