From Fedora Project Wiki
Line 35: Line 35:
* revelation needs gnome-python2-applet from:
* revelation needs gnome-python2-applet from:
** [https://bugzilla.redhat.com/show_bug.cgi?id=617717 gnome-python2-desktop]
** [https://bugzilla.redhat.com/show_bug.cgi?id=617717 gnome-python2-desktop]
* scipiy fails, looks like [http://projects.scipy.org/scipy/ticket/1180 this upstream bug].  May need  [http://projects.scipy.org/numpy/changeset/5614 this patch to numpy] (not sure yet)
* python-networkx needs:
** python-matplotlib
*** scipiy fails, looks like [http://projects.scipy.org/scipy/ticket/1180 this upstream bug].  May need  [http://projects.scipy.org/numpy/changeset/5614 this patch to numpy] (not sure yet)
* hgsvn needs:
* hgsvn needs:
**subversion see [http://koji.fedoraproject.org/koji/getfile?taskID=2344653&name=root.log root.log]
**subversion see [http://koji.fedoraproject.org/koji/getfile?taskID=2344653&name=root.log root.log]
Line 43: Line 45:
* gnome-package-kit needs:
* gnome-package-kit needs:
** PackageKit [https://bugzilla.redhat.com/show_bug.cgi?id=617782 fails to build]
** PackageKit [https://bugzilla.redhat.com/show_bug.cgi?id=617782 fails to build]
* python-networkx needs:
** python-matplotlib
* sympy needs:
* sympy needs:
** python-mpmath
** python-mpmath

Revision as of 19:07, 24 July 2010


Python 2.7

Summary

Update the system Python 2 stack in Fedora from 2.6 to 2.7

Owner

  • Email: <dmalcolm@redhat.com>

Current status

  • Targeted release: Fedora 14
  • Last updated: 2010-07-23
  • Percentage of completion: 50%

Packages built into dist-f14-py27-rebuild; currently 202 failing rebuilds

Packages waiting on other packages

  • kdebindings, pyactivemq need:
  • python-execnet needs:
    • python-py needs:
      • subversion failing inside %check
    • protobuf needs:
      • subversion (see above)
  • revelation needs gnome-python2-applet from:
  • python-networkx needs:
  • hgsvn needs:
    • subversion see root.log
      • which seems to fail in some python related %check test: build.log
  • gget needs
    • notify-python
  • gnome-package-kit needs:
  • sympy needs:
    • python-mpmath
  • hamster-applet needs:
    • many gnome-python2-* packages from gnome-python2-desktop. Specifically gnome-python2-bonobo which needs:
    • pyorbit
    • gnome-doc-utils

Common bugs

gobject-introspection's /usr/bin/g-ir-scanner appears to be incompatible with python 2.7, this leads to anything building a .gir file failing.

Detailed Description

  • Python 2.7 was released on 2010-07-03

This will require a rebuild of everything with Requires: python(abi) = 2.6. See Mass_Rebuild_SOP for how we do a full rebuild of everything - hopefully we can adapt the scripts there to accomplish the rebuild needed for Python 2.7. See Features/Python_2.7/MassRebuild for notes on this specific rebuild.

Porting

Hopefully, little to no porting will be required.

Some notes on changes that may require porting are given on the upstream wiki here: http://docs.python.org/dev/whatsnew/2.7.html#porting-to-python-2-7

Benefit to Fedora

Fedora aims to showcase the latest in free and open source software - we should have the most recent release of Python.

Scope

Python is pervasive in Fedora. Everything from yum to system-config-* to anaconda to pungi is written in Python.

How To Test

Interested testers do not need special hardware. If you have a favorite Python script, module, or application, please test it with Python 2.7 and verify that it still works as you expect.

My own test plan:

  • Smoketest of the interpreter
  • Run the upstream regression test suite
  • Ensure that yum still works
  • Ensure that anaconda still works

User Experience

Users should not notice any difference, other than the availability of the 2.7 interpreter


Dependencies

The list is too large to include here.

repoquery --whatrequires --alldeps -s "python(abi) = 2.6" | sort -u

indicates approximately 1200 rpms

Contingency Plan

  • There is none. This is do-or-die.

Documentation

What’s New in Python 2.7

Release Notes

The system Python 2 stack has been upgraded to 2.7. For a list of changes see http://docs.python.org/dev/whatsnew/2.7.html

Comments and Discussion