From 516607d9c057ae6b76852cc53ec36799cdfb65a4 Mon Sep 17 00:00:00 2001 From: Manuel Cillero Date: Sun, 3 May 2026 12:16:45 +0200 Subject: [PATCH] =?UTF-8?q?=F0=9F=94=A8=20Retoques=20en=20scripts=20de=20l?= =?UTF-8?q?iberaci=C3=B3n=20de=20versiones?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- tools/changelog.sh | 5 +++-- tools/release.sh | 7 +++++++ 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/tools/changelog.sh b/tools/changelog.sh index cb30b2d7..36fd8f9b 100755 --- a/tools/changelog.sh +++ b/tools/changelog.sh @@ -130,8 +130,9 @@ if [[ -n "$(git status --porcelain -- "$CHANGELOG_FILE")" ]]; then git add "$CHANGELOG_FILE" echo "Staged $CHANGELOG_FILE for commit" else - echo "Changes detected in '$CHANGELOG_FILE', but not staged (no --stage flag)" + echo "Changes not staged (no --stage flag)" fi else - echo "No changes in '$CHANGELOG_FILE', skipping staging" + echo "No changes in '$CHANGELOG_FILE', aborting release." + exit 1 fi diff --git a/tools/release.sh b/tools/release.sh index 41dc2d4a..92257b32 100755 --- a/tools/release.sh +++ b/tools/release.sh @@ -25,6 +25,11 @@ if [[ ! "$LEVEL" =~ ^(patch|minor|major)$ ]]; then echo "Error: invalid level '$LEVEL'. Use: patch, minor, or major" exit 1 fi +if [[ -n "$(git status --porcelain)" ]]; then + echo "Error: uncommitted changes detected. Please commit or stash before releasing." >&2 + git status --short >&2 + exit 1 +fi # Dependencias command -v cargo-release >/dev/null || { @@ -41,6 +46,8 @@ cd "$(dirname "$0")/.." || exit 1 if [[ "$EXECUTE" != "--execute" ]]; then echo "Running dry-run (default mode). Add --execute to publish" cargo release --config "$CONFIG" --package "$CRATE" "$LEVEL" + # El hook puede haber aƱadido el CHANGELOG al staged; lo revertimos + git diff --cached --name-only | grep 'CHANGELOG.md' | xargs -r git reset -- else echo "Releasing $CRATE ($LEVEL)..." cargo release --config "$CONFIG" --package "$CRATE" "$LEVEL" --execute