[Python-modules-team] Bug#946481: ipython_5.8.0 and python-3.8 cause TypeError

Anton Gladky gladk at debian.org
Mon Dec 9 20:35:53 GMT 2019


Package: ipython
Version: 5.8.0-1
Severity: important
Tags: upstream patch

Dear Maintainer,

ipython is used by yade package as an interactive python frontend.

In the current sid Yade is partly used in inetractive mode.

yade:
=======

In [1]: O.dt=1e-4
---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
/usr/lib/python3.8/codeop.py in __call__(self, source, filename, symbol)
    131
    132     def __call__(self, source, filename, symbol):
--> 133         codeob = compile(source, filename, symbol, self.flags, 1)
    134         for feature in _features:
    135             if codeob.co_flags & feature.compiler_flag:

TypeError: required field "type_ignores" missing from Module
=======

The bug is known and fixed by upstream in the newer versions [1], [2].

The minimal patch, which fixes at least the Yade issue is attached.

Please consider appplying it.


[1] https://github.com/ipython/ipython/issues/11590
[2] https://github.com/ipython/ipython/pull/11593


Thank you

Anton
-------------- next part --------------
diff --git a/debian/patches/03_fix_python3.8.patch b/debian/patches/03_fix_python3.8.patch
new file mode 100644
index 0000000..25face6
--- /dev/null
+++ b/debian/patches/03_fix_python3.8.patch
@@ -0,0 +1,16 @@
+Description: Fixes TypeError due to python3.8
+Author: Anton Gladky <gladk at debian.org>
+Upstream: https://github.com/ipython/ipython/issues/11590
+Last-Update: 2019-12-09
+
+--- ipython-5.8.0.orig/IPython/core/interactiveshell.py
++++ ipython-5.8.0/IPython/core/interactiveshell.py
+@@ -2813,7 +2813,7 @@ class InteractiveShell(SingletonConfigur
+ 
+         try:
+             for i, node in enumerate(to_run_exec):
+-                mod = ast.Module([node])
++                mod = ast.Module([node], [])
+                 code = compiler(mod, cell_name, "exec")
+                 if self.run_code(code, result):
+                     return True
diff --git a/debian/patches/series b/debian/patches/series
index 0ca629c..232ad59 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -1,2 +1,3 @@
 0001-use-setuptools-also-for-the-install-target-so-the-py.patch
 0002-Update-intersphinx-links-for-local-access.patch
+03_fix_python3.8.patch


More information about the Python-modules-team mailing list