Debian GNU/Linux

lp:debian/experimental/dpkg

Created by James Westby on 2009-12-05 and last modified on 2012-02-05
Get this branch:
bzr branch lp:debian/experimental/dpkg
Members of Ubuntu branches can upload to this branch. Log in for directions.

Related bugs

Related blueprints

Branch information

Owner:
Ubuntu branches
Status:
Development

Recent revisions

12. By Guillem Jover <email address hidden> on 2012-02-05

This is a WIP release, command line interfaces *will* change.

[ Guillem Jover ]
* Move <config.h> and <compat.h> to the top of trigdeferred.l to properly
  use the configured features and compat code.
* Honour --disable-nls when the system lacks obstack support, by updating
  the obstack compat module from gnulib.
* Link the libdpkg unit tests with libcompat and libintl, so that systems
  needing them will compile correctly.
* Check for the presence of the strnlen declaration and correctly provide
  the compat one in case the systems lacks it.
* Do not assume existence of paths on the build system in the test suite.
* Do not fail to link dselect on MacOS X when using --disable-nls.
* Remove versioned coreutils Pre-Depends from dpkg due to the ancient
  md5sum transition. Reported by Bill Allombert <email address hidden>.
  Closes: #643746
* Change dpkg-architecture to only compute the requested variables. This:
  - Fixes the bootstrapping problem, as the dpkg build system only needs
    the host architecture, for which dpkg itself is not required.
  - Reduces the amount of work performed, including loading and parsing
    unnecessary table files or calling either of gcc or dpkg programs.
* Improve error message in dpkg-gencontrol and dpkg-gensymbols when
  debian/control does not have any package stanza. Closes: #642473
  Based on a patch by Kyle Willmon <email address hidden>.
* Add Pre-Depends on tar >= 1.23 (satisfied in stable) to dpkg due to it
  using the ‘--warning=no-timestamp’ option. Closes: #642802
* Do not segfault on GNU/Linux when dpkg cannot retrieve the block size
  for the filesystem containing the info database. LP: #872734
* Fix two memory leaks per tar entry in the tar extractor used on unpack.
* Mark dpkg and dselect as Multi-Arch foreign.
  Reported by Steve Langasek <email address hidden>.
* Mark dpkg-dev and libdpkg-perl as Multi-Arch foreign. Closes: #648217
  Thanks to Colin Watson <email address hidden>.
* Add new deb-origin.5 man page. Closes: #608884
  Thanks to Matt Kraai <email address hidden>.
* Return correct status on start-stop-daemon --status when using --pidfile.
* Treat dpkg-deb compression level independently for each backend. This
  has the effect of changing the current behaviour for level 0 on all
  compressors except gzip.
* Add new dpkg-deb -S option to specify the compression strategy. The only
  currently supported value is “extreme” for xz. Closes: #647915
* Stop using brace expansion to install man pages by using dh_installman
  instead of dh_install, the former does not abort on empty glob expansion.
* Do not use absolute paths for programs in perl and shell code.
* Add missing ‘*’ in asprintf() and vasprintf() compat declarations.
* Add support for virtual output binary:Summary and db:Status-Abbrev fields.
  Closes: #192619, #427945
* Add support for virtual output source:Package and source:Version fields.
  Closes: #653575
* Use a different temporary file per process on libcompat's vsnprintf()
  function to avoid race conditions from children after fork(3).
  Reported by Daniel Ruoso <email address hidden>. Closes: #655411
* Fix start-stop-daemon --exec and --name options on FreeBSD, NetBSD and
  OpenBSD by swapping the process matching implementations.
* Fix start-stop-daemon --name option on GNU/Hurd to match the process name.
* Document in more detail the implications of start-stop-daemon matching
  options. Closes: #367608
* Improve and clarify dpkg-shlibdeps superfluous linking warning messages.
  Based on a patch by Peter Eisentraut <email address hidden>. Closes: #656496

[ Raphaël Hertzog ]
* Update Dpkg::Shlibs to look into multiarch paths when cross-building
  too. Closes: #595144
* Rewrite architecture.mk with explicit loops instead of duplicating many
  similar lines. Based on a patch by Thorsten Glaser <email address hidden>.
* Modify dpkg-gencontrol and dpkg-distaddfile to grab a write lock
  on debian/control before updating debian/files to avoid simultaneous
  updates. Closes: #642608
  Add libfile-fcntllock-perl to dpkg-dev's Depends since we use this module
  to handle the locking.
* Update dpkg-gensymbols(1) to clarify that -e accepts shell patterns
  expansions and not regular expressions. And let dpkg-gensymbols output a
  warning when a pattern doesn't match any file. Closes: #649248
* Add new option "-a <arch>" to dpkg-checkbuilddeps to check build
  dependencies for another architecture. This is really basic for now since
  it assumes all build dependencies must be satisfied on the listed
  architecture. Closes: #648180 Thanks to Colin Watson for the patch.
* Error out if a dpkg database .list file is not a regular file. LP: #369898
* Fix dpkg-mergechangelogs to not error out on invalid versions.
  Closes: #651993
* Fix dpkg-source --commit on "3.0 (quilt)" when an explicit patch file
  is given with a relative filename. Closes: #652414
* Further clarify in dpkg-source(1) the conditions under which it's possible
  to pass an explicit patch file to dpkg-source --commit.
* Add new --query-features command to dpkg-buildflags. Thanks to Kees Cook
  for the patch. Closes: #651481
* Fix description of Multi-Arch in deb-control(5). Closes: #654453
  Thanks to Jakub Wilk for spotting the mistake.
* Drop misleading spaces in deb-symbols(5) in the format description.
* Clean up dpkg-architecture(1) dropping useless information and
  adding a reference to /usr/share/dpkg/architecture.mk.
* Update dpkg-buildpackage to use the "build-arch" (for -B) and
  "build-indep" (for -A) targets unless "make -qn" says that they do not
  exist. Closes: #229357

[ Jonathan Nieder ]
* Bump po4a version in Build-Depends to 0.41, since earlier versions do
  not handle --srcdir correctly. Closes: #644370

[ Helge Kreutzmann ]
* Fix a typo in man/dpkg-deb.1.

[ Updated dpkg translations ]
* German (Sven Joachim).
* Italian (Milo Casagrande). Closes: #627832, #657849
* Swedish (Peter Krefting).
* French (Christian Perrier)

[ Updated scripts translations ]
* German (Helge Kreutzmann).
* Spanish (Omar Campagne). Closes: #636238
* Swedish (Peter Krefting).

[ Updated man page translations ]
* German (Helge Kreutzmann), including typo fix in dpkg-genchanges
  Closes: #646496, sub optimal translation of package states LP: #368783
  and an fix by Chris Leick
* Japanese (TAKAHASHI Motonobu).
* Spanish (Omar Campagne). Closes: #643969
* Swedish (Peter Krefting).
* Minor errors corrected in French (thanks to David Prévot)
* Fix translation of -B and -A options of dpkg-buildpackage.
  Thanks to Vincent Danjean. Closes: #654626

[ Updated dselect translations ]
* Dutch (Jeroen Schot). Closes: #651813

11. By Guillem Jover <email address hidden> on 2012-01-31

Revert unapproved NMU.

10. By Cyril Brulebois <email address hidden> on 2012-01-31

[ Cyril Brulebois ]
* Non-maintainer upload. Let's push multiarch to the masses.

[ Guillem Jover ]
* Move <config.h> and <compat.h> to the top of trigdeferred.l to properly
  use the configured features and compat code.
* Honour --disable-nls when the system lacks obstack support, by updating
  the obstack compat module from gnulib.
* Link the libdpkg unit tests with libcompat and libintl, so that systems
  needing them will compile correctly.
* Check for the presence of the strnlen declaration and correctly provide
  the compat one in case the systems lacks it.
* Do not assume existence of paths on the build system in the test suite.
* Do not fail to link dselect on MacOS X when using --disable-nls.
* Remove versioned coreutils Pre-Depends from dpkg due to the ancient
  md5sum transition. Reported by Bill Allombert <email address hidden>.
  Closes: #643746
* Change dpkg-architecture to only compute the requested variables. This:
  - Fixes the bootstrapping problem, as the dpkg build system only needs
    the host architecture, for which dpkg itself is not required.
  - Reduces the amount of work performed, including loading and parsing
    unnecessary table files or calling either of gcc or dpkg programs.
* Improve error message in dpkg-gencontrol and dpkg-gensymbols when
  debian/control does not have any package stanza. Closes: #642473
  Based on a patch by Kyle Willmon <email address hidden>.
* Add Pre-Depends on tar >= 1.23 (satisfied in stable) to dpkg due to it
  using the ‘--warning=no-timestamp’ option. Closes: #642802
* Do not segfault on GNU/Linux when dpkg cannot retrieve the block size
  for the filesystem containing the info database. LP: #872734
* Fix two memory leaks per tar entry in the tar extractor used on unpack.
* Mark dpkg and dselect as Multi-Arch foreign.
  Reported by Steve Langasek <email address hidden>.
* Mark dpkg-dev and libdpkg-perl as Multi-Arch foreign. Closes: #648217
  Thanks to Colin Watson <email address hidden>.
* Add new deb-origin.5 man page. Closes: #608884
  Thanks to Matt Kraai <email address hidden>.
* Return correct status on start-stop-daemon --status when using --pidfile.
* Treat dpkg-deb compression level independently for each backend. This
  has the effect of changing the current behaviour for level 0 on all
  compressors except gzip.
* Add new dpkg-deb -S option to specify the compression strategy. The only
  currently supported value is “extreme” for xz. Closes: #647915
* Stop using brace expansion to install man pages by using dh_installman
  instead of dh_install, the former does not abort on empty glob expansion.
* Do not use absolute paths for programs in perl and shell code.
* Add missing ‘*’ in asprintf() and vasprintf() compat declarations.
* Add support for virtual output binary:Summary and db:Status-Abbrev fields.
  Closes: #192619, #427945
* Add support for virtual output source:Package and source:Version fields.
  Closes: #653575
* Use a different temporary file per process on libcompat's vsnprintf()
  function to avoid race conditions from children after fork(3).
  Reported by Daniel Ruoso <email address hidden>. Closes: #655411
* Fix start-stop-daemon --exec and --name options on FreeBSD, NetBSD and
  OpenBSD by swapping the process matching implementations.
* Fix start-stop-daemon --name option on GNU/Hurd to match the process name.
* Document in more detail the implications of start-stop-daemon matching
  options. Closes: #367608
* Improve and clarify dpkg-shlibdeps superfluous linking warning messages.
  Based on a patch by Peter Eisentraut <email address hidden>. Closes: #656496

[ Raphaël Hertzog ]
* Update Dpkg::Shlibs to look into multiarch paths when cross-building
  too. Closes: #595144
* Rewrite architecture.mk with explicit loops instead of duplicating many
  similar lines. Based on a patch by Thorsten Glaser <email address hidden>.
* Modify dpkg-gencontrol and dpkg-distaddfile to grab a write lock
  on debian/control before updating debian/files to avoid simultaneous
  updates. Closes: #642608
  Add libfile-fcntllock-perl to dpkg-dev's Depends since we use this module
  to handle the locking.
* Update dpkg-gensymbols(1) to clarify that -e accepts shell patterns
  expansions and not regular expressions. And let dpkg-gensymbols output a
  warning when a pattern doesn't match any file. Closes: #649248
* Add new option "-a <arch>" to dpkg-checkbuilddeps to check build
  dependencies for another architecture. This is really basic for now since
  it assumes all build dependencies must be satisfied on the listed
  architecture. Closes: #648180 Thanks to Colin Watson for the patch.
* Error out if a dpkg database .list file is not a regular file. LP: #369898
* Fix dpkg-mergechangelogs to not error out on invalid versions.
  Closes: #651993
* Fix dpkg-source --commit on "3.0 (quilt)" when an explicit patch file
  is given with a relative filename. Closes: #652414
* Further clarify in dpkg-source(1) the conditions under which it's possible
  to pass an explicit patch file to dpkg-source --commit.
* Add new --query-features command to dpkg-buildflags. Thanks to Kees Cook
  for the patch. Closes: #651481
* Fix description of Multi-Arch in deb-control(5). Closes: #654453
  Thanks to Jakub Wilk for spotting the mistake.
* Drop misleading spaces in deb-symbols(5) in the format description.
* Clean up dpkg-architecture(1) dropping useless information and
  adding a reference to /usr/share/dpkg/architecture.mk.

[ Jonathan Nieder ]
* Bump po4a version in Build-Depends to 0.41, since earlier versions do
  not handle --srcdir correctly. Closes: #644370

[ Helge Kreutzmann ]
* Fix a typo in man/dpkg-deb.1.

[ Updated dpkg translations ]
* German (Sven Joachim).
* Italian (Milo Casagrande). Closes: #627832
* Swedish (Peter Krefting).
* French (Christian Perrier)

[ Updated scripts translations ]
* German (Helge Kreutzmann).
* Spanish (Omar Campagne). Closes: #636238
* Swedish (Peter Krefting).

[ Updated man page translations ]
* German (Helge Kreutzmann), including typo fix in dpkg-genchanges
  Closes: #646496, sub optimal translation of package states LP: #368783
  and an fix by Chris Leick
* Japanese (TAKAHASHI Motonobu).
* Spanish (Omar Campagne). Closes: #643969
* Swedish (Peter Krefting).
* Minor errors corrected in French (thanks to David Prévot)
* Fix translation of -B and -A options of dpkg-buildpackage.
  Thanks to Vincent Danjean. Closes: #654626

[ Updated dselect translations ]
* Dutch (Jeroen Schot). Closes: #651813

9. By Guillem Jover <email address hidden> on 2010-03-24

[ Guillem Jover ]
* Fix two memory leaks introduced in 1.15.6.
* Always use C99 variadic macros, as the build requires them anyway, we
  avoid exposing the configure variable HAVE_C99 on installed headers.
* Use __attribute__ keyword depending on compiler support, we avoid
  exposing the configure variable HAVE_C_ATTRIBUTE on installed headers.
* Do not allow a --retry schedule in start-stop-daemon where forever is
  the last item, as it needs something to repeat over. Closes: #570938
* Show dselect dependency/conflicts resolution screen again, by switching
  the code to use STL's min() and max() instead of preprocessor macros, to
  avoid multiple evaluation of arguments. Regression introduced in 1.15.6.
  Based on a patch by Robert Luberda <email address hidden>. Closes: #574816
* Defer the fsync and rename for normal files in tar extraction so that
  it's done in one pass afterwards, to avoid massive I/O degradation due to
  the serialization from each write + fsync. This restores extraction times
  to numbers closer to the ones before the fsync patch introduced in 1.15.6.

[ Raphaël Hertzog ]
* Accept source packages without "Format" field for compatibility with very
  old source packages. Thanks to Colin Watson for the report and the patch.
  Closes: #574097

[ Updated dpkg translations ]
* Swedish (Peter Krefting).

[ Updated scripts translations ]
* Swedish (Peter Krefting).

8. By Guillem Jover <email address hidden> on 2010-03-12

[ Raphaël Hertzog ]
* debian/control: Add the accent on my first name.
* Perl API cleanup:
  - rename Dpkg::Deps dump() methods into output([$fh]), overload string
    representation ("$dep") to provide the result of $dep->output()
  - prefix public functions in Dpkg::Deps with deps_ and export them
    by default
  - rename Dpkg::Source::Compressor in Dpkg::Compression::Process
  - rename Dpkg::Source::CompressedFile in Dpkg::Compression::FileHandle
    and completely redesign its API
  - update Dpkg::Compression's API to use compression_* functions
    instead of granting direct access to variables, integrate
    there management of default compression
  - introduce Dpkg::Interface::Storable and update many modules
    to make use of it
  - update Dpkg::BuildOptions to provide an object-oriented interface
  - update Dpkg::Checksums to provide an object-oriented interface
* Drop debian-maintainers from Suggests since it's obsolete, the
  corresponding keyring is in debian-keyring.
* Merge support of symbol patterns in dpkg-gensymbols. Thanks to
  Modestas Vainius for his work (see further for more details).
* Accept filename with spaces and colon in the output of objdump.
  Required so that dpkg-shlibdeps support such files properly.
  Thanks to Raphaël Geissert for the patch. Closes: #565712
* When unpacking a "3.0 (quilt)" source package, tell quilt where
  patches are (to be) stored. Requires quilt >= 0.48-5 to work.
  Closes: #557619
* Fix update-alternatives to not try to reinstall an unknown alternative
  when the link group is broken, instead switch to the best choice in
  automatic mode. Closes: #566406
* Don't return duplicate bug numbers in Launchpad-Bugs-Fixed:.
  Thanks to Brian Murray <email address hidden> for the report
  and the patch. Closes: #569618
* Add $VERSION numbers to all perl modules. Closes: #465256
  1.00 and higher means that the API should be stable
* While parsing diff's output, accept any sentence that contains the word
  differ (as specified by POSIX) to identify that binary files could not be
  compared. Closes: #570008
* dpkg-gencontrol does no longer accept arch-specific dependencies in
  arch: all packages. Closes: #560071
* dpkg-gencontrol no longer warns if a substitution variable provided by -V
  is not used (the warning is meant to catch unused substitutions coming
  from the file, those are package specific with debhelper). Closes: #557133
* dpkg-gencontrol now indicates which package is concerned by the substvars
  warning that it displays. Closes: #566837
* dpkg-buildpackage now supports options --source-option=<opt> and
  --changes-option=<opt> to forward arbitrary options to dpkg-source and
  dpkg-genchanges respectively. Closes: #566230
* The -T option of dpkg-{source,gencontrol,genchanges} can now be used
  multiple times to read substitution variables from multiple files.
  Closes: #363323
* dpkg-source now supports an option --create-empty-orig in formats
  "2.0" and "3.0 (quilt)" to auto-create the main original tarball when
  there are supplementary tarballs. This makes it easier to bundle
  multiple software together. Closes: #554488
* dpkg-source supports long option names --diff-ignore and --tar-ignore for
  -i and -I. A new option --extend-diff-ignore is introduced. Those options
  can thus now be used in debian/source/options.
* Generate manual pages for perl modules.
* Introduce the libdpkg-perl package and clarify its status in README.api.
* Update Standards-Version to 3.8.4 (no changes needed).
* Drop unused lintian override for arch-dep-package-has-big-usr-share on
  dselect.
* The rewritten Dpkg::Checksums deals properly with filenames with
  spaces. Closes: #572030
* dpkg-source does no longer fallback to other source formats if the
  requested one is not usable. Closes: #557459
* Modify dpkg-source to error out when it would apply patches containing
  insecure paths (with "/../") and also error out when it would apply a
  patch through a symlink. Those checks are required as patch will happily
  modify files outside of the target directory and unpacking a source package
  should not be able to have any side-effect outside of the target
  directory. Fixes CVE-2010-0396.
* Also error out when the quilt series contains a path with "/../" as this
  can cause patch to create files outside of the source package due
  to the -B .pc/$path option that it gets.

[ Guillem Jover ]
* Handle argument parsing in dpkg-checkbuilddeps and dpkg-scanpackages
  in a way consistent with the rest of the tools.
* Recognize --help in addition to -h in dpkg-checkbuilddeps.
* Add a --version option to dpkg-checkbuilddeps.
* Improve and mark more messages in writedb() to make translators lifes
  easier. Closes: #408525
* Improve update-alternatives --display output to use two leading spaces
  for current link and slave information. Use single quotes for both “best”
  and the alternative it's pointing to. Closes: #549167
* Refer to “half configured” instead of “failed config” in «dpkg-query -l»
  header and dselect package status printing for consistency.
* Make “dpkg-statoverride --quiet” actually do something, and quiesce
  most of the inoquous warning messages. Closes: #403211
* Make “dpkg-statoverride --update --add” fail if it cannot update the
  mode and owner of the file. This would fail later on when dpkg itself
  applies the overrides, so better to signal this earlier.
* Add sparc64 to cputable. Thanks to Aurelien Jarno <email address hidden>.
  Closes: #560010
* Do not allow diverting a file to itself, which makes the file to get
  removed. Closes: #312206
* Make the check for duplicate fields in a stanza in libdpkg actually work,
  which now makes it fatal, as was intended originally. This should not
  cause problems for anything using dpkg-dev to build packages as those
  are already fatal on that case.
* Add new deb-split(5) man page.
* Fix misspellings of “explicitly” all over the place.
* Normalize ar member names when reading (removing trailing spaces and
  slash), this allows deb-split packages be created with GNU ar.
* Validate compression level on dpkg-deb argument parsing.
* Fix error handling, clean up and refactor compression code.
  Thanks to Jonathan Nieder for several of the patches.
* Do not print unambiguous epoch on dpkg file overwrite error.
* Rename Dpkg::IPC::fork_and_exec() to Dpkg::IPC::spawn().
* Change dpkg-dev to Depend on perl instead of perl5 and perl-modules.
* Fix small memory leaks related to scandir() in dpkg-deb and libdpkg.
* Fix dpkg-query and dpkg-trigger to actually print a version on --version.
* Always spawn a new shell on conffile prompt, instead of supporting
  self backgrounding, remove DPKG_NO_TSTP environment variable support.
  Closes: #38334
* Set DPKG_SHELL_REASON, DPKG_CONFFILE_OLD and DPKG_CONFFILE_NEW environment
  variables when spawning a shell for conffile examination. Closes: #60329
  Thanks to Daniel Martin <email address hidden> for the idea.
* Add support for disabling update-alternatives at configure time using
  --withouth-update-alternatives.
* Add support for disabling install-info at configure time using
  --withouth-install-info.
* Update debian/copyright.
* Use Debian instead of ‘Debian GNU/Linux’ when referring to the
  distribution.
* On dpkg --no-act with --install, --unpack or --record-avail, and
  dpkg-deb --info or --field use mkdtemp() to create a temporary directory
  instead of insecure tempnam() or tmpnam() functions.
* Remove --license and --licence options from tools.
* Securely remove newly installed files when rolling-back a failed unpack.
* Change default lzma compression level from 9 to 6.
  Thanks to Jonathan Nieder for the initial patch.
* Add support for xz compressed data.tar member of binary packages. Add
  xz-utils to dpkg's Pre-Depends. Closes: #542160
  Thanks to Jonathan Nieder for the initial patch.
* Use xz command to handle lzma compressed files in dpkg and dpkg-dev.
  This removes the lzma package from both dpkg and dpkg-dev dependencies.
* Do not set PKG_CONFIG_LIBDIR in dpkg-buildpackage when cross-building.
  The proper solution to this is to let the build system choose the
  appropriate pkg-config binary for the build or host system in the same
  way pkg.m4 is handling it now. Closes: #551118
* Dynamically link against all external libraries. This includes libbz2
  and zlib for dpkg-deb and and libselinux for dpkg on GNU/Linux.
* Mark the libdpkg.a API as volatile and require any possible users to set
  LIBDPKG_VOLATILE_API to acknowledge that fact.
* Add a new libdpkg-dev package with the headers and the static library,
  although its API should be considered volatile.
* Reorganize the doc contents that goes into each package:
  - README.multicd only in dselect.
  - README.api only in development packages, dpkg-dev and libdpkg-dev.
  - triggers.txt only in dpkg-dev.
* Move source.lintian-overrides to debian/source/lintian-overrides.
* Switch SE Linux support to explicitly set path context. This fixes the
  mislabeling of files under <admindir> on conffile extraction or on unpack
  errors, due to improper default context restoration. Closes: #498438
* Use FIEMAP when available (on Linux based systems) to sort the .list
  files loading order. With a cold cache it improves up to a 70%.
  Thanks to Morten Hustveit <email address hidden>.
* When FIEMAP is not available use posix_fadvise() to start preloading the
  .list files before loading them. With a cold cache it improves up to 40%.
  Thanks to Stefan Fritsch <email address hidden>. Closes: #557560
* Call fsync(2) after writting files on disk, to get the atomicity
  guarantees when doing rename(2). Based on a patch by
  Jean-Baptiste Lallement <email address hidden>.
  Closes: #430958
* Call fsync(2) on database directories after creating, renaming or
  unlinking files, to guarantee the new file entry is correctly listed
  in the directory. Base on a patch by
  Jean-Baptiste Lallement <email address hidden>.
* Document in the man page the effects of setting TMPDIR for dpkg and
  dpkg-deb, HOME for dselect and dpkg and PAGER for dpkg. Closes: #572836
* Document the exit codes for dpkg-query. Closes: #571798
* Document “dpkg-query -l” abbreviated state information in the man page.
  Based on a patch by Marc-Jano Knopp <email address hidden>.
  Closes: #383869
* Honour LINGUAS environment variable when installing translated man pages.
* Allow disabling at configure time Unicode ncurses support for dselect.
  Based on a patch by Yuri Vasilevski <email address hidden>.

[ Modestas Vainius ]
* Implement symbol patterns (Closes: #563752). From now on, it is possible to
  match multiple symbols with a single entry in the symbol file template.
  While the concept is not new (wildcards also match multiple symbols),
  patterns cover much more ground and are a lot more flexible. Together with
  the framework, 3 basic pattern types are supported:
  - c++ - matching C++ symbols by their demangled name (as emitted by
    c++filt);
  - symver - matching by symbol version. It replaces the wildcards feature
    which is still supported for backwards compatibility but is reimplemented
    on top of the new framework;
  - regex - matching symbol names with perl regular expression.
  Basic patterns may be combined where it makes sense.
* As a positive side effect of the new symbol patterns implementation,
  patterns are now treated like normal symbols whenever possible, e.g. a
  pattern is MISSING if it does not match anything. As a result,
  dpkg-gensymbols is now able to detect NEW/MISSING symbols when patterns are
  present in the symbol file (Closes: #541464). Please note, however, that
  there is no way to detect symbol changes in the pattern match sets.
* Add source version to the dpkg-gensymbols diff label, reformat it according
  to the rules of dpkg-name.
* Add -a<arch> option to dpkg-gensymbols.
* Add -q option to dpkg-gensymbols. -c0 will never fail but still generate a
  diff. Use -c0 -q to keep dpkg-gensymbols completely quiet as before
  (Closes: #568228).

[ Jonathan Nieder ]
* Fix a file handle leak in “dpkg-deb --info”. Thanks to Raphael Geissert
  for the report and patch.

[ Helge Kreutzmann ]
* Add dpkg-gensymbols.1 to the translatable man page set.

[ Updated dpkg translations ]
* Catalan (Guillem Jover).
* French (Christian PERRIER).
* German (Sven Joachim).
* Italian 'Milo Casagrande). Closes: #567531
* Simplified Chinese (Aron Xua). Closes: #558794
* Slovak (Ivan Masár). Closes: #559269
* Swedish (Peter Krefting).

[ Updated dselect translations ]
* Catalan (Guillem Jover).
* German (Sven Joachim).
* Spanish (Javier Fernández-Sanguino). Closes: #572861
* Swedish (Peter Krefting).

[ Updated man page translations ]
* French (Christian Perrier): correcting inconsistencies for the translation
  of "original" here and there. Thanks to Julien Valroff for pointing this.
* German (Helge Kreutzmann).
* Swedish (Peter Krefting).

[ Updated scripts translations ]
* Catalan (Guillem Jover).
* French (Christian PERRIER).
* German (Helge Kreutzmann).
* Swedish (Peter Krefting).

7. By Guillem Jover <email address hidden> on 2009-03-02

[ Guillem Jover ]
* Do not suggest manually changing the alternative symlinks on
  update-alternative's verbose mode. Closes: #412487
* Refactor subprocess signal setup.
* Mark and coalesce similar strings for translation.
* Add '.be' to the default dpkg-source -i regex. Closes: #481716
  Based on a patch by Ben Finney.
* Fix link order when using libcompat.a and libintl.a by placing them after
  libdpkg.a. Based on a patch by Martin Koeppe. Closes: #481805
* Remove duplicate program name from dpkg-trigger badusage output.
* Trim trailing slash and slash dot from 'dpkg -S' arguments when those
  are path names, but not on patterns. Closes: #129577
* Fix the support for passing more than one --status-fd option to dpkg.
  Until now only the last one was being used.
* Replace realloc plus error checking usage with m_realloc.
* Add '.hgignore' to the default dpkg-source -i regex and -I pattern.
  Closes: #485365
* Support diverting files when origin and destination are on different file
  systems. Based on a patch by Juergen Kreileder. Closes: #102144, #149961
* Do not silently enable --rename on dpkg-divert --remove. Closes: #160848
* Do not allocate memory when lstat fails during package upgrade.
* Properly lstat the correct file when using --root on package upgrade.
  Thanks to Egmont Koblinger. Closes: #281057
* Print a longer string when a disallowed field value is found when parsing.
* Use $(filter ...) instead of $(findstring ...) to extract space separated
  options from DEB_BUILD_OPTIONS in debian/rules.
* Do not leave new conffile as .dpkg-new when it has been diverted, also
  properly activate the file trigger for the diverted conffile.
  Based on a patch by Timothy G Abbott. Closes: #58735, #476899
* Improve comment on BUGS section in dpkg-deb.1 about lack of authentication
  and checksum support in .deb files. Closes: #492052
* Use a troff special character for the copyright symbol on man pages.
* Mark program names in dpkg-trigger.1 in bold.
* Unmark dselect debug messages for translation.
* Use a the warning function to uniformly print all warning messages.
* Properly use internerr to report about programming bugs.
* Do not log repeated strings when the write call wrote partial data.
* Change dir to / after chroot when using --instdir.
  Thanks to Colin Watson <email address hidden>. Closes: #509578
* Make dpkg log files user readable. Closes: #480556
* Clarify in the start-stop-daemon man page that the signal sent by default
  is TERM not KILL. Closes: #507568
* Warn in dpkg-deb man page that -x will modify the extraction directory
  permissions. Closes: #502496
* Make start-stop-daemon behave the same way whether --chuid gets a user
  name or a uid. Closes: #368000
* Add new option --procsched to start-stop-daemon to be able to set the
  process scheduling policy and priority. Closes: #175740
* Add initial C unit test suite for libdpkg.
* Sanitize --status-fd output by replacing newlines with spaces.
  Closes: #505172
* Remove unneeded cpio dependency from dpkg-dev.
* Add kopensolaris support to ostable and triplettable. Closes: #509312
* Document in deb.5 in detail the currently supported format, ar member
  names, types of tar archives and data.tar members.
* Print correct feature name on «dpkg --assert-*» failures.
* Add progress reporting to dpkg while reading the file list database.
  Based on a patch by Romain Francoise.
* Add new option --iosched to start-stop-daemon to be able to set the
  IO scheduling class and priority. Closes: #443535
  Thanks to Chris Coulson <email address hidden>.
* Add tar format detection support to the internal extractor.
* Add support for ustar long names using the prefix field. Closes: #474092
* Code refactoring and cleanup, some of the major changes include:
  - Use standard interfaces instead of ad-hoc ones.
  - Fix memory leaks.
  - Fix compilation warnings.
  - Constify string members in structures and arguments in functions.
  - Make local functions static.
  - Remove unused functions, macros and variables.
  - Fix and cleanup libcompat broken replacement implementations.
  - Reduction of module interdependencies.
  - Rename function and variable names to make them more clear.
  - Cleanup and split of header files.

[ Raphael Hertzog ]
* Enhance dpkg-shlibdeps's error message when a library can't be found to
  include the ELF format of the desired library. Closes: #474671
* dpkg-gensymbols now refuses empty values for the the -v -P and -e
  parameters.
* Update dpkg(1) to refer to conffile whenever we speak of configuration
  file handled by dpkg. Thus harmonize vocabulary with the policy. Thanks
  to Helge Kreutzmann <email address hidden>. Closes: #381219
* Improve error message stating that dpkg is unable to create a file so that
  it also refers to the real filename instead of the non-diverted name only.
  Thanks to Daniel Hahler for the patch. Closes: #457135
* dpkg-gencontrol can now again read the control file from its standard
  input with "-c-". Closes: #465340
* Add DEB_VENDOR environment variable in the build environment to be able
  to change behaviour dynamically depending on the vendor of the current
  system (or target system when the user overrides DEB_VENDOR by setting
  it himself). Closes: #457371
* dpkg-shlibdeps give less strong warnings for symbols not found in NEEDED
  libraries when the shared library is a non-public directory and is likely
  to be a plugin. Closes: #481165
* Clarify list of packages displayed by dpkg --get-selections and
  dpkg-query -l. Thanks to Jidanni. Closes: #487455
* Document -A option in dpkg-buildpackage(1). Closes: #482834
* Add some warning concerning the available file and the related commands.
  They are mostly obsolete for APT users. Closes: #481185
* Add new option --listpackage to dpkg-divert. Thanks to Timothy G Abbott
  <email address hidden> for the patch. Closes: #485012
* Add new option --require-valid-signature to dpkg-source. Closes: #390282
* In dpkg-query(1) document the origin of the various fields and warn that
  they are not always available. Closes: #488293
* Improve error message in install-info when the file doesn't exist.
  Thanks to Thomas Hood <email address hidden>. Closes: #107098
* Use description of installed package as fallback in dselect.
  Based on a patch from Bruce Sass <email address hidden>. Closes: #21659
* Reduce memory usage of dselect by avoiding usage of a big infopad.
  Thanks to Michel Lespinasse <email address hidden> for the patch.
  Closes: #395140
* Largely improve and update dpkg-buildpackage's manual page.
* Clarify two points in dpkg-source(1). Closes: #490693
* Support RUNPATH exactly like RPATH in dpkg-shlibdeps. Closes: #502258
  Thanks to Javier Serrano Polo <email address hidden>.
* Set Standards-Version to 3.8.0 (no changes needed).
* Drop some unneeded lintian overrides.
* Fix a chmod call in dpkg-source to not fail when POSIXLY_CORRECT is set.
  Closes: #506028
* Optimize dpkg-shlibdeps by caching parsed symbols files and
  objdump objects. Thanks to Modestas Vainius <email address hidden> for the
  patch. Closes: #503954
* Add new framework to hook vendor-specific logic (see
  module Dpkg::Vendor::Default).
* Add Ubuntu vendor object implementing lookup of launchpad bugs in
  changelogs and a safety-check for Maintainer fields of forked packages
  (launched during source build). Closes: #426752, #499924
* Improve behaviour of update-alternatives --config. Thanks to
  Osamu Aoki <email address hidden> for the initial patch. We can know
  select between manual and auto in --config and --all. Closes: #392430
* Fix update-alternatives to not switch to manual mode an alternative
  with a broken symlink (instead let the current action fix it).
  Also ensure that a message is displayed by default when such a switch is
  made. Closes: #141325, #87677
* Fix update-alternatives' logic to rename files. It failed to ignore errors
  in some cases where it wanted to when the source file didn't exist.
  Closes: #99870
  This also makes update-alternatives less noisy when this happens since we
  don't call mv when we know that it's going to fail.
  Closes: #98822
* Properly remove inappropriate slave links in update-alternatives even when
  we switch to manual mode with --set or --config. Closes: #388313
* Modify update-alternatives to always remove the alternative group when the
  last alternative is removed (even in manual mode).
* Ensure that update-alternative --install fix the links if the alternative
  installed is the one currently selected. Closes: #100135
* Let update-alternatives deal with empty files in its administrative
  directory by ignoring them. Closes: #457863
* Add new --target and --as-root options to dpkg-buildpackage to call
  any debian/rules target with the proper build environment.
  Closes: #477916
* Move update-alternatives, dpkg-divert and dpkg-statoverride to /usr/bin
  but keep compatibility symlinks in /usr/sbin for the squeeze release
  until all maintainer scripts are fixed (see
  http://lintian.debian.org/tags/command-with-path-in-maintainer-script.html).
  Closes: #216606
* Use dh_lintian to install lintian overrides. Build-Depends on debhelper
  (>= 6.0.7) for this. Update debhelper compatility level to 6 at the same
  time.
* Drop cleanup-info script.
* Reset umask to 0022 in dpkg-gencontrol and dpkg-gensymbols to ensure that
  files created in the DEBIAN directory have sane permissions.
  Closes: #516481
* Rewrite update-alternatives (so that we can understand it again) and
  implement new features on top of it:
  - the --config output is now sorted. Closes: #437060
  - it now logs information to /var/log/dpkg.log. Closes: #445270
  - it forbids reusing master alternative as slave and vice-versa.
    Closes: #342566
  - it forbids reusing alternative links managed by other alternatives
  - new sanity checks on --install parameters. Closes: #423176
  - install slave link only if the corresponding slave file is available.
    Closes: #143701
  - new option --get-selections to export the configuration of all
    alternatives. It's a simple way to discover the name of all available
    alternatives. Closes: #273406, #392429
  - new option --set-selections to reconfigure a set of alternatives in
    a single command.
* Document in update-alternatives(8) how one can repair all broken
  alternatives with a single command. Closes: #250258, #395556
* Modify dpkg-gensymbols to replace #PACKAGE# on the fly while installing
  symbols files so that package having libraries whose name varies between
  architectures do not need to hardcode the package name. Closes: #517264

[ Pierre Habouzit ]
* Add a --query option to update-alternatives. Closes: #336091, #441904

[ Updated scripts translations ]
* Polish (Wiktor Wandachowicz). Closes: #514106

[ Updated manpages translations ]
* Polish (Wiktor Wandachowicz). Closes: #514106

[ Updated dpkg translations ]
* Portuguese (Miguel Figueiredo).
* Korean (Changwoo Ryu).
* Romanian (Eddy Petrișor)
* Slovak (Ivan Masár). Closes: #514490

6. By Guillem Jover <email address hidden> on 2009-02-03

[ Guillem Jover ]
* Fix typo in package description ('privides' -> 'provides').
  Thanks to Pascal De Vuyst <email address hidden>. Closes: #510755
* Do not lose conffiles while replacing them from another package on the
  same install run. Closes: #513857
  As a side effect this fixes the following symptoms:
  - Do not do unneeded conffile prompts when it wasn't locally changed.
  - Do not ensure (and thus do not output debug information) that the
   .dpkg-new and .dpkg-tmp directories for an existing directory do not
    exist. Closes: #80416

[ Raphael Hertzog ]
* dpkg-deb now always produces GNU tarballs inside .deb and ignores
  TAR_OPTIONS. Closes: #513863

[ Updated dpkg translations ]
* Basque (Piarres Beobide). Closes: #506092, #509851
* Simplified Chinese (Deng Xiyue). Closes: #506177
* Traditional Chinese (Tetralet). Closes: #513312

[ Updated dselect translations ]
* Basque (Piarres Beobide). Closes: #509852
* Norwegian Bokmål (Hans F. Nordhaug).
* Portuguese (Miguel Figueiredo). Closes: #509904

[ Updated scripts translations ]
* Add missing space in French translation.
  Thanks to Cyril "Oeil de lynx" Brulebois.

5. By Guillem Jover <email address hidden> on 2008-12-29

[ Raphael Hertzog ]
* Fix parsing of objdump output (by dpkg-shlibdeps) in a special case where
  the symbol name is separated only with a single space. Closes: #506139
* Fix dpkg-shlibdeps behaviour when Build-Depends-Package is used in the
  symbols file. It was merging all dependency templates into the generated
  dependency instead of simply modifying the minimal version. Thanks to
  Modestas Vainius <email address hidden>. Closes: #507346
* Fix dpkg-source to correctly extract a source package even when called
  from a non-writable directory when a target directory has been specified
  on the command line. Closes: #507217, #507219

[ Guillem Jover ]
* Do not allow installing packages with non-obsolete conffiles owned by
  other packages without a proper Replaces field. Closes: #508392

[ Updated dselect translations ]
* Galician (Marce Villarino). Closes: #509887

[ Updated dpkg translations ]
* Galician (Marce Villarino). Closes: #509150
* Vietnamese (Clytie Siddall). Closes: #509424

[ Updated scripts translations ]
* Improve German translation.

4. By Guillem Jover <email address hidden> on 2008-11-18

[ Raphael Hertzog ]
* Blacklist "__gnu_local_gp" symbol for dpkg-gensymbols. Closes: #500188
  Thanks to Thiemo Seufer <email address hidden>.
* Important bugfix in dpkg-gensymbols for people using includes in symbol
  files: the current object didn't flow back from the included file to
  the including file.
* Fix Dpkg::Version comparison code. Closes: #504135

[ Guillem Jover ]
* Untangle fatal abort condition from the “too many errors” one in the
  archives and packages processing loop. Closes: #367226
* Abort on unrecoverable fatal errors instead of continuing execution, as
  the recovery code assumed the execution would not be reaching it again
  and some times bogus update files were created either with incompletely
  written content or with '#padding' lines. Closes: #497041, #499070

[ Updated dpkg translations ]
* Brazilian Portuguese (Felipe Augusto van de Wiel).
* Catalan (Jordi Mallach).
* Czech (Miroslav Kure). Closes: #505910
* French (Christian Perrier)
* German (Sven Joachim).
* Greek (Emmanuel Galatoulas). Closes: #498585
* Japanese (Kenshi Muto).
* Korean (Changwoo Ryu). Closes: #505777
* Norwegian Bokmål (Hans F. Nordhaug).
* Polish (Wiktor Wandachowicz).
* Portuguese (Miguel Figueiredo). Closes: #505869
* Russian (Yuri Kozlov). Closes: #499028, #505735
* Romanian (Eddy Petrișor).
* Slovak (Ivan Masár). Closes: #506024
* Spanish (Javier Fernandez-Sanguino). Closes: #505836

[ Updated scripts translations ]
* Fix typo in Russian. Closes: #499736
* Fix wrong translation in French. Closes: #504123
* French (Christian Perrier).

[ Updated manpages translations ]
* German (Helge Kreutzmann).

3. By Raphaël Hertzog on 2008-09-05

[ Raphael Hertzog ]
* The last "small fix" actually broke conversion of source packages to
  "3.0 (quilt)" format when they have local changes and no pre-existing
  quilt series file. Now always provide a valid name in QUILT_SERIES.
  Closes: #496920
* Fix permissions of the automatically generated pacth in "2.0" and "3.0
  (quilt)" format. They were improperly set to 0600 due to tempfile()
  and were not reset to a sane value. Closes: #496925
* Fix dpkg-gensymbols to not scan (real) directories accessed through a
  symlink contained in the build tree as they may well not be part of
  the package (with absolute symlinks). It was already skipping symlinks
  (since 1.14.16.6) for similar reasons.

[ Updated dpkg translations ]
* Basque (Piarres Beobide). Closes: #496753
* Brazilian Portuguese (Felipe Augusto van de Wiel).
* Galician (Jacobo Tarrio).
* Norwegian Bokmal (Hans Fredrik Nordhaug). Closes: #497309
* Swedish (Daniel Nylander and Peter Krefting).
* Vietnamese (Clytie Siddall). Closes: #497893

[ Updated manpages translations ]
* Swedish (Peter Krefting).

[ Updated scripts translations ]
* Swedish (Peter Krefting).

Branch metadata

Branch format:
Branch format 7
Repository format:
Bazaar repository format 2a (needs bzr 1.16 or later)
Stacked on:
lp:debian/squeeze/dpkg
This branch contains Public information 
Everyone can see this information.

Subscribers