|
@@ -400,6 +400,9 @@ function display-release {
|
|
|
function display:breaking {
|
|
|
(( $#breaking != 0 )) || return 0
|
|
|
|
|
|
+ # If we reach here we have shown commits, set flag
|
|
|
+ shown_commits=1
|
|
|
+
|
|
|
case "$output" in
|
|
|
text) printf '\e[31m'; fmt:header "BREAKING CHANGES" 3 ;;
|
|
|
raw) fmt:header "BREAKING CHANGES" 3 ;;
|
|
@@ -427,6 +430,9 @@ function display-release {
|
|
|
# If no commits found of type $type, go to next type
|
|
|
(( $#hashes != 0 )) || return 0
|
|
|
|
|
|
+ # If we reach here we have shown commits, set flag
|
|
|
+ shown_commits=1
|
|
|
+
|
|
|
fmt:header "${TYPES[$type]}" 3
|
|
|
for hash in $hashes; do
|
|
|
echo " - $(fmt:hash) $(fmt:scope)$(fmt:subject)"
|
|
@@ -444,6 +450,9 @@ function display-release {
|
|
|
# If no commits found under "other" types, don't display anything
|
|
|
(( $#changes != 0 )) || return 0
|
|
|
|
|
|
+ # If we reach here we have shown commits, set flag
|
|
|
+ shown_commits=1
|
|
|
+
|
|
|
fmt:header "Other changes" 3
|
|
|
for hash type in ${(kv)changes}; do
|
|
|
case "$type" in
|
|
@@ -498,7 +507,7 @@ function main {
|
|
|
|
|
|
# Commit classification arrays
|
|
|
local -A types subjects scopes breaking reverts
|
|
|
- local truncate=0 read_commits=0
|
|
|
+ local truncate=0 read_commits=0 shown_commits=0
|
|
|
local version tag
|
|
|
local hash refs subject body
|
|
|
|
|
@@ -569,6 +578,10 @@ function main {
|
|
|
echo " ...more commits omitted"
|
|
|
echo
|
|
|
fi
|
|
|
+
|
|
|
+ if (( ! shown_commits )); then
|
|
|
+ echo "No changes to mention."
|
|
|
+ fi
|
|
|
}
|
|
|
|
|
|
# Use raw output if stdout is not a tty
|