Skip to content

Commit 680819b

Browse files
committed
Add version bump script
1 parent 6504bf4 commit 680819b

1 file changed

Lines changed: 43 additions & 0 deletions

File tree

scripts/bump-version.sh

Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
#!/usr/bin/env bash
2+
set -euo pipefail
3+
4+
if [[ $# -ne 1 ]]; then
5+
echo "Usage: $0 <version>"
6+
echo "Example: $0 0.1.3"
7+
exit 1
8+
fi
9+
10+
NEW="$1"
11+
12+
if ! [[ "$NEW" =~ ^[0-9]+\.[0-9]+\.[0-9]+$ ]]; then
13+
echo "Error: version must be in X.Y.Z format (got: $NEW)"
14+
exit 1
15+
fi
16+
17+
ROOT="$(git rev-parse --show-toplevel)"
18+
19+
# pyproject.toml
20+
sed -i "s/^version = \".*\"/version = \"$NEW\"/" "$ROOT/pyproject.toml"
21+
22+
# PKGBUILD
23+
sed -i "s/^pkgver=.*/pkgver=$NEW/" "$ROOT/PKGBUILD"
24+
25+
# window.py (About dialog)
26+
sed -i "s/version=\"[0-9]\+\.[0-9]\+\.[0-9]\+\"/version=\"$NEW\"/" "$ROOT/src/monique/window.py"
27+
28+
# README.md badge cache-bust
29+
sed -i "s/v=[0-9]\+\.[0-9]\+\.[0-9]\+/v=$NEW/g" "$ROOT/README.md"
30+
31+
echo "Updated to $NEW:"
32+
echo " - pyproject.toml"
33+
echo " - PKGBUILD"
34+
echo " - src/monique/window.py"
35+
echo " - README.md (badges)"
36+
echo ""
37+
38+
git -C "$ROOT" add pyproject.toml PKGBUILD src/monique/window.py README.md
39+
git -C "$ROOT" commit -m "Bump version to $NEW"
40+
git -C "$ROOT" tag "v$NEW"
41+
42+
echo ""
43+
echo "Done! Run: git push && git push --tags"

0 commit comments

Comments
 (0)