diff --git a/script/lint b/script/lint index 17b20594e..aaf8af1a5 100755 --- a/script/lint +++ b/script/lint @@ -38,7 +38,7 @@ for source in Package.swift Sources Tests; do done printf -- $'--> 🐚 ShellCheck\n' -shellcheck -s bash -o all -e SC1088,SC1102,SC2296,SC2299,SC2300,SC2301,SC2312 -a -P SCRIPTDIR script/**/*(.) +shellcheck -s bash -o all -e SC1088,SC1102,SC2066,SC2296,SC2299,SC2300,SC2301,SC2312 -a -P SCRIPTDIR script/**/*(.) ((exit_code |= ${?})) printf -- $'--> 〽️ Markdown\n' diff --git a/script/version b/script/version index bf3bd73cc..78b25e7a5 100755 --- a/script/version +++ b/script/version @@ -8,6 +8,19 @@ . "${0:a:h}/_setup_script" -printf $'%s%s\n'\ +branch="${"$(git rev-parse --abbrev-ref HEAD)":/main}" + +if [[ "${branch}" = HEAD ]]; then + if git merge-base --is-ancestor HEAD main; then + branch= + else + branch="${"$(for branch in "${(@)"${(@)"${(f)"$(git branch --contains "$(git rev-parse HEAD)")"}":1}"##* }"; do + printf $'%s %s\n' "$(git rev-list --count HEAD.."${branch}")" "${branch}" + done | sort -nr | head -n 1)"##* }" + fi +fi + +printf $'%s%s%s\n'\ "${"$(git describe --tags 2>/dev/null)"#v}"\ + "${branch:+"-${branch}"}"\ "${"$(git diff-index HEAD --;git ls-files --exclude-standard --others)":+"${MAS_DIRTY_INDICATOR-+}"}"