shrink mypy whitelist for `sphinx.application` (#11395)

Co-authored-by: Adam Turner <9087854+aa-turner@users.noreply.github.com>
This commit is contained in:
danieleades 2023-07-23 17:47:01 +01:00 committed by GitHub
parent 554d2eb399
commit f06ef37017
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 21 additions and 11 deletions

View File

@ -307,7 +307,6 @@ disallow_any_generics = true
[[tool.mypy.overrides]] [[tool.mypy.overrides]]
module = [ module = [
"sphinx.application",
"sphinx.builders", "sphinx.builders",
"sphinx.builders.html", "sphinx.builders.html",
"sphinx.builders.latex", "sphinx.builders.latex",

View File

@ -1237,9 +1237,12 @@ class Sphinx:
logger.debug('[app] adding HTML theme: %r, %r', name, theme_path) logger.debug('[app] adding HTML theme: %r, %r', name, theme_path)
self.registry.add_html_theme(name, theme_path) self.registry.add_html_theme(name, theme_path)
def add_html_math_renderer(self, name: str, def add_html_math_renderer(
inline_renderers: tuple[Callable, Callable] = None, self,
block_renderers: tuple[Callable, Callable] = None) -> None: name: str,
inline_renderers: tuple[Callable | None, Callable | None] | None = None,
block_renderers: tuple[Callable | None, Callable | None] | None = None,
) -> None:
"""Register a math renderer for HTML. """Register a math renderer for HTML.
The *name* is a name of math renderer. Both *inline_renderers* and The *name* is a name of math renderer. Both *inline_renderers* and

View File

@ -309,8 +309,11 @@ class SphinxComponentRegistry:
raise ExtensionError(__('Translator for %r already exists') % name) raise ExtensionError(__('Translator for %r already exists') % name)
self.translators[name] = translator self.translators[name] = translator
def add_translation_handlers(self, node: type[Element], def add_translation_handlers(
**kwargs: tuple[Callable, Callable]) -> None: self,
node: type[Element],
**kwargs: tuple[Callable | None, Callable | None],
) -> None:
logger.debug('[app] adding translation_handlers: %r, %r', node, kwargs) logger.debug('[app] adding translation_handlers: %r, %r', node, kwargs)
for builder_name, handlers in kwargs.items(): for builder_name, handlers in kwargs.items():
translation_handlers = self.translation_handlers.setdefault(builder_name, {}) translation_handlers = self.translation_handlers.setdefault(builder_name, {})
@ -369,7 +372,7 @@ class SphinxComponentRegistry:
def add_css_files(self, filename: str, **attributes: Any) -> None: def add_css_files(self, filename: str, **attributes: Any) -> None:
self.css_files.append((filename, attributes)) self.css_files.append((filename, attributes))
def add_js_file(self, filename: str, **attributes: Any) -> None: def add_js_file(self, filename: str | None, **attributes: Any) -> None:
logger.debug('[app] adding js_file: %r, %r', filename, attributes) logger.debug('[app] adding js_file: %r, %r', filename, attributes)
self.js_files.append((filename, attributes)) self.js_files.append((filename, attributes))
@ -377,7 +380,9 @@ class SphinxComponentRegistry:
packages = self.latex_packages + self.latex_packages_after_hyperref packages = self.latex_packages + self.latex_packages_after_hyperref
return bool([x for x in packages if x[0] == name]) return bool([x for x in packages if x[0] == name])
def add_latex_package(self, name: str, options: str, after_hyperref: bool = False) -> None: def add_latex_package(
self, name: str, options: str | None, after_hyperref: bool = False,
) -> None:
if self.has_latex_package(name): if self.has_latex_package(name):
logger.warning("latex package '%s' already included", name) logger.warning("latex package '%s' already included", name)
@ -398,9 +403,12 @@ class SphinxComponentRegistry:
raise ExtensionError(__('enumerable_node %r already registered') % node) raise ExtensionError(__('enumerable_node %r already registered') % node)
self.enumerable_nodes[node] = (figtype, title_getter) self.enumerable_nodes[node] = (figtype, title_getter)
def add_html_math_renderer(self, name: str, def add_html_math_renderer(
inline_renderers: tuple[Callable, Callable], self,
block_renderers: tuple[Callable, Callable]) -> None: name: str,
inline_renderers: tuple[Callable | None, Callable | None] | None,
block_renderers: tuple[Callable | None, Callable | None] | None,
) -> None:
logger.debug('[app] adding html_math_renderer: %s, %r, %r', logger.debug('[app] adding html_math_renderer: %s, %r, %r',
name, inline_renderers, block_renderers) name, inline_renderers, block_renderers)
if name in self.html_inline_math_renderers: if name in self.html_inline_math_renderers: