morgan pushed to branch main at The Tor Project / Applications / tor-browser-build Commits: f93c6b8b by Morgan at 2025-11-27T18:21:37+00:00 Bug 43951: Include product with the component in triage CSVs - - - - - 2eb3fb66 by Morgan at 2025-11-27T18:21:37+00:00 Bug 41445: Tweak classification of Web Compatibility product from git logs - - - - - 1 changed file: - tools/browser/generate-bugzilla-triage-csv Changes: ===================================== tools/browser/generate-bugzilla-triage-csv ===================================== @@ -149,12 +149,16 @@ git log --format='%s' $git_begin..$git_end \ printf ",\n" >> "${git_json}" fi - component="Unknown" - if [[ "${summary}" =~ webcompat ]]; then - component="Web Compatibility" + product="Unknown" + # Bugs that include webcompat-reviewers and no other additional -reviewers + # from other teams are *likely* in the Web Compatibility component. But they + # won't show in the bugzilla query because the component doesn't tend to + # have any set milestones. + if [[ "${summary}" =~ r=.*webcompat-reviewers && ! "${summary}" =~ r=.*-reviewers.*-reviewers ]]; then + product="Web Compatibility" fi - printf " { \"component\": \"%s\", \"id\": %s, \"summary\": \"%s\" }" "${component}" ${id} "${summary}" >> "${git_json}" + printf " { \"product\": \"%s\", \"component\": \"Unknown\", \"id\": %s, \"summary\": \"%s\" }" "${product}" ${id} "${summary}" >> "${git_json}" done printf "\n]\n" >> "${git_json}" @@ -170,7 +174,7 @@ printf "\n]\n" >> "${git_json}" query_tail="&f1=product&n1=1&o1=anyexact&v1=Thunderbird%2CCalendar%2CChat%20Core%2CMailNews%20Core&f2=target_milestone&o2=substring&v2=${firefox_version}&limit=0" bugzilla_query="https://bugzilla.mozilla.org/buglist.cgi?${query_tail}" -bugzilla_json_query="https://bugzilla.mozilla.org/rest/bug?include_fields=id,component,summary${query_tail}" +bugzilla_json_query="https://bugzilla.mozilla.org/rest/bug?include_fields=id,product,component,summary${query_tail}" wget "${bugzilla_json_query}" -O ${bugzilla_json} @@ -185,10 +189,10 @@ jq -s '[ (.[0].bugs)[], (.[1])[] ] | group_by(.id) | map(.[0])' "${bugzilla_json # Generate Triage CSV # -echo "\"Review\",,\"Bugzilla Component\",\"Bugzilla Bug\"" +echo "\"Review\",,\"Product :: Component\",\"Bugzilla Bug\"" -jq '. | sort_by([.component, .id])[] | "\(.id)|\(.component)|\(.summary)"' ${union_json} \ -| while IFS='|' read -r id component summary; do +jq '. | sort_by([.product, .component, .id])[] | "\(.id)|\(.product)|\(.component)|\(.summary)"' ${union_json} \ +| while IFS='|' read -r id product component summary; do # bugzilla info id="${id:1}" @@ -219,7 +223,7 @@ jq '. | sort_by([.component, .id])[] | "\(.id)|\(.component)|\(.summary)"' ${uni echoerr "Skipped Bugzilla ${id}: ${summary_short}" else csv_summary=$(csv_escape "${summary}") - csv_component=$(csv_escape "${component}") + csv_product_component=$(csv_escape "${product} :: ${component}") # parent issue bugzilla_url="https://bugzilla.mozilla.org/show_bug.cgi?id=${id}" @@ -235,7 +239,7 @@ jq '. | sort_by([.component, .id])[] | "\(.id)|\(.component)|\(.summary)"' ${uni create_issue=$(csv_escape "=HYPERLINK(\"${new_issue_url}\", \"New Issue\")") bugzilla_link=$(csv_escape "=HYPERLINK(\"${bugzilla_url}\", \"Bugzilla ${id}: ${csv_summary}\")") - echo "FALSE,\"${create_issue}\",\"${csv_component}\",\"${bugzilla_link}\"," + echo "FALSE,\"${create_issue}\",\"${csv_product_component}\",\"${bugzilla_link}\"," fi done View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/compare/5... -- View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/compare/5... You're receiving this email because of your account on gitlab.torproject.org.