On Wed, 2007-08-29 at 12:37 -0300, Johan Dahlin wrote: > Greetings Heya,
> I'd like to ask for input on how the Python 3.0 transition is going to > affect GNOME. > > Python 3.0 is the current development focus of the Python community. > It is different from the old 2.x series in the sense that it will not be > backwards compatible with the old python releases. A program written for > Python 2.x will not run under Python 3.x unless it restricts itself to a > tiny tiny subset which is really not practical (for instance, unicode can't > be used). So this is a great opportunity to break APIs and go GNOME 3.0... Ok, lame jokes aside. > The first alpha release of Python 3.0 is going to be released in the next > couple of weeks, this is a good opportunity to discuss this before the > transition actually starts. 3.0 is scheduled for release in August 2008. > > All the python bindings needs to be ported over to the new C Python API. > We'd like to take this opportunity to clean up a bit of the cruft we > collected during the years of strict backwards compatibility. > For instance it's not possible to significantly optimize the loading > of the gtk+ bindings without breaking the API, both OLPC and Nokia has been > running into this problem. > > What I'd like to propose is a to branch of pygobject and pygtk to a > python-3 branch where backwards compatibly can be broken. > Transition will be done by a tool similar to 2to3.py[1] used by Python which > will help automate the process of converting a program using the old api to > the new. Couple thoughts: - Do things more Pythonesque. Looking at Pango bindings, for example replace all to_string() methods with __str__. Same for compare(), equal(), etc. Or should it be in addition? - Finish and use gobject-introspection. behdad > When this branch is mature enough I'll propose it for inclusion in the GNOME > bindings release, which will be an addition, not a replacement for the old > bindings. > > The current version of the python bindings will be maintained as long as > there is interest in the Python 2.x platform. But maintenance will > eventually cease as the general focus moves over to Python 3.x. > > Parallel installability is not a direct issue for us, since it's already > solved at the python level. The current bindings will not compile under > 3.x and the new ones will not compile under 2.x. > > Thoughts? > > Johan > > [1]: http://svn.python.org/view/sandbox/trunk/2to3/ > > _______________________________________________ > desktop-devel-list mailing list > [EMAIL PROTECTED] > http://mail.gnome.org/mailman/listinfo/desktop-devel-list -- behdad http://behdad.org/ "Those who would give up Essential Liberty to purchase a little Temporary Safety, deserve neither Liberty nor Safety." -- Benjamin Franklin, 1759 _______________________________________________ pygtk mailing list pygtk@daa.com.au http://www.daa.com.au/mailman/listinfo/pygtk Read the PyGTK FAQ: http://www.async.com.br/faq/pygtk/