galaxy-release-util
Utlity for various tasks around creating Galaxy releases
What it is and what it does
galaxy-release-util is a collection of command-line scripts that automate the release process for the Galaxy project. It handles tasks like generating changelogs from GitHub pull requests, tracking commits to their originating PRs, validating release metadata from GitHub milestones, and orchestrating the build and upload of release artifacts. The package integrates with GitHub's API (via PyGithub) and uses batched GraphQL queries to efficiently resolve commit-to-PR relationships, reducing API overhead from thousands of REST calls to dozens of queries.
The tool is designed for release managers coordinating Galaxy releases. It reads release metadata from GitHub milestones (due date, version numbers from neighboring milestones) and supports both legacy setup.cfg and modern PEP 621 pyproject.toml package metadata formats. Recent versions dropped the need for separate release config YAML files, instead deriving dates and versions directly from milestone state. It depends on build, click, python-dateutil, docutils, packaging, PyGithub, requests, and twine to perform its tasks.
Use it for:
- Generate a structured changelog from merged pull requests between two release versions.
- Identify and report blocking pull requests that must merge before a release freeze date.
- Create a GitHub issue template with release tasks and timeline for a new release cycle.
- Build and upload Galaxy meta-packages and client packages to PyPI as part of release automation.
- Resolve which pull request introduced each commit in a large release, batching queries to minimize GitHub API calls.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Provides command-line scripts to automate Galaxy release workflows, including changelog generation, pull request tracking, and package building.
Yes, if you are a Galaxy release manager or contributor automating Galaxy releases. The package is actively maintained, has no known vulnerabilities, and recent updates (0.4.0–0.4.2) show active development addressing PEP 621 migration and GraphQL optimization. However, verify that the CLI interface and GitHub-centric workflow fit your use case, and clarify AFL license compatibility before adopting in a commercial context.
Install
galaxy-release-util on PyPI
pip
pip install galaxy-release-utiluv
uv add galaxy-release-utilpoetry
poetry add galaxy-release-utilInstalling galaxy-release-util
Before you install
Low friction installation with a pure Python wheel. Active maintenance as of 2026-08-03 with recent updates to GraphQL batching and PEP 621 support. Requires 8 runtime dependencies including build, click, PyGithub, and twine.
License in practice
Licensed under AFL (Academic Free License), but license treatment is marked unclear in the metadata. Verify AFL compatibility with your project before adopting.
Quickstart
pip install galaxy-release-util
from galaxy_release_util import create_changelog
# Use CLI commands: create-changelog, check-blocking-prs, create-release-issue, etc.
Requires GitHub API credentials (via PyGithub) and git repository context to function; designed for Galaxy project release workflows specifically.
Verify before relying
- Whether the package is usable for non-Galaxy projects or is tightly coupled to Galaxy's release process.
- Exact scope and stability of the CLI interface across versions.
- AFL license implications for commercial or proprietary use.
Package facts
| License | AFL (unclear) |
| Python support | supports the current Python release (>=3.8) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 8 — build, click, python-dateutil, docutils, packaging, PyGithub, requests, twine |
| Maintenance | actively maintained — 11 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 90,309/month — #13,603 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: galaxy_release_util-0.4.2-py3-none-any.whl
Keywords: Galaxy
Tags
More Software Development packages
Provides backported and experimental type hints…
permissive · top 100 on PyPI
numpyNumPy provides an N-dimensional array object…
permissive · top 100 on PyPI
fastapiFastAPI is a Python web framework for building…
permissive · top 100 on PyPI
annotated-docProvides a way to document function parameters,…
permissive · top 100 on PyPI
typerTyper builds command-line applications from…
permissive · top 1,000 on PyPI
distlibDistlib provides low-level packaging utilities…
permissive · top 1,000 on PyPI
gravityGravity manages multiple Galaxy server…
permissive · top 15,000 on PyPI
pulsar-galaxy-libPulsar Galaxy Lib is a Python server that…
permissive · top 15,000 on PyPI
gxformat2Parses, validates, and converts Galaxy workflow…
permissive · top 15,000 on PyPI
bioblendBioBlend provides a Python client library for…
permissive · top 15,000 on PyPI
repo2rocrateGenerates RO-Crate metadata from workflow…
permissive · top 15,000 on PyPI
total-perspective-vortexTotal Perspective Vortex (TPV) provides dynamic…
permissive · top 15,000 on PyPI
versioneerVersioneer automates version management in…
permissive · top 5,000 on PyPI
versioneer-518Automates version management in…
permissive · top 15,000 on PyPI
pip-upgraderAn interactive CLI tool that upgrades Python…
permissive · top 15,000 on PyPI