Skip to content

colophon plan

Description

Show the release the current commits would produce

Compute the next version and the commits that decide it, and print them. Writes nothing: no branch, no merge request, no tag. Safe to run anywhere, and the instrument for comparing colophon against the tool it replaces before a project switches.

Usage

colophon plan [flags]

Flags

Flag Description Default
-C, --repo Path to the git repository to read .

plan writes nothing and needs no credentials, so it is safe to run against any checkout.

Components

A repository whose manifest declares components with version: own gets a block per component after the root's, headed by the directory, each decided from the commits that touch that directory since its own last tag (lint/v0.6.0 by default, or the shape its tag template gives). The root's block is decided from everything outside those directories. A held component shows its hold and reason in its own block; the root's hold holds the root alone. The JSON form gains a components list carrying the same fields as the root, plus dir; a repository without the key renders exactly what it did before, with no components key. See the release manifest for the key.

A repository with no root

Under root: none the root has no release, and plan says so in its first line rather than showing a version. The commits outside every component release nothing, so plan lists them; a directory nobody declared shows up here instead of being silently left out.

No root release — root: none; only components release.

1 commit outside every component release nothing:
  3f2a91c0 fix: outside every component

The JSON form keeps its shape. It gains "root": "none" and an unreleased list, in the shape of reasons. The root's own fields describe no release: releasable is false and next is absent.

Global flags

Flag Description Default
--ci Indicates the tool is running in a CI environment false
--config Config files to use (repeatable) /etc/colophon/config.yaml, ~/.colophon/config.yaml
--debug Force debug log output false
--output Output format: text or json text

Run colophon <command> --help for the authoritative, always-current flag set.