release-tool

command module
v0.1.0-alpha.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 3, 2026 License: AGPL-3.0 Imports: 1 Imported by: 0

README

release-tool

Manages releases for OpenShock projects. Drop change files in .changes/, run the tool, get a semver tag and release.json.

How it works

Each pending change lives as a small Markdown file in .changes/:

---
type: minor
---
Add support for X

Run release-tool stable (or use the GitHub Action) and it:

  • Computes the next semver based on the highest bump type across all pending changes
  • Writes release.json with structured change data
  • Updates CHANGELOG.md
  • Commits, tags, and cleans up the .changes/ files

Creating change files

release-tool new

Walks you through it interactively. In CI, pass flags directly:

release-tool new "Add support for X" --type minor

GitHub Action

- uses: OpenShock/release-tool@v1
  with:
    mode: stable          # or rc
    prerelease-label: rc  # rc | alpha | beta | ...
    git-sha: false        # append +g<sha> to prerelease tags
    notes-output: release-notes.md

Outputs: tag, prerelease, skip.

Change file format

---
type: minor          # major | minor | patch
breaking: false      # optional; major defaults to true
categories: [api]    # optional
---
Title shown in changelog

Optional extended body.

## Release Note
Plain-language note for end users (goes into release.json, not the changelog).

## Notices
- warning: something users must know before upgrading

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis
internal
git

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL