Note: This is a public test instance of Red Hat Bugzilla. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback at bugzilla.redhat.com.
Bug 1593029 - python-wxpython4 FTBFS on Python 3.7
Summary: python-wxpython4 FTBFS on Python 3.7
Keywords:
Status: CLOSED RAWHIDE
Alias: None
Product: Fedora
Classification: Fedora
Component: python-wxpython4
Version: rawhide
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Scott Talbert
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks: PYTHON37
TreeView+ depends on / blocked
 
Reported: 2018-06-19 22:00 UTC by Miro Hrončok
Modified: 2018-06-20 21:07 UTC (History)
1 user (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2018-06-20 21:07:20 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)

Description Miro Hrončok 2018-06-19 22:00:58 UTC
fedpkg build --target=f29-python

https://koji.fedoraproject.org/koji/taskinfo?taskID=27740623

Version-Release number of selected component (if applicable): python-wxpython4-4.0.1-5.fc29


Running command: build_py
Checking for /builddir/build/BUILD/python-wxpython4-4.0.1/python3/bin/waf-1.7.15-p1...
"/usr/bin/python3" /builddir/build/BUILD/python-wxpython4-4.0.1/python3/bin/waf-1.7.15-p1 --wx_config=wx-config-3.0 --gtk3 --python="/usr/bin/python3" --out=build/waf/3.7/gtk3 configure build 
Traceback (most recent call last):
  File "/builddir/build/BUILD/python-wxpython4-4.0.1/python3/bin/.waf3-1.7.15-9c6c439a6416a92b3e844736c4ef3c7b/waflib/Node.py", line 282, in ant_iter
    raise StopIteration
StopIteration
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
  File "/builddir/build/BUILD/python-wxpython4-4.0.1/python3/bin/.waf3-1.7.15-9c6c439a6416a92b3e844736c4ef3c7b/waflib/Scripting.py", line 97, in waf_entry_point
    run_commands()
  File "/builddir/build/BUILD/python-wxpython4-4.0.1/python3/bin/.waf3-1.7.15-9c6c439a6416a92b3e844736c4ef3c7b/waflib/Scripting.py", line 149, in run_commands
    parse_options()
  File "/builddir/build/BUILD/python-wxpython4-4.0.1/python3/bin/.waf3-1.7.15-9c6c439a6416a92b3e844736c4ef3c7b/waflib/Scripting.py", line 127, in parse_options
    Context.create_context('options').execute()
  File "/builddir/build/BUILD/python-wxpython4-4.0.1/python3/bin/.waf3-1.7.15-9c6c439a6416a92b3e844736c4ef3c7b/waflib/Options.py", line 134, in execute
    super(OptionsContext,self).execute()
  File "/builddir/build/BUILD/python-wxpython4-4.0.1/python3/bin/.waf3-1.7.15-9c6c439a6416a92b3e844736c4ef3c7b/waflib/Context.py", line 84, in execute
    self.recurse([os.path.dirname(g_module.root_path)])
  File "/builddir/build/BUILD/python-wxpython4-4.0.1/python3/bin/.waf3-1.7.15-9c6c439a6416a92b3e844736c4ef3c7b/waflib/Context.py", line 125, in recurse
    user_function(self)
  File "/builddir/build/BUILD/python-wxpython4-4.0.1/python3/wscript", line 33, in options
    opt.load('compiler_cc compiler_cxx')
  File "/builddir/build/BUILD/python-wxpython4-4.0.1/python3/bin/.waf3-1.7.15-9c6c439a6416a92b3e844736c4ef3c7b/waflib/Context.py", line 81, in load
    fun(self)
  File "/builddir/build/BUILD/python-wxpython4-4.0.1/python3/bin/.waf3-1.7.15-9c6c439a6416a92b3e844736c4ef3c7b/waflib/Tools/compiler_c.py", line 31, in options
    opt.load_special_tools('c_*.py',ban=['c_dumbpreproc.py'])
  File "/builddir/build/BUILD/python-wxpython4-4.0.1/python3/bin/.waf3-1.7.15-9c6c439a6416a92b3e844736c4ef3c7b/waflib/Context.py", line 261, in load_special_tools
    lst=self.root.find_node(waf_dir).find_node('waflib/extras').ant_glob(var)
  File "/builddir/build/BUILD/python-wxpython4-4.0.1/python3/bin/.waf3-1.7.15-9c6c439a6416a92b3e844736c4ef3c7b/waflib/Node.py", line 331, in ant_glob
    ret=[x for x in self.ant_iter(accept=accept,pats=[to_pat(incl),to_pat(excl)],maxdepth=kw.get('maxdepth',25),dir=dir,src=src,remove=kw.get('remove',True))]
  File "/builddir/build/BUILD/python-wxpython4-4.0.1/python3/bin/.waf3-1.7.15-9c6c439a6416a92b3e844736c4ef3c7b/waflib/Node.py", line 331, in <listcomp>
    ret=[x for x in self.ant_iter(accept=accept,pats=[to_pat(incl),to_pat(excl)],maxdepth=kw.get('maxdepth',25),dir=dir,src=src,remove=kw.get('remove',True))]
RuntimeError: generator raised StopIteration

Additional info:
https://docs.python.org/3.7/whatsnew/3.7.html#changes-in-python-behavior
https://www.python.org/dev/peps/pep-0479/

Similar bugs/fixes:
https://bugzilla.redhat.com/show_bug.cgi?id=1583818
https://bitbucket.org/ianb/paste/pull-requests/41/python-37-support/diff
https://github.com/erikrose/more-itertools/commit/e38574428c952b143fc4e0e42cb99b242c7b7977
https://github.com/drkjam/netaddr/pull/167



If you fix this, please build in the Python 3.7 side tag with: fedpkg build --target=f29-python

Comment 1 Miro Hrončok 2018-06-19 22:03:30 UTC
https://wxpython.org/news/wxpython-4.0.2-release/index.html

> Updated the waf tool used by the build to version 2.0.7. This fixes problems with building for Python 3.7.


Please either update (I've seen that's blocked) or backport the fixer.

Comment 2 Scott Talbert 2018-06-20 21:07:20 UTC
Fixed in f29-python tag.


Note You need to log in before you can comment on or make changes to this bug.