@@ -20,46 +20,62 @@ jobs:
- name: git log --check
id: check_out
run: |
+ baseSha=${{github.event.pull_request.base.sha}}
problems=()
commit=
commitText=
- lastcommit=
+ commitTextmd=
+ goodparent=
while read dash sha etc
do
case "${dash}" in
"---")
if test -z "${commit}"
then
- lastcommit=${sha}
+ goodparent=${sha}
fi
commit="${sha}"
commitText="${sha} ${etc}"
+ commitTextmd="[${sha}](https://github.com/${{ github.repository }}/commit/${sha}) ${etc}"
;;
"")
;;
*)
if test -n "${commit}"
then
- problems+=("" "--- ${commitText}")
+ problems+=("1) --- ${commitTextmd}")
echo ""
echo "--- ${commitText}"
commit=
fi
- problems+=("${dash} ${sha} ${etc}")
- echo "${problems[-1]}"
+ case "${dash}" in
+ *:[1-9]*:) # contains file and line number information
+ dashend=${dash#*:}
+ problems+=("[${dash}](https://github.com/${{ github.repository }}/blob/${{github.event.pull_request.head.ref}}/${dash%%:*}#L${dashend%:}) ${sha} ${etc}")
+ ;;
+ *)
+ problems+=("\`${dash} ${sha} ${etc}\`")
+ ;;
+ esac
+ echo "${dash} ${sha} ${etc}"
;;
esac
- done <<< $(git log --check --pretty=format:"---% h% s" ${{github.event.pull_request.base.sha}}..)
+ done <<< $(git log --check --pretty=format:"---% h% s" ${baseSha}..)
if test ${#problems[*]} -gt 0
then
if test -z "${commit}"
then
- lastcommit=${{github.event.pull_request.base.sha}}
+ goodparent=${baseSha: 0:7}
fi
- echo "A whitespace issue was found in one or more of the commits." >$GITHUB_STEP_SUMMARY
+ echo "