Skip to content

Debian Changelog piuparts (0.43)

2012

piuparts (0.43) unstable; urgency=low

   [ Andreas Beckmann ]
   * piuparts.py:
     - Add to self.ignored_patterns: /run/.*
     - Unset DISPLAY variable before running commands in the chroot.
     - Read possibly remaining buffered output after a command terminated.
     - Run apt-cache policy on the packages to be installed.
     - Simplify keeping the reference chroot state: move tree info, selections
       and diversions into a dict, can be extended easily.
     - Fix --*end-meta documentation and actually enable these options.
     - Cleanup options and settings.
   * piupartslib/packagesdb.py:
     - Restrict circular-dependency state to packages on the circle.
   * piuparts-master.py:
   * piuparts-slave.py:
     - Fix chdir in/out of the slave dir to work with relative paths.
   * piuparts-report.py:
     - Reorder the list of known problem analyses and add a few new ones.
     - Correctly split + strip comma-separated lists.
   * piuparts-analyze.py:
     - Also consider bugs that 'affects' a package.
     - Treat bugs without 'found' version as older than anything.
   * Makefile: Support version number substitution in piuparts-*.py, too.
   * README.txt: Document piuparts.conf settings used by piatti.git scripts.
 
   [ Holger Levsen ]
   * piuparts.1.txt: correctly reverse the description of --save-end-meta
     and --end-meta.
   * piuparts-report.py:
     - add support for more static pages and add bug_howto.tpl, explaining how
       to file meaningful bugs piuparts-analyse understands. This page also
       links to the templates used for bug filing.
   * piuparts-slave.py: make status message more useful by including the
     section.

 -- Holger Levsen <holger@debian.org>  Sun, 22 Jan 2012 13:03:59 +0100

2011

piuparts (0.42) unstable; urgency=low

   [ Holger Levsen ]
   * piuparts.py:
     - add to self.ignored_files: /etc/blkid.tab (Closes: #638831)
     - add to self.ignored_patterns: /var/lib/apt/lists/.*
     - apply patch by Gregor Herrmann to fix --minimize. (Closes: #648423)
   * Remove Debian.NEWS entry about source in git. (Closes: #640121)
   * piuparts.py, piuparts-report.py, ChangeLog: Expand tabs to spaces.
   * Remove whitespaces from whitespace-only lines.
   * piuparts-report:
     - create maintainer subdirs if they don't exist.
     - detect tests being terminated due to excessive output.
   * Add git to Build-Depends-Indep: as git describe is used to generate
     part of the version string for development builds.
   * Add debian/.gitignore
 
   [ Mika Pflüger ]
   * piuparts-analyze.py:
     - Rewrite to use python-debianbts to analyze if bugs are filed already.
     - The BTS only tracks source versions, so remove binNMU-part from
       package versions when comparing with versions from the BTS.
     - Reduce noise in the output by only printing one action/advise per
       package.
     - Fix extraction of package versions from bug reports. Thanks to
       Andreas Beckmann for catching and solving the error.
   * debian/control: Add python-apt and python-debianbts to piuparts depends.
 
   [ Scott Schaefer ]
   * debian/copyright: Make it compliant with DEP-5.
   * piuparts-slave.py:
     - Replace deprecated os.popen2 with subprocess.Popen. (Closes: #640646)
     - Add some more logging.
     - Kill children (hard-coded value, 45 minutes) to ensure test doesn't
       run "forever" (Closes: #640647, #387428)
   * piuparty.py:
     - Kill leftover processes (via SIGTERM, then if that fails, via SIGKILL).
       (Closes: #522918)
     - Test for incorrect diversion handling:  (Closes: #588313)
       a) Existing diversions removed/modified, and/or
       b) Installed diversions not removed by purge.
   * piupartslib/packagesdb.py: Modify several functions in PackagesDB class
     to use python 'set' type, instead of a list.  This permitted replacing
     inefficient combination of unique() function and random.shuffle() with
     python set.pop() method.  Since python prohibits storing non-hashable
     object in a set, minor modifications to piuparts-report and to
     piuparts-master required. (Closes: #640648)
 
   [ Andreas Beckmann ]
   * *.py: Add vim modeline.
   * piuparts.py:
     - Add unittests for misbehaving symlinks.
     - Fix resolving absolute symlinks of intermediate directory components,
       i.e. /var/run -> /run while checking /etc/motd -> /var/run/motd.
       Solves about 30000 false positives of
       'Broken symlinks: /etc/motd -> /var/run/motd'.  (Closes: #648784)
     - When running commands in the chroot, redirect stdin from /dev/null.
     - Stop using Popen.communicate() as it may run out of memory.
     - Terminate commands producing more than 2 MB of output. (Closes: #649335)
     - Create /etc/dpkg/dpkg.cfg.d/ if missing inside the chroot (e.g. on
       lenny).  (Closes: #647752)
     - Remove logrotate and its dependencies only once.
     - Only run 'apt-get update' after updating the sources.list.
     - Only run 'apt-get clean' before creating tarballs or saving meta data.
     - Do the same checks for running processes and broken symlinks in all
       tests.  (Closes: #648708)
     - Create piupart's apt config in the chroot as /etc/apt.conf.d/piuparts
       instead of /etc/apt.conf in order to allow overriding the settings from
       custom scripts by just dropping new config bits in e.g.
       /etc/apt/apt.conf.d/piuparts-foobar.
     - Integrate diversion checks with Chroot.check_result().
     - Use 'apt-get remove' to remove all packages at once with proper
       dependency ordering.  (Closes: #648162)
     - Purge all packages at once instead of doing it one-by-one.
     - Make restore_selections() reinstall missing packages.  (Closes: #648707)
     - Set more environment variables to let custom scripts know where and
       when they are being run: PIUPARTS_TEST, PIUPARTS_PHASE,
       PIUPARTS_DISTRIBUTION{,_PREV,_NEXT}.  See the README for details.
       (Closes: #589498)
     - Add missing post_install_* custom scripts to install_packages_by_name().
       (Closes: #628077)
     - Remove pre_upgrade_* custom scripts, they can be replaced with
       pre_install_* scripts that check for PIUPARTS_PHASE=upgrade.
     - Add pre_test_* custom scripts.  These are run exactly once at the
       beginning of each test (after recording the initial chroot state).
     - Allow multiple --scriptsdir options, the contents will be merged.
     - Exclude /tmp/scripts when creating a tarball.
     - Use --one-file-system when creating a tarball to exclude bindmounts etc.
     - Restore base system from temp_tgz instead of running debootstrap again.
       (Closes: #648193)
     - Do not fail upgrade/distupgrade tests for a set of packages where not
       all packages exist in the start distribution.  This happens e.g. when
       testing .changes files and packages were split/added. Only install the
       old packages that actually exist according to 'apt-cache show'.
     - Add --extra-old-packages option to intall additional old packages that
       are not in the set of new packages to be tested.  Useful for testing
       upgrades with Conflicts/Replaces relationships, e.g. in package renames
       or merges.
     - Use consistent variable names for package lists.  (Closes: #648177)
     - Compute the changes in restore_selections().
     - Check for settings.scriptsdir inside run_scripts().
     - Consistently use chroot.relative() to build filenames inside the chroot.
   * piupartslib/packagesdb.py:
     - Handle 'unknown-preferred-alternative' state correctly.
     - Add 'does-not-exist' state for dependency resolution to distinguish this
       from 'unknown' state so that the latter only indicates 'unresolvable' or
       'not yet resolved'.
     - Handle virtual packages separately from real packages.
     - Use get_package_state() internally which 'resolves' (purely) virtual
       packages by default (can be disabled).
   * piuparts-master.py:
     - Add a 'status' command that reports package counts for all states.
   * piuparts-slave.py:
     - Fix triggering tarball recreation.
     - Check tarball age regularily.
     - Log tarball creation in *.tgz.log.
     - Request and print package counts from master.
     - Reload section config every time a section is being run.
     - Add precedence attribute to allow prioritizing different sections and to
       suspend processing of low priority ones while there are packages waiting
       in more important sections.
   * piuparts-report.py:
     - state-*.html: Sort package lists by name, display state of all
       alternative dependencies and packages providing a virtual dependency.
     - source/?/*.html: Sort binary packages by name.
     - maintainer/?/*.html: Sort source packages by name.
     - Update list of error states to be highlighted.
     - Archive logs of packages that were removed from the distribution.
     - Speedup generating maintainer summaries.
   * Makefile: Use 'git describe' to get an exact stamp for development
     versions.
 
   [ Dave Steele ]
   * piuparts-slave.py: make Section.run() report the number of packages
     processed and use this to decide whether a slave should sleep.
     (Closes: #649967)
 
   [ Stefano Rivera ]
   * piuparts.py:
     - Properly install and remove logrotate.  (Closes: #638832)
     - Use eatmydata by default, add option --no-eatmydata. (This was discussed
       in #633033.)

 -- Holger Levsen <holger@debian.org>  Fri, 23 Dec 2011 10:51:28 +0100

piuparts (0.41) unstable; urgency=low

   * piupartslib/packagesdb.py: Apply patch by Scott Schaefer to also consider
     alternative depends: the algorithm used to select the "best" alternative
     is:
      1) Prefer first alternative in state "essential-required"
      2) If no "essential-required" alternatives, prefer first alternative
         in state "successfully-tested"
      3) Otherwise, prefer first alternative in state
         "waiting-to-be-tested" IF NO REMAINING alternatives are in one of the
         "unknown/fail" states
     For this two new states have been introduced:
      a) "unknown-preferred-alternative": equivalent of "unknown", this defers
         calculation of this package's state, since one or more of its
         alternative depends are "unknown" (or
         "unknown-preferred-alternative"), and no alternative is either
         "essential-required" or "successfully-tested".  The alternatives will
         be re-tested on subsequest pass.
      b) "no-dependency-from-alternatives-exists": if none of the alternatives
         can be found in the archive.
     (Closes: #526045)
   * piuparts-report.py:
     - correct a typo from the patch for #523950.
     - make_stats_graph: draw the two new states as well.
     - point to source code in git instead of svn.
   * piuparts.py:
     - use proxy settings either from apt configuration or http_proxy
       environment variable, the latter overwriting the former (if present)
       - Thanks to Scott Schaefer for the patch. (Closes: #632046)
     - new option "--no-install-purge-test" to only do upgrade tests
       - Thanks to Andreas Beckmann for the patch (Closes: #588482)
     - run dpkg with --force-unsafe-io by default and introduce new option
       "--dpkg-noforce-unsafe-io" to disable this feature. (Closes: #633033)
       Thanks to Scott once more!
     - new option: "--fail-on-broken-symlinks". Remove option "--warn-symlinks"
       as this is the default now.
   * piuparts-slave:
     - check if chroot-tgz is older than max-tgz-age (defaulting to 30 days)
       and recreate it, if it is. Keep backup and put in back in place when
       debootstrapping a new chroot-tgz fails. Retry after min-tgz-retry-delay
       seconds. Thanks to Scott Schaefer for the patch. (Closes: #632924)
     - document new configuration options max-tgz-age and min-tgz-retry-delay
       in README.txt.
     - fix bug in piuparts-slave which prevented running a single section by
       including section name as command-line argument - thanks again to Scott
       and see 632924 too.
   * debian/control:
     - require python >= 2.6.6-3~, get rid of python-support build-depends.
     - add X-Python-Version: pseudo-header
   * debian/rules: use dh_python2 instead of python-support to build the
     package
   * Makefile: build for python 2.6 and 2.7 instead of 2.5 and 2.6.
   * Source code is now stored in git.
     http://anonscm.debian.org/gitweb/?p=piuparts/piuparts.git
     git clone git+ssh://git.debian.org/git/piuparts/piuparts.git
     Thanks to Thomas Koch for setting those up and keeping history!
   * The configuration and scripts used on piatti.debian.org have also been
     moved to git, the URLs are the same, just s#piuparts#piatti#.
   * Add entry about git to NEWS.
   * Update Vcs-*-Headers in control to reflect move to git.

 -- Holger Levsen <holger@debian.org>  Wed, 24 Aug 2011 13:47:07 +0200

piuparts (0.40) unstable; urgency=low

   * piuparts.py:
     - make "natty" the default Ubuntu distribution.
     - add to self.ignored_files:
       - /var/log/bootstrap.log
   * debian/control: depend on ${python:Depends} instead of just python. Thanks
     to Jakub Wilk. (Closes: #614617)
   * *.py: do not use Python built-in function names as variable name. Thanks
     to Carl Chenet for a first patch and Scott Schaefer for the applied one.
     (Closes: #523950)
   * Bump Standards-Version to 3.9.2, no changes necessary.
   * debian/rules: add empty build-arch and build-indep to appease lintian.
   * Makefile: drop workaround for #559305 in lenny.

 -- Holger Levsen <holger@debian.org>  Sat, 25 Jun 2011 21:20:31 +0000

piuparts (0.39) unstable; urgency=low

   [ Holger Levsen ]
   * The vintage of 2010 release!
   * piuparts-report.py:
      - report packages which failed
        - due to broken maintainer scripts,
        - due to output from cron after removal,
        - due to not enough force being,
        - due to a problem with pre-depends,
        - due to files having been modified after purge,
        - due to files having disappeared after purge and
        - due to problems configuring a database.
      - only report about (un)owned files and directories and symlink issues in
        sid - that's hardcoded as it's not practical to track them anywhere else
        anyway. And at least for broken symlinks this will also stay like this
        for a long time.
      - visual improvements in the output.
      - ignore udebs and binaries from other archs too.
      - graph is generated using all the available data points.
   * piupartslib/packagesdb.py:
     - automatically break circular dependencies when there are only circular
       dependencies left, using a configurable list of circular depdencies in
       piuparts.conf (Closes: #526046)
         The list of circular depends is taken from a script written by Robert
       Lemmen available at http://debian.semistable.com/debgraph.out.html -
       obviously it would be better to merge this into piuparts directly.
         Note that the dependency resovler is still buggy, the state
       waiting-for-dependency-to-be-tested still contains some packages
       with failed depends (due to them being dependent on packages with
       circular depends). This bug has no effect other than that (so the state
       waiting-to-be-tested is calculated correctly). This bug is also no
       regression.
     - get rid of the longtime unused states "fixed" and "fix-not-yet-tested"
       (also in piuparts-master and piuparts-report).
     - forget reservations of untestable packages.
   * piuparts-slave.py:
     - fix crash when going into sleep when idle.
     - add support for only doing upgrade tests (without the basic test in the
       upgrade target distro).
     - honor mirror configuration option also for upgrade-tests.
     - also do upgrade tests if the version of a package being tested (the one
       in the upgraded distro) is not available in the distro being upgraded
       from. (This is a very short test, but a successfully one.)
     - make configuration setting "distro" to not default to any distro.
   * piuparts.py:
     - new option: --log-level to specify the verbosity of piuparts
       output. Thanks to Fabrice Coutadeur for the patch! (Closes: #567190)
     - new option: --warn-on-leftovers-after-purge to not fail if a package
       leaves files behind after purge. (Closes: #566599)
     - add to self.ignored_files:
       - /var/lib/apt/lists/partial/.delete-me-later
       - /var/log/alternatives.log (Closes: #591966)
       - /var/log/apt/history.log (Closes: #594964)
       - /usr/share/fonts/X11/misc/fonts.alias (Closes: #576321)
     - add to self.ignored_patterns:
       - /etc/init.d/.depend.*
       - /var/mail(/.*)? - this used to be just /var/mail/.*
       - /var/lib//update-rc.d(/.*)? (Closes: #605127)
     - create temporary DEBIAN directory for the piuparts-depends-dummy package
       with 0755 perms regardless of the umask of the calling shell.
       (Closes: #573904)
     - fix --do-not-verify-signatures option (Closes: #574936) - thanks to
       Cleto Martin Angelina for the patch.
     - make Chroot.diff_meta_data() special case and ignore files matching
       (/etc/rc.\.d/)[SK][0-9]{2}(.*)$ so that piuparts doesn't complain about
       initscripts renamed by insserv. Thanks to by Andreas Beckmann for the
       patch! (Closes: #586793)
     - remove logrotate and depended packages after the test. (Closes: #602409)
       This is a fix for the incomplete patch for #566597. Again, this is a
       hardcoded list. :-(
     - new custom script: pre_remove_ (Closes: #539146)
     - set environment variable PIUPARTS_OBJECTS in custom scripts to a space
       separated list of packages / changes files being tested.
     - do not call apt-get with --no-remove when installing packages.
       (Closes: #603453)
     - apply patch by Andres Mejia to fix parsing of the --force-confdef option
       and also to configure apt to use that option. Thanks, Andres.
       (Closes: #605475)
     - don't panic if package is not known by apt-get, this probably just means
       a package not yet in the archive is being tested. (Closes: #566672)
       Thanks to Cleto Martin Angelina for the patch!
     - fix parsing of the options --end-meta and --save-end-meta.
     - supply help texts for --end-meta and --save-end-meta options, also add
       comments to install_and_upgrade_between_distros() to make the code
       easier to understand and hopefully improve in future. (Closes: #560050).
     - add logging to install_and_upgrade_between_distros() to point people to
       read the functions source code if they wonder why the log (for distro
       upgrade tests) looks like it looks.
   * piuparts.1.txt:
     - update the pointer to custom-scripts.txt to point to README.txt, as
       those two files have been merged. Thanks to Gregor Hermann for
       spotting this. (Closes: #574504)
     - indicate that it's possible to check several packages or .changes files
       at once.
     - update several options descritpions.
   * README.txt
     - better documentation of custom scripts.
     - reformat to achieve consistent width.
   * Add ${misc:Depends} to Depends in debian/control.
   * Remove versioned dependencies on debootstrap as the version available
     in Etch is sufficient. Drop build-depends on dpkg-dev as it's in
     build-essential.
   * Build-depend on debhelper>=7 and use dh_prep instead of dh_clean -k, bump
     compat level to 7.
   * Bump Standards-Version to 3.9.1, no changes necessary.
   * Remove Ian Jackson from uploaders - thanks for your work, Ian!
   * Makefile: support python 2.5 and 2.6 instead of 2.4 and 2.5, adjust
     debian/control accordingly.
   * debian/preinst: update code snipplet rm_conffile() from
     http://wiki.debian.org/DpkgConffileHandling
 
   [ Evgeni Golov ]
   * piuparts.py:
     - Check for remaining logrotate files which produce output after the
       package was removed. (Closes: #566597)
 
   [ John Wright ]
   * Use debian module when available, else debian_bundle module.
     (Closes: #586443)
   * Use built-in set type, available since python-2.4.

 -- Holger Levsen <holger@debian.org>  Tue, 04 Jan 2011 14:12:30 +0100

2009

piuparts (0.38) unstable; urgency=low

   * piuparts.py:
     - Add support for using LVM snapshots. Thanks to
       Patrick Schoenfeld for the patch. (Closes: #559449)
     - Add support for warning on broken symlinks. Thanks to Carl Chenet for
       the patch. (Closes: #440151)
     - Make --help usuable without needing to be run as root. (Closes: #547379)
     - --skip-minimize is now the default. This is because debootstrap is called
       with --variant=minbase instead of --resolv-deps now and because if a
       base.tgz or an lvm snapshot is specified, piuparts should not touch it.
       (Closes: #539142, #559048)
       Introduce a new option, --minimize, to minimize a chroot with debfoster.
       (This is the old default behaviour. In future versions the --minimize
       option might be removed again.)
     - Add two new options: --keyring to specify the keyring to use with
       debootstrap (defaults to /usr/share/keyrings/debian-archive-keyring.gpg)
       and --do-not-verify-signatures to not use --keyring with debootstrap.
       (Closes: #545907)
       In the chroots, APT::Get::AllowUnauthenticated is set accordingly in
       /etc/apt/apt.conf.
     - Add new option, --pedantic-purge-test, to tell piuparts to be pedantic
       when checking if a purged package leaves files behind. If this option is
       not set, files left in /tmp are ignored. (Closes: #528266)
     - Add new option, --dpkg-force-confdef, to make dpkg use --force-confdev,
       which lets dpkg always choose the default action when a modified conffile
       is found. This options will make piuparts ignore errors it was designed
       to report and therefore should only be used to hide problems in
       dependent packages. (Closes: #466118)
     - Add another type of custom-scripts, post_setup_, which are executed after
       the chroot was setup. (Closes: #466043)
     - Create policy-rc.d in 2nd chroot when using -b. (Closes: #466049)
       Thanks again to Patrick Schoenfeld for his help.
   * piuparts-report: report broken symlinks.
   * piuparts-slave:
     - gracefully deal with upgrade-test-distros and upgrade-test-chroot-tgz
       not being set in the configuration. Thanks to Carl Chenet and Patrick
       Schoenfeld for the patch. (Closes: #519192)
     - new default value for idle-sleep, 300 instead of 10 seconds. Also the
       slave will now only sleep if there is nothing to do for any section.
   * Makefile: workaround 559305 by calling a2x twice.
   * Update debian/NEWS.
   * Replace all references to sarge and etch with ones to lenny and squeeze.

 -- Holger Levsen <holger@debian.org>  Thu, 17 Dec 2009 14:10:27 +0000

piuparts (0.37) unstable; urgency=low

   * piuparts-report.py: report packages with update-rc.d warnings and those
     failing due to insserv errors. (Closes: #546540)
   * Fix typo in NEWS.Debian, thanks to Justin Rye for spotting it.
     (Closes: #547439)
   * piuparts.py:
     - added to self.ignored_patterns:
       - /var/cache/man(/.*)? (Closes: #550953)
       - /var/lib/insserv/run.*.log
       - /var/lib/mercurial-server(/.*)?
     - removed from self.ignored_files:
       - /var/cache/man/index.db
   * fix typo in -i option in manpage (Closes: #555202), thanks to James Vega
     for spotting it.
   * Make "lucid" the default Ubuntu distribution (Closes: #559047), thanks to
     Krzysztof Klimonda.
   * fix FTBFS by adding "-r /etc/asciidoc" to the a2x call in Makefile, thanks
     to Michael Vogt. (Closes: #559299)

 -- Holger Levsen <holger@debian.org>  Thu, 03 Dec 2009 13:25:43 +0000

piuparts (0.36) unstable; urgency=low

   [ Holger Levsen ]
   * The "For me. For you. For everybody." release.
   * Break backwards compatibility of the configuration files for master-slave-
     mode. Merge those three into one: /etc/piuparts/piuparts/piuparts.conf.
     Introduce a new global section in piuparts.conf which is shared among the
     other sections there.
   * piuparts.py:
     - add check whether scriptsdir exits, to fail gracefully if not.
     - copy scriptsdir to chroot also when doing upgrade tests.
     - added to self.ignored_files:
       - /etc/shadow and /etc/shadow- (just as /etc/passwd* and /etc/group*)
       - /var/games (see #524461)
       - /etc/apt/trusted.gpg and /etc/apt/trusted.gpg~ (just as
         /etc/apt/trustdb.gpg and other backup files)
     - added to self.ignored_patterns:
       -  /var/lib/dpkg/triggers/*
       -  /var/lib/ldap(/.*)? (see #527898)
       -  /var/backups/.*
     - modified self.ignored_patters:
       - ignore everything in /tmp, not just in /tmp/scripts (see #528266)
     - configure apt in chroots to not install recommends and suggests.
     - add support for scanning for packages in changes files, thanks to Andres
       Mejia for the patch. (Closes: #352940)
     - change some methods from using 'args' to 'package_list'. This more
       accurately represents what is being passed into these methods now.
     - add an optional parameter to panic() method to specify what exit status
       to use. Also thanks to Andres.
     - add advice how to read the logfile to the top of the logfiles produced.
     - add "FAIL: " to logging output for seven more failure types, so that it
       becomes easier to group failure causes.
     - allow piuparts to be stopped with control-C. Thanks to Carl Chenet for
       the patch. (Closes: #523958)
     - fail gracefully if piuparts is run as non-root user. Thanks to Ignace
       Mouzannar for the patch. (Closes: #538273)
   * piupartslib/packagesdb.py:
     - change the test whether a package is testable to check whether the
       package is of priority "required", and not whether it's "Essential".
     - rename status "essential-required-important" to "essential-required"
       as important packages can be tested like all the others.
     - handle binNMUs where the Source header in the Packages file includes the
       Version and the Source package name in one line.
     - fix get_packages_in_state() to only return unique packages and not also
       the provided ones as exact copies.
   * Install scripts for master-slave mode without .py extension.
   * piuparts-master.py: remove code to write statistics, that is done only in
     piuparts-report.py now.
   * piuparts-slave.py:
     - support looping trough multiple sections in piuparts.conf via new config
       value "sections". Thanks to Frank Ploss for writing this patch with me
       and helping me understand the code much better!
     - allow the user to stop the slave with control-C.
     - call piuparts with --mirror when mirror is set in piuparts.conf.
   * Re-add piuparts-reports.py which got removed/lost between 0.14 and 0.20
     without changelog entry.
   * piuparts-report.py:
     - support sections in configuration file.
     - support looping trough multiple sections in piuparts.conf via new config
       value "sections".
     - generate counts.txt (per section) with raw numbers of packages per state,
       include these stats in the debug output (so it gets included in the mails
       send by cron.)
     - introduce new setting "sources-url" for piuparts.conf.
     - generate sources.txt (per section) with a summary status per source
       package (for the PTS to display a source packages piuparts state)
     - generate html status pages for all source packages (to link from the PTS)
       with links to state explaination and available logfiles, handle udebs.
     - provide links to logfiles in statistics page.
     - provide links to source packages pages from state pages and back, as well
       as links to the dependencies state.
     - draw graphs of package states over time (if pypthon-rpy and gs are
       installed) - thanks to Thomas Viehmann and Dirk Eddelbüttel for
       inspiration and support.
     - create maintainer centric pages for each email address found in
       Maintainers or Uploaders.
     - improve layout, generate navigation for all pages.
     - use icons to provide a quick overview of a source packages status.
       (Thanks to tango.freedesktop.org for the icons!)
     - include index.tpl (if it exists) from output-directory into the
       generated index page, so one can add news to the index page without
       editing piuparts-report.py.
     - generate pages for known issues, which are detected by bash helper
       script, run by cron on piuparts.debian.org and available from
       svn/piuparts/piatti/home/piupartsm/bin/detect_well_known_errors
   * Always use alphabetic time zone abbreviation in timestamps.
   * Makefile:
     - add "~$date" to versionstring if building an unreleased version, thus
       adding dpkg-dev to build-depends.
     - split install target into install-doc, install-conf and install, to aid
       development and deployment from trunk.
   * debian/control:
     - depend on python (>>2.4), make dependency to python-debian unversioned.
     - add build-dependencies on debhelper, asciidoc and xmlto.
     - dependency gs has been renamed to ghostcript
     - remove build-dependencies on docbook2x and docbook-xml.
     - suggest python-rpy and gs to improve piuparts-report output.
     - set Homepage: to http://piuparts.debian.org
     - remove Lucas Nussbaum, Ana Guerrero, John Wright and Bill Allombert from
       uploaders - thanks for your work!
     - Replace Ians email address with one that doesn't give an errorcode when
       sending mail to it
     - bump Standards-Version to 3.8.3, no changes necessary.
   * Rewrite debian/rules from scratch using debhelper.
   * Merge README, how-to-use-piuparts.txt and custom-scripts.txt into
     README.txt, convert it to asciidoc and build pdf and html versions of it.
   * Restructure and update README.txt to reflect the configuration changes in
     master-slave mode.
   * Add debian/NEWS file.
   * Rewrite piuparts manpage in asciidoc.
   * Build and install html version of the piuparts manpage.
   * Update debian/copyright to reflect that piuparts is licenced under GPL2+.
   * Update FSF address in all files referencing the GPL.
   * Remove unused file piuparts.css.
 
   [ Lars Wirzenius ]
   * Removed Lars Wirzenius as uploader.

 -- Holger Levsen <holger@debian.org>  Tue, 08 Sep 2009 14:35:42 +0200

piuparts (0.35) unstable; urgency=medium

   * Fix recursive failure which occured when selinux-utils was installed but
     not enabled. Thanks to Peter De Wachter for the patch. (Closes: #519017)
   * Output path to temp directory if -k is used. (Closes: #466112)

 -- Holger Levsen <holger@debian.org>  Tue, 10 Mar 2009 00:43:22 +0100

piuparts (0.34) unstable; urgency=low

   [ Holger Levsen ]
   * Mount /selinux on systems where selinux is enabled. Thanks to Filippo
     Giunchedi for the patch! (CLoses: 507171)
   * Remove wrong advice in debian/copyright which irritated lintian.
 
   [ Filippo Giunchedi ]
   * Check for any output when running cron files in addition to exit code

 -- Holger Levsen <holger@debian.org>  Fri, 27 Feb 2009 12:34:31 +0100

2008

piuparts (0.33) unstable; urgency=low

   * Added --bindmount option, thanks to Aníbal Monsalve Salaza for the patch.
     (Closes: #496186)

 -- Holger Levsen <holger@debian.org>  Sat, 08 Nov 2008 17:07:22 +0000

piuparts (0.32) unstable; urgency=low

   [ John Wright ]
   * Fix a typo in how-to-use-piuparts.txt.
 
   [ Holger Levsen ]
   * Replace all references to sarge and etch with etch and lenny.
     (Closes: #466111)
   * Update README to reflect that piuparts runs fine in etch.
   * Rename the post_upgrade custom script to post_distupgrade and introduce
     pre_distupgrade.
   * Bumped standards version, no changes needed.

 -- Holger Levsen <holger@debian.org>  Fri, 17 Oct 2008 10:28:14 +0000

piuparts (0.31) unstable; urgency=low

   [ Lars Wirzenius ]
   * piuparts.docbook: Added a few words of description of the tarball
     that -b expects. (Closes: 466048)
 
   [ Lucas Nussbaum ]
   * Added a --debfoster-options option, to allow the user to override
     debfoster's default options and test with more packages installed
     in the chroot. (Closes: #458922)
   * Mention piuparts -s in in how-to-use-piuparts.txt.
   * Finally fixes the check for broken symlinks. Thanks go to
     Tobias Grimm for the patch. (Closes: #468157, 478587)
   * Ignore /var/cache/ldconfig/aux-cache.
   * Added myself to uploaders.
   * Keep /proc mounted. Switch to calling tar directly in
     pack_into_tgz(). Minor refactorings. Thanks go to Tobias Grimm
     for the patch. (Closes: #478577)
   * Move piuparts to priority: extra, since it depends on debootstrap which
     is extra. (Closes: #477634)
 
   [ Luk Claes ]
   * Added -w to lsof call to suppress warnings. (Closes: #466102).
 
   [ Holger Levsen ]
   * Add a copyright statement to debian/copyright.
   * Add support for post_upgrade custom script.
   * Minor fixes in how-to-use-piuparts.txt.
   * piuparts.docbook: Correct the path to dtd, it's
     /usr/share/xml/docbook/schema/dtd/4.1.2/docbookx.dtd and add a
     build-dependency for docbook-xml

 -- Holger Levsen <holger@debian.org>  Sun, 11 May 2008 22:17:52 +0200

piuparts (0.30) unstable; urgency=low

   * piuparts.py:
     - Implement Chroot.create_temp_tgz_file() (since it's used in the VirtServ
       subclass)
     - Fix a typo -- chroot.create_temp_tgz() was being called instead of
       chroot.create_temp_tgz_file() (Closes: #465416)

 -- John Wright <jsw@debian.org>  Thu, 14 Feb 2008 20:32:35 -0700

piuparts (0.29) unstable; urgency=low

   [ Ana Beatriz Guerrero Lopez ]
   * Updated uploaders, remove Amaya and Alastair.
 
   [ Lars Wirzenius ]
   * piuparts.py: Call "apt-get update" before calling Chroot.minimize, so
     that we can find the debfoster package on Ubuntu.
   * debian/control: Fixed "Uploaders:" to have my preferred e-mail address
     (liw@iki.fi) instead of my Debian one.
   * piuparts.py: Added -D option to set Debian flavor, plus two sets of
     default settings depending on the flavor, one for Debian itself, and
     another for Ubuntu. The settings choose default mirror and distribution
     set (sid vs gutsy). This will allow an Ubuntu version of the package
     to set defaults at package building time.
   * piuparts.py: Report target of broken symlink correctly, instead of
     saying "True".
   * piuparts.py: Use lsb-release to guess the Debian flavor.
   * debian/control: Added dependency on lsb-release.
   * piuparts-master.py: Make the master write summary of total pass/fail
     packages, plus status per binary package. This is for having the
     Debian PTS and the Ubuntu developer weather report show summaries
     of piuparts results.
   * integraged changes from Ubuntu by Ian Jackson to support autopkgtest.
   * wrapped long lines in debian/control.
 
   [ Holger Levsen ]
   * Added myself to uploaders.
   * Added Homepage: header to debian/control and changed the homepage to be
     http://wiki.debian.org/piuparts.
   * Use Vcs-* headers in debian/control instead of XS-Vcs-*.
   * Bumped policy version to 3.7.3.
   * Updated download location in debian/copyright.
 
   [ John Wright ]
   * Change the --warn-on-others implementation to create a dummy metapackage
     with the needed dependencies and install it in the chroot, rather than
     using "apt-get install package package-".  The previous implementation
     had issues when the package was already installed (and especially if the
     package had essential packages in its reverse dependencies).  This has
     the pleasant side-effect of making --warn-on-others work both with and
     without --apt. (Closes: #458929)
   * Fix a bug in check_for_broken_symlinks(): the targets for the broken
     symlinks (used for logging) were being read from files on the real root
     filesystem, rather than in the chroot.

 -- Lars Wirzenius <liw@iki.fi>  Fri, 01 Feb 2008 16:38:38 +0200

2007

piuparts (0.28) unstable; urgency=low

   * Fix an UnboundLocalError introduced in the --warn-on-others fix that would
     occur if run without the --apt option. (Closes: #443641)

 -- John Wright <jsw@debian.org>  Sat, 22 Sep 2007 23:32:17 -0600

piuparts (0.27) unstable; urgency=low

   * Add support for testing multiple distributions and architectures to
     piuparts-master.py and piuparts-slave.py.  Please see the README file,
     piuparts-master.conf.sample and piuparts-slave.conf.sample for more
     details. (Closes: #349365)
   * Fix the --warn-on-others option.  Now, dependencies are installed before
     the packages we wish to test, and an inventory is taken then, so that we
     can know which errors were caused by the packages explicitly specified on
     the command-line.  Currently, this requires --apt, and doesn't work quite
     as advertised if there are circular dependencies with the packages you wish
     to test (see the man page for more details). (Closes: #440310)
   * debian/control:
     - Update my email address in the Uploaders field

 -- John Wright <jsw@debian.org>  Sun, 16 Sep 2007 22:28:14 -0600

piuparts (0.26) unstable; urgency=low

   * Update list of ignored files. (Closes: #439592)
   * In the cron test, not executable files are not run. (Closes: #440141)

 -- Ana Beatriz Guerrero Lopez <ana@debian.org>  Fri, 31 Aug 2007 15:44:36 +0200

piuparts (0.25) unstable; urgency=low

   * Add the option to run custom scripts inside the piuparts chroot.
     Scripts are stored in a directory and give it as argument with the
     option --scriptsdir=/dir/with/the/scripts
     This feature is still experimental :)
   * Add custom-scripts.txt with information about the custom scripts.

 -- Ana Beatriz Guerrero Lopez <ana@debian.org>  Tue, 28 Aug 2007 14:39:32 +0200

piuparts (0.24) unstable; urgency=low

   * Add /var/lib/apt/extended_states to ignored_files. Thanks Anibal!
    (Closes: #434980)
   * Add quick howto about how to use piuparts under docs.
   * Add test that checks the output from the cron files left in the system
     after removing a package. This includes the option --skip-cronfiles-test,
     to allow skipping this test.

 -- Ana Beatriz Guerrero Lopez <ana@debian.org>  Mon, 20 Aug 2007 10:27:29 +0200

piuparts (0.23) unstable; urgency=low

   * Cosmetic change, now file owner and file are shown in the same line.
   * Add option --list-installed-files, that list files added/removed/modified
     to the chroot after the package's installation.  (Closes: #431821)
   * Add option --no-upgrade-test, that allows skip testing upgrade from an
     existing version in the archive. (Closes: #349933)

 -- Ana Beatriz Guerrero Lopez <ana@debian.org>  Tue, 10 Jul 2007 19:47:21 +0200

piuparts (0.22) unstable; urgency=low

   [ John Wright ]
   * debian/control:
     - Add XS-Vcs-Svn and XS-Vcs-Browser fields
 
   [ Ana Beatriz Guerrero Lopez ]
   * Rename piuparts.py.in back to piuparts.py.
   * Add option --skip-minimize that allows skip the minimize chroot step
     with debfoster.
   * Remove m4 substitution, and use sed instead. Drop Build-Depends on m4.
     (Closes: #431248)
   * Drop support for python 2.3 and add support for python 2.5.
   * debian/rules:
     - Remove execution of checkversion in package build, not longer needed.
   * debian/control:
     - Add myself to uploaders.
     - Add (future) piuparts website.

 -- Ana Beatriz Guerrero Lopez <ana@debian.org>  Wed, 04 Jul 2007 21:03:44 +0200

piuparts (0.21) unstable; urgency=low

   * Convert to Debian-native packaging style.  From now on, changes to piuparts
     will be tracked here.  (Closes: #389610)
   * Makefile:
     - Give docbook2x-man a --encoding=utf-8 argument.  It was failing to build.
     - Generate piuparts.py from piuparts.py.in, filling in the VERSION variable
       with the version from debian/changelog
   * debian/control:
     - Fix the name of the maintainer (we're the "piuparts developers team", not
       Lustre)
     - Correct my email address in the uploaders field
     - Add Build-Depends on m4
   * piuparts.py.in:
     - Don't call shellquote() on arguments, since we're not using the shell.
       (Closes: #386839)
     - Add a --warn-on-others option.  See the man page for details.
   * piuparts.docbook:
     - Document the --warn-on-others option.

 -- John Wright <john@movingsucks.org>  Thu, 21 Jun 2007 00:27:22 +0100

2006

piuparts (0.20-3) unstable; urgency=low

   * New Maintainer(s): piuparts team. Closes: #390754.

 -- Alastair McKinstry <mckinstry@debian.org>  Mon, 23 Oct 2006 16:02:19 +0100

piuparts (0.20-2) unstable; urgency=low

   * Orphaning.

 -- Lars Wirzenius <liw@iki.fi>  Mon, 2 Oct 2006 23:43:00 +0300

piuparts (0.20-1) unstable; urgency=low

   * New upstream version. Fixed Debian bugs:
     - Symlink correctness checking was broken when symlinks pointed at
       symlinks. (Closes: #387796)
     - fails if a deb filename contains a "strange" char. (Closes: #386839)

 -- Lars Wirzenius <liw@iki.fi>  Fri, 22 Sep 2006 12:58:24 +0300

piuparts (0.19-1) unstable; urgency=low

   * New upstream version. No Debian bugs fixed.

 -- Lars Wirzenius <liw@iki.fi>  Fri, 8 Sep 2006 20:28:31 +0300

piuparts (0.18-1) unstable; urgency=low

   * New upstream version. No Debian bugs fixed.
   * debian/control: Updated for new Python policy.
   * debian/prerm, debian/postrm: Written. They compile/remove byte code
     files.

 -- Lars Wirzenius <liw@iki.fi>  Thu, 7 Sep 2006 20:42:03 +0300

piuparts (0.17-1) unstable; urgency=low

   * debian/control: Added dependency on lsof, since that is now used to
     check that there are no processes running inside the chroot.
   * New upstream version, fixes the following open bugs in Debian:
     - missing words in piuparts(1) (Closes: 362551)
     - default ignore pattern for papercut files added (Closes: #355401)

 -- Lars Wirzenius <liw@iki.fi>  Sun, 25 Jun 2006 19:35:19 +0300

piuparts (0.16-1) unstable; urgency=low

   * New upstream version. Fixes the following bugs reported against the
     Debian package:
     - TODO: keep track of bugs to show expected failures and unexpected
       successes (Closes: #353215)
     - It would be nice if the chroot were updated before the snapshot
       (Closes: #356678)
   * debian/control: Made the dependency on debootstrap be versioned.
     Closes: #355875.

 -- Lars Wirzenius <liw@iki.fi>  Fri, 22 Mar 2006 22:40:00 +0200

piuparts (0.15-1) unstable; urgency=low

   * New upstream version. Includes fixes for Debian bugs:
     - "Specify packages to use for testing" (Closes: #354811)
     - "Misleading documentation of -v" (Closes: #352941)

 -- Lars Wirzenius <liw@iki.fi>  Wed, 01 Mar 2006 20:53:00 +0200

2005

piuparts (0.14-1) unstable; urgency=low

   * New upstream version. Includes fix for:
     - "piuparts should flag as an error a failed installation of a dependency"
       (Closes: #343324)

 -- Lars Wirzenius <liw@iki.fi>  Sun, 18 Dec 2005 23:22:00 +0200

piuparts (0.13-1) unstable; urgency=low

   * New upstream version.
   * debian/changelog: Minor tweaking to the description.

 -- Lars Wirzenius <liw@iki.fi>  Sat, 12 Nov 2005 00:53:04 +0200

piuparts (0.12-1) unstable; urgency=low

   * New upstream version. Fixes bug in Debian:
     - dist-upgrade to experimental does not work (now documented as a
       feature). Closes: #330749.

 -- Lars Wirzenius <liw@iki.fi>  Mon, 17 Oct 2005 21:03:12 +0300

piuparts (0.11-1) unstable; urgency=low

   * New upstream version. Fixes bugs in Debian:
     - Checks whether there are packages on the command line before creating
       a chroot. Closes: #322441.
     - apt-get configured to allow unauthenticated repositories.
       Closes: #326705.

 -- Lars Wirzenius <liw@iki.fi>  Fri, 14 Oct 2005 01:16:25 +0300

piuparts (0.10-1) unstable; urgency=low

   * New upstream version.

 -- Lars Wirzenius <liw@iki.fi>  Thu, 15 Sep 2005 23:31:30 +0300

piuparts (0.9-1) unstable; urgency=low

   * New upstream version, fixes bugs reported against Debian:
     - Upstream version number in Debian package and in upstream sources
       now match. Closes: #326058.
     - Files reported by piuparts are now associated with their packages,
       when possible. Closes: #324248.
   * debian/rules: Added "checkversion" target to make sure we no longer
     do stupid things like #326058, at least in the Debian package.

 -- Lars Wirzenius <liw@iki.fi>  Fri, 09 Sep 2005 00:34:36 +0300

piuparts (0.8-1) unstable; urgency=low

   * New upstream version, fixes bugs:
     - Example in manual page now works (Closes: #319990)
     - Temporary directories are now removed on failure (Closes: #323653)
     - Parsing /etc/apt/sources.list now better (Closes: #319989)
     - Temporary directorys are now put in $TMPDIR or /etc (Closes: #322440)
   * debian/control: Added build-depends on docbook2x. Closes: #318693
   * debian/changelog: Added note about upstream source repository.

 -- Lars Wirzenius <liw@iki.fi>  Mon, 29 Aug 2005 23:03:32 +0300

piuparts (0.7-1) unstable; urgency=low

   * New upstream version.
   * This is the first package that will be uploaded to the Debian archive.

 -- Lars Wirzenius <liw@iki.fi>  Fri, 15 Jul 2005 13:09:00 +0300

piuparts (0.6-1) unstable; urgency=low

   * First release of the Debian package.

 -- Lars Wirzenius <liw@iki.fi>  Tue, 5 Jul 2005 20:08:00 +0300