From 2b231f35de6dbb6c361fdae8d886838cadbb2c2f Mon Sep 17 00:00:00 2001 From: Bart Date: Wed, 12 Aug 2026 20:49:18 +0200 Subject: [PATCH 1/3] Allow KiteUtils 0.12 KiteUtils 0.12 is released; the compat bound was the only thing keeping downstream packages from resolving against it. No source change. Co-Authored-By: Claude Opus 5 (1M context) --- Project.toml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Project.toml b/Project.toml index 417c691..55d7af6 100644 --- a/Project.toml +++ b/Project.toml @@ -1,7 +1,7 @@ name = "KitePodModels" uuid = "9de5dc81-f971-414a-927b-652b2f41c539" authors = ["Uwe Fechner and contributors"] -version = "0.4.0" +version = "0.4.1" [deps] DocStringExtensions = "ffbed154-4ef7-542d-bbb7-c09d3a79fcae" @@ -12,7 +12,7 @@ Reexport = "189a3867-3050-52da-a836-e630ba90ab69" ControlPlots = "0.2" LaTeXStrings = "1.3" DocStringExtensions = "0.8, 0.9" -KiteUtils = "0.11" +KiteUtils = "0.11, 0.12" Reexport = "1.2" julia = "1.10, 1.11, 1.12" From 69fe6244b9e8203a5b9893cb8987275fa6aef0ee Mon Sep 17 00:00:00 2001 From: Bart Date: Wed, 12 Aug 2026 20:51:09 +0200 Subject: [PATCH 2/3] Add a changelog and bin/release Mirrors the registration flow of the sibling packages: bin/release lifts the top section of CHANGELOG.md, checks it against the Project.toml version, and posts it to JuliaRegistrator on issue #1. The manifest check AtmosphericModels does is left out, this repo having no bin/install to produce one. Co-Authored-By: Claude Opus 5 (1M context) --- CHANGELOG.md | 5 +++ bin/release | 88 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 93 insertions(+) create mode 100644 CHANGELOG.md create mode 100755 bin/release diff --git a/CHANGELOG.md b/CHANGELOG.md new file mode 100644 index 0000000..922377b --- /dev/null +++ b/CHANGELOG.md @@ -0,0 +1,5 @@ +# Changelog + +## KitePodModels v0.4.1 - 2026-08-12 +### Changed +- Bump `KiteUtils` to 0.12. diff --git a/bin/release b/bin/release new file mode 100755 index 0000000..9a5832d --- /dev/null +++ b/bin/release @@ -0,0 +1,88 @@ +#!/bin/bash -eu +# SPDX-FileCopyrightText: 2026 Uwe Fechner +# SPDX-License-Identifier: MIT + +# Create a new release by posting to JuliaRegistrator via issue #1 +# +# Usage: bin/release +# +# This script extracts the latest release notes from CHANGELOG.md +# and posts them as a comment to GitHub issue #1 using the GitHub CLI. + +set -euo pipefail + +cd "$(dirname "$0")/.." + +CHANGELOG="CHANGELOG.md" + +if [ ! -f "$CHANGELOG" ]; then + echo "Error: $CHANGELOG not found" >&2 + exit 1 +fi + +# Check that we are on the main branch +branch=$(git rev-parse --abbrev-ref HEAD) +if [ "$branch" != "main" ]; then + echo "Error: Must be on the 'main' branch (currently on '$branch')" >&2 + exit 1 +fi + +# Check that the working tree is clean (no staged, unstaged, or untracked changes) +if [ -n "$(git status --porcelain)" ]; then + echo "Error: There are uncommitted or untracked changes. Please commit or stash them first." >&2 + exit 1 +fi + +# Extract the first release section: from "## KitePodModels v..." up to +# (but not including) the next "## KitePodModels" or end of file. +release_notes=$(awk ' + /^## KitePodModels / { + if (version == "") { + version = $2 + next + } + exit + } + version != "" { print } +' "$CHANGELOG") + +if [ -z "$release_notes" ]; then + echo "Error: Could not find release notes in $CHANGELOG" >&2 + exit 1 +fi + +# Get version string (e.g. "v0.4.1") +version=$(awk '/^## KitePodModels v/ {print $3; exit}' "$CHANGELOG") + +# Check that the version in Project.toml matches the version in CHANGELOG.md +project_version=$(awk -F'"' '/^version = / {print $2; exit}' Project.toml) +changelog_version="${version#v}" +if [ "$project_version" != "$changelog_version" ]; then + echo "Error: Version mismatch: Project.toml has '$project_version', CHANGELOG.md has '$changelog_version'" >&2 + exit 1 +fi + +echo "About to trigger registration for: KitePodModels $version" +echo "" +echo "Release notes:" +echo "$release_notes" +echo "" +read -r -p "Continue? [y/N] " response +if [ "$response" != "y" ] && [ "$response" != "Y" ]; then + echo "Aborted." + exit 0 +fi + +# Build the comment body and pipe it to gh +{ + echo '@JuliaRegistrator register' + echo "" + echo "Release notes:" + echo "" + echo "$release_notes" +} | gh issue comment 1 \ + --repo "aenarete/KitePodModels.jl" \ + --body-file - + +echo "" +echo "Done! Registration comment posted to https://github.com/aenarete/KitePodModels.jl/issues/1" From 94301a38b0fce3f54f45bed2e78bb28b455ba2d9 Mon Sep 17 00:00:00 2001 From: Bart Date: Wed, 12 Aug 2026 21:05:22 +0200 Subject: [PATCH 3/3] Bump KiteUtils to 0.12 Narrow rather than widen: a union bound lets the resolver pick 0.11 and then a green CI says nothing about whether 0.12 works. Co-Authored-By: Claude Opus 5 (1M context) --- Project.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Project.toml b/Project.toml index 55d7af6..2d6096e 100644 --- a/Project.toml +++ b/Project.toml @@ -12,7 +12,7 @@ Reexport = "189a3867-3050-52da-a836-e630ba90ab69" ControlPlots = "0.2" LaTeXStrings = "1.3" DocStringExtensions = "0.8, 0.9" -KiteUtils = "0.11, 0.12" +KiteUtils = "0.12" Reexport = "1.2" julia = "1.10, 1.11, 1.12"