-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA512 Format: 1.8 Date: Sun, 08 Mar 2020 03:31:40 +0100 Source: dpkg Architecture: source Version: 1.20.0 Distribution: experimental Urgency: medium Maintainer: Dpkg Developers <debian-dpkg@lists.debian.org> Changed-By: Guillem Jover <guillem@debian.org> Closes: 43573 343578 637060 647911 843776 900071 920878 923475 926472 926669 927752 930317 931135 932841 932967 933152 934980 935695 939516 939969 942195 945776 946780 948291 951614 Changes: dpkg (1.20.0) experimental; urgency=medium . [ Guillem Jover ] * libdpkg: Do not generate a backup file for the available database. Closes: #343578 * perl: Switch Getopt::Long from bundling to bundling_values. This means the few scripts using Getopt::Long will stop accepting options in the form «-ab» for «-a -b», which is not future-proof, as it does not allow these options to get new arguments without making them abiguous. * dpkg-buildpackage: Remove transient backwards R³ compatibility code. * buildtools.mk: Add support for nostrip in DEB_BUILD_OPTIONS when setting the STRIP variable. * dpkg-genbuildinfo: Do not include irrelevant packages in the Binary field. * dpkg: Do not clear selections for unknown packages. Closes: #927752 * dpkg-shlibdeps: Add support for new Build-Depends-Packages, to be able to specify multiple packages. Closes: #926669 Based on a patch by Frank Schaefer <kelledin@gmail.com>. * perl: Remove support for versioned GnuPG 2 program and packages. * libdpkg: Clarify lock contender error message. Print the PID of the lock contender, and add a warning explaining that removing the lock file is never the correct solution. * dpkg-genchanges, dpkg-mergechangelogs: Remove support for ~vola versioning, as volatile.debian.org was decommissioned some time ago. * dpkg-genchanges, dpkg-mergechangelogs: Match ~deb also as a backport marker in versions. Closes: #934980 * libdpkg, dpkg: Use new versiondescribe_c() for non-localizable call sites, such as when writing to a log, which should not be localized. Reported by Julien Cristau <jcristau@debian.org>. * dpkg-query: Try to use the package synopsis from the available file if not installed. Closes: #43573 * dpkg-gencontrol: Take into account hardlinks when computing the Installed-Size substvar. Closes: #923475 Patch co-authored with Sven Joachim <svenjoac@gmx.de>. * dpkg: Fix and clarify behavior for packages marked to be on “hold”. These need to be processed for configuration and triggers. Closes: #926472 * dpkg: Use DPKG_ADMINDIR to set the admindir. Closes: #900071 * dpkg-source: Remove backwards compatibility code for legacy build-profiles. * perl: Give more context on field parsing errors. Closes: #637060 * dpkg-buildpackage: Add option to sanitize environment. Closes: #843776 * update-alternatives: Cope with a missing administrative directory. * update-alternatives: Create the administrative directory on demand. * dpkg-split: Cope with a missing parts/ database directory. * dpkg-split: Create the parts/ database directory on demand. * libdpkg: Consider msdbrw_needsuperuser equivalent to msdbrw_write, so the same checks are performed on normal non --force-not-root operation. * libdpkg: Add support for bootstrapping the installation of dpkg: - Create the logfile with correct permissions, and remove the code setting up the logfile from the dpkg postinst. - Allow missing status and available databases, so that they get created on write, and remove the code setting them up from the dpkg postinst. Closes: #647911 - Do not change the ownership of the triggers database directory. Either we are running as root:root which means the ownership should be correct already, or we are not which means we cannot change it anyway. - Create the dpkg database directory on demand. - Create the updates/ database directory on demand. - Create the info/ database directory on demand. * dpkg-architecture: Fix handling of exec failing in --command. Reported by Helmut Grohne <helmut@subdivi.de>. * dpkg-buildpackage: Do not accept equal signs as part of the hook names. Reported by Daniel Shahaf <danielsh@apache.org>. Closes: #948291 * dselect: Mark a string for translation. * dselect: Cleanup access methods: - Remove harddisk methods, as they were non-functional due to fdisk interface changes, and do not make sense anymore as we can expect users to mount any such filesystem on their own, to then use a filesystem method instead. Prompted by Helmut Grohne <helmut@subdivi.de>. - Remove cdrom method superseded by the multi_cd method. - Remove nfs methods, as there is nothing special about NFS, and mounting these should just be left to the local admin, who can mount any other remote filesystem too. - Remove multi_mount method, as the multi_cd method can take care of mounting the necessary images or devices. - Replace changelog with correct copyright in file header. * dpkg, dselect: Stop using first-person singular in output messages. * libdpkg: Fix memory leak in parsedb context close. * buildtools.mk: Add QMAKE variable. Closes: #920878 * po: Fix translation of --compare-versions. Closes: #951614 Thanks to Boyuan Yang <byang@debian.org>. * Perl modules: - Dpkg::Source::Package: Verify original tarball signatures at build time. - Dpkg::BuildFlags: Add new unset() method. Requested by Daniel Schepler <dschepler@gmail.com>. - Dpkg::Source::Package::V2: Emit a special patch header on single-debian-patch. Closes: #933152 - Dpkg::Vendor::Debian: Only scan /usr/local/ directories that exist. Closes: #932967 - Dpkg::Vendor::Debian: Do not set -Werror=implicit-function-declaration for C++. Closes: #939969 - Dpkg::Deps: Check for valid virtual package version relations. Do not allow non-equal version relations in virtual provides. Closes: #930317 - Dpkg: Remove internal lowercase variables $version, $progname, $admindir, $dpkglibdir and $pkgdatadir. - Dpkg::Changelog: Remove obsolete methods dpkg() and rfc822(). - Dpkg::Changelog::Entry::Debian: Remove obsolete methods check_header() and check_trailer(). Hide variables $regex_header and $regex_trailer. - Dpkg::Changelog::Parse: Remove warnings of obsolete options forceplugin and libdir. Remove obsolete functions changelog_parse_debian() and changelog_parse_plugin(). - Dpkg::Compression: Hide internal lowercase variables $default_compression, $default_compression_level and $compression_re_file_ext. - Dpkg::Deps::KnownFacts: Remove obsolete check_package() method. - Dpkg::Exit: Hide internal lowercase @handlers variable. - Dpkg::Gettext: Remove obsolete _g() function. - Dpkg::Source::Package: Hide internal lowercase variable @tar_ignore_default_pattern. Remove iternal lowercase variable alias $diff_ignore_default_regexp. - Dpkg::Substvars: Remove obsolete no_warn() method. - Dpkg::Index: Change default value for unique_tuple_key to 1. - Dpkg::Version: Remove deprecation warning from semantic change in bool overload. - Dpkg::Checksums: Remove obsolete 'program' property warning. - Dpkg::Conf: Remove obsolete methods and obsolete croak for method option. - Dpkg::Vendor: Remove obsolete 'keyrings' hook. - Dpkg::Exit: Unregister all signal handlers once we have executed them. Closes: #932841 - Dpkg::Exit: Register exit handlers also for __DIE__. - Dpkg::Source::Package::V3::Native: Do not say v1.0 for 3.0 formats. - Dpkg::Dist::Files: On filename parse error say file instead of package. - Dpkg::Substvars: Add new vendor:Name and vendor:Id substvars. - Dpkg::Source::Package: Detect directory traversals under debian directory. Reported by Felix Lechner <felix.lechner@lease-up.com>. * Documentation: - man: Fix uncommon wording constructs. - man: Use a minus sign for a literal string. - man: Clarify that the pager is called via «$SHELL -c». - dpkg-shlibdeps: Document split_soname() function. Prompted by Christopher Crim <christopher.crim@quoininc.com>. - Dpkg::Changelog: Document methods provided by subclasses. Reported by Felix Lechner <felix.lechner@lease-up.com>. - man: Globally adjust left and disable hyphenation. - man: Split dselect(1) --color from --colour option items. - man: Describe the SONAME formats supported in deb-shlibs(5). - man: Move template symbol documentation into new deb-src-symbols(5). - Dpkg::Changelog::Parse: Remove $ sigil from option names in POD. - Dpkg: Say class instead of object when appropriate. - Dpkg::Changelog: Clarify that these classes inherit from some other base class, which will contain the missing documentation. Prompted by intrigeri <intrigeri@debian.org>. - man: Clarify deb-changelog(5) format. Closes: #946780 - man: Clarify debian/source/include-binaries format in dpkg-source(1). Prompted by Felix Lechner <felix.lechner@lease-up.com>. - man, doc: Clarify that the postinst "triggered" argument gets the trigger-name(s) as a space-separated list in the second argument. Prompted by Michael Biebl <biebl@debian.org>. - dselect: Update the multicd README file. - doc, man: Mark T and I package instances to avoid misreadings. * Code internals: - Dpkg::Source::Package: Refactor original tarball handling. - perl: Use File::Copy instead of spawning mv/cp commands. - Dpkg::OpenPGP: Refactor signature verification into a new function. - Dpkg::OpenPGP: Make it possible to verify detached signatures. - Dpkg::OpenPGP: Add support for importing an OpenPGP key into a keyring. - Dpkg::BuildFlags: Remove unused hash keys. - libdpkg: Use the variable instead of a type as sizeof() argument. - libdpkg: Use the totalwritten variable for a consistency check. - dselect: Reduce scope of variable, to avoid it being unused in a branch. - dpkg-deb: Fold two adjacent if conditionals into a single one. - dpkg: Initialize flagdeppossi in check_conflict(). - libdpkg: Add new C locale switch over support. - libdpkg: Add new versiondescribe_c() to force a C locale. - dselect: Make baselist::draw_column_*() col arguments const. - libdpkg: Use p instead of name in dpkg_arch_name_is_illegal(). - dpkg: Remove redudant condition for sourcefile in updateavailable(). - dpkg, update-alternatives: Make variables static. - libdpkg: Add missing symbols to the version map. - libdpkg: Fix fiemap memory layout usage that confuses gcc 10 to emit a warning. - libdpkg: Only use varbuf_printf() in pkg_format_show() when necessary. This should speed up «dpkg-query --show» formatting. - libdpkg: Fix package format string to be a string literal. This suppresses a gcc warning. - dpkg: Fix short lived memory leak in --force-help handling. - dpkg-split: Fix short lived file descriptor leak in --auto. - start-stop-daemon: Explicitly ignore uninmportant function return values. - start-stop-daemon: Fix memory leak on multiple --chuid arguments. - start-stop-daemon: Close the notification socket in the child. - libdpkg: Fix memory leaks in zlib and bz2 decompression functions. - libdpkg: Add new dir_make_path() and dir_make_path_parent() functions. - libdpkg: Add new atomic file flag to create the base path when missing. - libdpkg: Fix modstatdb_rw enum comments. - libdpkg, dpkg-query: Optimize db-fsys:Files virtual variable loading. We load either the entire db-fsys for all packages, possibly optimized per platform (such as by using fiemap), or the specific ones for the requested packages. This also fixes a problematic cast removing the constness of a variable. - Dpkg::Dist::Files: Document the two filename pattern formats. - update-alternatives: Remove redundant condition in argument parser. - update-alternatives: Move error context setup before calling setjmp(), so that cppcheck stops being confused. - test: Reformat 200_Dpkg_Shlibs.cpp for coding style conformance. - dpkg: Make it possible for the compiler to check printf() format string arguments on dependency printer. - dselect: Reorder branches in packagelist::deselect_one_of so that they are not duplicated. - dselect: Use nullptr instead of NULL. - dselect: Use static_cast<> instead of old-style type qualifier cast. - dselect: Do not use unnecessary old-style casts. - dselect: Fix variable types to avoid needing old-style casts. - libcompat: Disarm libselinux setexecfilecon() declaration for libcompat-test. - libdpkg: Define new VARBUF_OBJECT macro. - libdpkg: Add new ATOMIC_FILE_NORMAL enum value to avoid a cast in C++. - libdpkg: Use a new DPKG_NULL macro that works in C and C++. - libdpkg: Use a new DPKG_STATIC_CAST macro that works in C and C++. - libdpkg: Move printing of errno into dpkg_error_set(). - libdpkg: Use a varbuf to store the problem messages per parsedb context. - libdpkg: Fix Doxygen comments. * Build system: - Bump minimal Perl version to 5.24.1. - Add a serial versioning to the m4 files. - Install m4 files into system aclocal directory. - Bump minimal gettext version to 0.19.8, to get the m4 files that can cross-build for musl-based systems. - Enable more compiler warnings. - Update Doxygen configuration from version 1.8.16. * Packaging: - Remove obsolete Breaks satisfied since oldstable. - Replace custom rule for 'configure' with call to dh_autoreconf. Thanks to Dan Streetman <ddstreet@canonical.com>. Closes: #939516 - dselect: Remove methods state files on purge. Spotted by Sven Joachim <svenjoac@gmx.de>. - Switch to debhelper compatibility level 12. - Switch from debian/compat to debhelper-commpat in Build-Depends. - Bump Standards-Version to 4.5.0 (no changes required). * Test suite: - Remove perlcritic Documentation::RequirePodLinksIncludeText suppression. - Clarify cppcheck va_list_usedBeforeStarted suppression. - Skip build directories from codespell check. - Update stopwords for codespell 1.16.0. - Suppress new bogus cppcheck 1.90 false positives. - libdpkg: Remove redundant assignment in t-ehandle unit test. - Skip backup files from codespell check. - Ignore python-3.8 runtime warnings in codespell. . [ Updated programs translations ] * German (Sven Joachim). * Portuguese (Miguel Figueiredo). Closes: #935695 * Simplified Chinese (Mo Zhou). Closes: #942195, #945776 . [ Updated dselect translations ] * German (Sven Joachim). . [ Updated scripts translations ] * German (Helge Kreutzmann). . [ Updated man pages translations ] * German (Helge Kreutzmann). Closes: #931135 Checksums-Sha1: a35ba1ce1b348ea72d16a1bc2042ea6a48118b15 2109 dpkg_1.20.0.dsc eda82352ba507bc7d7749b44579983ace07064c8 4738556 dpkg_1.20.0.tar.xz cce7aaa4ad2cf52f4fd7bb9002df4248c8709919 7430 dpkg_1.20.0_amd64.buildinfo Checksums-Sha256: 817d80805303aa1c5a02c37cb1a40df25d6ced25a0f03868719b894278f41650 2109 dpkg_1.20.0.dsc b633cc2b0e030efb61e11029d8a3fb1123f719864c9992da2e52b471c96d0900 4738556 dpkg_1.20.0.tar.xz 4d36ff4093ae61b0b6b48ce6ea25cfaa69570e46862a8d524e3401f022e6e686 7430 dpkg_1.20.0_amd64.buildinfo Files: 9faeaa49be1e6aeaaafe320941f7c206 2109 admin required dpkg_1.20.0.dsc f88f077236a3ff3decae3b25c989893d 4738556 admin required dpkg_1.20.0.tar.xz a550e984256025a8b49a3cd96f2e4fb1 7430 admin required dpkg_1.20.0_amd64.buildinfo -----BEGIN PGP SIGNATURE----- iQIzBAEBCgAdFiEETz509DYFDBD1aWV0uXK/PqSuV6MFAl5kXjgACgkQuXK/PqSu V6Pv8g//bodJZKKKWUSbTBAS0itG1TpKa/BsY1zV1itAQvY+ZBhxO9M/4kZJ482B j17+Am/7XPV47zmxTEAwMbkHWA3vIPJCN+I1wps1rdv4wc5Lcom2ZPTsZTyacvkX RMUX92/3CF3/yKcFte6z85cTSQcUCdldPBB1qlTJBB9ecZrLNYkLHX69uTkbGUew ku2sjokVX1407EmcLta1WfZuYmKyNGWtvFiWgkxZYr84oWqHouLXmrBPjFgdO5kx MpOw8ez0pHbrqmAr+xt5WR/o2vyquiYE9LGTpxa2F0lShRiGruOxmg57DZNsYlzh KNEEWYhnpUDahFxrw3ZlgGKXjVOeGxozmH36Qb+VRGvz1rYxdNOINLjDTsvEk9rw btUGdwUa2SceZeVGSmRK4BxMot1gtcY91yXuAzejtywlswxxKPcl3FaXhFtXRl9h 35HVjWotCOGdLQDO/MG+KIbq0D6STE4x6Prgek5PEDhohiIVSim1SO9mcMxgUcY3 ohamUcN++A5f1RqwMTdGNrFo1PJYOUiSmbiautjsz2LPVd4OXnWRMA/rmX6zoPGE Y9WsSIs0W/GsKEjjQTpS3ueuE/fAfpUfab8DhaRB0g0oWWcuady4l+rgUc978iSa SCHtjYu+kPajCWMcpSLeHqNlSUru6Bi5cwBmzm38DQdzieLKgnw= =oxT9 -----END PGP SIGNATURE-----