ipython fails to build with Python 3.10.0a7. Test group: core /builddir/build/BUILDROOT/ipython-7.22.0-1.fc35.x86_64/usr/lib/python3.10/site-packages/IPython/core/inputsplitter.py:21: DeprecationWarning: IPython.core.inputsplitter is deprecated since IPython 7 in favor of `IPython.core.inputtransformer2` warn('IPython.core.inputsplitter is deprecated since IPython 7 in favor of `IPython.core.inputtransformer2`', ........................................SSSS.......................S......................................................................................................................................S..E.........................................................................................................................................S...................................................../bin/bash: line 1: python: command not found S. KeyboardInterrupt ....S......./builddir/build/BUILDROOT/ipython-7.22.0-1.fc35.x86_64/usr/lib/python3.10/site-packages/IPython/core/tests/test_interactiveshell.py:1022: DeprecationWarning: `should_run_async` will not call `transform_cell` automatically in the future. Please pass the result to `transformed_cell` argument and any exception that happen during thetransform in `preprocessing_exc_tuple` in IPython 7.17 and above. assert not ip.should_run_async("a = 5") /builddir/build/BUILDROOT/ipython-7.22.0-1.fc35.x86_64/usr/lib/python3.10/site-packages/IPython/core/tests/test_interactiveshell.py:1023: DeprecationWarning: `should_run_async` will not call `transform_cell` automatically in the future. Please pass the result to `transformed_cell` argument and any exception that happen during thetransform in `preprocessing_exc_tuple` in IPython 7.17 and above. assert ip.should_run_async("await x") /builddir/build/BUILDROOT/ipython-7.22.0-1.fc35.x86_64/usr/lib/python3.10/site-packages/IPython/core/tests/test_interactiveshell.py:1024: DeprecationWarning: `should_run_async` will not call `transform_cell` automatically in the future. Please pass the result to `transformed_cell` argument and any exception that happen during thetransform in `preprocessing_exc_tuple` in IPython 7.17 and above. assert ip.should_run_async("import asyncio; await asyncio.sleep(1)") .........................UsageError: Line magic function `%doesntexist` not found. .UsageError: Cell magic `%%doesntexist` not found. ...................................................................................................................................................../builddir/build/BUILDROOT/ipython-7.22.0-1.fc35.x86_64/usr/lib/python3.10/site-packages/IPython/core/pylabtools.py:132: MatplotlibDeprecationWarning: print_figure() got unexpected keyword argument "quality" which is no longer supported as of 3.3 and will become an error two minor releases later fig.canvas.print_figure(bytes_io, **kw) ................................................................S. ====================================================================== ERROR: IPython.core.tests.test_history.test_timestamp_type ---------------------------------------------------------------------- Traceback (most recent call last): File "/usr/lib/python3.10/site-packages/nose/case.py", line 197, in runTest self.test(*self.arg) File "/builddir/build/BUILDROOT/ipython-7.22.0-1.fc35.x86_64/usr/lib/python3.10/site-packages/IPython/core/tests/test_history.py", line 173, in test_timestamp_type info = ip.history_manager.get_session_info() File "/builddir/build/BUILDROOT/ipython-7.22.0-1.fc35.x86_64/usr/lib/python3.10/site-packages/IPython/core/history.py", line 631, in get_session_info return super(HistoryManager, self).get_session_info(session=session) File "<decorator-gen-10>", line 2, in get_session_info File "/builddir/build/BUILDROOT/ipython-7.22.0-1.fc35.x86_64/usr/lib/python3.10/site-packages/IPython/core/history.py", line 58, in needs_sqlite return f(self, *a, **kw) File "<decorator-gen-9>", line 2, in get_session_info File "/builddir/build/BUILDROOT/ipython-7.22.0-1.fc35.x86_64/usr/lib/python3.10/site-packages/IPython/core/history.py", line 87, in catch_corrupt_db return f(self, *a, **kw) File "/builddir/build/BUILDROOT/ipython-7.22.0-1.fc35.x86_64/usr/lib/python3.10/site-packages/IPython/core/history.py", line 331, in get_session_info return self.db.execute(query, (session,)).fetchone() File "/usr/lib64/python3.10/sqlite3/dbapi2.py", line 67, in convert_timestamp datepart, timepart = val.split(b" ") ValueError: not enough values to unpack (expected 2, got 1) ---------------------------------------------------------------------- Ran 652 tests in 14.404s FAILED (SKIP=10, errors=1) � Test group: extensions .. ---------------------------------------------------------------------- Ran 2 tests in 0.008s OK � Test group: lib ....S......................................../builddir/build/BUILDROOT/ipython-7.22.0-1.fc35.x86_64/usr/lib/python3.10/site-packages/IPython/lib/latextools.py:126: MatplotlibDeprecationWarning: The to_png function was deprecated in Matplotlib 3.4 and will be removed two minor releases later. Use mathtext.math_to_image instead. mt.to_png(f, s, fontsize=12, dpi=dpi, color=color) /builddir/build/BUILDROOT/ipython-7.22.0-1.fc35.x86_64/usr/lib/python3.10/site-packages/IPython/lib/latextools.py:126: MatplotlibDeprecationWarning: The to_rgba function was deprecated in Matplotlib 3.4 and will be removed two minor releases later. Use mathtext.math_to_image instead. mt.to_png(f, s, fontsize=12, dpi=dpi, color=color) /builddir/build/BUILDROOT/ipython-7.22.0-1.fc35.x86_64/usr/lib/python3.10/site-packages/IPython/lib/latextools.py:126: MatplotlibDeprecationWarning: The to_mask function was deprecated in Matplotlib 3.4 and will be removed two minor releases later. Use mathtext.math_to_image instead. mt.to_png(f, s, fontsize=12, dpi=dpi, color=color) /builddir/build/BUILDROOT/ipython-7.22.0-1.fc35.x86_64/usr/lib/python3.10/site-packages/IPython/lib/latextools.py:126: MatplotlibDeprecationWarning: The MathtextBackendBitmap class was deprecated in Matplotlib 3.4 and will be removed two minor releases later. Use mathtext.math_to_image instead. mt.to_png(f, s, fontsize=12, dpi=dpi, color=color) ......../builddir/build/BUILDROOT/ipython-7.22.0-1.fc35.x86_64/usr/lib/python3.10/site-packages/IPython/lib/latextools.py:126: MatplotlibDeprecationWarning: The to_png function was deprecated in Matplotlib 3.4 and will be removed two minor releases later. Use mathtext.math_to_image instead. mt.to_png(f, s, fontsize=12, dpi=dpi, color=color) /builddir/build/BUILDROOT/ipython-7.22.0-1.fc35.x86_64/usr/lib/python3.10/site-packages/IPython/lib/latextools.py:126: MatplotlibDeprecationWarning: The to_rgba function was deprecated in Matplotlib 3.4 and will be removed two minor releases later. Use mathtext.math_to_image instead. mt.to_png(f, s, fontsize=12, dpi=dpi, color=color) /builddir/build/BUILDROOT/ipython-7.22.0-1.fc35.x86_64/usr/lib/python3.10/site-packages/IPython/lib/latextools.py:126: MatplotlibDeprecationWarning: The to_mask function was deprecated in Matplotlib 3.4 and will be removed two minor releases later. Use mathtext.math_to_image instead. mt.to_png(f, s, fontsize=12, dpi=dpi, color=color) /builddir/build/BUILDROOT/ipython-7.22.0-1.fc35.x86_64/usr/lib/python3.10/site-packages/IPython/lib/latextools.py:126: MatplotlibDeprecationWarning: The MathtextBackendBitmap class was deprecated in Matplotlib 3.4 and will be removed two minor releases later. Use mathtext.math_to_image instead. mt.to_png(f, s, fontsize=12, dpi=dpi, color=color) /builddir/build/BUILDROOT/ipython-7.22.0-1.fc35.x86_64/usr/lib/python3.10/site-packages/IPython/lib/latextools.py:126: MatplotlibDeprecationWarning: The to_png function was deprecated in Matplotlib 3.4 and will be removed two minor releases later. Use mathtext.math_to_image instead. mt.to_png(f, s, fontsize=12, dpi=dpi, color=color) /builddir/build/BUILDROOT/ipython-7.22.0-1.fc35.x86_64/usr/lib/python3.10/site-packages/IPython/lib/latextools.py:126: MatplotlibDeprecationWarning: The to_rgba function was deprecated in Matplotlib 3.4 and will be removed two minor releases later. Use mathtext.math_to_image instead. mt.to_png(f, s, fontsize=12, dpi=dpi, color=color) /builddir/build/BUILDROOT/ipython-7.22.0-1.fc35.x86_64/usr/lib/python3.10/site-packages/IPython/lib/latextools.py:126: MatplotlibDeprecationWarning: The to_mask function was deprecated in Matplotlib 3.4 and will be removed two minor releases later. Use mathtext.math_to_image instead. mt.to_png(f, s, fontsize=12, dpi=dpi, color=color) /builddir/build/BUILDROOT/ipython-7.22.0-1.fc35.x86_64/usr/lib/python3.10/site-packages/IPython/lib/latextools.py:126: MatplotlibDeprecationWarning: The MathtextBackendBitmap class was deprecated in Matplotlib 3.4 and will be removed two minor releases later. Use mathtext.math_to_image instead. mt.to_png(f, s, fontsize=12, dpi=dpi, color=color) ......................................... ---------------------------------------------------------------------- Ran 94 tests in 1.760s OK (SKIP=1) � Test group: terminal .................. ---------------------------------------------------------------------- Ran 18 tests in 7.731s OK � Test group: testing ..SS..S............S.. ---------------------------------------------------------------------- Ran 22 tests in 2.484s OK (SKIP=4) � Test group: utils ......................................................................S...SS...S..../builddir/build/BUILDROOT/ipython-7.22.0-1.fc35.x86_64/usr/lib/python3.10/site-packages/IPython/paths.py:59: UserWarning: IPython dir '/tmp/tmpq898j68t/tmpg61ciswx/.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 2.837s OK (SKIP=7) � Test group: autoreload ..... ---------------------------------------------------------------------- Ran 5 tests in 9.739s OK � ______________________________________________________________________ Test suite completed for system with the following information: IPython version: 7.22.0 IPython commit : 8648ed8d7 (installation) IPython package: ~/build/BUILDROOT/ipython-7.22.0-1.fc35.x86_64/usr/lib/python3.10/site-packages/IPython Python version : 3.10.0a7 (default, Apr 6 2021, 00:00:00) [GCC 11.0.1 20210405 (Red Hat 11.0.1-0)] sys.executable : /usr/bin/python3 Platform : Linux-5.10.7-200.fc33.x86_64-x86_64-with-glibc2.33.9000 Tools and libraries available at test time: matplotlib pygments sqlite3 Status: ERROR - 1 out of 7 test groups failed (core). Took 47.160s. You may wish to rerun these, with: iptest core For the build logs, see: https://copr-be.cloud.fedoraproject.org/results/@python/python3.10/fedora-rawhide-x86_64/02124522-ipython/ For all our attempts to build ipython with Python 3.10, see: https://copr.fedorainfracloud.org/coprs/g/python/python3.10/package/ipython/ Testing and mass rebuild of packages is happening in copr. You can follow these instructions to test locally in mock if your package builds with Python 3.10: https://copr.fedorainfracloud.org/coprs/g/python/python3.10/ Let us know here if you have any questions. Python 3.10 will be included in Fedora 35. To make that update smoother, we're building Fedora packages with early pre-releases of Python 3.10. A build failure prevents us from testing all dependent packages (transitive [Build]Requires), so if this package is required a lot, it's important for us to get it fixed soon. We'd appreciate help from the people who know this package best, but if you don't want to work on this now, let us know so we can try to work around it on our side.
Well, the final exception is raised in /usr/lib64/python3.10/sqlite3/dbapi2.py but I'll try to debug it.
When debugging this, it turned out that the problem is very likely in Python itself. ipython report: https://github.com/ipython/ipython/issues/12906 Python bug report: https://bugs.python.org/issue43831
This is confirmed to be a regression in the latest Python. https://bugs.python.org/issue43752 https://github.com/python/cpython/pull/25228 Will be fixed in the first beta.
This bug is fixed in the first beta release and ipython builds again in the Copr.