huskies: merge 1069
This commit is contained in:
+30
-6
@@ -124,19 +124,43 @@ else
|
||||
fi
|
||||
|
||||
# Categorise merged work items and format names.
|
||||
# Supports two subject formats (after stripping the "huskies: merge " prefix):
|
||||
# New: "1063 story Human Readable Name"
|
||||
# Old: "1063_story_human_readable_name"
|
||||
FEATURES=""
|
||||
FIXES=""
|
||||
REFACTORS=""
|
||||
while IFS= read -r item; do
|
||||
[ -z "$item" ] && continue
|
||||
# Strip the numeric prefix and type to get the human name.
|
||||
name=$(echo "$item" | sed -E 's/^[0-9]+_(story|bug|refactor|spike)_//' | tr '_' ' ')
|
||||
|
||||
# Extract the leading numeric ID (present in both formats).
|
||||
id=$(echo "$item" | grep -oE '^[0-9]+')
|
||||
|
||||
# Detect format and extract human name + type word.
|
||||
if echo "$item" | grep -qE '^[0-9]+ (story|bug|refactor|spike|epic) '; then
|
||||
# New format: "1063 story Human Name Here"
|
||||
type_word=$(echo "$item" | sed -E 's/^[0-9]+ ([a-z]+) .*/\1/')
|
||||
name=$(echo "$item" | sed -E 's/^[0-9]+ [a-z]+ //')
|
||||
else
|
||||
# Legacy slug format: "1063_story_human_name_here"
|
||||
type_word=$(echo "$item" | sed -E 's/^[0-9]+_([a-z]+)_.*/\1/')
|
||||
name=$(echo "$item" | sed -E 's/^[0-9]+_(story|bug|refactor|spike|epic)_//' | tr '_' ' ')
|
||||
fi
|
||||
|
||||
# Capitalise first letter.
|
||||
name="$(echo "${name:0:1}" | tr '[:lower:]' '[:upper:]')${name:1}"
|
||||
case "$item" in
|
||||
*_bug_*) FIXES="${FIXES}- ${name}\n" ;;
|
||||
*_refactor_*) REFACTORS="${REFACTORS}- ${name}\n" ;;
|
||||
*) FEATURES="${FEATURES}- ${name}\n" ;;
|
||||
|
||||
# Format as "Name (ID)" when a numeric ID was found, plain name otherwise.
|
||||
if [ -n "$id" ]; then
|
||||
entry="${name} (${id})"
|
||||
else
|
||||
entry="${name}"
|
||||
fi
|
||||
|
||||
case "$type_word" in
|
||||
bug) FIXES="${FIXES}- ${entry}\n" ;;
|
||||
refactor) REFACTORS="${REFACTORS}- ${entry}\n" ;;
|
||||
*) FEATURES="${FEATURES}- ${entry}\n" ;;
|
||||
esac
|
||||
done <<< "$MERGED_RAW"
|
||||
|
||||
|
||||
Reference in New Issue
Block a user