[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

piuparts_0.43~bpo60+1_i386.changes is NEW



(new) piuparts_0.43~bpo60+1.dsc extra devel
(new) piuparts_0.43~bpo60+1.tar.gz extra devel
(new) piuparts_0.43~bpo60+1_all.deb extra devel
.deb package installation, upgrading, and removal testing tool
 piuparts tests that .deb packages (as used by Debian) handle
 installation, upgrading, and removal correctly. It does this by
 creating a minimal Debian installation in a chroot, and installing,
 upgrading, and removing packages in that environment, and comparing the
 state of the directory tree before and after. piuparts reports any
 files that have been added, removed, or modified during this process.
 .
 piuparts is meant as a quality assurance tool for people who create .deb
 packages to test them before they upload them to the Debian package archive.


Changes:
piuparts (0.43~bpo60+1) squeeze-backports; urgency=low
 .
  * Rebuild for squeeze-backports.
 .
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.
 .
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.)
 .
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.
 .
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.
 .
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.


Override entries for your package:

Announcing to debian-backports-changes@lists.debian.org


Your package contains new components which requires manual editing of
the override file.  It is ok otherwise, so please be patient.  New
packages are usually added to the override file about once a week.

You may have gotten the distribution wrong.  You'll get warnings above
if files already exist in other distributions.
exist in other distributions.


Reply to: