New Ticket     Wiki     Browse Source     Timeline     Roadmap     Ticket Reports     Search

Ticket #19192 (new defect)

Opened 3 years ago

Last modified 3 years ago

py25-wxpython reports "wxPython/wxWidgets release mismatch" on import

Reported by: ram@… Owned by: mww@…
Priority: Normal Milestone:
Component: ports Version: 1.7.1
Keywords: Cc: mww@…, mlk@…, jjstickel@…, jwa@…
Port: py25-wxpython, wxWid

Description

When the wx module is imported the following warning is reported:

$ python
Python 2.5.4 (r254:67916, Apr  4 2009, 14:11:12) 
[GCC 4.0.1 (Apple Inc. build 5490)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import wx
/opt/local/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/site-packages/wx-2.8-mac-unicode/wx/_core.py:14448: UserWarning: wxPython/wxWidgets release number mismatch
  warnings.warn("wxPython/wxWidgets release number mismatch")
>>> 

I have noticed that wxPython-2.8.9.2 is available:

$ port livecheck py25-wxpython
py25-wxpython seems to have been updated (port version: 2.8.9.1, new version: 2.8.9.2)
$

Change History

Changed 3 years ago by mlk@…

  • cc mlk@… added

Cc Me!

Changed 3 years ago by anonymous

  • milestone Port Bugs deleted

Milestone Port Bugs deleted

Changed 3 years ago by mlk@…

This warning is unfortunately going to be around until the wxPython version (currently 2.8.9.2) catches up with the wxWidgets version (currently 2.8.10). When loading wxPython (via "import wx"), the script checks the version of wxPython against that of wxWidgets; at least in theory they are supposed to be the same to the second number (i.e., be W.X.Y.Z and W.X.Y.(Z+1) would be OK, but W.X.(Y+1).Z would generate the warning). This is just a warning, and can be safely ignored for the particular versions of wxWidgets and wxPython currently installed by MacPorts; being able to ignore the warning hasn't always worked in the past, which is one reason for the specific install of wxPython26 and wxWidgets26 -- to make sure there was at least one stable, compatible version available.

Ideally, the version of wxPython and wxWidgets in MacPorts would always have the same W.X.Y. In this case, wxPython 2.8.9.2 requires at least wxWidgets 2.8.10 due to the addition of 'wxGraphicsBitmap' into wx/graphics.h (of wxWidgets) and src/mac/_gdi_wrap.cpp (of wxPython); wxPython 2.8.9.2 will not compile with wxWidgets 2.8.9 because the latter lacks the definition of 'wxGraphicsBitmap'.

That said, I think that wxPython 2.8.9.1 (or maybe .0) will compile with wxWidgets 2.8.9, so those might get reverted to in their respective Portfiles temporarily in order to avoid this warning -- and rename the current ones "beta" or whatever makes the most sense.

Changed 3 years ago by jjstickel@…

See also ticket #20037. I posted a portfile for wxwidgets-2.8.9.2 there.

Changed 3 years ago by jjstickel@…

  • cc jjstickel@… added

Cc Me!

Changed 3 years ago by jwa@…

  • status changed from new to closed
  • resolution set to fixed

Currently the MacPorts wxpython and wxWidgets ports are in sync. This mismatch is the result of the unfortunate decision of wxPython upstream packaging including wxWidgets version of their own not necessarily compatible with the stable release of wxWidgets. Summa summarum, these ports have been reversed to previous versions, and stay so, until the packages are in sync again.

Changed 3 years ago by jjstickel@…

Uh, wxwidgets is back to 2.8.10, but py*-wxpython is still at 2.8.9.x! What is going on?

Changed 3 years ago by jwa@…

  • status changed from closed to reopened
  • resolution fixed deleted

Yeah, I noticed that Markus (mww) had redone the upgrade. I requested him to revert this (I guess we can do that after maintainer timeout). This whole mess is due to the unfortunate decision of wxPython upstream maintainer to include an own copy of wxWidgets containing modifications not present in the stable wxWidgets distribution (I complained about this with no positive result, however) leading to a situation, in which there is no guarantee whatsoever that a named version (e.g. 2.8.10.x) of wxPython compiles or runs with the named version (2.8.10.x) of wxWidgets. This is why we need both at level 2.8.9 at the moment...

Changed 3 years ago by jwa@…

  • owner changed from jwa@… to mww@…
  • status changed from reopened to new

Changed 3 years ago by jwa@…

  • cc jwa@… added

Cc Me!

Note: See TracTickets for help on using tickets.