@@ -83,19 +83,34 @@ jobs:
83
83
id : beta_version
84
84
run : |
85
85
# Read current version from setup.py
86
- CURRENT_VERSION=$(grep -o '__version__ = "[^"]*"' setup.py | cut -d"" -f2 )
86
+ CURRENT_VERSION=$(grep -o '__version__ = "[^"]*"' setup.py | sed 's/__version__ = "\(.*\)"/\1/' )
87
87
echo "Current version in files: $CURRENT_VERSION"
88
88
89
89
# Split version into components
90
- IFS='.' read -r MAJOR MINOR PATCH_FULL <<< "$CURRENT_VERSION"
90
+ IFS='.' read -r MAJOR MINOR PATCH_FULL <<< "$CURRENT_VERSION" || true
91
+
92
+ # Validate we got valid version components
93
+ if [[ -z "$MAJOR" || -z "$MINOR" || -z "$PATCH_FULL" ]]; then
94
+ echo "Error: Could not parse version components from $CURRENT_VERSION"
95
+ echo "Using default version 0.0.1b1"
96
+ MAJOR=0
97
+ MINOR=0
98
+ PATCH_FULL=1
99
+ fi
91
100
92
101
# Handle beta suffix if it exists
93
102
if [[ $PATCH_FULL == *b* ]]; then
94
103
# Extract the numeric part before 'b'
95
104
PATCH_NUM=${PATCH_FULL%%b*}
96
105
# Extract the beta number and increment it
97
106
BETA_NUM=${PATCH_FULL#*b}
98
- BETA_NUM=$((BETA_NUM + 1))
107
+ # Ensure beta number is a valid integer
108
+ if ! [[ $BETA_NUM =~ ^[0-9]+$ ]]; then
109
+ echo "Warning: Invalid beta number format. Resetting to beta1."
110
+ BETA_NUM=1
111
+ else
112
+ BETA_NUM=$((BETA_NUM + 1))
113
+ fi
99
114
else
100
115
# If not already a beta, use the patch number and start with beta1
101
116
PATCH_NUM=$PATCH_FULL
0 commit comments