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 1927129

Summary: ipython: FTBFS in Fedora rawhide
Product: [Fedora] Fedora Reporter: Tomáš Hrnčiar <thrnciar>
Component: ipythonAssignee: Lumír Balhar <lbalhar>
Status: CLOSED RAWHIDE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: rawhideCC: dcantrell, lbalhar, mhroncok, michel, mrunge, orion, python-sig, tomspur
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
URL: https://koschei.fedoraproject.org/package/ipython
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2021-02-10 12:18:55 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 1868278, 1890881    

Description Tomáš Hrnčiar 2021-02-10 07:04:59 UTC
Description of problem:
Package ipython fails to build from source in Fedora rawhide.

Version-Release number of selected component (if applicable):
7.20.0-1.fc34

Steps to Reproduce:
koji build --scratch f34 ipython-7.20.0-1.fc34.src.rpm

Additional info:
This package is tracked by Koschei. See:
https://koschei.fedoraproject.org/package/ipython

======================================================================
ERROR: that xmode skip frames
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/usr/lib/python3.9/site-packages/pexpect/pty_spawn.py", line 23, in _wrap_ptyprocess_err
    yield
  File "/usr/lib/python3.9/site-packages/pexpect/pty_spawn.py", line 328, in close
    self.ptyproc.close(force=force)
  File "/usr/lib/python3.9/site-packages/ptyprocess/ptyprocess.py", line 400, in close
    raise PtyProcessError('Could not terminate the child.')
ptyprocess.util.PtyProcessError: Could not terminate the child.
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
  File "/usr/lib/python3.9/site-packages/nose/case.py", line 197, in runTest
    self.test(*self.arg)
  File "/builddir/build/BUILDROOT/ipython-7.20.0-1.fc34.noarch/usr/lib/python3.9/site-packages/IPython/testing/decorators.py", line 212, in skipper_func
    return f(*args, **kwargs)
  File "/builddir/build/BUILDROOT/ipython-7.20.0-1.fc34.noarch/usr/lib/python3.9/site-packages/IPython/core/tests/test_debugger.py", line 326, in test_xmode_skip
    child.close()
  File "/usr/lib/python3.9/site-packages/pexpect/pty_spawn.py", line 328, in close
    self.ptyproc.close(force=force)
  File "/usr/lib64/python3.9/contextlib.py", line 135, in __exit__
    self.gen.throw(type, value, traceback)
  File "/usr/lib/python3.9/site-packages/pexpect/pty_spawn.py", line 25, in _wrap_ptyprocess_err
    raise ExceptionPexpect(*e.args)
pexpect.exceptions.ExceptionPexpect: Could not terminate the child.
----------------------------------------------------------------------
Ran 653 tests in 20.498s
FAILED (SKIP=10, errors=1)
�
Test group: extensions
..
----------------------------------------------------------------------
Ran 2 tests in 0.013s
OK
�
Test group: lib
....S./builddir/build/BUILDROOT/ipython-7.20.0-1.fc34.noarch/usr/lib/python3.9/site-packages/IPython/lib/display.py:173: DeprecationWarning: tostring() is deprecated. Use tobytes() instead.
  return scaled.astype('<h').tostring(), nchan
........................................................................................
----------------------------------------------------------------------
Ran 94 tests in 3.216s
OK (SKIP=1)
�
Test group: terminal
..................
----------------------------------------------------------------------
Ran 18 tests in 12.675s
OK
�
Test group: testing
..SS..S............S..
----------------------------------------------------------------------
Ran 22 tests in 3.432s
OK (SKIP=4)
�
Test group: utils
......................................................................S...SS...S..../builddir/build/BUILDROOT/ipython-7.20.0-1.fc34.noarch/usr/lib/python3.9/site-packages/IPython/paths.py:59: UserWarning: IPython dir '/tmp/tmpxc8sbuot/tmp72wltggi/.ipython' is not a writable location, using a temp directory.
  warn("IPython dir '{0}' is not a writable location,"
.S..............S..S.......................................................
----------------------------------------------------------------------
Ran 159 tests in 3.294s
OK (SKIP=7)
�
Test group: autoreload
.....
----------------------------------------------------------------------
Ran 5 tests in 10.082s
OK

Comment 1 Lumír Balhar 2021-02-10 08:34:18 UTC
Builds fine for me in rawhide mock and Koji: https://koji.fedoraproject.org/koji/taskinfo?taskID=61702440

Comment 2 Tomáš Hrnčiar 2021-02-10 08:38:25 UTC
There are also some failures with Python 3.10a5.

https://download.copr.fedorainfracloud.org/results/@python/python3.10/fedora-rawhide-x86_64/01955212-ipython/builder-live.log.gz

======================================================================
ERROR: test_multi (IPython.core.tests.test_inputsplitter.InteractiveLoopTestCase)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/builddir/build/BUILDROOT/ipython-7.20.0-1.fc34.x86_64/usr/lib/python3.10/site-packages/IPython/core/tests/test_inputsplitter.py", line 382, in test_multi
    self.check_ns(['x =(1+','1+','2)'], dict(x=4))
  File "/builddir/build/BUILDROOT/ipython-7.20.0-1.fc34.x86_64/usr/lib/python3.10/site-packages/IPython/core/tests/test_inputsplitter.py", line 362, in check_ns
    exec(src, test_ns)
  File "<string>", line 1
    x =(1+
       ^
SyntaxError: '(' was never closed

======================================================================
FAIL: test_check_complete (IPython.core.tests.test_inputsplitter.InputSplitterTestCase)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/builddir/build/BUILDROOT/ipython-7.20.0-1.fc34.x86_64/usr/lib/python3.10/site-packages/IPython/core/tests/test_inputsplitter.py", line 347, in test_check_complete
    self.assertEqual(isp.check_complete("a = [1,\n2,"), ('incomplete', 0))
AssertionError: Tuples differ: ('invalid', None) != ('incomplete', 0)

First differing element 0:
'invalid'
'incomplete'

- ('invalid', None)
+ ('incomplete', 0)
    """Fail immediately, with the given message."""
>>  raise self.failureException("Tuples differ: ('invalid', None) != ('incomplete', 0)\n\nFirst differing element 0:\n'invalid'\n'incomplete'\n\n- ('invalid', None)\n+ ('incomplete', 0)")
    

======================================================================
FAIL: test_push3 (IPython.core.tests.test_inputsplitter.InputSplitterTestCase)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/builddir/build/BUILDROOT/ipython-7.20.0-1.fc34.x86_64/usr/lib/python3.10/site-packages/IPython/core/tests/test_inputsplitter.py", line 257, in test_push3
    self.assertEqual(isp.push('b = [1,'), False)
AssertionError: True != False
    'True != False' = '%s != %s' % _common_shorten_repr(True, False)
    'True != False' = self._formatMessage('True != False', 'True != False')
>>  raise self.failureException('True != False')

Comment 3 Miro Hrončok 2021-02-10 08:59:42 UTC
There are 2 different issues in here.

There are failures on Python 3.10.

And there were failures in Koschei on Python 3.9 / ppc64le but I was not able to reproduce with:

[ipython (rawhide)]$ fedpkg --release rawhide build --nowait --scratch --arches ppc64le
Building ipython-7.20.0-1.fc35 for rawhide
Created task: 61702817
Task info: https://koji.fedoraproject.org/koji/taskinfo?taskID=61702817


So I'd say this can either be closed or renamed to be Python 3.10 specific.

Comment 5 Lumír Balhar 2021-02-10 12:18:55 UTC
The fix is in dist-git but I don't plan to build it in rawhide.