[Qa-jenkins-scm] [Git][qa/jenkins.debian.net][master] obsolete_transitional_packages.sh: refactoring and first 20 bugs filed against packages in bookworm

Holger Levsen (@holger) gitlab at salsa.debian.org
Fri Mar 10 12:17:22 GMT 2023



Holger Levsen pushed to branch master at Debian QA / jenkins.debian.net


Commits:
3f117a05 by Holger Levsen at 2023-03-10T13:17:01+01:00
obsolete_transitional_packages.sh: refactoring and first 20 bugs filed against packages in bookworm

Signed-off-by: Holger Levsen <holger at layer-acht.org>

- - - - -


1 changed file:

- bin/find_obsolete_transitional_packages.sh


Changes:

=====================================
bin/find_obsolete_transitional_packages.sh
=====================================
@@ -24,9 +24,9 @@ else
 	#normally defined in common-functions.sh
 	export MIRROR=http://deb.debian.org/debian
 	#for quicker development:
-	#PACKAGES[0]=/home/schroots/bookworm/var/lib/apt/lists/deb.debian.org_debian_dists_bookworm_main_binary-amd64_Packages
-	#PACKAGES[1]=/var/lib/apt/lists/deb.debian.org_debian_dists_bullseye_main_binary-amd64_Packages
-	#PACKAGES[2]=/home/schroots/sid/var/lib/apt/lists/deb.debian.org_debian_dists_sid_main_binary-amd64_Packages
+	PACKAGES[0]=/home/schroots/bookworm/var/lib/apt/lists/deb.debian.org_debian_dists_bookworm_main_binary-amd64_Packages
+	PACKAGES[1]=/var/lib/apt/lists/deb.debian.org_debian_dists_bullseye_main_binary-amd64_Packages
+	PACKAGES[2]=/home/schroots/sid/var/lib/apt/lists/deb.debian.org_debian_dists_sid_main_binary-amd64_Packages
 fi
 
 #
@@ -52,7 +52,7 @@ else
 fi
 
 
-LANG="en_EN.UTF-8"
+LANG="en_US.UTF-8"
 ARCH=amd64
 NEXT="$1"
 STABLE="$2"
@@ -67,7 +67,8 @@ BUGGED="multiarch-support jadetex dh-systemd libpcap-dev transfig myspell-it mys
 # since buster release
 BUGGED="$BUGGED actionaz agda-mode android-tools-adb android-tools-fastboot backintime-gnome backintime-kde beignet bird-bgp chocolate-doom chocolate-common science-astronomy science-astronomy-dev kdesdk-dolphin-plugins ttf-femkeklaver ttf-goudybookletter geany-plugin-gproject gnome-packagekit-session gpgv2 golang-check.v1-dev golang-codegangsta-cli-dev golang-context-dev golang-github-jfrazelle-go-dev golang-snappy-go-dev golang-github-lsegal-gucumber-dev golang-clockwork-dev golang-pq-dev golang-dns-dev golang-mreiferson-httpclient-dev golang-uuid-dev golang-prometheus-client-dev golang-gogoprotobuf-dev golang-go.net-dev golang-go.tools golang-go.tools-dev golang-logrus-dev golang-objx-dev golang-pretty-dev golang-text-dev golang-toml-dev golang-websocket-dev golang-x-text-dev golang-yaml.v2-dev md5deep xul-ext-https-everywhere iptables-dev iptraf ksnapshot kdoctools-dev kio-dev kwayland-dev bsdcpio bsdtar libkf5sysguard5 libkf5sysguard5-data gstreamer0.10-qapt python-libvoikko lua-luxio0 magit mongodb-dev libmpfi0-dev blast2 notmuch-emacs libpango1.0-0 paredit-el ruby-passenger ruby-passenger-doc python-pelican pep8 php-gettext pike8.0-manual pinentry-qt4 kde-config-touchpad plowshare4 polkit-kde-1 gpaco paco puppet-common puppetmaster puppetmaster-passenger python-pytango python3-pytango letsencrypt python-certbot-apache python-certbot-nginx python-dogpile.core python3-dogpile.core ipython-qtconsole ipython3-qtconsole iep gtk-redshift ruby-bson-ext ruby-archive-tar-minitar aterm aterm-ml libsaga golang-github-ubuntu-core-snappy-dev python-spyderlib python3-spyderlib squid3 luasseq ttf-ancient-fonts vnc4server xvnc4viewer aspell-eu-es hunspell-eu-es"
 # since bullseye release
-# TBD
+BUGGED="$BUGGED acedb-other-belvu acedb-other-dotter libapache2-mod-md libapache2-mod-proxy-uwsgi apertium-es-ca apertium-es-it apt-transport-https auto-complete-el libbabeltrace-ctf-dev libbabeltrace-ctf1 myspell-bg gtk3-engines-breeze buildbot-slave python3-buildbot python3-buildbot-doc python3-buildbot-worker migemo-el compiz-plugins-default science-electronics xul-ext-debianbuttons"
+# to be continued...
 
 
 
@@ -80,7 +81,7 @@ if [ -z "$BASEPATH" ] ; then
 	        mkdir -p $BASEPATH/$SUITE
 	        # the "[arch=$ARCH]" is a workaround until #774685 is fixed
 	        chdist --data-dir=$BASEPATH/$SUITE --arch=$ARCH create $SUITE-$ARCH "[arch=$ARCH]" $MIRROR $SUITE main
-		# in interactive mode we don't care about sources
+		# in manual mode we don't care about sources, because we don't create a dd-list which needs it
 		if $MANUAL_MODE ; then
 			sed -i "s#deb-src#\#deb-src#g" $BASEPATH/$SUITE/$SUITE-$ARCH/etc/apt/sources.list
 		fi
@@ -93,7 +94,7 @@ NR=0
 for SUITE in $SUITES ; do
 	PACKAGES[$NR]=$(ls $BASEPATH/$SUITE/$SUITE-$ARCH/var/lib/apt/lists/*_dists_${SUITE}_main_binary-${ARCH}_Packages)
        	echo "PACKAGES[$NR] = ${PACKAGES[$NR]}"
-	# only in interactive mode we care about sources
+	# only in non-interactive mode we care about sources, because we then create a dd-list which needs it
 	if ! $MANUAL_MODE ; then
 		SOURCES[$NR]=$(ls $BASEPATH/$SUITE/$SUITE-$ARCH/var/lib/apt/lists/*_dists_${SUITE}_main_source_Sources)
 		echo "SOURCES[$NR] = ${SOURCES[$NR]}"
@@ -128,7 +129,11 @@ for PKG in $(grep-dctrl -sPackage -n -FDescription "transitional.*package" --ign
 			let GOOD_COUNTER=$GOOD_COUNTER+1
 		else
 			let BAD_COUNTER=$BAD_COUNTER+1
-			echo "Warning: $PKG is a transitional package in $OLDSTABLE, $STABLE and sid. Please file a bug by runninig this script in interactive mode."
+			echo
+			echo "Warning: $PKG is a transitional package in $OLDSTABLE, $STABLE and sid."
+			if ! $MANUAL_MODE ; then
+				echo "Please file a bug by runninig this script in interactive mode."
+			fi
 			echo "SIGH #$BAD_COUNTER transitional packages with no bugs filed found so far."
 			BAD="$BAD $PKG"
 			echo
@@ -142,58 +147,76 @@ if $MANUAL_MODE && [ -n "$BAD" ] ; then
 	NR=0
 	echo "Entering manual mode, filing $MAX bugs."
 	for PKG in $BAD ; do
+		SRC=$(grep-dctrl -sSource -FPackage -n $PKG --exact-match ${PACKAGES[2]} | cut -d " " -f1)
+		if [ -z "$SRC" ] ; then
+			SRC=$PKG
+		fi
+		if [ -x /usr/bin/firefox ] ; then
+			firefox https://packages.debian.org/$PKG & :
+	
+			sleep 0.5
+			firefox "https://bugs.debian.org/cgi-bin/pkgreport.cgi?dist=unstable;include=subject%3Atransitional;src=$SRC" & :
+			sleep 1
+		fi
 		echo "firefox https://packages.debian.org/$PKG ;"
 		let NR=$NR+1
 		if [ $NR -eq $MAX ] ; then
-			echo "Filed $MAX bugs, ending."
+			echo "Taking a break after $MAX packages."
 			break
 		fi
 	done
-	echo "Please open those firefox tabs… and press enter"
-	read a
+	if [ ! -x /usr/bin/firefox ] ; then
+		echo "Please open those firefox tabs… and press enter to continue."
+		read a
+	fi
 	NR=0
-	for PKG in $BAD ; do
-		SRC=$(grep-dctrl -sSource -FPackage -n $PKG --exact-match ${PACKAGES[2]} | cut -d " " -f1)
-		if [ -z "$SRC" ] ; then
-			SRC=$PKG
-		fi
-		VERSION=$(grep-dctrl -sVersion -FPackage -n $PKG --exact-match ${PACKAGES[1]})
-		VERBOSE=$( ( for SAUCE in ${PACKAGES[0]} ${PACKAGES[1]} ${PACKAGES[2]} ; do
+	if [ -x /usr/bin/mutt ] ; then
+		for PKG in $BAD ; do
+			SRC=$(grep-dctrl -sSource -FPackage -n $PKG --exact-match ${PACKAGES[2]} | cut -d " " -f1)
+			if [ -z "$SRC" ] ; then
+				SRC=$PKG
+			fi
+			VERSION=$(grep-dctrl -sVersion -FPackage -n $PKG --exact-match ${PACKAGES[2]})
+			VERBOSE=$( ( for SAUCE in ${PACKAGES[0]} ${PACKAGES[1]} ${PACKAGES[2]} ; do
 				grep-dctrl -sPackage,Description,Version -FPackage $PKG --exact-match $SAUCE
-			done ) | sort -u)
-		#firefox https://packages.debian.org/$PKG &
-		TMPFILE=`mktemp`
-		cat >> $TMPFILE <<- EOF
-Package: $SRC
+				done ) | sort -u)
+			# wording when filing bugs since the beginning of the development cycle
+			WORDING="Please drop the transitional package $PKG (from the source package $SRC) for $NEXT, as it has been released with $OLDSTABLE and $STABLE already."
+			# wording when filing bugs late in the development cycle
+			WORDING="Please drop the transitional package $PKG (from the source package $SRC) after the release of $NEXT, it has been released with $OLDSTABLE and $STABLE already..."
+			TMPFILE=`mktemp`
+			cat >> $TMPFILE <<- EOF
+Package: $PKG
 Version: $VERSION
 Severity: normal
 user: qa.debian.org at packages.debian.org
 usertags: transitional
 
-$(echo "Please drop the transitional package $PKG (from the source package $SRC) for $NEXT, as it has been released with $OLDSTABLE and $STABLE already." | fold -s)
+$(echo "$WORDING" | fold -s)
 
 $VERBOSE
 
 Thanks for maintaining $SRC!
 
 EOF
-		mutt -s "please drop transitional package $PKG from src:$SRC" -i $TMPFILE submit at bugs.debian.org
-		rm $TMPFILE
+			mutt -E -s "please drop transitional package $PKG from src:$SRC" -i $TMPFILE submit at bugs.debian.org
+			rm -f $TMPFILE
 
-		let NR=$NR+1
-		if [ $NR -eq $MAX ] ; then
-			break
-		fi
-	done
-	echo -n "Filed $NR bugs in:"
-	nr=0
-	for i in $BAD ; do
-		echo -n " $i"
-		let nr=$nr+1
-		if [ $nr -eq $NR ] ; then
-			break
-		fi
-	done
+			let NR=$NR+1
+			if [ $NR -eq $MAX ] ; then
+				break
+			fi
+		done
+		echo -n "Filed $NR bugs against there packages:"
+		nr=0
+		for i in $BAD ; do
+			echo -n " $i"
+			let nr=$nr+1
+			if [ $nr -eq $NR ] ; then
+				break
+			fi
+		done
+	fi
 	echo
 else
 	# non-interactive mode
@@ -214,10 +237,8 @@ echo "assume they are no problem in $NEXT as well)."
 echo "Plus we know about $BUGGED_COUNTER bugs about obsolete transitional packages we have"
 echo "already filed, of which $OPEN_COUNTER are still unfixed in sid."
 echo
-echo "In the future, this script should probably also complain about transitional packages"
-echo "just in $STABLE and $OLDSTABLE (but not yet in sid/$NEXT),"
-echo " and suggest to file wishlist bugs for those as well."
-echo "Though maybe it's more useful to first file bugs against packages depending on these..."
+echo "In the future, this script should probably also complain about packages"
+echo "depending on transitional packages."
 
 echo
 if [ "${BASEPATH:0:5}" = "/tmp/" ] ; then
@@ -230,3 +251,8 @@ fi
 if [ $BAD_COUNTER -gt 0 ] ; then
 	echo "Warning: there seems to be $BAD_COUNTER unfiled bugs in $NEXT."
 fi
+
+echo
+echo "All user-tagged bugs about transitional packages:"
+echo "https://udd.debian.org/cgi-bin/bts-usertags.cgi?user=qa.debian.org%40packages.debian.org&tag=transitional"
+echo



View it on GitLab: https://salsa.debian.org/qa/jenkins.debian.net/-/commit/3f117a05e1a3f27f2e5162029186070a30f440e8

-- 
View it on GitLab: https://salsa.debian.org/qa/jenkins.debian.net/-/commit/3f117a05e1a3f27f2e5162029186070a30f440e8
You're receiving this email because of your account on salsa.debian.org.


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://alioth-lists.debian.net/pipermail/qa-jenkins-scm/attachments/20230310/4ee5ac9b/attachment-0001.htm>


More information about the Qa-jenkins-scm mailing list