skillfed

galaxy-release-util

Utlity for various tasks around creating Galaxy releases

galaxy-release-util v0.4.2 90.3K downloads/30d#13,603 on PyPI3
License unclear AFL Active released

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-util

uv

uv add galaxy-release-util

poetry

poetry add galaxy-release-util

Installing 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

Development Status :: 5 - Production/StableEnvironment :: ConsoleIntended Audience :: DevelopersLicense :: OSI Approved :: Academic Free License (AFL)Natural Language :: EnglishOperating System :: POSIXProgramming Language :: Python :: 3Programming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.8Programming Language :: Python :: 3.9Topic :: Software DevelopmentTopic :: Software Development :: Code GeneratorsTopic :: Software Development :: Testing

Tags

galaxy release automationchangelog generation from githubrelease workflow scriptspull request to commit mappinggalaxy package release toolsgithub milestone release metadatarelease checklist automation
release-automationgithub-integrationgalaxy-project

More Software Development packages