Skip to main content

Multi-component versioning for monorepos: bump apps, charts, and images independently from conventional commits.

Project description

multicz

Multi-component versioning for monorepos. Bump a Python app, its Docker image, and the Helm chart that deploys it from a single conventional-commit history - each with its own version line and its own git tag.

multicz demo

Install

uv tool install multicz   # or: pipx install multicz / pip install multicz

Quickstart

# 1. scaffold a multicz.toml in the repo root
multicz init

# 2. see what would bump from the current commit window
multicz changed
multicz explain api

# 3. apply the bump (writes version files + changelog, commits, tags)
multicz bump --commit --tag

# 4. ship it
git push --follow-tags

For multi-component setups (api + chart, app + image + helm, ...), declare each component's paths in multicz.toml and let mirrors and triggers cascade related versions. See the docs for the full configuration reference.

What it does

  • Per-component versions - each component has its own version line and its own git tag (api-v1.2.0, chart-v0.5.0).
  • Conventional-commit driven - feat: → minor, fix: → patch, BREAKING CHANGE: → major. Scopes route the bump to the right component.
  • Mirrors and triggers - bump api 1.2.01.3.0 and the Helm chart's appVersion follows; the chart's own version cascades a patch.
  • No network, no auto-updates. Pure git + filesystem. Same input yields the same plan byte-for-byte.

Documentation

Published at https://goabonga.github.io/multicz/:

  • Get started - install, minimal config, first bump
  • Concepts - components, mirrors, triggers, cascades, bump policies
  • Configuration - full multicz.toml reference
  • CLI - every command and flag
  • Recipes - FastAPI + Helm walkthrough, CI matrix gating, release candidates
  • Why multicz? - vs. semantic-release, Commitizen, Changesets, bump-my-version
  • Security - guarantees and CI hardening

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

multicz-0.5.0.tar.gz (50.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

multicz-0.5.0-py3-none-any.whl (58.2 kB view details)

Uploaded Python 3

File details

Details for the file multicz-0.5.0.tar.gz.

File metadata

  • Download URL: multicz-0.5.0.tar.gz
  • Upload date:
  • Size: 50.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for multicz-0.5.0.tar.gz
Algorithm Hash digest
SHA256 1550468ddac64f2d59fff0dea33919c9065a171bc4c62828e0b455304d9e0219
MD5 c7d811f1677c2342c425ca2f263c5823
BLAKE2b-256 7fc532b600c11a20e31caa3c972e6524d16e91ef06029b710e94c500e9f73a73

See more details on using hashes here.

Provenance

The following attestation bundles were made for multicz-0.5.0.tar.gz:

Publisher: release.yml on goabonga/multicz

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file multicz-0.5.0-py3-none-any.whl.

File metadata

  • Download URL: multicz-0.5.0-py3-none-any.whl
  • Upload date:
  • Size: 58.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for multicz-0.5.0-py3-none-any.whl
Algorithm Hash digest
SHA256 fa2c8949ae88ec39fe4bebe840c1409c5073b706e98bca1ac24d755e777e3433
MD5 a1b5569026bbe401d194304b7b432e5b
BLAKE2b-256 fcf07088125b5d3de41b8d8b9a7edfb85694ab65fb0f93d96bfd24ffc50b49e1

See more details on using hashes here.

Provenance

The following attestation bundles were made for multicz-0.5.0-py3-none-any.whl:

Publisher: release.yml on goabonga/multicz

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page