Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 250194 (python-3.0) - [TRACKER] Python-3.0 incompatible packages
Summary: [TRACKER] Python-3.0 incompatible packages
Status: RESOLVED FIXED
Alias: python-3.0
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: All All
: Highest normal (vote)
Assignee: Python Gentoo Team
URL:
Whiteboard:
Keywords: Tracker
Depends on:
Blocks:
 
Reported: 2008-12-07 16:48 UTC by Arfrever Frehtes Taifersar Arahesis (RETIRED)
Modified: 2010-11-14 20:10 UTC (History)
14 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Arfrever Frehtes Taifersar Arahesis (RETIRED) gentoo-dev 2008-12-07 16:48:27 UTC
This bug is used to track packages which don't work with Python 3.0.

 - Please file a NEW bug (with patches) for each package and make it BLOCK
   this bug. Do NOT file bugs without patches!
 - Please ensure that patched packages work with Python 2.6. See bug #230205.
 - Do NOT use this bug for issues with Python 3.0 itself. File a new bug and
   assign it to python herd.
 - Do NOT add comments, logs, patches etc. in this bug.
 - Issues with packages not working with older versions of Python should not
   block this bug.
 - Please try to send patches to upstream.

Python 3.0 documentation:  http://docs.python.org/3.0/
What’s New In Python 3.0:  http://docs.python.org/3.0/whatsnew/3.0.html
2to3 documentation:        http://docs.python.org/3.0/library/2to3.html

The '2to3' tool can be used to automatically perform many transformations. The changes made by '2to3' are sometimes incorrect, so they should be precisely reviewed.
Comment 1 Mike Auty (RETIRED) gentoo-dev 2008-12-09 00:56:37 UTC
"Please ensure that patched packages work with Python 2.6"

This doesn't seems sensible, python 3.0 is backwards incompatible with 2.6, so it's extremely unlikely the same codebase will work with both, and if it does, it's likely to be full of branches depending on which version of python it's running under.  My guess is that any new python-3.0 ebuilds will need to be marked as requiring a 3.* slotted version of python, but *not* necessarily need to work with python-2.6.

The larger problem will come when some relatively vital packages for python-3 aren't available, because it'll make testing python-3 really tricky.  It's going to be a difficult migration any way you look at it...
Comment 2 Arfrever Frehtes Taifersar Arahesis (RETIRED) gentoo-dev 2008-12-09 11:26:38 UTC
(In reply to comment #1)
> "Please ensure that patched packages work with Python 2.6"
> 
> This doesn't seems sensible, python 3.0 is backwards incompatible with 2.6, so
> it's extremely unlikely the same codebase will work with both, and if it does,
> it's likely to be full of branches depending on which version of python it's
> running under.

http://docs.python.org/whatsnew/2.6.html contains:

"The major theme of Python 2.6 is preparing the migration path to Python 3.0, a major redesign of the language. Whenever possible, Python 2.6 incorporates new features and syntax from 3.0 while remaining compatible with existing code by not removing older features or syntax.
...
Python 3.0 is a far-ranging redesign of Python that breaks compatibility with the 2.x series. This means that existing Python code will need some conversion in order to run on Python 3.0. However, not all the changes in 3.0 necessarily break compatibility. In cases where new features won’t cause existing code to break, they’ve been backported to 2.6 and are described in this document in the appropriate place. Some of the 3.0-derived features are:

    * A __complex__() method for converting objects to a complex number.
    * Alternate syntax for catching exceptions: except TypeError as exc.
    * The addition of functools.reduce() as a synonym for the built-in reduce()
      function."
Comment 3 Arfrever Frehtes Taifersar Arahesis (RETIRED) gentoo-dev 2010-11-14 20:10:58 UTC
The plans had changed. We work on ensuring that packages use version of Python supported by them regardless on which version of Python is set as main active version of Python. Python 3.0 was treated as experimental. Packages supporting only Python 2.* should be ported to Python >=3.1 (in upstream bug trackers).