diff --git a/CHANGES b/CHANGES index ed864de051..12d5d8f3da 100644 --- a/CHANGES +++ b/CHANGES @@ -33,6 +33,8 @@ Bugs fixed * #6564: html: a width of table was ignored on HTML builder * #7401: Incorrect argument is passed for :event:`env-get-outdated` handlers * #7355: autodoc: a signature of cython-function is not recognized well +* #7409: intersphinx: ValueError is raised when an extension sets up + :confval:`intersphinx_mapping` on :event:`config-inited` event Testing -------- diff --git a/sphinx/builders/epub3.py b/sphinx/builders/epub3.py index 5d7121fe6d..cf795f3baf 100644 --- a/sphinx/builders/epub3.py +++ b/sphinx/builders/epub3.py @@ -282,7 +282,7 @@ def setup(app: Sphinx) -> Dict[str, Any]: ENUM('horizontal', 'vertical')) # event handlers - app.connect('config-inited', convert_epub_css_files) + app.connect('config-inited', convert_epub_css_files, priority=800) app.connect('builder-inited', validate_config_values) return { diff --git a/sphinx/builders/html/__init__.py b/sphinx/builders/html/__init__.py index 6488146d57..320c7feb6b 100644 --- a/sphinx/builders/html/__init__.py +++ b/sphinx/builders/html/__init__.py @@ -1231,12 +1231,12 @@ def setup(app: Sphinx) -> Dict[str, Any]: app.add_config_value('html4_writer', False, 'html') # event handlers - app.connect('config-inited', convert_html_css_files) - app.connect('config-inited', convert_html_js_files) - app.connect('config-inited', validate_html_extra_path) - app.connect('config-inited', validate_html_static_path) - app.connect('config-inited', validate_html_logo) - app.connect('config-inited', validate_html_favicon) + app.connect('config-inited', convert_html_css_files, priority=800) + app.connect('config-inited', convert_html_js_files, priority=800) + app.connect('config-inited', validate_html_extra_path, priority=800) + app.connect('config-inited', validate_html_static_path, priority=800) + app.connect('config-inited', validate_html_logo, priority=800) + app.connect('config-inited', validate_html_favicon, priority=800) app.connect('builder-inited', validate_math_renderer) app.connect('html-page-context', setup_js_tag_helper) diff --git a/sphinx/builders/latex/__init__.py b/sphinx/builders/latex/__init__.py index 1348f0e125..390a5d9c7b 100644 --- a/sphinx/builders/latex/__init__.py +++ b/sphinx/builders/latex/__init__.py @@ -536,7 +536,7 @@ def setup(app: Sphinx) -> Dict[str, Any]: app.setup_extension('sphinx.builders.latex.transforms') app.add_builder(LaTeXBuilder) - app.connect('config-inited', validate_config_values) + app.connect('config-inited', validate_config_values, priority=800) app.add_config_value('latex_engine', default_latex_engine, None, ENUM('pdflatex', 'xelatex', 'lualatex', 'platex', 'uplatex')) diff --git a/sphinx/config.py b/sphinx/config.py index 87007c33d0..19a8f6c4f5 100644 --- a/sphinx/config.py +++ b/sphinx/config.py @@ -478,11 +478,11 @@ def check_master_doc(app: "Sphinx", env: "BuildEnvironment", added: Set[str], def setup(app: "Sphinx") -> Dict[str, Any]: - app.connect('config-inited', convert_source_suffix) - app.connect('config-inited', init_numfig_format) - app.connect('config-inited', correct_copyright_year) - app.connect('config-inited', check_confval_types) - app.connect('config-inited', check_primary_domain) + app.connect('config-inited', convert_source_suffix, priority=800) + app.connect('config-inited', init_numfig_format, priority=800) + app.connect('config-inited', correct_copyright_year, priority=800) + app.connect('config-inited', check_confval_types, priority=800) + app.connect('config-inited', check_primary_domain, priority=800) app.connect('env-get-outdated', check_master_doc) return { diff --git a/sphinx/ext/intersphinx.py b/sphinx/ext/intersphinx.py index 5aa9c75f0f..02f605bacf 100644 --- a/sphinx/ext/intersphinx.py +++ b/sphinx/ext/intersphinx.py @@ -367,7 +367,7 @@ def setup(app: Sphinx) -> Dict[str, Any]: app.add_config_value('intersphinx_mapping', {}, True) app.add_config_value('intersphinx_cache_limit', 5, False) app.add_config_value('intersphinx_timeout', None, False) - app.connect('config-inited', normalize_intersphinx_mapping) + app.connect('config-inited', normalize_intersphinx_mapping, priority=800) app.connect('builder-inited', load_mappings) app.connect('missing-reference', missing_reference) return { diff --git a/sphinx/extension.py b/sphinx/extension.py index 45ea46677d..fa7a0d490c 100644 --- a/sphinx/extension.py +++ b/sphinx/extension.py @@ -60,7 +60,7 @@ def verify_needs_extensions(app: "Sphinx", config: Config) -> None: def setup(app: "Sphinx") -> Dict[str, Any]: - app.connect('config-inited', verify_needs_extensions) + app.connect('config-inited', verify_needs_extensions, priority=800) return { 'version': 'builtin', diff --git a/sphinx/registry.py b/sphinx/registry.py index 93a7ebc253..200f59d422 100644 --- a/sphinx/registry.py +++ b/sphinx/registry.py @@ -453,7 +453,7 @@ def merge_source_suffix(app: "Sphinx", config: Config) -> None: def setup(app: "Sphinx") -> Dict[str, Any]: - app.connect('config-inited', merge_source_suffix) + app.connect('config-inited', merge_source_suffix, priority=800) return { 'version': 'builtin',