ipython fails to build with sphinx 8.x in Fedora 42 (currently Rawhide). The issue detected: ``` ERROR: Invalid inventory location value `''` in intersphinx_mapping['python'][1]. Inventory locations must be non-empty strings or None. ERROR: Invalid inventory location value `''` in intersphinx_mapping['rpy2'][1]. Inventory locations must be non-empty strings or None. ERROR: Invalid inventory location value `''` in intersphinx_mapping['jupyterclient'][1]. Inventory locations must be non-empty strings or None. ERROR: Invalid inventory location value `''` in intersphinx_mapping['jupyter'][1]. Inventory locations must be non-empty strings or None. ERROR: Invalid inventory location value `''` in intersphinx_mapping['jedi'][1]. Inventory locations must be non-empty strings or None. ERROR: Invalid inventory location value `''` in intersphinx_mapping['traitlets'][1]. Inventory locations must be non-empty strings or None. ERROR: Invalid inventory location value `''` in intersphinx_mapping['ipykernel'][1]. Inventory locations must be non-empty strings or None. ERROR: Invalid inventory location value `''` in intersphinx_mapping['prompt_toolkit'][1]. Inventory locations must be non-empty strings or None. ERROR: Invalid inventory location value `''` in intersphinx_mapping['ipywidgets'][1]. Inventory locations must be non-empty strings or None. ERROR: Invalid inventory location value `''` in intersphinx_mapping['ipyparallel'][1]. Inventory locations must be non-empty strings or None. ERROR: Invalid inventory location value `''` in intersphinx_mapping['pip'][1]. Inventory locations must be non-empty strings or None. Configuration error: Invalid `intersphinx_mapping` configuration (11 errors). ``` The intersphinx_mapping error can be easily fixed by adjusting conf.py. You can take an inspiration from this PR: https://github.com/jupyterlab/jupyterlab/pull/14423 Please work with upstream on this issue, I plan to ship sphinx 8 in two weeks. For the logs from testing build attempts, see: https://copr.fedorainfracloud.org/coprs/thrnciar/python-sphinx/package/ipython/ You can test you package in mock running: $ mock -r fedora-rawhide-x86_64 --addrepo=https://download.copr.fedorainfracloud.org/results/thrnciar/python-sphinx/fedora-rawhide-x86_64/ --no-clean your.src.rpm $ mock -r fedora-rawhide-x86_64 --addrepo=https://download.copr.fedorainfracloud.org/results/thrnciar/python-sphinx/fedora-rawhide-x86_64/ shell We'd like to include Sphinx 8 in Fedora 42. Let us know here if you have any questions. Thank you!
Created attachment 2060789 [details] This patch should fix the problem.
The patch makes Sphinx to search for the file named 'null' so it does not fail but complains about missing file: loading intersphinx inventory 'jupyterclient' from null ... WARNING: failed to reach any of the inventories with the following issues: intersphinx inventory 'null' not fetchable due to <class 'FileNotFoundError'>: [Errno 2] No such file or directory: '/builddir/build/BUILD/ipython-8.30.0-build/ipython-8.30.0/docs/source/null'
Fixed in https://src.fedoraproject.org/rpms/ipython/pull-request/83