Your message dated Mon, 21 Sep 2015 06:03:47 +0000 with message-id <[email protected]> and subject line Bug#796671: fixed in dpkg 1.18.3 has caused the Debian Bug report #796671, regarding dpkg-source: warn removal only when directory is non-empty to be marked as done.
This means that you claim that the problem has been dealt with. If this is not the case it is now your responsibility to reopen the Bug report if necessary, and/or fix the problem forthwith. (NB: If you are a system administrator and have no idea what this message is talking about, this may indicate a serious mail system misconfiguration somewhere. Please contact [email protected] immediately.) -- 796671: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=796671 Debian Bug Tracking System Contact [email protected] with problems
--- Begin Message ---Package: dpkg-dev Version: 1.17.25 Severity: normal This is about "dpkg-source -x ..." for multiple upstream tarbells. In short, if there are directories matching component names of secondary tarballs, dpkg-source should not warn them if such directories contain nothing. (I checked the pertinent part of the source in the git repo, too. I see no recent changes on this issue.) Here is a long story. For example, let's think about: fritzing_0.9.2b+dfsg.orig.tar.gz fritzing_0.9.2b+dfsg.orig-parts.tar.gz (In reality these are fritzing-app and fritzing-parts but renamed to fit Debian source package packaging scheme V3). The upstream uses git submodule to combine these 2 git archives. Naturally, fritzing_0.9.2b+dfsg.orig.tar.gz contains an *EMPTY* directory "parts" as the result... if packaged without repackaging(*) Currently, this happens (run under -d): | dpkg-source: info: unpacking fritzing_0.9.2b+dfsg.orig.tar.gz | dpkg-source: info: unpacking fritzing_0.9.2b+dfsg.orig-parts.tar.gz | dpkg-source: warning: required removal of `parts' installed by original tarball | at /usr/share/perl5/Dpkg/ErrorHandling.pm line 59. | Dpkg::ErrorHandling::warning("required removal of `%s' installed by orig | inal tarball", "parts") called at /usr/share/perl5/Dpkg/Source/Package/V2.pm lin | e 177 | Dpkg::Source::Package::V2::do_extract(Dpkg::Source::Package::V3::Quilt=H | ASH(0x2607968), "fritzing-0.9.2b+dfsg") called at /usr/share/perl5/Dpkg/Source/P | ackage.pm line 490 | eval {...} called at /usr/share/perl5/Dpkg/Source/Package.pm line 490 | Dpkg::Source::Package::extract(Dpkg::Source::Package::V3::Quilt=HASH(0x2 | 607968), "fritzing-0.9.2b+dfsg") called at /usr/bin/dpkg-source line 489 This is not a very critical problem but this warning should only be issued if the directory in question is non-empty. Removal of empty directories to put component in place should happen without warning. As I cloned dpkg git repo, the pertinent part is the same as the one in jessie. dpkg/scripts/Dpkg/Source/Package/V2.pm (Quote from line 171) | # Extract additional orig tarballs | foreach my $subdir (sort keys %addonfile) { | my $file = $addonfile{$subdir}; | info(g_('unpacking %s'), $file); | if (-e "$newdirectory/$subdir") { | warning(g_("required removal of '%s' installed by original tarball"), | $subdir); | erasedir("$newdirectory/$subdir"); | } | $tar = Dpkg::Source::Archive->new(filename => "$dscdir$file"); | $tar->extract("$newdirectory/$subdir", no_fixperms => 1); | } Here, script erases with erasedir which is defined in dpkg/scripts/Dpkg/Source/Functions.pm essentially as: system 'rm', '-rf', '--', $dir I think if $newdirectory/$subdir contains no files, subdirectories, symlinks, ..., then it should quietly remove $newdirectory/$subdir to cope with "git submodule ..." etc. and proceed to put the content of fritzing_0.9.2b+dfsg.orig-parts.tar.gz while renaming the first level directory from "fritzing-parts-0.9.2b" to "parts". Of course, if such directories have any files, dpkg-sourc3 should warn and do "rm -rf ...", fail, or, move newdirectory/$subdir to newdirectory/${subdir}.orig. So dpkg/scripts/Dpkg/Source/Package/V2.pm needs to check if $newdirectory/$subdir contain any thing in it or not. If nothing, remove it with "rmdir $newdirectory/$subdir" without warning first. Osamu (*) NOTE: The actual fritzing packages in our sid/experimental archive does not use this packaging scheme yet. -- System Information: Debian Release: 8.1 APT prefers stable-updates APT policy: (500, 'stable-updates'), (500, 'proposed-updates'), (500, 'stable'), (99, 'testing'), (98, 'unstable') Architecture: amd64 (x86_64) Kernel: Linux 3.16.0-4-amd64 (SMP w/4 CPU cores) Locale: LANG=en_US.utf8, LC_CTYPE=en_US.utf8 (charmap=UTF-8) Shell: /bin/sh linked to /bin/dash Init: systemd (via /run/systemd/system) Versions of packages dpkg-dev depends on: ii base-files 8+deb8u1 ii binutils 2.25-5 ii bzip2 1.0.6-7+b3 ii libdpkg-perl 1.17.25 ii make-guile [make] 4.0-8.1 ii patch 2.7.5-1 ii xz-utils 5.1.1alpha+20120614-2+b3 Versions of packages dpkg-dev recommends: ii build-essential 11.7 ii fakeroot 1.20.2-1 ii gcc [c-compiler] 4:4.9.2-2 ii gcc-4.8 [c-compiler] 4.8.4-1 ii gcc-4.9 [c-compiler] 4.9.2-10 ii gnupg 1.4.18-7 ii gnupg2 2.0.26-6 ii gpgv 1.4.18-7 ii libalgorithm-merge-perl 0.08-2 Versions of packages dpkg-dev suggests: ii debian-keyring 2015.04.10 -- no debconf information
--- End Message ---
--- Begin Message ---Source: dpkg Source-Version: 1.18.3 We believe that the bug you reported is fixed in the latest version of dpkg, which is due to be installed in the Debian FTP archive. A summary of the changes between this version and the previous one is attached. Thank you for reporting the bug, which will now be closed. If you have further comments please address them to [email protected], and the maintainer will reopen the bug report if appropriate. Debian distribution maintenance software pp. Guillem Jover <[email protected]> (supplier of updated dpkg package) (This message was generated automatically at their request; if you believe that there is a problem with it please contact the archive administrators by mailing [email protected]) -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA256 Format: 1.8 Date: Mon, 21 Sep 2015 07:11:42 +0200 Source: dpkg Binary: libdpkg-dev dpkg dpkg-dev libdpkg-perl dselect Architecture: source Version: 1.18.3 Distribution: unstable Urgency: medium Maintainer: Dpkg Developers <[email protected]> Changed-By: Guillem Jover <[email protected]> Description: dpkg - Debian package management system dpkg-dev - Debian package development tools dselect - Debian package management front-end libdpkg-dev - Debian package management static library libdpkg-perl - Dpkg perl modules Closes: 794688 794694 794977 795936 796283 796671 798324 798369 798370 798371 Changes: dpkg (1.18.3) unstable; urgency=medium . [ Guillem Jover ] * Fix short-lived memory leaks in start-stop-daemon. As a side effect now a missing group after ‘:’ on --chuid is a fatal error. * Print the master and slave links in «update-alternatives --display». * Print the current best alternative in the head instead of the trail in «update-alternatives --display», with a two space indentation. * Reimplement «update-alternatives --all» as a fully built-in command instead of executing itself with --config per subtask. * Reimplement «update-alternatives --set-selections» as a fully built-in command instead of executing itself with --set or --auto per subtask. * Add kfreebsd-armhf support to ostable and triplettable. Closes: #796283 Thanks to Steven Chamberlain <[email protected]>. * Fix «dpkg --verify» with --root. * Fix an off-by-one write access in dpkg-deb when parsing the .deb magic. Reported by Jacek Wielemborek <[email protected]>. Closes: #798324 * Split overlong perl regexes into multiline extended regexes. * Switch dselect multicd method license from GPL2 to GPL2+, with consent from all its authors. * Fix inadvertent license change for lib/dpkg/utils.c from GPL2 to GPL2+. * Fix segfault when using «dpkg --no-act» with a synthetic --admindir. Reported by David Kalnischkies <[email protected]>. * Perl modules: - Only warn on invalid week days instead of aborting in Dpkg::Changelog::Entry::Debian. Regression introduced in dpkg 1.18.2. Reported by Jakub Wilk <[email protected]>. - Do not warn when removing an empty subdirectory on source package extraction in Dpkg::Source::Package::V2. Closes: #796671 - Do not abort on parse errors from Time::Piece->strptime() for the changelog trailer date, just queue them so that the caller can decide if they should be warnings or actual errors. Closes: #795936 - Validate the changelog trailer date, and catch and warn or error on bogus month names, such as unknown or unabbreviated ones. * Test suite: - Get the reference build flags from dpkg-buildflags.pl, instead of hardcoding them, which might not match depending on the architecture. Closes: #794694 - Delete any environment variable starting with DEB_ in mk.t that might affect the test results. * Build system: - Add a new --with-devlibdir configure option for the C libdpkg library. * Packaging: - Remove unneeded --sourcedir options from dh_install calls. - Use the new --with-devlibdir configure option to only switch libdpkg-dev files to the multi-arch directory. Closes: #794977 * Documentation: - Fix typos for --predep-package option name. Closes: #794688 - Add missing dashes to package-list in deb-src-control(5). - Mark each individual required field as such, instead of using segregated sections. . [ Updated programs translations ] * Catalan (Jordi Mallach). * French (Sébastien Poher). Closes: #798371 * German (Sven Joachim). * Vietnamese (Trần Ngọc Quân). . [ Updated dselect translations ] * French (Sébastien Poher). Closes: #798370 . [ Updated scripts translations ] * French (Sébastien Poher). Closes: #798369 * German (Helge Kreutzmann). . [ Updated manpages translations ] * German (Helge Kreutzmann). Checksums-Sha1: 5d9b6ea29328c98d2362e13f3bfb8f13b72618ff 2021 dpkg_1.18.3.dsc fa70b3ed84d8ed678a85b64a37f2a787cc678f26 4359884 dpkg_1.18.3.tar.xz Checksums-Sha256: 472d01b4be4ac80f4f8b50b3cbbed07c23728fc1014d283eab5e9281896616a7 2021 dpkg_1.18.3.dsc a40ffe38d7f36d858a752189a306433cfc52c7d15d7b98f61d9f9dd49e0e4807 4359884 dpkg_1.18.3.tar.xz Files: 69573ae1565f820c925572e2c5bf253b 2021 admin required dpkg_1.18.3.dsc a5ca138121cc37c8fb0083462a3b4d47 4359884 admin required dpkg_1.18.3.tar.xz -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 iQIcBAEBCAAGBQJV/5mpAAoJELlyvz6krlejXNIP/iirqbBKyKiM7zVidtNPwnR9 qGhxBcCJSPwamSlxc0eROtIOA0QiC7VBxr4Zl/HefwauOGDnrtFAw05lcO8BT/NU 0YMLP8GuWvi2/+q4/cltHk821M6+IR+13dGkhrMagoJR5FaXPz4zQ+L7DP+M2VM5 T50uvjw9xS9kofF/6caywEkitY9bzm843kW+Bk+qOF2is6uBp+kqY9JQj+egLS9a nzLFjZg919DNimGr9MZZXSSxfxi3qx7WrXGokbnHD5K9crkKUDSxC3GoMs8zQV68 qqTXzmmwecy4sXbFcKHsPnSqabiMhKr2L3j9r1f1BMLxubnP61lc7Id9vLpi2EQE rcMaO1MSHeOaD+xz9xUZsjGLHqf202qODK7fyBZ3btDgt4W/RM1yzaVeL3hT9Gt5 /ojCUjrv909xmWd9AgjafPD9uIrkBUqj1xWJvxo7U9dVlSTbpQP/Ok5Ne7hXO9jr m2R30rd2dTByAqE5Qj3sWIAKeFRdopllwLW237NAhqiIsZRm/JlUPxfl64MhIZip v0pFQyrkYqrRceMMmiadM3118Pp75Gyff5XT1PSKtxVCX/xUfyHI0fMt69Z6SYjM uxF/rINjzyoPLoJ2MhVY1Mz+3+axXv9aNr9F2m9JMIsmgF98hYpidAhu0NE6BeBA IMHq6XPCPApty4bZPnlM =fD44 -----END PGP SIGNATURE-----
--- End Message ---

