From 9e36a4faddef7b213b5eb137e10f636f2b20f7cb Mon Sep 17 00:00:00 2001 From: Gerald Combs Date: Tue, 8 Sep 2020 17:54:41 -0700 Subject: tools: Migrate gen-bugnote to GitLab. Update gen-bugnote to fetch issue titles from GitLab's issue API. --- tools/gen-bugnote | 43 +++++++++++++------------------------------ 1 file changed, 13 insertions(+), 30 deletions(-) diff --git a/tools/gen-bugnote b/tools/gen-bugnote index 48058cb668..8634597721 100755 --- a/tools/gen-bugnote +++ b/tools/gen-bugnote @@ -1,26 +1,17 @@ #!/bin/bash # -# Given a Wireshark bug ID, fetch its title and prepare an entry suitable -# for pasting into the release notes. Requires curl, grep, and sed. +# Given a Wireshark issue ID, fetch its title and prepare an entry suitable +# for pasting into the release notes. Requires curl and jq. # -# Usage: gen-bugnote +# Usage: gen-bugnote # # Copyright 2013 Gerald Combs # # SPDX-License-Identifier: GPL-2.0-or-later # -bz_url_pfx="https://bugs.wireshark.org/bugzilla/show_bug.cgi" -bug_id="$1" - -# Bugzilla gives us UTF-8 with HTML escapes. We want UTF-8. Recode assumes -# that HTML is encoded as ISO-8859-1. -# https://github.com/rrthomas/Recode/issues/1 -recode_to_html_cmd="cat" -if hash recode > /dev/null 2>&1 ; then - recode_to_html_cmd="recode utf8..html" - recode_to_utf8_cmd="recode html..utf8" -fi +gitlab_issue_url_pfx="https://gitlab.com/api/v4/projects/wireshark%2Fwireshark/issues" +issue_id="$1" case "$OSTYPE" in darwin*) @@ -38,25 +29,17 @@ case "$OSTYPE" in ;; esac -if [ -z "$bug_id" ] ; then - echo "Usage: $( basename "$0" ) " +if [ -z "$issue_id" ] ; then + echo "Usage: $( basename "$0" ) " exit 1 fi -bug_title=$( - curl -s -o - "${bz_url_pfx}?id=$bug_id" \ - | grep -i '' \ - | sed \ - -e 's/{/\\{/g' \ - -e 's:.*<title>.*ndash; ::' \ - -e 's:.*::g' \ - -e 's/[^\.]$/&./g' \ - -e 's/\\/{backslash}/g' \ +issue_title=$( + curl -s -o - "${gitlab_issue_url_pfx}/$issue_id" \ + | jq --raw-output '.title' ) -echo -e "* $bug_title wsbuglink:${bug_id}[].\\n" \ - | $recode_to_html_cmd \ - | $recode_to_utf8_cmd \ - | $clipboard_cmd +echo -e "* $issue_title wsbuglink:${issue_id}[].\\n" \ + | $clipboard_cmd -echo "Copied $bug_id: $bug_title" +echo "Copied $issue_id: $issue_title" -- cgit v1.2.3