On 15.06.2010 23:25, ext Hugo Parente Lima wrote:
I wrote what is supposed to be a PSEP to deal with Qt properties and python
properties, any comments are appreciated.

Hi, here's my take (sorry for the slight delay).

First, it's an excellent proposal and definitely in the scope of the PSEP process. I made it a draft PSEP, gave it a title (you'd forgotten an old one in your original text), edited it slightly, and uploaded it:

http://www.pyside.org/docs/pseps/psep-0102.html

The changes and the PSEP source can be most easily tracked in Gitorious:

http://qt.gitorious.org/pyside/pseps

Hugo, since you have the permissions to commit to Gitorious, you can either edit the draft contents directly (or I can do it for you, after agreeing with you about the changes, whatever you prefer).

Now my personal comments on the proposal:

In my opinion, the change is good and would go a long way in making the API nicer and more Pythonic. There is, of course, a possibility for name clashes in the present API (I suppose an exhaustive search hasn't been made yet), and potentially in the future if Qt suddenly would decide to add conflicting methods. However, I think either of these are unlikely, and while the latter scenario would result in an ugly mess (either break PySide backwards compatibility, or break name parity with Qt), maybe we can safely assume that that won't be happening and not add any hypothetical discussion in the PSEP.

However, I'm somewhat concerned about the proposed implementation scheme and schedule. As Sivan and Luca already mentioned, the Qt-compatible scheme should be still somehow provided in addition to the new one. Like Florian described, both schemes can't fully co-exist simultaneously, so some explicit switching method needs to be provided.

Also, I'm worrying about the schedule for our 1.0 release. Even without new features, we still need quite a bit more testing and bug-fixing, and I'd prefer getting a 1.0 release rather sooner than later already. Having new, backwards-incompatible features in at this point would risk delaying that.

Back in the day the elected API scheme was to provide two alternative Python module names [1] for the different APIs. Do you still think this approach would work for us? We could do the 1.0 release with the current, largely PyQt-compatible API, and keep on maintaining that (perhaps indefinitely), and simultaneously begin working on the new API by implementing this PSEP and all the others still on the drawing board.

[1] http://www.pyside.org/docs/pseps/psep-0005.html

That way, we could have the best of the both worlds: make a timely stable release, provide a stable API which we promise not to break, and still be able to work on new features and the kick-ass API. :-)

Cheers,

ma.
_______________________________________________
PySide mailing list
[email protected]
http://lists.openbossa.org/listinfo/pyside

Reply via email to