Relation between wxPython 2.x and wxPython 3.x

Hi together,
After getting started with wxPython for some days now, I'm still having
trouble figuring out what the relation between wxPython 2.x and wxPython
3.x is, i.e. whether they coexist (and if yes temporarily or potentially
for ever), whether 3.x replaces 2.x, etc. There's a migration guide at

   http://wxpython.org/migrationguide.php

which covers 2.8 and 2.9, but doesn't mention 3.x.

I'm having extra trouble with changes in multithreading concepts. I
found a tutorial at

    http://www.blog.pythonlibrary.org/2010/05/22/wxpython-and-threads/

explaining `wx.lib.pubsub` which I don't find in the multithreading
overview at

    http://docs.wxwidgets.org/stable/overview_thread.html

Is that an indicator for the fact that it is no longer supported? I
found it at `wx.lib.pubsub.core.publisher.Publisher`, but in the docs
all classes are prefixed with `xw` and a `wxPublisher` doesn't exist.

There seem to be some fundamental changes and no mentioning of
deprecation in the 2.x docs. Is it a good idea to use the `wx` namespace
for both wxPython 2.x and 3.x? How can I assert that I'm using 3.x from
within `python`?

Best regards,
Kalle

Hi Kalle,

Hi together,
After getting started with wxPython for some days now, I'm still having
trouble figuring out what the relation between wxPython 2.x and wxPython
3.x is, i.e. whether they coexist (and if yes temporarily or potentially
for ever), whether 3.x replaces 2.x, etc. There's a migration guide at

    http://wxpython.org/migrationguide.php

which covers 2.8 and 2.9, but doesn't mention 3.x.

2.8 was the older version in which the API is not changed, 2.9 is a newer version with API changes which then became 3.x with no API changes.

In other words they coexist and a higher number indicates a newer release.

I'm having extra trouble with changes in multithreading concepts. I
found a tutorial at

     wxPython and Threads - Mouse Vs Python

What trouble?

explaining `wx.lib.pubsub` which I don't find in the multithreading
overview at

     wxWidgets: Multithreading Overview

Is that an indicator for the fact that it is no longer supported? I
found it at `wx.lib.pubsub.core.publisher.Publisher`, but in the docs
all classes are prefixed with `xw` and a `wxPublisher` doesn't exist.

wx.lib.something are Python specific modules which are not documented in the above wxwidgets doc, they are documented in the wxPython-Phoenix doc (a wxPython version in development) at Index of /Phoenix/docs . I use that doc even with the currently released wxPython version 2.9 or 3.0+ even so there are some differences.

The wxPython-Phoenix doc is currently not found, hopefully Robin will fix this soon.

There seem to be some fundamental changes and no mentioning of
deprecation in the 2.x docs. Is it a good idea to use the `wx` namespace
for both wxPython 2.x and 3.x?

If you just start with wxPython use preferably version 3.0.x if you can't you might want to use 2.8.12 or 2.9.5, in all cases you should use "import wx", in other words use the 'wx' namespace.

  How can I assert that I'm using 3.x from
within `python`?

import wx
wx.VERSION_STRING

Werner

···

On 1/5/2015 14:04, Karl-Philipp Richter wrote:

The pubsub library doesn’t really have anything to do with threading. I just used it in my example to show one way to send messages from a thread back to the application. I use it without threads more often than not.

Mike

···

On Monday, January 5, 2015 10:15:05 AM UTC-6, Karl-Philipp Richter wrote:

Hi together,

After getting started with wxPython for some days now, I’m still having

trouble figuring out what the relation between wxPython 2.x and wxPython

3.x is, i.e. whether they coexist (and if yes temporarily or potentially

for ever), whether 3.x replaces 2.x, etc. There’s a migration guide at

http://wxpython.org/migrationguide.php

which covers 2.8 and 2.9, but doesn’t mention 3.x.

I’m having extra trouble with changes in multithreading concepts. I

found a tutorial at

[http://www.blog.pythonlibrary.org/2010/05/22/wxpython-and-threads/](http://www.blog.pythonlibrary.org/2010/05/22/wxpython-and-threads/)

explaining wx.lib.pubsub which I don’t find in the multithreading

overview at

[http://docs.wxwidgets.org/stable/overview_thread.html](http://docs.wxwidgets.org/stable/overview_thread.html)

Is that an indicator for the fact that it is no longer supported? I

found it at wx.lib.pubsub.core.publisher.Publisher, but in the docs

all classes are prefixed with xw and a wxPublisher doesn’t exist.