#!/usr/bin/env bash set -euo pipefail SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" # shellcheck source=common.sh source "${SCRIPT_DIR}/common.sh" usage() { echo "Usage: bump-version.sh " >&2 echo " bump-version.sh --from-tag " >&2 exit 1 } if [[ $# -lt 1 ]]; then usage fi if [[ "$1" == "--from-tag" ]]; then if [[ $# -ne 2 ]]; then usage fi VERSION="${2#v}" else BUMP_TYPE="$1" CURRENT=$(latest_tag_version) VERSION=$(bump_semver "$CURRENT" "$BUMP_TYPE") fi set_pyproject_version "$VERSION" if command -v uv >/dev/null 2>&1; then uv lock else echo "uv not found; uv.lock was not updated" >&2 exit 1 fi if [[ -n "${GITHUB_OUTPUT:-}" ]]; then echo "version=${VERSION}" >> "$GITHUB_OUTPUT" else echo "version=${VERSION}" fi echo "Updated pyproject.toml and uv.lock to version ${VERSION}" >&2