python-debian (0.1.9) unstable; urgency=low

  * Promote python-apt from Suggests to Recommends. (Closes: #462845)

 -- Adeodato Simó <dato@net.com.org.es>  Wed, 06 Feb 2008 15:36:02 +0100

python-debian (0.1.8) unstable; urgency=low

  [ Filippo Giunchedi ]
  * Move tests to a separate subdirectory.

  [ Stefano Zacchiroli ]
  * Add examples dir for deb822 with a simple example.

  [ Adeodato Simó ]

  * Sync debian_support.py with the latest version from the secure-testing
    repository. Note that this removes support for version comparison without
    apt_pkg. (Our copy was modified in 0.1.2 to *accept* ~ in version strings,
    but comparison without apt_pkg was already broken by then.)

    Also, undo the change introduced for #431087, since we shouldn't be
    keeping incompatible versions of debian_support.py around, plus the
    desired functionality in that bug report is best provided by the deb822
    module. (Closes: #457697, #457854)

  * While rewriting the grep-maintainer example to use deb822.Packages to
    accommodate the above change, make it cope with stanzas without a
    maintainer field as well. (Closes: #457855)

  * Fix dump() method of deb822._multivalued. (Closes: #457929)

  * Small improvements to the exception handling in the grep-maintainer
    example.

  * Bump Standards-Version to 3.7.3 (no changes needed).

 -- Adeodato Simó <dato@net.com.org.es>  Fri, 28 Dec 2007 19:46:13 +0100

python-debian (0.1.7) unstable; urgency=low

  [ John Wright ]
  * debian_bundle/deb822.py, debian_bundle/test_deb822.py
    - Bug fix: Allow fields with blank (empty string) values.  Previously,
      these were parsed fine, but if you tried to dump the resulting Deb822
      object, you'd get an IndexError (because of how we handled fields whose
      values start with newlines).  Added a test case.
    - Fix the copy method of Deb822Dict so that it returns an object of the
      same type, rather than explicitly instantiating Deb822Dict (so that
      subclasses like Deb822 can directly use the copy method and have it "just
      work").  Added a test case.

  [ Stefano Zacchiroli ]
  * debian/control
    - mention the debfile module in the long description
    - promote Vcs-Bzr to a real field, now that dpkg supports it

 -- John Wright <jsw@debian.org>  Tue, 27 Nov 2007 16:25:33 -0700

python-debian (0.1.6) unstable; urgency=low

  [ Stefano Zacchiroli ]
  * debfile.py
    - bugfix: make md5sums top-level method acts as a proxy instead of
      returning a method
    - bugfix: use readlines() to iterate over the md5sums file since direct
      iteration on files is available only in python >= 2.5 (closes: #438804)
    - bugfix: support spaces in filenames when accessing md5sums; thanks to
      Romain Francoise for the patch (closes: #438909)

  [ John Wright ]
  * debian/pyversions:
    - Since there are some Python 2.4-isms in this package, support only Python
      >= 2.4, rather than all versions (Closes: #438920)

 -- Stefano Zacchiroli <zack@debian.org>  Sat, 08 Sep 2007 10:12:20 +0200

python-debian (0.1.5) unstable; urgency=low

  [ Stefano Zacchiroli ]
  * debfile.py
    - do not fail if extra ar members exist in a .deb, according to deb(5)
      extra ar members should be ignored (Closes: #438486). Also add the
      corresponding regression test to test_debfile.py
    - support both the (buggy) file naming scheme for TarFile of python << 2.5
      (e.g. "control") and of python >= 2.5 (e.g. "./control"). In addition,
      enable users to specify file members in three equivalent formats:
      "file", "./file", and "/file" (Closes: #438603)
  * deb822.py
    - add a deprecation warning (printed on stderr) when accessing the module
      as a top-level one; it should be rather used as "debian_bundle.deb822"

  [ John Wright ]
  * examples/debfile/ar, examples/debfile/changelog_head,
    examples/debfile/dpkg-info, examples/debfile/extract_cron:
    - Fix ImportError caused by importing modules as if they were top-level
      modules, rather than modules in the debian_bundle package
      (Closes: #438428)

 -- Stefano Zacchiroli <zack@debian.org>  Sun, 19 Aug 2007 09:38:20 +0200

python-debian (0.1.4) unstable; urgency=low

  [ James Westby ]
  * changelog.py
    - Add allow_empty_author option to changelog to allow the author line
      to have no information.

  [ Stefano Zacchiroli ]
  * debian/control
    - joining the team: add myself as an uploader
    - add Vcs-Bzr field pointing to our Bzr repository on bzr.debian.org
  * arfile.py / debfile.py
    - new modules implementing (read-only) dpkg-deb like access to .deb
      packages; when possible, access to information contained in .deb is made
      available via other debian_bundle classes (e.g. Changelog, Deb822, ...)
    - code contributed by Stefano Zacchiroli and Filippo Giunchedi
    - corresponding examples in examples/debfile
  * debian_support.py
    - yield dictionaries instead of tuples in Packages parsing and normalize
      to lower case 822 field names (Closes: #431087)
    - no longer require a space after a ':' in RFC 822 fields; fix bogus
      parse errors of Packages-like file with PackageFile() class
  * examples/
    - added grep-maintainer example to show the Packages parsing API

  [ John Wright ]
  * debian_bundle/deb822.py, debian_bundle/test_deb822.py, deb822.py:
    - Import latest version of deb822, and create a "dummy" top-level module
      for compatibility
    - For multiline fields that start with a newline (e.g. Files in a .dsc,
      MD5Sum in Release files), the line with the "Field:" should not end in
      trailing whitespace.  Fixed and added test cases.
  * setup.py:
    - The version wasn't getting updated, so I've renamed it to setup.py.in,
      and added a __CHANGELOG_VERSION__ placeholder
  * debian/rules:
    - Generate generate setup.py from setup.py.in, filling in the version
      information from debian/changelog
    - No longer delete deb822 files
  * debian/control:
    - Add myself as an uploader
    - Add Provides, Conflicts, and Replaces fields for python-deb822
    - When describing features, mention which modules they are implemented in
  * HISTORY.deb822, debian/docs:
    - Install old changelog for deb822 as
      /usr/share/doc/python-debian/HISTORY.deb822
  * debian_bundle/changelog.py:
    - Accept numbers, '+', and '.' in the distribution field, to match dpkg's
      behavior

 -- John Wright <jsw@debian.org>  Sun,  5 Aug 2007 00:41:24 -0600

python-debian (0.1.3) unstable; urgency=low

  [ James Westby ]
  * changelog.py
    - Add max_blocks parameter to Changelog constructor. This limits the
      number of blocks that will be parsed to that number. If you only need
      the latest entry then pass max_blocks=1 and you will only have one
      block. This is also useful to avoid trying to parse old changelog
      entries that don't follow the current format. (Closes: #429357)

  [ Reinhard Tartler ]
  * debian_bundle/changelog.py: don't fail if a changelog block is not
    parseable. Just return all changelog blocks we've been able to parse
    so far. (Closes: #429299)

 -- James Westby <jw+debian@jameswestby.net>  Sun, 17 Jun 2007 13:25:20 +0100

python-debian (0.1.2) unstable; urgency=low

  [ James Westby ]
  * debian_support.py
    - Support ~ in version numbers when python-apt is not installed.
  * Turn on the testsuites of changelog.py, and debtags.py in the build.
  * debtags.py
    - Rename with to with_ to avoid a warning on python2.5 as with will be
      a keyword in 2.6. (Closes: #409333)
  * Suggest python-apt and mention why in the README.

  [Reinhard Tartler]
  * Fix the regex matching the end line of a debian/changelog. Using
    improved regex contributed by Francois-Denis Gonthier, thanks!
    (Closes: #410880)
  * disable python_support.py testrun, it is missing in the branch.
  * add myself to uploaders.

 -- Reinhard Tartler <siretart@tauware.de>  Thu, 14 Jun 2007 19:54:13 +0100

python-debian (0.1.1) unstable; urgency=low

  [ John Wright ]
  * changelog.py:
    - Version class:
      + Subclass debian_support.Version, for rich comparison
      + Changing any attribute now automatically updates any other affected
        attribute (i.e. changing full_version will update all of the other
        attributes; changing debian_version will update full_version)
    - Changelog class:
      + Many "getter" and "setter" methods were replaced with properties (so
        they appear as regular object attributes).  Most set_* methods remain
        for compatibility, and they're the actual set methods for the
        properties anyway.  Please see README.changelog.
      + You can now assign a string to the version attribute, and it will be
        coerced into a Version object

  [ James Westby ]
  * changelog.py:
    - Added a method to write the changelog to an open file.
    - Allow single digit day with no extra space in the endline of a
      changelog. Hopefully this wont allow things to be parsed that will
      be rejected by the more important tools. It does allow more files
      to be parsed and used, and I'm not entirely sure what is right.
    - Allow uppercase characters in the version number when parsing
      changelogs. Thanks to Jelmer Vernooij for the report and the fix.
  * README.changelog:
    - Update the documentation to reflect the changes mentioned above
  * Add debian/NEWS to warn of the API changes.

  [ Enrico Zini ]
  * debtags.py:
    - Added various methods after the work on the inferrer of tag
      relationships
    - Added tagminer and pkgwalk examples

 -- James Westby <jw+debian@jameswestby.net>  Tue, 30 Jan 2007 20:56:44 +0000

python-debian (0.1.0) experimental; urgency=low

  * Initial release. (Closes: #381599)

 -- James Westby <jw+debian@jameswestby.net>  Tue, 15 Aug 2006 18:57:57 +0100
