Use strict flake8-type-checking settings in Ruff

This commit is contained in:
Adam Turner 2025-01-13 21:56:36 +00:00
parent f6d1665f84
commit 66905d24e1
39 changed files with 125 additions and 60 deletions

View File

@ -263,6 +263,10 @@ select = [
# flake8-2020 ('YTT') # flake8-2020 ('YTT')
"YTT", "YTT",
] ]
logger-objects = [
"sphinx.ext.apidoc._shared.LOGGER",
"sphinx.ext.intersphinx._shared.LOGGER",
]
[lint.per-file-ignores] [lint.per-file-ignores]
"doc/*" = [ "doc/*" = [
@ -362,6 +366,10 @@ max-line-length = 95
[lint.flake8-quotes] [lint.flake8-quotes]
inline-quotes = "single" inline-quotes = "single"
[lint.flake8-type-checking]
exempt-modules = []
strict = true
[lint.isort] [lint.isort]
forced-separate = [ forced-separate = [
"tests", "tests",

View File

@ -13,11 +13,11 @@ from collections import deque
from io import StringIO from io import StringIO
from typing import TYPE_CHECKING, overload from typing import TYPE_CHECKING, overload
from docutils.parsers.rst import Directive, roles from docutils.parsers.rst import roles
import sphinx import sphinx
from sphinx import locale, package_dir from sphinx import locale, package_dir
from sphinx.config import ENUM, Config, _ConfigRebuild from sphinx.config import Config
from sphinx.environment import BuildEnvironment from sphinx.environment import BuildEnvironment
from sphinx.errors import ApplicationError, ConfigError, VersionRequirementError from sphinx.errors import ApplicationError, ConfigError, VersionRequirementError
from sphinx.events import EventManager from sphinx.events import EventManager
@ -43,11 +43,13 @@ if TYPE_CHECKING:
from docutils import nodes from docutils import nodes
from docutils.nodes import Element, Node from docutils.nodes import Element, Node
from docutils.parsers import Parser from docutils.parsers import Parser
from docutils.parsers.rst import Directive
from docutils.transforms import Transform from docutils.transforms import Transform
from pygments.lexer import Lexer from pygments.lexer import Lexer
from sphinx import addnodes from sphinx import addnodes
from sphinx.builders import Builder from sphinx.builders import Builder
from sphinx.config import ENUM, _ConfigRebuild
from sphinx.domains import Domain, Index from sphinx.domains import Domain, Index
from sphinx.environment.collectors import EnvironmentCollector from sphinx.environment.collectors import EnvironmentCollector
from sphinx.ext.autodoc import Documenter, _AutodocProcessDocstringListener from sphinx.ext.autodoc import Documenter, _AutodocProcessDocstringListener

View File

@ -16,7 +16,6 @@ from docutils.utils import DependencyList
from sphinx.environment import ( from sphinx.environment import (
CONFIG_CHANGED_REASON, CONFIG_CHANGED_REASON,
CONFIG_OK, CONFIG_OK,
BuildEnvironment,
_CurrentDocument, _CurrentDocument,
) )
from sphinx.environment.adapters.asset import ImageAdapter from sphinx.environment.adapters.asset import ImageAdapter
@ -33,7 +32,7 @@ from sphinx.util.build_phase import BuildPhase
from sphinx.util.console import bold from sphinx.util.console import bold
from sphinx.util.display import progress_message, status_iterator from sphinx.util.display import progress_message, status_iterator
from sphinx.util.docutils import sphinx_domains from sphinx.util.docutils import sphinx_domains
from sphinx.util.i18n import CatalogInfo, CatalogRepository, docname_to_domain from sphinx.util.i18n import CatalogRepository, docname_to_domain
from sphinx.util.osutil import SEP, canon_path, ensuredir, relative_uri, relpath from sphinx.util.osutil import SEP, canon_path, ensuredir, relative_uri, relpath
from sphinx.util.parallel import ( from sphinx.util.parallel import (
ParallelTasks, ParallelTasks,
@ -55,7 +54,11 @@ if TYPE_CHECKING:
from sphinx.application import Sphinx from sphinx.application import Sphinx
from sphinx.config import Config from sphinx.config import Config
from sphinx.environment import (
BuildEnvironment,
)
from sphinx.events import EventManager from sphinx.events import EventManager
from sphinx.util.i18n import CatalogInfo
from sphinx.util.tags import Tags from sphinx.util.tags import Tags

View File

@ -14,7 +14,7 @@ from typing import TYPE_CHECKING, NamedTuple
from sphinx import package_dir from sphinx import package_dir
from sphinx.builders import _epub_base from sphinx.builders import _epub_base
from sphinx.config import ENUM, Config from sphinx.config import ENUM
from sphinx.locale import __ from sphinx.locale import __
from sphinx.util import logging from sphinx.util import logging
from sphinx.util.fileutil import copy_asset_file from sphinx.util.fileutil import copy_asset_file
@ -25,6 +25,7 @@ if TYPE_CHECKING:
from typing import Any from typing import Any
from sphinx.application import Sphinx from sphinx.application import Sphinx
from sphinx.config import Config
from sphinx.util.typing import ExtensionMetadata from sphinx.util.typing import ExtensionMetadata
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)

View File

@ -20,7 +20,7 @@ from sphinx.locale import __
from sphinx.util import logging from sphinx.util import logging
from sphinx.util.console import bold from sphinx.util.console import bold
from sphinx.util.display import status_iterator from sphinx.util.display import status_iterator
from sphinx.util.i18n import CatalogInfo, docname_to_domain from sphinx.util.i18n import docname_to_domain
from sphinx.util.index_entries import split_index_msg from sphinx.util.index_entries import split_index_msg
from sphinx.util.nodes import extract_messages, traverse_translatable_index from sphinx.util.nodes import extract_messages, traverse_translatable_index
from sphinx.util.osutil import canon_path, ensuredir, relpath from sphinx.util.osutil import canon_path, ensuredir, relpath
@ -36,6 +36,7 @@ if TYPE_CHECKING:
from sphinx.application import Sphinx from sphinx.application import Sphinx
from sphinx.config import Config from sphinx.config import Config
from sphinx.util.i18n import CatalogInfo
from sphinx.util.typing import ExtensionMetadata from sphinx.util.typing import ExtensionMetadata
DEFAULT_TEMPLATE_PATH = Path(package_dir, 'templates', 'gettext') DEFAULT_TEMPLATE_PATH = Path(package_dir, 'templates', 'gettext')

View File

@ -30,7 +30,7 @@ from sphinx.builders.html._assets import (
_JavaScript, _JavaScript,
) )
from sphinx.builders.html._build_info import BuildInfo from sphinx.builders.html._build_info import BuildInfo
from sphinx.config import ENUM, Config from sphinx.config import ENUM
from sphinx.deprecation import _deprecation_warning from sphinx.deprecation import _deprecation_warning
from sphinx.domains import Index, IndexEntry from sphinx.domains import Index, IndexEntry
from sphinx.environment.adapters.asset import ImageAdapter from sphinx.environment.adapters.asset import ImageAdapter
@ -71,6 +71,7 @@ if TYPE_CHECKING:
from docutils.readers import Reader from docutils.readers import Reader
from sphinx.application import Sphinx from sphinx.application import Sphinx
from sphinx.config import Config
from sphinx.environment import BuildEnvironment from sphinx.environment import BuildEnvironment
from sphinx.util.typing import ExtensionMetadata from sphinx.util.typing import ExtensionMetadata

View File

@ -19,7 +19,7 @@ from sphinx.builders.latex.constants import (
) )
from sphinx.builders.latex.theming import Theme, ThemeFactory from sphinx.builders.latex.theming import Theme, ThemeFactory
from sphinx.builders.latex.util import ExtBabel from sphinx.builders.latex.util import ExtBabel
from sphinx.config import ENUM, Config from sphinx.config import ENUM
from sphinx.environment.adapters.asset import ImageAdapter from sphinx.environment.adapters.asset import ImageAdapter
from sphinx.errors import NoUri, SphinxError from sphinx.errors import NoUri, SphinxError
from sphinx.locale import _, __ from sphinx.locale import _, __
@ -44,6 +44,7 @@ if TYPE_CHECKING:
from docutils.nodes import Node from docutils.nodes import Node
from sphinx.application import Sphinx from sphinx.application import Sphinx
from sphinx.config import Config
from sphinx.util.typing import ExtensionMetadata from sphinx.util.typing import ExtensionMetadata
XINDY_LANG_OPTIONS = { XINDY_LANG_OPTIONS = {

View File

@ -10,7 +10,7 @@ from docutils.parsers.rst import directives, roles
from sphinx import addnodes from sphinx import addnodes
from sphinx.util import docutils from sphinx.util import docutils
from sphinx.util.docfields import DocFieldTransformer, Field, TypedField from sphinx.util.docfields import DocFieldTransformer
from sphinx.util.docutils import SphinxDirective from sphinx.util.docutils import SphinxDirective
if TYPE_CHECKING: if TYPE_CHECKING:
@ -20,6 +20,7 @@ if TYPE_CHECKING:
from sphinx.addnodes import desc_signature from sphinx.addnodes import desc_signature
from sphinx.application import Sphinx from sphinx.application import Sphinx
from sphinx.util.docfields import Field, TypedField
from sphinx.util.typing import ExtensionMetadata, OptionSpec from sphinx.util.typing import ExtensionMetadata, OptionSpec

View File

@ -5,7 +5,7 @@ from pathlib import Path
from typing import TYPE_CHECKING, cast from typing import TYPE_CHECKING, cast
from docutils import nodes from docutils import nodes
from docutils.nodes import Node, make_id from docutils.nodes import make_id
from docutils.parsers.rst import directives from docutils.parsers.rst import directives
from docutils.parsers.rst.directives import images, tables from docutils.parsers.rst.directives import images, tables
from docutils.parsers.rst.directives.misc import Meta from docutils.parsers.rst.directives.misc import Meta
@ -21,6 +21,8 @@ from sphinx.util.osutil import SEP, relpath
if TYPE_CHECKING: if TYPE_CHECKING:
from typing import ClassVar from typing import ClassVar
from docutils.nodes import Node
from sphinx.application import Sphinx from sphinx.application import Sphinx
from sphinx.util.typing import ExtensionMetadata, OptionSpec from sphinx.util.typing import ExtensionMetadata, OptionSpec

View File

@ -9,7 +9,6 @@ from docutils import nodes
from sphinx import addnodes from sphinx import addnodes
from sphinx.domains.c._ids import _id_prefix, _max_id from sphinx.domains.c._ids import _id_prefix, _max_id
from sphinx.util.cfamily import ( from sphinx.util.cfamily import (
ASTAttributeList,
ASTBaseBase, ASTBaseBase,
ASTBaseParenExprList, ASTBaseParenExprList,
UnsupportedMultiCharacterCharLiteral, UnsupportedMultiCharacterCharLiteral,
@ -23,7 +22,10 @@ if TYPE_CHECKING:
from sphinx.domains.c._symbol import Symbol from sphinx.domains.c._symbol import Symbol
from sphinx.environment import BuildEnvironment from sphinx.environment import BuildEnvironment
from sphinx.util.cfamily import StringifyTransform from sphinx.util.cfamily import (
ASTAttributeList,
StringifyTransform,
)
DeclarationType: TypeAlias = Union[ DeclarationType: TypeAlias = Union[
'ASTStruct', 'ASTStruct',

View File

@ -12,7 +12,6 @@ from sphinx.domains.c._ast import (
ASTCastExpr, ASTCastExpr,
ASTCharLiteral, ASTCharLiteral,
ASTDeclaration, ASTDeclaration,
ASTDeclarator,
ASTDeclaratorNameBitField, ASTDeclaratorNameBitField,
ASTDeclaratorNameParam, ASTDeclaratorNameParam,
ASTDeclaratorParen, ASTDeclaratorParen,
@ -21,13 +20,11 @@ from sphinx.domains.c._ast import (
ASTDeclSpecsSimple, ASTDeclSpecsSimple,
ASTEnum, ASTEnum,
ASTEnumerator, ASTEnumerator,
ASTExpression,
ASTFallbackExpr, ASTFallbackExpr,
ASTFunctionParameter, ASTFunctionParameter,
ASTIdentifier, ASTIdentifier,
ASTIdExpression, ASTIdExpression,
ASTInitializer, ASTInitializer,
ASTLiteral,
ASTMacro, ASTMacro,
ASTMacroParameter, ASTMacroParameter,
ASTNestedName, ASTNestedName,
@ -41,12 +38,10 @@ from sphinx.domains.c._ast import (
ASTPostfixExpr, ASTPostfixExpr,
ASTPostfixInc, ASTPostfixInc,
ASTPostfixMemberOfPointer, ASTPostfixMemberOfPointer,
ASTPostfixOp,
ASTSizeofExpr, ASTSizeofExpr,
ASTSizeofType, ASTSizeofType,
ASTStringLiteral, ASTStringLiteral,
ASTStruct, ASTStruct,
ASTTrailingTypeSpec,
ASTTrailingTypeSpecFundamental, ASTTrailingTypeSpecFundamental,
ASTTrailingTypeSpecName, ASTTrailingTypeSpecName,
ASTType, ASTType,
@ -82,7 +77,14 @@ if TYPE_CHECKING:
from collections.abc import Callable, Sequence from collections.abc import Callable, Sequence
from typing import Any from typing import Any
from sphinx.domains.c._ast import DeclarationType from sphinx.domains.c._ast import (
ASTDeclarator,
ASTExpression,
ASTLiteral,
ASTPostfixOp,
ASTTrailingTypeSpec,
DeclarationType,
)
class DefinitionParser(BaseParser): class DefinitionParser(BaseParser):

View File

@ -4,7 +4,6 @@ from typing import TYPE_CHECKING
from sphinx.domains.c._ast import ( from sphinx.domains.c._ast import (
ASTDeclaration, ASTDeclaration,
ASTIdentifier,
ASTNestedName, ASTNestedName,
) )
from sphinx.locale import __ from sphinx.locale import __
@ -14,6 +13,9 @@ if TYPE_CHECKING:
from collections.abc import Callable, Iterable, Iterator, Sequence from collections.abc import Callable, Iterable, Iterator, Sequence
from typing import Any, Self from typing import Any, Self
from sphinx.domains.c._ast import (
ASTIdentifier,
)
from sphinx.environment import BuildEnvironment from sphinx.environment import BuildEnvironment
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)

View File

@ -20,7 +20,6 @@ from sphinx.domains.cpp._ids import (
_max_id, _max_id,
) )
from sphinx.util.cfamily import ( from sphinx.util.cfamily import (
ASTAttributeList,
ASTBaseBase, ASTBaseBase,
ASTBaseParenExprList, ASTBaseParenExprList,
NoOldIdError, NoOldIdError,
@ -36,7 +35,10 @@ if TYPE_CHECKING:
from sphinx.addnodes import desc_signature from sphinx.addnodes import desc_signature
from sphinx.domains.cpp._symbol import Symbol from sphinx.domains.cpp._symbol import Symbol
from sphinx.environment import BuildEnvironment from sphinx.environment import BuildEnvironment
from sphinx.util.cfamily import StringifyTransform from sphinx.util.cfamily import (
ASTAttributeList,
StringifyTransform,
)
class ASTBase(ASTBaseBase): class ASTBase(ASTBaseBase):

View File

@ -18,7 +18,6 @@ from sphinx.domains.cpp._ast import (
ASTConcept, ASTConcept,
ASTConditionalExpr, ASTConditionalExpr,
ASTDeclaration, ASTDeclaration,
ASTDeclarator,
ASTDeclaratorMemPtr, ASTDeclaratorMemPtr,
ASTDeclaratorNameBitField, ASTDeclaratorNameBitField,
ASTDeclaratorNameParamQual, ASTDeclaratorNameParamQual,
@ -33,14 +32,12 @@ from sphinx.domains.cpp._ast import (
ASTEnumerator, ASTEnumerator,
ASTExplicitCast, ASTExplicitCast,
ASTExplicitSpec, ASTExplicitSpec,
ASTExpression,
ASTFallbackExpr, ASTFallbackExpr,
ASTFoldExpr, ASTFoldExpr,
ASTFunctionParameter, ASTFunctionParameter,
ASTIdentifier, ASTIdentifier,
ASTIdExpression, ASTIdExpression,
ASTInitializer, ASTInitializer,
ASTLiteral,
ASTNamespace, ASTNamespace,
ASTNestedName, ASTNestedName,
ASTNestedNameElement, ASTNestedNameElement,
@ -48,7 +45,6 @@ from sphinx.domains.cpp._ast import (
ASTNoexceptExpr, ASTNoexceptExpr,
ASTNoexceptSpec, ASTNoexceptSpec,
ASTNumberLiteral, ASTNumberLiteral,
ASTOperator,
ASTOperatorBuildIn, ASTOperatorBuildIn,
ASTOperatorLiteral, ASTOperatorLiteral,
ASTOperatorType, ASTOperatorType,
@ -64,7 +60,6 @@ from sphinx.domains.cpp._ast import (
ASTPostfixInc, ASTPostfixInc,
ASTPostfixMember, ASTPostfixMember,
ASTPostfixMemberOfPointer, ASTPostfixMemberOfPointer,
ASTPostfixOp,
ASTRequiresClause, ASTRequiresClause,
ASTSizeofExpr, ASTSizeofExpr,
ASTSizeofParamPack, ASTSizeofParamPack,
@ -76,14 +71,12 @@ from sphinx.domains.cpp._ast import (
ASTTemplateIntroduction, ASTTemplateIntroduction,
ASTTemplateIntroductionParameter, ASTTemplateIntroductionParameter,
ASTTemplateKeyParamPackIdDefault, ASTTemplateKeyParamPackIdDefault,
ASTTemplateParam,
ASTTemplateParamConstrainedTypeWithInit, ASTTemplateParamConstrainedTypeWithInit,
ASTTemplateParamNonType, ASTTemplateParamNonType,
ASTTemplateParams, ASTTemplateParams,
ASTTemplateParamTemplateType, ASTTemplateParamTemplateType,
ASTTemplateParamType, ASTTemplateParamType,
ASTThisLiteral, ASTThisLiteral,
ASTTrailingTypeSpec,
ASTTrailingTypeSpecDecltype, ASTTrailingTypeSpecDecltype,
ASTTrailingTypeSpecDecltypeAuto, ASTTrailingTypeSpecDecltypeAuto,
ASTTrailingTypeSpecFundamental, ASTTrailingTypeSpecFundamental,
@ -130,6 +123,16 @@ if TYPE_CHECKING:
from collections.abc import Callable, Sequence from collections.abc import Callable, Sequence
from typing import Any from typing import Any
from sphinx.domains.cpp._ast import (
ASTDeclarator,
ASTExpression,
ASTLiteral,
ASTOperator,
ASTPostfixOp,
ASTTemplateParam,
ASTTrailingTypeSpec,
)
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)

View File

@ -4,14 +4,8 @@ from typing import TYPE_CHECKING
from sphinx.domains.cpp._ast import ( from sphinx.domains.cpp._ast import (
ASTDeclaration, ASTDeclaration,
ASTIdentifier,
ASTNestedName, ASTNestedName,
ASTNestedNameElement, ASTNestedNameElement,
ASTOperator,
ASTTemplateArgs,
ASTTemplateDeclarationPrefix,
ASTTemplateIntroduction,
ASTTemplateParams,
) )
from sphinx.locale import __ from sphinx.locale import __
from sphinx.util import logging from sphinx.util import logging
@ -20,6 +14,14 @@ if TYPE_CHECKING:
from collections.abc import Callable, Iterable, Iterator, Sequence from collections.abc import Callable, Iterable, Iterator, Sequence
from typing import Any, NoReturn from typing import Any, NoReturn
from sphinx.domains.cpp._ast import (
ASTIdentifier,
ASTOperator,
ASTTemplateArgs,
ASTTemplateDeclarationPrefix,
ASTTemplateIntroduction,
ASTTemplateParams,
)
from sphinx.environment import BuildEnvironment from sphinx.environment import BuildEnvironment
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)

View File

@ -5,7 +5,7 @@ from __future__ import annotations
from typing import TYPE_CHECKING from typing import TYPE_CHECKING
from docutils import nodes from docutils import nodes
from docutils.nodes import Element, Node, make_id, system_message from docutils.nodes import make_id
from sphinx.domains import Domain from sphinx.domains import Domain
from sphinx.locale import __ from sphinx.locale import __
@ -17,6 +17,8 @@ if TYPE_CHECKING:
from collections.abc import Iterable, Set from collections.abc import Iterable, Set
from typing import Any from typing import Any
from docutils.nodes import Element, Node, system_message
from sphinx.addnodes import pending_xref from sphinx.addnodes import pending_xref
from sphinx.application import Sphinx from sphinx.application import Sphinx
from sphinx.builders import Builder from sphinx.builders import Builder

View File

@ -11,7 +11,7 @@ from typing import TYPE_CHECKING
from docutils import nodes from docutils import nodes
from sphinx import addnodes from sphinx import addnodes
from sphinx.addnodes import desc_signature, pending_xref, pending_xref_condition from sphinx.addnodes import pending_xref, pending_xref_condition
from sphinx.pycode.parser import Token, TokenProcessor from sphinx.pycode.parser import Token, TokenProcessor
from sphinx.util.inspect import signature_from_str from sphinx.util.inspect import signature_from_str
@ -21,6 +21,7 @@ if TYPE_CHECKING:
from docutils.nodes import Element, Node from docutils.nodes import Element, Node
from sphinx.addnodes import desc_signature
from sphinx.environment import BuildEnvironment from sphinx.environment import BuildEnvironment

View File

@ -8,7 +8,7 @@ from docutils import nodes
from docutils.parsers.rst import directives from docutils.parsers.rst import directives
from sphinx import addnodes from sphinx import addnodes
from sphinx.addnodes import desc_signature, pending_xref, pending_xref_condition from sphinx.addnodes import pending_xref, pending_xref_condition
from sphinx.directives import ObjectDescription from sphinx.directives import ObjectDescription
from sphinx.domains.python._annotations import ( from sphinx.domains.python._annotations import (
_parse_annotation, _parse_annotation,
@ -30,6 +30,7 @@ if TYPE_CHECKING:
from docutils.nodes import Node from docutils.nodes import Node
from docutils.parsers.rst.states import Inliner from docutils.parsers.rst.states import Inliner
from sphinx.addnodes import desc_signature
from sphinx.environment import BuildEnvironment from sphinx.environment import BuildEnvironment
from sphinx.util.typing import OptionSpec, TextlikeNode from sphinx.util.typing import OptionSpec, TextlikeNode

View File

@ -7,11 +7,11 @@ from copy import copy
from typing import TYPE_CHECKING, cast from typing import TYPE_CHECKING, cast
from docutils import nodes from docutils import nodes
from docutils.parsers.rst import Directive, directives from docutils.parsers.rst import directives
from docutils.statemachine import StringList from docutils.statemachine import StringList
from sphinx import addnodes from sphinx import addnodes
from sphinx.addnodes import desc_signature, pending_xref from sphinx.addnodes import pending_xref
from sphinx.directives import ObjectDescription from sphinx.directives import ObjectDescription
from sphinx.domains import Domain, ObjType from sphinx.domains import Domain, ObjType
from sphinx.locale import _, __ from sphinx.locale import _, __
@ -26,7 +26,9 @@ if TYPE_CHECKING:
from typing import Any, ClassVar, Final from typing import Any, ClassVar, Final
from docutils.nodes import Element, Node, system_message from docutils.nodes import Element, Node, system_message
from docutils.parsers.rst import Directive
from sphinx.addnodes import desc_signature
from sphinx.application import Sphinx from sphinx.application import Sphinx
from sphinx.builders import Builder from sphinx.builders import Builder
from sphinx.environment import BuildEnvironment from sphinx.environment import BuildEnvironment

View File

@ -5,7 +5,7 @@ from __future__ import annotations
from typing import TYPE_CHECKING, TypeVar from typing import TYPE_CHECKING, TypeVar
from docutils import nodes from docutils import nodes
from docutils.nodes import Element, Node from docutils.nodes import Element
from sphinx import addnodes from sphinx import addnodes
from sphinx.locale import __ from sphinx.locale import __
@ -17,6 +17,8 @@ if TYPE_CHECKING:
from collections.abc import Iterable, Set from collections.abc import Iterable, Set
from typing import Any from typing import Any
from docutils.nodes import Node
from sphinx.builders import Builder from sphinx.builders import Builder
from sphinx.environment import BuildEnvironment from sphinx.environment import BuildEnvironment
from sphinx.util.tags import Tags from sphinx.util.tags import Tags

View File

@ -17,7 +17,7 @@ from typing import TYPE_CHECKING, Any, NewType, TypeVar
from docutils.statemachine import StringList from docutils.statemachine import StringList
import sphinx import sphinx
from sphinx.config import ENUM, Config from sphinx.config import ENUM
from sphinx.errors import PycodeError from sphinx.errors import PycodeError
from sphinx.ext.autodoc.importer import get_class_members, import_module, import_object from sphinx.ext.autodoc.importer import get_class_members, import_module, import_object
from sphinx.ext.autodoc.mock import ismock, mock, undecorate from sphinx.ext.autodoc.mock import ismock, mock, undecorate
@ -40,6 +40,7 @@ if TYPE_CHECKING:
from typing import ClassVar, Literal, TypeAlias from typing import ClassVar, Literal, TypeAlias
from sphinx.application import Sphinx from sphinx.application import Sphinx
from sphinx.config import Config
from sphinx.environment import BuildEnvironment, _CurrentDocument from sphinx.environment import BuildEnvironment, _CurrentDocument
from sphinx.events import EventManager from sphinx.events import EventManager
from sphinx.ext.autodoc.directive import DocumenterBridge from sphinx.ext.autodoc.directive import DocumenterBridge

View File

@ -5,9 +5,9 @@ from typing import TYPE_CHECKING
from docutils import nodes from docutils import nodes
from docutils.statemachine import StringList from docutils.statemachine import StringList
from docutils.utils import Reporter, assemble_option_dict from docutils.utils import assemble_option_dict
from sphinx.ext.autodoc import Documenter, Options from sphinx.ext.autodoc import Options
from sphinx.util import logging from sphinx.util import logging
from sphinx.util.docutils import SphinxDirective, switch_source_input from sphinx.util.docutils import SphinxDirective, switch_source_input
from sphinx.util.parsing import nested_parse_to_nodes from sphinx.util.parsing import nested_parse_to_nodes
@ -17,9 +17,11 @@ if TYPE_CHECKING:
from docutils.nodes import Node from docutils.nodes import Node
from docutils.parsers.rst.states import RSTState from docutils.parsers.rst.states import RSTState
from docutils.utils import Reporter
from sphinx.config import Config from sphinx.config import Config
from sphinx.environment import BuildEnvironment from sphinx.environment import BuildEnvironment
from sphinx.ext.autodoc import Documenter
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)

View File

@ -71,7 +71,7 @@ from sphinx import addnodes
from sphinx.config import Config from sphinx.config import Config
from sphinx.environment import BuildEnvironment from sphinx.environment import BuildEnvironment
from sphinx.errors import PycodeError from sphinx.errors import PycodeError
from sphinx.ext.autodoc import INSTANCEATTR, Documenter, Options from sphinx.ext.autodoc import INSTANCEATTR, Options
from sphinx.ext.autodoc.directive import DocumenterBridge from sphinx.ext.autodoc.directive import DocumenterBridge
from sphinx.ext.autodoc.importer import import_module from sphinx.ext.autodoc.importer import import_module
from sphinx.ext.autodoc.mock import mock from sphinx.ext.autodoc.mock import mock
@ -98,6 +98,7 @@ if TYPE_CHECKING:
from docutils.nodes import Node, system_message from docutils.nodes import Node, system_message
from sphinx.application import Sphinx from sphinx.application import Sphinx
from sphinx.ext.autodoc import Documenter
from sphinx.extension import Extension from sphinx.extension import Extension
from sphinx.util.typing import ExtensionMetadata, OptionSpec from sphinx.util.typing import ExtensionMetadata, OptionSpec
from sphinx.writers.html5 import HTML5Translator from sphinx.writers.html5 import HTML5Translator

View File

@ -42,7 +42,6 @@ from docutils import nodes
from docutils.parsers.rst import directives from docutils.parsers.rst import directives
import sphinx import sphinx
from sphinx import addnodes
from sphinx.ext.graphviz import ( from sphinx.ext.graphviz import (
figure_wrapper, figure_wrapper,
graphviz, graphviz,
@ -58,6 +57,7 @@ if TYPE_CHECKING:
from docutils.nodes import Node from docutils.nodes import Node
from sphinx import addnodes
from sphinx.application import Sphinx from sphinx.application import Sphinx
from sphinx.config import Config from sphinx.config import Config
from sphinx.util.typing import ExtensionMetadata, OptionSpec from sphinx.util.typing import ExtensionMetadata, OptionSpec

View File

@ -10,7 +10,7 @@ import traceback
from typing import TYPE_CHECKING, cast from typing import TYPE_CHECKING, cast
from docutils import nodes from docutils import nodes
from docutils.nodes import Element, Node from docutils.nodes import Element
import sphinx import sphinx
from sphinx import addnodes from sphinx import addnodes
@ -26,6 +26,8 @@ if TYPE_CHECKING:
from collections.abc import Iterator, Set from collections.abc import Iterator, Set
from typing import Any from typing import Any
from docutils.nodes import Node
from sphinx.application import Sphinx from sphinx.application import Sphinx
from sphinx.builders import Builder from sphinx.builders import Builder
from sphinx.builders.html import StandaloneHTMLBuilder from sphinx.builders.html import StandaloneHTMLBuilder

View File

@ -5,7 +5,7 @@ from __future__ import annotations
from typing import TYPE_CHECKING from typing import TYPE_CHECKING
from docutils.core import Publisher from docutils.core import Publisher
from docutils.io import FileInput, Input, NullOutput from docutils.io import FileInput, NullOutput
from docutils.readers import standalone from docutils.readers import standalone
from docutils.transforms.references import DanglingReferences from docutils.transforms.references import DanglingReferences
from docutils.writers import UnfilteredWriter from docutils.writers import UnfilteredWriter
@ -27,6 +27,7 @@ if TYPE_CHECKING:
from docutils import nodes from docutils import nodes
from docutils.frontend import Values from docutils.frontend import Values
from docutils.io import Input
from docutils.parsers import Parser from docutils.parsers import Parser
from docutils.transforms import Transform from docutils.transforms import Transform

View File

@ -6,7 +6,6 @@ from typing import TYPE_CHECKING
import docutils.parsers import docutils.parsers
import docutils.parsers.rst import docutils.parsers.rst
from docutils import nodes
from docutils.parsers.rst import states from docutils.parsers.rst import states
from docutils.statemachine import StringList from docutils.statemachine import StringList
from docutils.transforms.universal import SmartQuotes from docutils.transforms.universal import SmartQuotes
@ -14,6 +13,7 @@ from docutils.transforms.universal import SmartQuotes
from sphinx.util.rst import append_epilog, prepend_prolog from sphinx.util.rst import append_epilog, prepend_prolog
if TYPE_CHECKING: if TYPE_CHECKING:
from docutils import nodes
from docutils.transforms import Transform from docutils.transforms import Transform
from sphinx.application import Sphinx from sphinx.application import Sphinx

View File

@ -10,7 +10,6 @@ import itertools
import operator import operator
import re import re
import tokenize import tokenize
from inspect import Signature
from token import DEDENT, INDENT, NAME, NEWLINE, NUMBER, OP, STRING from token import DEDENT, INDENT, NAME, NEWLINE, NUMBER, OP, STRING
from tokenize import COMMENT, NL from tokenize import COMMENT, NL
from typing import TYPE_CHECKING from typing import TYPE_CHECKING
@ -18,6 +17,7 @@ from typing import TYPE_CHECKING
from sphinx.pycode.ast import unparse as ast_unparse from sphinx.pycode.ast import unparse as ast_unparse
if TYPE_CHECKING: if TYPE_CHECKING:
from inspect import Signature
from typing import Any from typing import Any
comment_re = re.compile('^\\s*#: ?(.*)\r?\n?$') comment_re = re.compile('^\\s*#: ?(.*)\r?\n?$')

View File

@ -8,7 +8,7 @@ from importlib.metadata import entry_points
from types import MethodType from types import MethodType
from typing import TYPE_CHECKING from typing import TYPE_CHECKING
from sphinx.domains import Domain, Index, ObjType from sphinx.domains import ObjType
from sphinx.domains.std import GenericObject, Target from sphinx.domains.std import GenericObject, Target
from sphinx.errors import ExtensionError, SphinxError, VersionRequirementError from sphinx.errors import ExtensionError, SphinxError, VersionRequirementError
from sphinx.extension import Extension from sphinx.extension import Extension
@ -35,6 +35,7 @@ if TYPE_CHECKING:
from sphinx.application import Sphinx from sphinx.application import Sphinx
from sphinx.builders import Builder from sphinx.builders import Builder
from sphinx.config import Config from sphinx.config import Config
from sphinx.domains import Domain, Index
from sphinx.environment import BuildEnvironment from sphinx.environment import BuildEnvironment
from sphinx.ext.autodoc import Documenter from sphinx.ext.autodoc import Documenter
from sphinx.util.typing import ( from sphinx.util.typing import (

View File

@ -14,7 +14,7 @@ from pathlib import Path
from typing import TYPE_CHECKING from typing import TYPE_CHECKING
from docutils import nodes from docutils import nodes
from docutils.nodes import Element, Node from docutils.nodes import Element
from sphinx import addnodes, package_dir from sphinx import addnodes, package_dir
from sphinx.util._pathlib import _StrPath from sphinx.util._pathlib import _StrPath
@ -24,6 +24,8 @@ if TYPE_CHECKING:
from collections.abc import Callable, Iterable from collections.abc import Callable, Iterable
from typing import IO, Any from typing import IO, Any
from docutils.nodes import Node
from sphinx.environment import BuildEnvironment from sphinx.environment import BuildEnvironment
_NON_MINIFIED_JS_PATH = Path(package_dir, 'search', 'non-minified-js') _NON_MINIFIED_JS_PATH = Path(package_dir, 'search', 'non-minified-js')

View File

@ -13,7 +13,7 @@ import docutils
from docutils import nodes from docutils import nodes
from docutils.io import FileOutput from docutils.io import FileOutput
from docutils.parsers.rst import Directive, directives, roles from docutils.parsers.rst import Directive, directives, roles
from docutils.statemachine import State, StateMachine, StringList from docutils.statemachine import StateMachine
from docutils.utils import Reporter, unescape from docutils.utils import Reporter, unescape
from sphinx.errors import SphinxError from sphinx.errors import SphinxError
@ -34,6 +34,7 @@ if TYPE_CHECKING:
from docutils.frontend import Values from docutils.frontend import Values
from docutils.nodes import Element, Node, system_message from docutils.nodes import Element, Node, system_message
from docutils.parsers.rst.states import Inliner from docutils.parsers.rst.states import Inliner
from docutils.statemachine import State, StringList
from sphinx.builders import Builder from sphinx.builders import Builder
from sphinx.config import Config from sphinx.config import Config

View File

@ -5,12 +5,13 @@ from __future__ import annotations
import contextlib import contextlib
from typing import TYPE_CHECKING from typing import TYPE_CHECKING
from docutils.nodes import Element, Node from docutils.nodes import Element
from docutils.statemachine import StringList, string2lines from docutils.statemachine import StringList, string2lines
if TYPE_CHECKING: if TYPE_CHECKING:
from collections.abc import Iterator from collections.abc import Iterator
from docutils.nodes import Node
from docutils.parsers.rst.states import RSTState from docutils.parsers.rst.states import RSTState

View File

@ -12,7 +12,7 @@ from docutils.parsers.rst import roles
from docutils.parsers.rst.languages import en as english # type: ignore[attr-defined] from docutils.parsers.rst.languages import en as english # type: ignore[attr-defined]
from docutils.parsers.rst.states import Body from docutils.parsers.rst.states import Body
from docutils.utils import Reporter from docutils.utils import Reporter
from jinja2 import Environment, pass_environment from jinja2 import pass_environment
from sphinx.locale import __ from sphinx.locale import __
from sphinx.util import docutils, logging from sphinx.util import docutils, logging
@ -21,6 +21,7 @@ if TYPE_CHECKING:
from collections.abc import Iterator from collections.abc import Iterator
from docutils.statemachine import StringList from docutils.statemachine import StringList
from jinja2 import Environment
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)

View File

@ -1,7 +1,10 @@
from __future__ import annotations from __future__ import annotations
import io # NoQA: TC003 import io # NoQA: TC003
from typing import Optional, overload from typing import TYPE_CHECKING, overload
if TYPE_CHECKING:
from typing import Optional
myint = int myint = int

View File

@ -1,6 +1,9 @@
from __future__ import annotations from __future__ import annotations
from typing import Any, overload from typing import TYPE_CHECKING, overload
if TYPE_CHECKING:
from typing import Any
@overload @overload

View File

@ -1,7 +1,7 @@
from __future__ import annotations from __future__ import annotations
from datetime import datetime from datetime import datetime
from typing import Any from typing import Any # NoQA: TC003
CONSTANT = 'foo' CONSTANT = 'foo'
SENTINEL = object() SENTINEL = object()

View File

@ -1,7 +1,10 @@
from __future__ import annotations from __future__ import annotations
import pathlib import pathlib
from typing import Any, Tuple, TypeVar, Union # NoQA: UP035 from typing import TYPE_CHECKING, Tuple, TypeVar, Union # NoQA: UP035
if TYPE_CHECKING:
from typing import Any
CONST1: int CONST1: int
#: docstring #: docstring

View File

@ -2,7 +2,7 @@ from __future__ import annotations
from contextlib import contextmanager from contextlib import contextmanager
from functools import lru_cache from functools import lru_cache
from typing import Generator # NoQA: UP035 from typing import Generator # NoQA: TC003,UP035
@lru_cache(maxsize=None) # NoQA: UP033 @lru_cache(maxsize=None) # NoQA: UP033

View File

@ -21,7 +21,6 @@ from urllib3.poolmanager import PoolManager
import sphinx.util.http_date import sphinx.util.http_date
from sphinx.builders.linkcheck import ( from sphinx.builders.linkcheck import (
CheckRequest, CheckRequest,
CheckResult,
Hyperlink, Hyperlink,
HyperlinkAvailabilityCheckWorker, HyperlinkAvailabilityCheckWorker,
RateLimit, RateLimit,
@ -41,6 +40,9 @@ if TYPE_CHECKING:
from urllib3 import HTTPConnectionPool from urllib3 import HTTPConnectionPool
from sphinx.builders.linkcheck import (
CheckResult,
)
from sphinx.testing.util import SphinxTestApp from sphinx.testing.util import SphinxTestApp