Karthik, your analysis is correct. You just have to import importlib first to get the error:
import importlib import importlib.util importlib.util.abc.Loader Traceback (most recent call last): File "<stdin>", line 1, in <module> AttributeError: module 'importlib.util' has no attribute 'abc'
On Mon, Aug 31, 2020 at 12:09 PM Karthikeyan <tir.karthi@gmail.com> wrote:
The last successful build is https://travis-ci.com/github/python/cpython/jobs/379161961 Recent failure build is https://travis-ci.com/github/python/cpython/jobs/379329436
I can see setuptools being upgraded from 49.6.0 to 50.0.0 as a difference. I can see the below command to print sphinx-build version error out in the makefile but unfortunately the error is being redirected to /dev/null in the makefile and I needed to run it explicitly to see the output. There is a recent change that moves Loader to _abc and imports Loader from _abc inside abc is done with below commit. The same code is present in 49.6.0 too at https://github.com/pypa/setuptools/blob/04e3df22df840c6bb244e9b27bc56750c44b... . So I am not sure why this causes error.
Pinning the dependency of setuptools to 49.6.0 in Doc/makefile runs the tests fine without error. Can you please try pinning it and see if it helps?
I am not sure if the below commit is the cause that is picked up in setuptools but someone can correct me if I am wrong about the importlib machinery error.
commit 9e09849d20987c131b28bcdd252e53440d4cd1b3 Author: Victor Stinner <vstinner@python.org> Date: Wed Jun 17 23:15:59 2020 +0200
bpo-41006: importlib.util no longer imports typing (GH-20938)
Create importlib._abc submodule to avoid importing typing when importlib.util is imported. Move Loader ABC into importlib._abc.
./python Python 3.10.0a0 (heads/master:75c80b0bda, Aug 30 2020, 13:53:05) [GCC 7.5.0] on linux Type "help", "copyright", "credits" or "license" for more information.
import importlib.util importlib.util.abc.Loader Traceback (most recent call last): File "<stdin>", line 1, in <module> AttributeError: module 'importlib.util' has no attribute 'abc'
➜ cpython git:(master) ✗ git checkout 9e09849d20987c131b28bcdd252e53440d4cd1b3~1 Lib/importlib/util.py ➜ cpython git:(master) ✗ ./python Python 3.10.0a0 (heads/master:75c80b0bda, Aug 30 2020, 13:53:05) [GCC 7.5.0] on linux Type "help", "copyright", "credits" or "license" for more information.
import importlib.util importlib.util.abc.Loader <class 'importlib._abc.Loader'>
xvfb-run make -C Doc/ PYTHON=../python SPHINXOPTS="-q -W --keep-going -j4" doctest suspicious html make: Entering directory '/root/cpython/Doc' make[1]: Entering directory '/root/cpython/Doc' mkdir -p build echo PATH=./venv/bin:$PATH blurb help PATH=./venv/bin:/root/.poetry/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games blurb help echo PATH=./venv/bin:$PATH sphinx-build --version PATH=./venv/bin:/root/.poetry/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games sphinx-build --version Building NEWS from Misc/NEWS.d with blurb PATH=./venv/bin:$PATH sphinx-build -b doctest -d build/doctrees -q -W --keep-going -j4 -W . build/doctest Traceback (most recent call last): File "/root/cpython/Doc/./venv/bin/sphinx-build", line 5, in <module> from sphinx.cmd.build import main File "/root/cpython/Doc/venv/lib/python3.10/site-packages/sphinx/cmd/build.py", line 23, in <module> from sphinx.application import Sphinx File "/root/cpython/Doc/venv/lib/python3.10/site-packages/sphinx/application.py", line 28, in <module> from sphinx.config import Config File "/root/cpython/Doc/venv/lib/python3.10/site-packages/sphinx/config.py", line 22, in <module> from sphinx.util import logging File "/root/cpython/Doc/venv/lib/python3.10/site-packages/sphinx/util/__init__.py", line 40, in <module> from sphinx.util import smartypants # noqa File "/root/cpython/Doc/venv/lib/python3.10/site-packages/sphinx/util/smartypants.py", line 33, in <module> from sphinx.util.docutils import __version_info__ as docutils_version File "/root/cpython/Doc/venv/lib/python3.10/site-packages/sphinx/util/docutils.py", line 17, in <module> from distutils.version import LooseVersion File "<frozen importlib._bootstrap>", line 1007, in _find_and_load File "<frozen importlib._bootstrap>", line 982, in _find_and_load_unlocked File "<frozen importlib._bootstrap>", line 925, in _find_spec File "/root/cpython/Doc/venv/lib/python3.10/site-packages/_distutils_hack/__init__.py", line 74, in find_spec return method() File "/root/cpython/Doc/venv/lib/python3.10/site-packages/_distutils_hack/__init__.py", line 79, in spec_for_distutils class DistutilsLoader(importlib.util.abc.Loader): AttributeError: module 'importlib.util' has no attribute 'abc' Makefile:49: recipe for target 'build' failed make[1]: *** [build] Error 1 make[1]: Leaving directory '/root/cpython/Doc' Testing of doctests in the sources finished, look at the results in build/doctest/output.txt Makefile:129: recipe for target 'doctest' failed make: *** [doctest] Error 1 make: Leaving directory '/root/cpython/Doc'
Thanks
On Mon, Aug 31, 2020 at 5:35 PM Mark Shannon <mark@hotpy.org> wrote:
Hi,
There seems to be something wrong with the doc tests for PRs on Github.
https://github.com/python/cpython/pull/22026/checks?check_run_id=1050881634 https://github.com/python/cpython/pull/22025/checks?check_run_id=1050403463
Anyone know what the issue is?
Cheers, Mark.
(apologies for the previous empty email) _______________________________________________ Python-Dev mailing list -- python-dev@python.org To unsubscribe send an email to python-dev-leave@python.org https://mail.python.org/mailman3/lists/python-dev.python.org/ Message archived at https://mail.python.org/archives/list/python-dev@python.org/message/KMXK6BQW... Code of Conduct: http://python.org/psf/codeofconduct/
-- Regards, Karthikeyan S _______________________________________________ Python-Dev mailing list -- python-dev@python.org To unsubscribe send an email to python-dev-leave@python.org https://mail.python.org/mailman3/lists/python-dev.python.org/ Message archived at https://mail.python.org/archives/list/python-dev@python.org/message/TJE5XWLK... Code of Conduct: http://python.org/psf/codeofconduct/