Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 667318 - dev-python/wxpython-4.0.3 version bump
Summary: dev-python/wxpython-4.0.3 version bump
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Gentoo wxWidgets project
URL:
Whiteboard:
Keywords:
Depends on:
Blocks: 671470 673820
  Show dependency tree
 
Reported: 2018-09-29 20:33 UTC by Horea Christian
Modified: 2019-05-24 18:20 UTC (History)
11 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
wxpython-4.0.3.ebuild (wxpython-4.0.3.ebuild,1.04 KB, text/plain)
2018-09-29 20:33 UTC, Horea Christian
Details
wxpython-4.0.1.ebuild (wxpython-4.0.1.ebuild,5.30 KB, text/plain)
2018-09-29 20:33 UTC, Horea Christian
Details
wxpython-4.0.3.ebuild build.log (file_667318.txt,57 bytes, text/plain)
2018-09-29 20:36 UTC, Horea Christian
Details
wxpython-4.0.3.ebuild (wxpython-4.0.3.ebuild,1.10 KB, text/plain)
2018-09-30 16:49 UTC, Horea Christian
Details
wxpython-4.0.3.ebuild build.log (build.log.tar.xz,57.54 KB, application/x-xz)
2018-09-30 16:52 UTC, Horea Christian
Details
Patch for disabling Webkit widgets in wxPython (wscript-no-webkit.patch,2.91 KB, patch)
2018-10-29 16:03 UTC, Alex
Details | Diff
tests after webkit and parallel patches (file_667318.txt,2.93 KB, text/plain)
2019-01-04 04:48 UTC, Horea Christian
Details
wxpython-4.0.3.ebuild (file_667318.txt,1.77 KB, text/plain)
2019-01-04 04:52 UTC, Horea Christian
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Horea Christian 2018-09-29 20:33:19 UTC
Created attachment 548268 [details]
wxpython-4.0.3.ebuild

The current dev-pyhton/wxpython version in Portage is 3.0.2.0 . This version is very old and not Python 3* compatible.

The current upstream version is 4.0.3 (according to upstream best downloaded from pythonhosted/PYPI, because the sources on Github are incomplete: https://github.com/wxWidgets/Phoenix/issues/1015 ).
The code has been wholly refactored by upstream, which is why I have opted to write a new ebuild from scratch rather than attempt to just bump the old one (a friend has tried, but failed --- see his alternative ebuild for 4.0.1 attached).

I have attempted to write a new ebuild for 4.0.3 (attached), which builds succesfully but for which the tests don't pass (also attached). It appears the reason the tests fail is that a number of relative imports fail (and in spite of changing directory to the build dir continue to fail).

I am also unsure whether the files get installed in the right place. One new package I am testing gives more failures with the new wxpython than with the old one, but the only package from the normal tree which I have and which depends on wxpython (dev-python/ipython) continues to pass the tests well with the new version.

Not least of all, I don't know how the USE flags would translate to the newer version. Can you help me out?
Comment 1 Horea Christian 2018-09-29 20:33:48 UTC
Created attachment 548270 [details]
wxpython-4.0.1.ebuild
Comment 2 Horea Christian 2018-09-29 20:36:29 UTC
Created attachment 548272 [details]
wxpython-4.0.3.ebuild build.log
Comment 3 Jonas Stein gentoo-dev 2018-09-30 11:16:15 UTC
Please test the ebuild with repoman full -x https://wiki.gentoo.org/wiki/Repoman
A bot can look for additional mistakes, if you upload a PR via github
There is a chat on IRC #gentoo-dev-help for questions about ebuild development
Comment 4 Horea Christian 2018-09-30 16:49:16 UTC
Created attachment 548492 [details]
wxpython-4.0.3.ebuild
Comment 5 Horea Christian 2018-09-30 16:49:37 UTC
I updated the ebuild. Initially I thought the slotting was for the wxpython slot, but now I'm pretty sure this is about the WXGTK version. I'd really need some help from the wxwidgets people, as I am entirely unfamiliar with how this is designed and I'm just going by inference from the ebuilds and the wxwidgets eclass.
Comment 6 Horea Christian 2018-09-30 16:52:46 UTC
Created attachment 548494 [details]
wxpython-4.0.3.ebuild build.log
Comment 7 Mart Raudsepp gentoo-dev 2018-10-03 12:03:34 UTC
The main hurdle is making sure old things keep working. If everything currently in tree, which use the old wxpython, doesn't work after this upgrade to the same SLOT, then we have a migration trouble to solve. And I'd suspect that it surely is the case, but I haven't had time to even test.
Comment 8 Horea Christian 2018-10-03 14:06:01 UTC
of things which use wxpython, I only have ipython, which I tested and works with the new version. I also have matplotlib, but I can't even run the tests with the old wxpython on that.
Comment 9 Alex 2018-10-29 16:03:25 UTC
Created attachment 553606 [details, diff]
Patch for disabling Webkit widgets in wxPython

I propose following patch to disable Webkit widgets being built. Webkit itself is a load of useless crap, so I just masked it system-wide and my wxWidgets installation was built without it. But wxPython can't determine this, still thinks that web widgets is present and fails at compile-time. Therefore patch is required (as is USE flag, but that's another matter).
Comment 10 Horea Christian 2018-10-29 17:20:47 UTC
Alex, would you mind submitting a PR with the patch and USE flag here: https://github.com/TheChymera/overlay/blob/master/dev-python/wxpython/wxpython-4.0.3.ebuild ?

This is shaping up to be quite a bit of work and I expect managing it via single file uploads with no hierarchy will end up in a total mess.
Comment 11 Helmut Jarausch 2018-11-06 16:54:54 UTC
(In reply to Horea Christian from comment #5)
> I updated the ebuild. Initially I thought the slotting was for the wxpython
> slot, but now I'm pretty sure this is about the WXGTK version. I'd really
> need some help from the wxwidgets people, as I am entirely unfamiliar with
> how this is designed and I'm just going by inference from the ebuilds and
> the wxwidgets eclass.

I get 
error: option -j not recognized
when I try to build wxpython-4.0.3

A dummy patch which ignores this option could be

--- setup.py.ORIG       2018-06-26 04:20:04.000000000 +0200
+++ setup.py    2018-11-06 17:47:28.940450375 +0100
@@ -105,6 +105,7 @@
     """
     user_options = [
         ('skip-build', None, 'skip building the C/C++ code (assumes it has already been done)'),
+        ('parallel=', 'j', "number of parallel build jobs")
         ]
     boolean_options = ['skip-build']
 
@@ -112,6 +113,7 @@
     def initialize_options(self):
         orig_build.initialize_options(self)
         self.skip_build = '--skip-build' in sys.argv
+        self.parallel = None
 
     def finalize_options(self):
         orig_build.finalize_options(self)


but since there are lots of calls to sip, it would be nice if this could be
patched to really use parallel builds.
Comment 12 Horea Christian 2019-01-04 04:48:38 UTC
Created attachment 559762 [details]
tests after webkit and parallel patches
Comment 13 Horea Christian 2019-01-04 04:51:23 UTC
Dear Alex and Helmut,

I have now integrated your patches:

https://github.com/TheChymera/overlay/blob/97e4d2861c0f2e09a493d5ea533566cb95ba0c19/dev-python/wxpython/wxpython-4.0.3.ebuild

The ebuild builds, but the tests do not pass:

https://bugs.gentoo.org/attachment.cgi?id=559762

It would be nice if somebody could at least confirm this buug, and if any of the package maintainers would chime in. This is already a major hold-up.
Comment 14 Horea Christian 2019-01-04 04:52:38 UTC
Created attachment 559764 [details]
wxpython-4.0.3.ebuild
Comment 15 Alex 2019-01-20 13:59:36 UTC
(In reply to Horea Christian from comment #13)
> Dear Alex and Helmut,
> 
> I have now integrated your patches:
> 
> https://github.com/TheChymera/overlay/blob/
> 97e4d2861c0f2e09a493d5ea533566cb95ba0c19/dev-python/wxpython/wxpython-4.0.3.
> ebuild
> 
> The ebuild builds, but the tests do not pass:
> 
> https://bugs.gentoo.org/attachment.cgi?id=559762
> 
> It would be nice if somebody could at least confirm this buug, and if any of
> the package maintainers would chime in. This is already a major hold-up.

Personally, I'm not too concerned about tests, as these are usually disabled by default anyway. Installed today an update to wxPython 4.0.4 and hacked an KiCAD 5.0.1 ebuild  to use it. Works lilke a charm.
Comment 16 Alex 2019-01-20 14:00:54 UTC
(In reply to Alex from comment #15)
> Installed today an update to wxPython 4.0.4 _with GTK3_
Oh, sorry. Fixed.
Comment 17 Helmut Jarausch 2019-01-31 15:38:23 UTC
(In reply to Alex from comment #16)
> (In reply to Alex from comment #15)
> > Installed today an update to wxPython 4.0.4 _with GTK3_
> Oh, sorry. Fixed.

Is there a 4.0.4 version?

Version 4.0.3 with the given patches works just fine.
For installation one needs the dev-python/pypubsub package.

Please add both to the tree!

Thanks,
Helmut
Comment 18 Horea Christian 2019-02-16 16:59:29 UTC
Does anybody have a working ebuild for pypubsub? I am trying to write one, but I'm having trouble getting the tests to pass https://github.com/schollii/pypubsub/issues/34
Comment 20 Horea Christian 2019-03-18 18:43:07 UTC
Ok, seems I have gotten this to work over here, if any of you would like to test wxpython-4 please do so from my overlay:

https://github.com/TheChymera/overlay

In order to get python 2/3 compatibility for the dependency stack you will also be needing pypubsub from my overlay. I had to tweak a few things together with upstream, and while it works now, the =pypubsub-3.4.0 ebuild might break intermittently as he pushes the final few documentation updates. So if during testing you get checksum issues, just re-compute the manifest.
Comment 21 Larry the Git Cow gentoo-dev 2019-05-24 18:20:18 UTC
The bug has been closed via the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e8e14b564d7f9cc694a1a96031703be15b2d41bc

commit e8e14b564d7f9cc694a1a96031703be15b2d41bc
Author:     Virgil Dupras <vdupras@gentoo.org>
AuthorDate: 2019-05-24 18:19:34 +0000
Commit:     Virgil Dupras <vdupras@gentoo.org>
CommitDate: 2019-05-24 18:19:34 +0000

    dev-python/wxpython: bump to 4.0.6
    
    Also, take over maintainership.
    
    Closes: https://bugs.gentoo.org/632602
    Closes: https://bugs.gentoo.org/667318
    Signed-off-by: Virgil Dupras <vdupras@gentoo.org>
    Package-Manager: Portage-2.3.66, Repoman-2.3.11

 dev-python/wxpython/Manifest                       |  1 +
 .../wxpython/files/wxpython-4.0.6-no-webkit.patch  | 27 +++++++
 .../files/wxpython-4.0.6-skip-broken-tests.patch   | 91 ++++++++++++++++++++++
 dev-python/wxpython/metadata.xml                   |  6 +-
 dev-python/wxpython/wxpython-4.0.6.ebuild          | 89 +++++++++++++++++++++
 5 files changed, 213 insertions(+), 1 deletion(-)