From 77e049d11c4c89687e3bfbf003ba6c0b6e1bcc7a Mon Sep 17 00:00:00 2001 From: Steven Allen Date: Thu, 16 Jan 2020 15:41:49 -0800 Subject: [PATCH 1/2] fix(mkreleaselog): support 0.DATE versions in go modules That is vX.Y.Z-0.DATE-HASH. --- bin/mkreleaselog | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bin/mkreleaselog b/bin/mkreleaselog index 474ec32b0..3b6388b4a 100755 --- a/bin/mkreleaselog +++ b/bin/mkreleaselog @@ -63,7 +63,7 @@ dep_changes() { # resolve_commits resolves a git ref for each version. resolve_commits() { - jq '. + {Ref: (.Version|capture("^((?.*)\\+incompatible|v.*-[0-9]{14}-(?[a-f0-9]{12})|(?v.*))$") | .ref1 // .ref2 // .ref3)}' + jq '. + {Ref: (.Version|capture("^((?.*)\\+incompatible|v.*-(0\\.)?[0-9]{14}-(?[a-f0-9]{12})|(?v.*))$") | .ref1 // .ref2 // .ref3)}' } # Generate a release log for a range of commits in a single repo. From 399546a32005a3d4d6b6c0e306579522caa59f3e Mon Sep 17 00:00:00 2001 From: Steven Allen Date: Thu, 16 Jan 2020 15:42:49 -0800 Subject: [PATCH 2/2] fix(mkreleaselog): continue even if we fail to fetch a dep We might as well generate as much of the changelog as we can. --- bin/mkreleaselog | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/bin/mkreleaselog b/bin/mkreleaselog index 3b6388b4a..12f295249 100755 --- a/bin/mkreleaselog +++ b/bin/mkreleaselog @@ -126,6 +126,7 @@ recursive_release_log() { local repo_root="$(git rev-parse --show-toplevel)" local package="$(go list)" ( + local result=0 local workspace="$(mktemp -d)" trap "$(printf 'rm -rf "%q"' "$workspace")" INT TERM EXIT cd "$workspace" @@ -153,9 +154,13 @@ recursive_release_log() { # Compute changelogs jq -r '"\(.Path) \(.New.Version) \(.New.Ref) \(.Old.Version) \(.Old.Ref // "")"' | while read repo new new_ref old old_ref; do - ensure "$repo" "$new_ref" - statlog "$repo" "$old_ref" "$new_ref" >> statlog.json - local changelog="$(release_log "$repo" "$old_ref" "$new_ref")" + if ! ensure "$repo" "$new_ref"; then + result=1 + local changelog="failed to fetch repo" + else + statlog "$repo" "$old_ref" "$new_ref" >> statlog.json + local changelog="$(release_log "$repo" "$old_ref" "$new_ref")" + fi if [[ -n "$changelog" ]]; then printf -- "- %s (%s -> %s):\n" "$repo" "$old" "$new" echo "$changelog" | indent @@ -171,6 +176,7 @@ recursive_release_log() { statsummary