Re: Python 3.0 plans
- From: Behdad Esfahbod <behdad behdad org>
- To: Johan Dahlin <johan gnome org>
- Cc: PyGTK <pygtk daa com au>, "desktop-devel-list gnome org" <desktop-devel-list gnome org>
- Subject: Re: Python 3.0 plans
- Date: Wed, 29 Aug 2007 13:52:45 -0400
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
> desktop-devel-list gnome org
> 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
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]