Running notebooks with Python 3.8.3 causes Assertion errors
- 主要言語
- Python
- スター
- 734
- フォーク
- 412
- 平均マージ
- 1日 5時間
- マージ済み PR(30日)
- 8
説明
Since upgrading to the latest python release 3.8.3 on my system I have had issues running a notebook, specifically: https://github.com/Qiskit/qiskit-tutorials/blob/master/tutorials/circuits_advanced/1_advanced_circuits.ipynb Running that notebook when you run it from scratch on a fresh kernel it hangs on cell 8 and the jupyter notebook output logs multiple assertion errors:
```
[I 07:27:26.810 NotebookApp] Replaying 3 buffered messages
[IPKernelApp] ERROR | Exception in message handler:
Traceback (most recent call last):
File "/tmp/test-tutorials/lib/python3.8/site-packages/ipykernel/kernelbase.py", line 268, in dispatch_shell
yield gen.maybe_future(handler(stream, idents, msg))
File "/tmp/test-tutorials/lib/python3.8/site-packages/tornado/gen.py", line 735, in run
value = future.result()
File "/tmp/test-tutorials/lib/python3.8/site-packages/tornado/gen.py", line 209, in wrapper
yielded = next(result)
File "/tmp/test-tutorials/lib/python3.8/site-packages/ipykernel/kernelbase.py", line 543, in execute_request
self.do_execute(
File "/tmp/test-tutorials/lib/python3.8/site-packages/tornado/gen.py", line 225, in wrapper
runner = Runner(result, future, yielded)
File "/tmp/test-tutorials/lib/python3.8/site-packages/tornado/gen.py", line 712, in __init__
if self.handle_yield(first_yielded):
File "/tmp/test-tutorials/lib/python3.8/site-packages/tornado/gen.py", line 789, in handle_yield
self.io_loop.add_future(self.future, inner)
File "/tmp/test-tutorials/lib/python3.8/site-packages/tornado/ioloop.py", line 693, in add_future
assert is_future(future)
AssertionError
[IPKernelApp] ERROR | Exception in message handler:
Traceback (most recent call last):
File "/tmp/test-tutorials/lib/python3.8/site-packages/ipykernel/kernelbase.py", line 268, in dispatch_shell
yield gen.maybe_future(handler(stream, idents, msg))
File "/tmp/test-tutorials/lib/python3.8/site-packages/tornado/gen.py", line 735, in run
value = future.result()
File "/tmp/test-tutorials/lib/python3.8/site-packages/tornado/gen.py", line 209, in wrapper
yielded = next(result)
File "/tmp/test-tutorials/lib/python3.8/site-packages/ipykernel/kernelbase.py", line 543, in execute_request
self.do_execute(
File "/tmp/test-tutorials/lib/python3.8/site-packages/tornado/gen.py", line 225, in wrapper
runner = Runner(result, future, yielded)
File "/tmp/test-tutorials/lib/python3.8/site-packages/tornado/gen.py", line 712, in __init__
if self.handle_yield(first_yielded):
File "/tmp/test-tutorials/lib/python3.8/site-packages/tornado/gen.py", line 789, in handle_yield
self.io_loop.add_future(self.future, inner)
File "/tmp/test-tutorials/lib/python3.8/site-packages/tornado/ioloop.py", line 693, in add_future
assert is_future(future)
AssertionError
[IPKernelApp] ERROR | Exception in message handler:
Traceback (most recent call last):
File "/tmp/test-tutorials/lib/python3.8/site-packages/ipykernel/kernelbase.py", line 268, in dispatch_shell
yield gen.maybe_future(handler(stream, idents, msg))
File "/tmp/test-tutorials/lib/python3.8/site-packages/tornado/gen.py", line 735, in run
value = future.result()
File "/tmp/test-tutorials/lib/python3.8/site-packages/tornado/gen.py", line 209, in wrapper
yielded = next(result)
File "/tmp/test-tutorials/lib/python3.8/site-packages/ipykernel/kernelbase.py", line 543, in execute_request
self.do_execute(
File "/tmp/test-tutorials/lib/python3.8/site-packages/tornado/gen.py", line 225, in wrapper
runner = Runner(result, future, yielded)
File "/tmp/test-tutorials/lib/python3.8/site-packages/tornado/gen.py", line 712, in __init__
if self.handle_yield(first_yielded):
File "/tmp/test-tutorials/lib/python3.8/site-packages/tornado/gen.py", line 789, in handle_yield
self.io_loop.add_future(self.future, inner)
File "/tmp/test-tutorials/lib/python3.8/site-packages/tornado/ioloop.py", line 693, in add_future
assert is_future(future)
AssertionError
[IPKernelApp] ERROR | Exception in message handler:
Traceback (most recent call last):
File "/tmp/test-tutorials/lib/python3.8/site-packages/ipykernel/kernelbase.py", line 268, in dispatch_shell
yield gen.maybe_future(handler(stream, idents, msg))
File "/tmp/test-tutorials/lib/python3.8/site-packages/tornado/gen.py", line 735, in run
value = future.result()
File "/tmp/test-tutorials/lib/python3.8/site-packages/tornado/gen.py", line 209, in wrapper
yielded = next(result)
File "/tmp/test-tutorials/lib/python3.8/site-packages/ipykernel/kernelbase.py", line 543, in execute_request
self.do_execute(
File "/tmp/test-tutorials/lib/python3.8/site-packages/tornado/gen.py", line 225, in wrapper
runner = Runner(result, future, yielded)
File "/tmp/test-tutorials/lib/python3.8/site-packages/tornado/gen.py", line 712, in __init__
if self.handle_yield(first_yielded):
File "/tmp/test-tutorials/lib/python3.8/site-packages/tornado/gen.py", line 789, in handle_yield
self.io_loop.add_future(self.future, inner)
File "/tmp/test-tutorials/lib/python3.8/site-packages/tornado/ioloop.py", line 693, in add_future
assert is_future(future)
AssertionError
```
Downgrading python to 3.8.2 (or 3.7.x) fixes this. I've also confirmed it on other platforms (I run on linux, but mac users running 3.8.3 have had the same issue). I assume this is probably a bug in python or tornado, but I lack the domain expertise on the stack to be sure.
コントリビューションガイド
評価
この issue はまだ評価されていません。