CLI reference
uv-ship
The main entrypoint to access uv-ship features
usage: uv-ship [options] command [args]
options:
--configPath to config file (inferred if not provided).
--dry-runShow what would be done without making any changes.
--selfDisplay uv-ship version.
--helpShow a help message and exit.
commands
uv-ship next
Calculates the next semantic version (major, minor, or patch), runs the preflight checks, offers to refresh the changelog, updates version metadata, and executes the commit/tag/push sequence unless running as a dry run.
usage: uv-ship next [options] RELEASE_TYPE
possible values:
major, minor, patch, stable
can be paired with pre-release components:
alpha, beta, rc, post, dev
to remove pre-release status, pass stable as release version
options:
--pre-releasePre-release component (e.g. alpha, beta).
--dirtyAllow dirty working directory.
--helpShow this message and exit.
uv-ship version
Prepares and ships the provided version. This path allows you to break out of semantic versioning conventions if desired.
usage: uv-ship version [options] {VERSION}
options:
--dirtyAllow dirty working directory.
--helpShow this message and exit.
uv-ship log
Builds a changelog section from commits since the latest Git tag. Use --latest to preview without writing, or --save to persist the top section of your configured changelog file.
usage: uv-ship log [options]
options:
--latestShow all commits since the last tag.
--saveSave changes to the changelog.
--helpShow this message and exit.
uv-ship status
Display a status report for the current package.
usage: uv-ship status
options:
--helpShow this message and exit.
working with changelogs
- The reader targets the configured
changelog-path(default:CHANGELOG); ensure the file exists. - Generated sections take the form
## vX.Y.Z — [YYYY-MM-DD], with bullet formatting normalised for Markdown. - When refreshing, the tool compares the newest Git tag against the latest changelog heading:
- If they match, the section is replaced.
- Otherwise, the new section is inserted at the top of the file.
uv-ship log --latestalways prints to the terminal, whereas--savewrites the content unless--dry-runis active.