Hi, we currently have in sid 84 maintainer scripts not using strict mode. That is, they neither start on "#!/bin/[ba]sh -e", nor do a "set -e". The list is attached. This list includes the 12 remaining scripts not starting on #! (bugs are already filed for these).
Policy says in Section 10.4: Shell scripts (sh and bash) other than init.d scripts should almost certainly start with set -e so that errors are detected. [..] Every script should use set -e or check the exit status of every command. I had a cursory look over the listed maintainer scripts, and did not find any that does a careful checking of exit statuses. Though some of them are quite trivial, or even sometimes empty. It looks to me as not using strict mode in these cases is an oversight, and I would like to file bugs for these. What is your opinion? Policy says "should", not "must". If you agree with the MBF, what do you think would be the appropriate severity? -Ralf.
asterisk-prompt-de_2.0-1.1/preinst authbind_2.1.2/postinst authbind_2.1.2/prerm bcache-tools_1.0.8-2+b1/preinst bible-kjv_4.29+b1/postinst bible-kjv_4.29+b1/postrm bible-kjv_4.29+b1/prerm bible-kjv-text_4.29/postinst bible-kjv-text_4.29/prerm bind9_1:9.10.3.dfsg.P4-12.3/postrm binfmtc_0.17-2+b1/postinst binfmtc_0.17-2+b1/postrm bwbar_1.2.3-2.1+b2/prerm ca-certificates-mono_4.6.2.7+dfsg-1/postinst checksecurity_2.0.16+nmu1/preinst clips_6.24-3.2/postinst cxref_1.6e-2+b1/postrm debbugs_2.4.1.1/postrm debfoster_2.7-2.1+b1/postrm discover_2.1.2-7.1/postrm discover_2.1.2-7.1/preinst dsh_0.25.10-1.3/postinst dsh_0.25.10-1.3/postrm dsh_0.25.10-1.3/preinst dvifb_1:01.03-14.2/postinst dvifb_1:01.03-14.2/postrm ekiga-dbg_4.0.1-6+b5/postinst ekiga-dbg_4.0.1-6+b5/postrm ekiga-dbg_4.0.1-6+b5/preinst geki3_1.0.3-8.1/postinst geki3_1.0.3-8.1/postrm gjiten_2.6-3/postinst gnukhata-core-engine_2.6.1-3/postrm golang-godebiancontrol-dev_0.0~git20140119-1/preinst guidedog_1.2.0-3+b1/postrm hyperspec_1.30+nmu2/postinst kterm_6.2.0-46.2/postinst kterm_6.2.0-46.2/prerm ldp-docbook-xsl_0.0.20040321-3/preinst ldp-docbook-xsl_0.0.20040321-3/prerm libclips_6.24-3.2/postinst libclips_6.24-3.2/prerm linpac_0.24-1+b1/postrm logtool_1.2.8-10/postrm logtool_1.2.8-10/preinst lpr_1:2008.05.17.2+b1/postinst lpr_1:2008.05.17.2+b1/postrm manpages-posix-dev_2013a-2/postinst manpages-posix-dev_2013a-2/postrm manpages-posix-dev_2013a-2/preinst mgetty-docs_1.1.36-3/preinst mgetty-fax_1.1.36-3+b1/preinst mgetty-voice_1.1.36-3+b1/postrm mime-support_3.60/prerm pmw-doc_1:4.29-1/postinst pmw-doc_1:4.29-1/preinst python-imaging-doc-html_1.1.2-1.2/postinst python-imaging-doc-pdf_1.1.2-1.2/postinst python-kde4_4:4.14.3-2/postinst remembrance-agent_2.12-7+b2/prerm samba_2:4.6.5+dfsg-2/prerm samba-common-bin_2:4.6.5+dfsg-2/prerm samhain_4.1.4-2/preinst sauce_0.9.0+nmu3/postrm scalable-cyrfonts-tex_4.17/postinst scalable-cyrfonts-tex_4.17/postrm scanlogd_2.2.5-3.3/postinst scanlogd_2.2.5-3.3/postrm scanlogd_2.2.5-3.3/prerm sendfile_2.1b.20080616-5.3+b3/preinst simba_0.8.4-4.3/postrm spacearyarya_1.0.2-7.1/postinst spacearyarya_1.0.2-7.1/postrm suricata_4.0.0-beta1-1~exp1/preinst swapspace_1.10-4+b2/postinst t1-cyrillic_4.17/postrm t1-oldslavic_4.17/postinst t1-oldslavic_4.17/postrm t1-teams_4.17/postinst t1-teams_4.17/postrm websimba_0.8.4-4.3/postinst websimba_0.8.4-4.3/postrm whizzytex_1.3.2-1.3/prerm wodim_9:1.1.11-3+b2/preinst