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

Bug#523645: python-apt: Port to Python 3.1 [FINISHED]



On Sat, Apr 11, 2009 at 05:58:09PM +0200, Julian Andres Klode wrote:
> Package: python-apt
> Version: 0.7.10.1
> Owner: Julian Andres Klode <jak@debian.org>
> Severity: wishlist
> 
> This bug is a bug for tracking the progress of the Py3k porting,
> which I will work on next week (and also later).
The Python 3 port has been finished with todays merge into the 'jak' branch. The
changes are bigger than they have to be, because the 'jak' branch is also in the
process of switching to so-called getset descriptors.

The Python 3 builds are solely using unicode strings as output, which is Python 3's
standard string type. This may require some changes to the code to make 2to3 create
working Python 3 code.

My plan is to create several snapshot releases for experimental, containing all
the new stuff. The first one should happen today (if mvo agrees) and include
the following changes (and some unlisted, less visible ones).

python-apt (0.7.11) UNRELEASED; urgency=low

  * Introduce support for Python 3 (Closes: #523645)

  * Support the 'in' operator (e.g. "k in d") in Configuration{,Ptr,Sub}
    objects (e.g. apt_pkg.Config) and in TagSections (apt_pkg.ParseSection())
  * Replace support for file objects with a more generic support for any object
    providing a fileno() method and for file descriptors (integers).
  * Add support for the Breaks fields
  * Only create Package objects when they are requested, do not keep them in
    a dict. Saves 10MB for 25,000 packages on my machine.
  * apt/package.py: Allow to set the candidate of a package (Closes: #523997)
    - Support assignments to the 'candidate' property of Package objects.
    - Initial patch by Sebastian Heinlein

 -- Julian Andres Klode <jak@debian.org>  Wed, 15 Apr 2009 13:47:42 +0200

Once everything is finished, the whole release will be uploaded to unstable,
but py3k will be disabled in that build because python3.1 is only available
in experimental. Instead, a version VER+exp1 will be uploaded to experimental
with the only change being the activation of PY3K builds in debian/rules.

Please heavily test this release on the Python 2 platforms to make sure that
there are no issues with it. And tests with Python 3 would be good as well.

Please do not port your applications to Python 3 yet, especially if you use
anything else than apt.debfile. The API will change, and the Python 3 builds
may not ship compatibility functions any longer (they are disabled). But it
still needs testing.

Thank you.

Vcs-Bzr: http://bzr.debian.org/users/jak/python-apt/jak/
Vcs-Browser: http://bzr.debian.org/loggerhead/users/jak/python-apt/jak/changes

To build your own package, run
  $ bzr branch http://bzr.debian.org/users/jak/python-apt/jak/
  $ cd jak
  $ bzr builddeb

-- 
Julian Andres Klode  - Free Software Developer
   Debian Developer  - Contributing Member of SPI
   Ubuntu Member     - Fellow of FSFE

Website: http://jak-linux.org/   XMPP: juliank@jabber.org
Debian:  http://www.debian.org/  SPI:  http://www.spi-inc.org/
Ubuntu:  http://www.ubuntu.com/  FSFE: http://www.fsfe.org/

Attachment: signature.asc
Description: Digital signature


Reply to: