Package: release.debian.org Severity: normal User: release.debian....@packages.debian.org Usertags: unblock
Please unblock package postfix This upload fixes two significant bugs and makes it possible for a user to recover from a third without hand editing configuration files: 1. Postfix-cdb will no longer fail to work after upgrade from jessie due to upgrade ordering issues. 2. Postfix should wait to start until the network and DNS are actually available, so it won't fail to start on boot. 3. If an upgrade is performed from a not fully updated system and the dynamic maps locations are incorred in dynamicmaps.cf, dpkg-reconfigure postfix (and whatever postfix map types are installed) will fix it. Note: The last one will be followed by a bug to release-notes to mention this (it seems way better than a release note explaining how to hand edit files). unblock postfix/3.1.4-5
diff -Nru postfix-3.1.4/debian/changelog postfix-3.1.4/debian/changelog --- postfix-3.1.4/debian/changelog 2017-01-25 10:03:04.000000000 -0500 +++ postfix-3.1.4/debian/changelog 2017-05-15 16:03:38.000000000 -0400 @@ -1,3 +1,15 @@ +postfix (3.1.4-5) unstable; urgency=medium + + * Add postfix-cdb Breaks: postfix << 3.1.3-7~ so that the incorrect addmap + function will not be used when postfix-cdb is configured. Closes: #861593 + * Make sure to call delmap on upgrade as well as remove and purge so + dpkg-reconfigure will fix broken upgrades. Closes: #859805 + * Drop ineffective service override generated in postinst and use correct + service file dependencies in postfix@.service instead. Closes: #854475 + * Clean up left-over /etc/systemd/system/postfix.service.d directory + + -- Scott Kitterman <sc...@kitterman.com> Mon, 15 May 2017 16:03:17 -0400 + postfix (3.1.4-4) unstable; urgency=medium [Scott Kitterman] diff -Nru postfix-3.1.4/debian/control postfix-3.1.4/debian/control --- postfix-3.1.4/debian/control 2017-01-06 13:04:11.000000000 -0500 +++ postfix-3.1.4/debian/control 2017-05-15 08:01:31.000000000 -0400 @@ -46,6 +46,7 @@ Package: postfix-cdb Architecture: any Depends: ${shlibs:Depends}, ${misc:Depends}, postfix (= ${binary:Version}) +Breaks: postfix (<< 3.1.3-7~) Description: CDB map support for Postfix ${Description} . diff -Nru postfix-3.1.4/debian/postfix-cdb.prerm postfix-3.1.4/debian/postfix-cdb.prerm --- postfix-3.1.4/debian/postfix-cdb.prerm 2016-12-06 17:04:03.000000000 -0500 +++ postfix-3.1.4/debian/postfix-cdb.prerm 2017-05-15 09:43:57.000000000 -0400 @@ -18,11 +18,11 @@ . /usr/share/postfix/postinst.functions case "$1" in - remove|purge) + remove|purge|upgrade) delmap cdb # install-info --quiet --remove /usr/info/#PACKAGE#.info.gz ;; - upgrade|deconfigure|failed-upgrade) + deconfigure|failed-upgrade) ;; *) echo "prerm called with unknown argument \`$1'" >&2 diff -Nru postfix-3.1.4/debian/postfix-ldap.prerm postfix-3.1.4/debian/postfix-ldap.prerm --- postfix-3.1.4/debian/postfix-ldap.prerm 2016-12-06 16:59:58.000000000 -0500 +++ postfix-3.1.4/debian/postfix-ldap.prerm 2017-05-15 09:44:25.000000000 -0400 @@ -18,11 +18,11 @@ . /usr/share/postfix/postinst.functions case "$1" in - remove|purge) + remove|purge|upgrade) delmap ldap # install-info --quiet --remove /usr/info/#PACKAGE#.info.gz ;; - upgrade|deconfigure|failed-upgrade) + deconfigure|failed-upgrade) ;; *) echo "prerm called with unknown argument \`$1'" >&2 diff -Nru postfix-3.1.4/debian/postfix-lmdb.prerm postfix-3.1.4/debian/postfix-lmdb.prerm --- postfix-3.1.4/debian/postfix-lmdb.prerm 2016-12-06 16:56:01.000000000 -0500 +++ postfix-3.1.4/debian/postfix-lmdb.prerm 2017-05-15 09:44:54.000000000 -0400 @@ -18,11 +18,11 @@ . /usr/share/postfix/postinst.functions case "$1" in - remove|purge) + remove|purge|upgrade) delmap lmdb # install-info --quiet --remove /usr/info/#PACKAGE#.info.gz ;; - upgrade|deconfigure|failed-upgrade) + deconfigure|failed-upgrade) ;; *) echo "prerm called with unknown argument \`$1'" >&2 diff -Nru postfix-3.1.4/debian/postfix-mysql.prerm postfix-3.1.4/debian/postfix-mysql.prerm --- postfix-3.1.4/debian/postfix-mysql.prerm 2016-12-06 17:00:26.000000000 -0500 +++ postfix-3.1.4/debian/postfix-mysql.prerm 2017-05-15 09:45:22.000000000 -0400 @@ -18,11 +18,11 @@ . /usr/share/postfix/postinst.functions case "$1" in - remove|purge) + remove|purge|upgrade) delmap mysql # install-info --quiet --remove /usr/info/#PACKAGE#.info.gz ;; - upgrade|deconfigure|failed-upgrade) + deconfigure|failed-upgrade) ;; *) echo "prerm called with unknown argument \`$1'" >&2 diff -Nru postfix-3.1.4/debian/postfix-pcre.prerm postfix-3.1.4/debian/postfix-pcre.prerm --- postfix-3.1.4/debian/postfix-pcre.prerm 2016-12-06 17:00:56.000000000 -0500 +++ postfix-3.1.4/debian/postfix-pcre.prerm 2017-05-15 09:45:47.000000000 -0400 @@ -18,11 +18,11 @@ . /usr/share/postfix/postinst.functions case "$1" in - remove|purge) + remove|purge|upgrade) delmap pcre # install-info --quiet --remove /usr/info/#PACKAGE#.info.gz ;; - upgrade|deconfigure|failed-upgrade) + deconfigure|failed-upgrade) ;; *) echo "prerm called with unknown argument \`$1'" >&2 diff -Nru postfix-3.1.4/debian/postfix-pgsql.prerm postfix-3.1.4/debian/postfix-pgsql.prerm --- postfix-3.1.4/debian/postfix-pgsql.prerm 2016-12-06 17:01:24.000000000 -0500 +++ postfix-3.1.4/debian/postfix-pgsql.prerm 2017-05-15 09:46:08.000000000 -0400 @@ -18,11 +18,11 @@ . /usr/share/postfix/postinst.functions case "$1" in - remove|purge) + remove|purge|upgrade) delmap pgsql # install-info --quiet --remove /usr/info/#PACKAGE#.info.gz ;; - upgrade|deconfigure|failed-upgrade) + deconfigure|failed-upgrade) ;; *) echo "prerm called with unknown argument \`$1'" >&2 diff -Nru postfix-3.1.4/debian/postfix.postinst postfix-3.1.4/debian/postfix.postinst --- postfix-3.1.4/debian/postfix.postinst 2017-01-20 23:32:04.000000000 -0500 +++ postfix-3.1.4/debian/postfix.postinst 2017-05-15 15:49:12.000000000 -0400 @@ -10,6 +10,8 @@ CHROOT=/var/spool/postfix config_directory="/etc/postfix" # make variable expansion easier... +new=$2 # get new version + . /usr/share/postfix/postinst.functions set_maildrop_perms() { @@ -182,17 +184,6 @@ fi } -add_service_override() { - NAME=postfix - # Generate service override file - SERVICE=$(mktemp $NAME.service.XXXXXXXXXX) - echo "[Unit]" >> $SERVICE - echo "After=network-online.target" >> $SERVICE - echo "After=systemd-resolved.service" >> $SERVICE - mkdir -p /etc/systemd/system/$NAME.service.d - install -m 644 $SERVICE /etc/systemd/system/$NAME.service.d/override.conf - rm -f $SERVICE -} umask 022 # postinst processing @@ -297,7 +288,10 @@ # Remove from postfix postinst after stretch and uncomment in postfix-sqlite.postinst addmap sqlite - +if dpkg --compare-versions $new lt 3.1.4-5~; then + # This turned out to be the wrong way to solve the problem. + rm -rf /etc/systemd/system/postfix.service.d +fi db_get postfix/main_mailer_type && mailer="$RET" [ -f master.cf ] || cp /usr/share/postfix/master.cf.dist master.cf @@ -647,18 +641,6 @@ fi fi - # If we are not Local only and using systemd, then make sure we wait until - # the network is actually there and we have DNS: #844277 and LP #1649453 - # for starters. If using systemd without systemd-resolved, you're on your - # own. - if [ -f /lib/systemd/systemd-resolved ] && \ - [ ! -f /etc/systemd/system/postfix.service.d/override.conf ] ; then - if [ "$mailer" != "No configuration" ] && [ "$mailer" != "Local only" ]; then - echo "Adding systemd overrides to ensure network and name services available." - add_service_override - fi - fi - [ -x /usr/sbin/invoke-rc.d ] && \ INIT="invoke-rc.d postfix" || \ INIT="/etc/init.d/postfix" diff -Nru postfix-3.1.4/debian/postfix.prerm postfix-3.1.4/debian/postfix.prerm --- postfix-3.1.4/debian/postfix.prerm 2016-10-30 08:17:46.000000000 -0400 +++ postfix-3.1.4/debian/postfix.prerm 2017-05-15 14:46:43.000000000 -0400 @@ -3,6 +3,8 @@ # Debian Postfix prerm # LaMont Jones <lam...@debian.org> +. /usr/share/postfix/postinst.functions + case "$1" in upgrade) new=$2 # get new version @@ -19,6 +21,8 @@ mv ${MASTER}.$$ ${MASTER} fi fi + delmap sqlite #remove after stretch + delmap tcp # remove after stretch ;; deconfigure) diff -Nru postfix-3.1.4/debian/postfix.service postfix-3.1.4/debian/postfix.service --- postfix-3.1.4/debian/postfix.service 2016-10-30 08:17:46.000000000 -0400 +++ postfix-3.1.4/debian/postfix.service 2017-05-15 10:01:48.000000000 -0400 @@ -1,6 +1,5 @@ [Unit] Description=Postfix Mail Transport Agent -After=network.target Conflicts=sendmail.service exim4.service ConditionPathExists=/etc/postfix/main.cf diff -Nru postfix-3.1.4/debian/postfix@.service postfix-3.1.4/debian/postfix@.service --- postfix-3.1.4/debian/postfix@.service 2016-10-30 08:17:46.000000000 -0400 +++ postfix-3.1.4/debian/postfix@.service 2017-05-15 10:02:59.000000000 -0400 @@ -2,7 +2,10 @@ Description=Postfix Mail Transport Agent (instance %i) Documentation=man:postfix(1) PartOf=postfix.service +Before=postfix.service ReloadPropagatedFrom=postfix.service +After=network-online.target nss-lookup.target +Wants=network-online.target [Service] Type=forking diff -Nru postfix-3.1.4/debian/postfix-sqlite.prerm postfix-3.1.4/debian/postfix-sqlite.prerm --- postfix-3.1.4/debian/postfix-sqlite.prerm 2017-01-06 13:04:11.000000000 -0500 +++ postfix-3.1.4/debian/postfix-sqlite.prerm 2017-05-15 09:47:25.000000000 -0400 @@ -23,7 +23,7 @@ fi case "$1" in - remove|upgrade|deconfigure) + remove|purge|upgrade|deconfigure) [ n = "$HAVE_FUNC" ] || delmap sqlite ;; failed-upgrade)