Analysis of Python 2.7 support in Natty

Barry Warsaw barry at ubuntu.com
Mon Feb 7 20:43:23 UTC 2011


On Feb 04, 2011, at 01:24 AM, Krzysztof Klimonda wrote:

>From your experience with main, were there many issues with
>backward-incompatible changes in Python 2.7?

Not too many, but here are a few I've seen:

* Some packages just aren't prepared to be buildable against multiple versions
  of Python.  In all cases I've seen, enabling one or the other worked fine.
  In these cases debian/rules or other build-related files needed fixing.
  These aren't incompatibilities in the package itself, just naivete in the
  packaging.

* There have been a few run-time or byte-compile-time incompatibilities.  A
  recent example was assignment to __debug__ as an attribute of an object.
  This was illegal in 2.6 also, but not enforced by the interpreter.  It's
  enforced in 2.7.

* C extensions.  There was a case or two where a package used an internal
  (i.e. not public) Python C API that changed between 2.6 and 2.7.  It was not
  too difficult to port the code and wrap it in a #if test of the C API
  version number.

* Changed module APIs.  I know Bazaar hit one in a standard library module,
  though I forget the details. (urlopen perhaps?)

* Other oddities.  An example is the subversion package where a handful of
  tests simply fail for difficult to debug reasons.  Fedora and Debian have
  hit the same thing, and it's definitely a bug in upstream.  My emails to
  upstream have been met with silence though, and all distros I know of just
  disable the offending tests (it's harder for Debian/Ubuntu because we only
  want to disable the tests for 2.7, while Fedora doesn't support multiple
  versions of supported Pythons).

>The second issue is of a different matter - I just don't feel that we
>should bless PPAs as official, as long as there is no way to distinguish
>them from the "unofficial" ones in the Launchpad interface.

This is true - I wish PPAs could be designated official, and I know the issue
is on the LP team's radar, though I have no inside information about ETA of
that.  Still, I think if we clearly document the PPA's location on LP's dev
wiki, that would be enough.  LP developers are going to have to deal with this
sooner than the data centers, since Canonicalites are required to update their
desktops to the latest version of Ubuntu when it hits beta.

>If 11.04 were the LTS, I'd most likely be against dropping Python 2.6
>from the archive, but I don't know if we can actually carry 2.6 all the
>way to the next LTS. We may end up having the same discussion in 6
>months, when we run out of space on CD and can't cut anything else off.
>If it's the alternative then dropping 2.6 now leaves us with more time
>to work on any unexpected issues.

I like Scott's suggestion.  Keep 2.6 for Natty and drop it asap during
toolchain updates for Natty+1.  That should give us time to work out more
kinks before the next LTS.

-Barry
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 836 bytes
Desc: not available
URL: <https://lists.ubuntu.com/archives/ubuntu-devel/attachments/20110207/ae0bba40/attachment.pgp>


More information about the ubuntu-devel mailing list