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 1978009

Summary: python-jupyter-console: loop parameter passed to asyncio.wait() breaks on Python 3.10
Product: [Fedora] Fedora Reporter: Jerry James <loganjerry>
Component: python-jupyter-consoleAssignee: Miro Hrončok <mhroncok>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: unspecified    
Version: rawhideCC: mhroncok, python-sig, quantum.analyst, thrnciar
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: python-jupyter-console-6.4.0-3.fc35 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2021-07-02 10:42:45 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: 1890881    

Description Jerry James 2021-06-30 22:25:58 UTC
Description of problem:
I am experimenting with bash_kernel.  An attempt to use it in Rawhide failed:

Traceback (most recent call last):
  File "/usr/bin/jupyter-console", line 33, in <module>
    sys.exit(load_entry_point('jupyter-console==6.4.0', 'console_scripts', 'jupyter-console')())
  File "/usr/lib/python3.10/site-packages/jupyter_core/application.py", line 254, in launch_instance
    return super(JupyterApp, cls).launch_instance(argv=argv, **kwargs)
  File "/usr/lib/python3.10/site-packages/traitlets/config/application.py", line 845, in launch_instance
    app.start()
  File "/usr/lib/python3.10/site-packages/jupyter_console/app.py", line 148, in start
    self.shell.mainloop()
  File "/usr/lib/python3.10/site-packages/jupyter_console/ptshell.py", line 664, in mainloop
    main_task = asyncio.wait(tasks, loop=loop, return_when=asyncio.FIRST_COMPLETED)
TypeError: wait() got an unexpected keyword argument 'loop'
sys:1: RuntimeWarning: coroutine 'ZMQTerminalInteractiveShell.interact' was never awaited
[IPKernelApp] WARNING | Parent appears to have exited, shutting down.

The issue is that asyncio.wait() no longer accepts the loop keyword in python 3.10; see https://docs.python.org/3.10/library/asyncio-task.html#waiting-primitives.

Version-Release number of selected component (if applicable):
python3-jupyter-console-6.4.0-2.fc35.noarch

How reproducible:
Always

Steps to Reproduce:
1. On a Rawhide machine (or in a Rawhide mock chroot), run "jupyter console"

Actual results:
The error shown above.

Expected results:
A Jupyter console.

Additional info:

Comment 1 Miro Hrončok 2021-07-02 09:33:34 UTC
The fix is quite simple: https://src.fedoraproject.org/rpms/python-jupyter-console/pull-request/2

I've added a smoke test for the console to %check, to ensure this won't happen again.

Comment 2 Fedora Update System 2021-07-02 10:40:52 UTC
FEDORA-2021-a01f706178 has been submitted as an update to Fedora 35. https://bodhi.fedoraproject.org/updates/FEDORA-2021-a01f706178

Comment 3 Fedora Update System 2021-07-02 10:42:45 UTC
FEDORA-2021-a01f706178 has been pushed to the Fedora 35 stable repository.
If problem still persists, please make note of it in this bug report.