diff --git a/CHANGES b/CHANGES index 522479947..cad76cd50 100644 --- a/CHANGES +++ b/CHANGES @@ -33,6 +33,7 @@ Bugs fixed * #6584: i18n: Error when compiling message catalogs on Hindi * #6708: mathbase: Some deprecated functions have removed * #6709: autodoc: mock object does not work as a class decorator +* #6712: Allow not to install sphinx.testing as runtime (mainly for ALT Linux) Testing -------- diff --git a/sphinx/util/osutil.py b/sphinx/util/osutil.py index f9c7ce6c4..d74ea20fb 100644 --- a/sphinx/util/osutil.py +++ b/sphinx/util/osutil.py @@ -22,7 +22,12 @@ from os import path from typing import Any, Generator, Iterator, List, Tuple from sphinx.deprecation import RemovedInSphinx30Warning, RemovedInSphinx40Warning -from sphinx.testing.path import path as Path + +try: + # for ALT Linux (#6712) + from sphinx.testing.path import path as Path +except ImportError: + Path = None # type: ignore if False: # For type annotation @@ -178,7 +183,7 @@ fs_encoding = sys.getfilesystemencoding() or sys.getdefaultencoding() def abspath(pathdir: str) -> str: - if isinstance(pathdir, Path): + if Path is not None and isinstance(pathdir, Path): return pathdir.abspath() else: pathdir = path.abspath(pathdir)