Skip to main content

Release Management

MIU uses Release-Please for automated versioning, changelog generation, and release management.

How It Works

1

Commit with Conventional Format

2

Release-Please Creates PR

Analyzes commits, updates versions, generates CHANGELOG
3

Review & Merge

Verify changelog and version bumps, then merge
4

Automatic Release

GitHub creates release, triggers PyPI publication

Commit Types

Commit Format

Configuration Files

Manifest

.release-please-manifest.json - Version source of truth:

Config

release-please-config.json - Main configuration:

Version Strategy

Semantic Versioning (SemVer):
Examples:
  • 0.1.00.1.1 (patch fix)
  • 0.1.10.2.0 (new feature)
  • 0.2.01.0.0 (breaking change)

Tag Format

CHANGELOG Generation

Each package maintains its own CHANGELOG.md:

Before Committing

Troubleshooting

Cause: No commits with conventional format since last releaseSolution: Ensure commits use feat:, fix:, etc.
Cause: Commit type doesn’t match intended changeSolution: Use correct type - feat: for minor, fix: for patch
Cause: Release-Please scans commit messagesSolution: Ensure conventional commits before release PR creation

Manual Release Trigger