Import typing classes from collections.abc

See https://peps.python.org/pep-0585/
and https://docs.python.org/3/whatsnew/3.9.html#type-hinting-generics-in-standard-collections

Not changing List/Dict/Set/etc. in this commit, as that's a way bigger change.

Done via:

    ruff check --select 'UP035' --fix --config 'target-version = "py39"'

Also see #7098.
This commit is contained in:
Florian Bruhin 2024-10-13 14:53:56 +02:00
parent 4d069b8fc3
commit c32b8090ca
87 changed files with 172 additions and 97 deletions

View File

@ -35,7 +35,8 @@ Possible values:
import inspect
from typing import Any, Callable, Iterable, Protocol, Optional, Dict, cast
from typing import Any, Callable, Protocol, Optional, Dict, cast
from collections.abc import Iterable
from qutebrowser.utils import qtutils
from qutebrowser.commands import command, cmdexc

View File

@ -29,7 +29,8 @@ import tempfile
import pathlib
import datetime
import argparse
from typing import Iterable, Optional, List, Tuple
from typing import Optional, List, Tuple
from collections.abc import Iterable
from qutebrowser.qt import machinery
from qutebrowser.qt.widgets import QApplication, QWidget

View File

@ -9,8 +9,8 @@ import pathlib
import itertools
import functools
import dataclasses
from typing import (cast, TYPE_CHECKING, Any, Callable, Iterable, List, Optional,
Sequence, Set, Type, Union, Tuple)
from typing import (cast, TYPE_CHECKING, Any, Callable, List, Optional, Set, Type, Union, Tuple)
from collections.abc import Iterable, Sequence
from qutebrowser.qt import machinery
from qutebrowser.qt.core import (pyqtSignal, pyqtSlot, QUrl, QObject, QSizeF, Qt,

View File

@ -13,7 +13,8 @@ import functools
import pathlib
import tempfile
import enum
from typing import Any, Dict, IO, List, MutableSequence, Optional, Union
from typing import Any, Dict, IO, List, Optional, Union
from collections.abc import MutableSequence
from qutebrowser.qt.core import (pyqtSlot, pyqtSignal, Qt, QObject, QModelIndex,
QTimer, QAbstractListModel, QUrl)

View File

@ -5,7 +5,8 @@
"""The ListView to display downloads in."""
import functools
from typing import Callable, MutableSequence, Tuple, Union
from typing import Callable, Tuple, Union
from collections.abc import MutableSequence
from qutebrowser.qt.core import pyqtSlot, QSize, Qt
from qutebrowser.qt.widgets import QListView, QSizePolicy, QMenu, QStyleFactory

View File

@ -12,7 +12,8 @@ import functools
import glob
import textwrap
import dataclasses
from typing import cast, List, Sequence, Tuple, Optional
from typing import cast, List, Tuple, Optional
from collections.abc import Sequence
from qutebrowser.qt.core import pyqtSignal, QObject, QUrl

View File

@ -12,8 +12,8 @@ import html
import enum
import dataclasses
from string import ascii_lowercase
from typing import (TYPE_CHECKING, Callable, Dict, Iterable, Iterator, List, Mapping,
MutableSequence, Optional, Sequence, Set)
from typing import (TYPE_CHECKING, Callable, Dict, List, Optional, Set)
from collections.abc import Iterable, Iterator, Mapping, MutableSequence, Sequence
from qutebrowser.qt.core import pyqtSignal, pyqtSlot, QObject, Qt, QUrl
from qutebrowser.qt.widgets import QLabel

View File

@ -8,7 +8,8 @@ import os
import time
import contextlib
import pathlib
from typing import cast, Mapping, MutableSequence, Optional
from typing import cast, Optional
from collections.abc import Mapping, MutableSequence
from qutebrowser.qt import machinery
from qutebrowser.qt.core import pyqtSlot, QUrl, QObject, pyqtSignal

View File

@ -18,7 +18,8 @@ import textwrap
import urllib
import collections
import secrets
from typing import TypeVar, Callable, Dict, List, Optional, Union, Sequence, Tuple
from typing import TypeVar, Callable, Dict, List, Optional, Union, Tuple
from collections.abc import Sequence
from qutebrowser.qt.core import QUrlQuery, QUrl

View File

@ -10,7 +10,8 @@ import html
import enum
import netrc
import tempfile
from typing import Callable, Mapping, List, Optional, Iterable, Iterator
from typing import Callable, List, Optional
from collections.abc import Mapping, Iterable, Iterator
from qutebrowser.qt.core import QUrl, pyqtBoundSignal

View File

@ -15,7 +15,7 @@ import os.path
import html
import functools
import collections
from typing import MutableMapping
from collections.abc import MutableMapping
from qutebrowser.qt.core import pyqtSignal, QUrl, QObject

View File

@ -4,7 +4,8 @@
"""Generic web element related code."""
from typing import Iterator, Optional, Set, TYPE_CHECKING, Union, Dict
from typing import Optional, Set, TYPE_CHECKING, Union, Dict
from collections.abc import Iterator
import collections.abc
from qutebrowser.qt import machinery

View File

@ -125,8 +125,8 @@ import copy
import enum
import dataclasses
import collections
from typing import (Any, Iterator, Mapping, MutableMapping, Optional, Set, Tuple, Union,
Sequence, List)
from typing import (Any, Optional, Set, Tuple, Union, List)
from collections.abc import Iterator, Mapping, MutableMapping, Sequence
from qutebrowser.config import config
from qutebrowser.utils import usertypes, utils, log, version

View File

@ -33,7 +33,8 @@ import dataclasses
import itertools
import functools
import subprocess
from typing import Any, List, Dict, Optional, Iterator, Type, TYPE_CHECKING
from typing import Any, List, Dict, Optional, Type, TYPE_CHECKING
from collections.abc import Iterator
from qutebrowser.qt import machinery
from qutebrowser.qt.core import (Qt, QObject, QVariant, QMetaType, QByteArray, pyqtSlot,

View File

@ -5,7 +5,8 @@
"""QtWebEngine specific part of the web element API."""
from typing import (
TYPE_CHECKING, Any, Callable, Dict, Iterator, Optional, Set, Tuple, Union)
TYPE_CHECKING, Any, Callable, Dict, Optional, Set, Tuple, Union)
from collections.abc import Iterator
from qutebrowser.qt.core import QRect, QEventLoop
from qutebrowser.qt.widgets import QApplication

View File

@ -5,7 +5,8 @@
"""The main browser widget for QtWebEngine."""
import mimetypes
from typing import List, Iterable, Optional
from typing import List, Optional
from collections.abc import Iterable
from qutebrowser.qt import machinery
from qutebrowser.qt.core import pyqtSignal, pyqtSlot, QUrl

View File

@ -4,7 +4,8 @@
"""A wrapper over a list of QSslErrors."""
from typing import Sequence, Optional
from typing import Optional
from collections.abc import Sequence
from qutebrowser.qt.network import QSslError, QNetworkReply

View File

@ -4,7 +4,7 @@
"""Handling of HTTP cookies."""
from typing import Sequence
from collections.abc import Sequence
from qutebrowser.qt.network import QNetworkCookie, QNetworkCookieJar
from qutebrowser.qt.core import pyqtSignal, QDateTime

View File

@ -19,7 +19,8 @@ import email.mime.multipart
import email.message
import quopri
import dataclasses
from typing import MutableMapping, Set, Tuple, Callable
from typing import Set, Tuple, Callable
from collections.abc import MutableMapping
from qutebrowser.qt.core import QUrl

View File

@ -7,7 +7,8 @@
import collections
import html
import dataclasses
from typing import TYPE_CHECKING, Dict, MutableMapping, Optional, Set
from typing import TYPE_CHECKING, Dict, Optional, Set
from collections.abc import MutableMapping
from qutebrowser.qt.core import pyqtSlot, pyqtSignal, QUrl, QByteArray
from qutebrowser.qt.network import (QNetworkAccessManager, QNetworkReply, QSslConfiguration,

View File

@ -4,7 +4,8 @@
"""Utilities related to QWebHistory."""
from typing import Any, List, Mapping
from typing import Any, List
from collections.abc import Mapping
from qutebrowser.qt.core import QByteArray, QDataStream, QIODevice, QUrl

View File

@ -4,7 +4,8 @@
"""QtWebKit specific part of the web element API."""
from typing import cast, TYPE_CHECKING, Iterator, List, Optional, Set
from typing import cast, TYPE_CHECKING, List, Optional, Set
from collections.abc import Iterator
from qutebrowser.qt.core import QRect, Qt
# pylint: disable=no-name-in-module

View File

@ -7,7 +7,8 @@
import re
import functools
import xml.etree.ElementTree
from typing import cast, Iterable, Optional
from typing import cast, Optional
from collections.abc import Iterable
from qutebrowser.qt.core import pyqtSlot, Qt, QUrl, QPoint, QTimer, QSizeF, QSize
from qutebrowser.qt.gui import QIcon

View File

@ -9,8 +9,9 @@ import collections
import traceback
import typing
import dataclasses
from typing import (Any, MutableMapping, MutableSequence, Tuple, Union, List, Optional,
from typing import (Any, Tuple, Union, List, Optional,
Callable)
from collections.abc import MutableMapping, MutableSequence
from qutebrowser.api import cmdutils
from qutebrowser.commands import cmdexc, argparser

View File

@ -5,7 +5,8 @@
"""Module for parsing commands entered into the browser."""
import dataclasses
from typing import List, Iterator
from typing import List
from collections.abc import Iterator
from qutebrowser.commands import cmdexc, command
from qutebrowser.misc import split, objects

View File

@ -7,7 +7,8 @@
import traceback
import re
import contextlib
from typing import TYPE_CHECKING, Callable, Dict, Tuple, Iterator, Mapping, MutableMapping
from typing import TYPE_CHECKING, Callable, Dict, Tuple
from collections.abc import Iterator, Mapping, MutableMapping
from qutebrowser.qt.core import pyqtSlot, QUrl, QObject

View File

@ -7,7 +7,8 @@
import os
import os.path
import tempfile
from typing import cast, Any, MutableMapping, Tuple
from typing import cast, Any, Tuple
from collections.abc import MutableMapping
from qutebrowser.qt.core import pyqtSignal, pyqtSlot, QObject, QSocketNotifier

View File

@ -4,7 +4,8 @@
"""Models for the command completion."""
from typing import Sequence, Optional
from typing import Optional
from collections.abc import Sequence
from qutebrowser.completion.models.util import DeleteFuncType
from qutebrowser.qt.core import QAbstractItemModel

View File

@ -4,7 +4,8 @@
"""A model that proxies access to one or more completion categories."""
from typing import MutableSequence, overload, Optional, Any, cast
from typing import overload, Optional, Any, cast
from collections.abc import MutableSequence
from qutebrowser.qt import machinery
from qutebrowser.qt.core import Qt, QModelIndex, QAbstractItemModel, QObject

View File

@ -14,7 +14,8 @@ is harder to achieve via pathlib.
import glob
import os
import os.path
from typing import List, Optional, Iterable
from typing import List, Optional
from collections.abc import Iterable
from qutebrowser.qt.core import QAbstractListModel, QModelIndex, QObject, Qt, QUrl

View File

@ -5,7 +5,8 @@
"""Completion category that uses a list of tuples as a data source."""
import re
from typing import Iterable, Tuple
from typing import Tuple
from collections.abc import Iterable
from qutebrowser.qt.core import QSortFilterProxyModel, QRegularExpression
from qutebrowser.qt.gui import QStandardItem, QStandardItemModel

View File

@ -6,7 +6,8 @@
import datetime
import itertools
from typing import List, Sequence, Tuple
from typing import List, Tuple
from collections.abc import Sequence
from qutebrowser.config import config, configdata
from qutebrowser.utils import objreg, log, utils

View File

@ -4,7 +4,8 @@
"""Function to return the url completion model for the `open` command."""
from typing import Dict, Sequence
from typing import Dict
from collections.abc import Sequence
from qutebrowser.completion.models import (completionmodel, filepathcategory,
listcategory, histcategory,

View File

@ -4,7 +4,8 @@
"""Utility functions for completion models."""
from typing import Callable, Sequence
from typing import Callable
from collections.abc import Sequence
from qutebrowser.utils import usertypes
from qutebrowser.misc import objects

View File

@ -10,7 +10,8 @@ import pathlib
import functools
import contextlib
import subprocess
from typing import Optional, IO, Iterator
from typing import Optional, IO
from collections.abc import Iterator
from qutebrowser.qt.core import QUrl

View File

@ -11,7 +11,8 @@ import os
import signal
import logging
import pathlib
from typing import Optional, Sequence, Callable
from typing import Optional, Callable
from collections.abc import Sequence
try:
import hunter

View File

@ -5,7 +5,8 @@
"""Bridge to provide readline-like shortcuts for QLineEdits."""
import os
from typing import Iterable, Optional, MutableMapping, Any, Callable
from typing import Optional, Any, Callable
from collections.abc import Iterable, MutableMapping
from qutebrowser.qt.widgets import QApplication, QLineEdit

View File

@ -7,8 +7,8 @@
import copy
import contextlib
import functools
from typing import (TYPE_CHECKING, Any, Callable, Dict, Iterator, List, Mapping,
MutableMapping, MutableSequence, Optional, Tuple, cast)
from typing import (TYPE_CHECKING, Any, Callable, Dict, List, Optional, Tuple, cast)
from collections.abc import Iterator, Mapping, MutableMapping, MutableSequence
from qutebrowser.qt.core import pyqtSignal, QObject, QUrl

View File

@ -6,7 +6,8 @@
import os.path
import contextlib
from typing import TYPE_CHECKING, Iterator, List, Optional, Any, Tuple
from typing import TYPE_CHECKING, List, Optional, Any, Tuple
from collections.abc import Iterator
from qutebrowser.qt.core import QUrl, QUrlQuery

View File

@ -9,8 +9,8 @@ Module attributes:
DATA: A dict of Option objects after init() has been called.
"""
from typing import (Any, Dict, Iterable, List, Mapping, MutableMapping, Optional,
Sequence, Tuple, Union, NoReturn, cast)
from typing import (Any, Dict, List, Optional, Tuple, Union, NoReturn, cast)
from collections.abc import Iterable, Mapping, MutableMapping, Sequence
import functools
import dataclasses

View File

@ -6,7 +6,8 @@
import difflib
import dataclasses
from typing import Any, Mapping, Optional, Sequence, Union, List
from typing import Any, Optional, Union, List
from collections.abc import Mapping, Sequence
from qutebrowser.utils import usertypes, log

View File

@ -14,8 +14,8 @@ import traceback
import configparser
import contextlib
import re
from typing import (TYPE_CHECKING, Any, Dict, Iterable, Iterator, List, Mapping,
MutableMapping, Optional, Tuple, cast)
from typing import (TYPE_CHECKING, Any, Dict, List, Optional, Tuple, cast)
from collections.abc import Iterable, Iterator, Mapping, MutableMapping
import yaml
from qutebrowser.qt.core import pyqtSignal, pyqtSlot, QObject, QSettings, qVersion

View File

@ -36,8 +36,10 @@ import functools
import operator
import json
import dataclasses
from typing import (Any, Callable, Dict as DictType, Iterable, Iterator,
List as ListType, Optional, Pattern, Sequence, Tuple, Union)
from typing import (Any, Callable, Dict as DictType,
List as ListType, Optional, Tuple, Union)
from re import Pattern
from collections.abc import Iterable, Iterator, Sequence
import yaml
from qutebrowser.qt.core import QUrl, Qt

View File

@ -9,8 +9,8 @@ import collections
import itertools
import operator
from typing import (
TYPE_CHECKING, Any, Dict, Iterator, List, Optional, Sequence, Set, Union,
MutableMapping)
TYPE_CHECKING, Any, Dict, List, Optional, Set, Union)
from collections.abc import Iterator, Sequence, MutableMapping
from qutebrowser.qt.core import QUrl
from qutebrowser.qt.gui import QFontDatabase

View File

@ -8,7 +8,8 @@ import os
import sys
import argparse
import pathlib
from typing import Any, Dict, Iterator, List, Optional, Sequence, Tuple, Union, Callable
from typing import Any, Dict, List, Optional, Tuple, Union, Callable
from collections.abc import Iterator, Sequence
from qutebrowser.qt import machinery
from qutebrowser.qt.core import QLocale

View File

@ -10,7 +10,8 @@ import pathlib
import importlib
import argparse
import dataclasses
from typing import Callable, Iterator, List, Optional, Tuple
from typing import Callable, List, Optional, Tuple
from collections.abc import Iterator
from qutebrowser.qt.core import pyqtSlot

View File

@ -8,7 +8,8 @@ import string
import types
import dataclasses
import traceback
from typing import Mapping, MutableMapping, Optional, Sequence
from typing import Optional
from collections.abc import Mapping, MutableMapping, Sequence
from qutebrowser.qt.core import QObject, pyqtSignal
from qutebrowser.qt.gui import QKeySequence, QKeyEvent

View File

@ -18,7 +18,8 @@ handle what we actually think we do.
import itertools
import dataclasses
from typing import Iterator, Iterable, List, Mapping, Optional, Union, overload, cast
from typing import List, Optional, Union, overload, cast
from collections.abc import Iterator, Iterable, Mapping
from qutebrowser.qt import machinery
from qutebrowser.qt.core import Qt, QEvent

View File

@ -6,7 +6,8 @@
import functools
import dataclasses
from typing import Mapping, Callable, MutableMapping, Union, Set, cast
from typing import Callable, Union, Set, cast
from collections.abc import Mapping, MutableMapping
from qutebrowser.qt import machinery
from qutebrowser.qt.core import pyqtSlot, pyqtSignal, Qt, QObject, QEvent

View File

@ -10,7 +10,8 @@ Module attributes:
import traceback
import enum
from typing import TYPE_CHECKING, Sequence
from typing import TYPE_CHECKING
from collections.abc import Sequence
from qutebrowser.qt.core import pyqtSlot, Qt, QObject
from qutebrowser.qt.gui import QKeySequence, QKeyEvent

View File

@ -8,7 +8,8 @@ import binascii
import base64
import itertools
import functools
from typing import List, MutableSequence, Optional, Tuple, cast
from typing import List, Optional, Tuple, cast
from collections.abc import MutableSequence
from qutebrowser.qt import machinery
from qutebrowser.qt.core import (pyqtBoundSignal, pyqtSlot, QRect, QPoint, QTimer, Qt,

View File

@ -4,7 +4,8 @@
"""Showing messages above the statusbar."""
from typing import MutableSequence, Optional
from typing import Optional
from collections.abc import MutableSequence
from qutebrowser.qt.core import pyqtSlot, pyqtSignal, Qt
from qutebrowser.qt.widgets import QWidget, QVBoxLayout, QLabel, QSizePolicy

View File

@ -9,7 +9,8 @@ import html
import collections
import functools
import dataclasses
from typing import Deque, MutableSequence, Optional, cast
from typing import Deque, Optional, cast
from collections.abc import MutableSequence
from qutebrowser.qt.core import (pyqtSlot, pyqtSignal, Qt, QTimer, QDir, QModelIndex,
QItemSelectionModel, QObject, QEventLoop, QUrl)

View File

@ -10,7 +10,8 @@ import weakref
import datetime
import dataclasses
from typing import (
Any, Deque, List, Mapping, MutableMapping, MutableSequence, Optional, Tuple)
Any, Deque, List, Optional, Tuple)
from collections.abc import Mapping, MutableMapping, MutableSequence
from qutebrowser.qt.widgets import QSizePolicy, QWidget, QApplication
from qutebrowser.qt.core import pyqtSignal, pyqtSlot, QTimer, QUrl, QPoint

View File

@ -6,7 +6,8 @@
import collections
import dataclasses
from typing import MutableSequence, cast, TYPE_CHECKING
from typing import cast, TYPE_CHECKING
from collections.abc import MutableSequence
from qutebrowser.qt.core import QObject, QByteArray

View File

@ -13,7 +13,8 @@ import shutil
import os.path
import argparse
import dataclasses
from typing import Any, Optional, Sequence, Tuple
from typing import Any, Optional, Tuple
from collections.abc import Sequence
from qutebrowser.qt import machinery
from qutebrowser.qt.core import Qt

View File

@ -4,7 +4,7 @@
"""Command history for the status bar."""
from typing import MutableSequence
from collections.abc import MutableSequence
from qutebrowser.qt.core import pyqtSlot, pyqtSignal, QObject

View File

@ -6,7 +6,8 @@
import sys
import code
from typing import MutableSequence, Optional
from typing import Optional
from collections.abc import MutableSequence
from qutebrowser.qt.core import pyqtSignal, pyqtSlot, Qt
from qutebrowser.qt.widgets import QTextEdit, QWidget, QVBoxLayout, QApplication

View File

@ -15,7 +15,8 @@ import functools
import threading
import faulthandler
import dataclasses
from typing import TYPE_CHECKING, Optional, MutableMapping, cast, List
from typing import TYPE_CHECKING, Optional, cast, List
from collections.abc import MutableMapping
from qutebrowser.qt.core import (pyqtSlot, qInstallMessageHandler, QObject,
QSocketNotifier, QTimer, QUrl)

View File

@ -9,7 +9,8 @@ dependencies as possible to avoid cyclic dependencies.
"""
import weakref
from typing import Any, Callable, Optional, TypeVar, Mapping
from typing import Any, Callable, Optional, TypeVar
from collections.abc import Mapping
from qutebrowser.utils import log

View File

@ -9,7 +9,8 @@ import locale
import shlex
import shutil
import signal
from typing import Mapping, Sequence, Dict, Optional
from typing import Dict, Optional
from collections.abc import Mapping, Sequence
from qutebrowser.qt.core import (pyqtSlot, pyqtSignal, QObject, QProcess,
QProcessEnvironment, QByteArray, QUrl, Qt)

View File

@ -6,7 +6,7 @@
import functools
import urllib.parse
from typing import MutableMapping
from collections.abc import MutableMapping
from qutebrowser.qt.core import pyqtSignal, QObject, QTimer
from qutebrowser.qt.network import (QNetworkAccessManager, QNetworkRequest,

View File

@ -7,7 +7,7 @@
import os
import os.path
import contextlib
from typing import Sequence
from collections.abc import Sequence
from qutebrowser.qt.core import pyqtSlot, pyqtSignal, QObject

View File

@ -30,7 +30,8 @@ import shutil
import pathlib
import dataclasses
import contextlib
from typing import ClassVar, IO, Optional, Dict, Tuple, Iterator
from typing import ClassVar, IO, Optional, Dict, Tuple
from collections.abc import Iterator
from qutebrowser.config import config
from qutebrowser.misc import binparsing, objects

View File

@ -15,7 +15,8 @@ import tokenize
import functools
import warnings
import subprocess
from typing import Iterable, Mapping, MutableSequence, Sequence, cast
from typing import cast
from collections.abc import Iterable, Mapping, MutableSequence, Sequence
from qutebrowser.qt.core import QObject, pyqtSignal, QTimer
try:

View File

@ -6,7 +6,7 @@
import os.path
import collections
from typing import MutableMapping
from collections.abc import MutableMapping
from qutebrowser.qt.core import pyqtSlot, QObject, QTimer

View File

@ -10,7 +10,8 @@ import itertools
import urllib
import shutil
import pathlib
from typing import Any, Iterable, MutableMapping, MutableSequence, Optional, Union, cast
from typing import Any, Optional, Union, cast
from collections.abc import Iterable, MutableMapping, MutableSequence
from qutebrowser.qt.core import Qt, QUrl, QObject, QPoint, QTimer, QDateTime
import yaml

View File

@ -9,7 +9,8 @@ import collections
import contextlib
import dataclasses
import types
from typing import Any, Dict, Iterator, List, Mapping, MutableSequence, Optional, Type, Union
from typing import Any, Dict, List, Optional, Type, Union
from collections.abc import Iterator, Mapping, MutableSequence
from qutebrowser.qt.core import QObject, pyqtSignal
from qutebrowser.qt.sql import QSqlDatabase, QSqlError, QSqlQuery

View File

@ -6,7 +6,8 @@
import dataclasses
import time
from typing import Any, Callable, Mapping, Optional, Sequence
from typing import Any, Callable, Optional
from collections.abc import Mapping, Sequence
from qutebrowser.qt.core import QObject

View File

@ -12,7 +12,8 @@ import functools
import datetime
import types
from typing import (
Any, Callable, List, Mapping, MutableSequence, Optional, Sequence, Type, Union)
Any, Callable, List, Optional, Type, Union)
from collections.abc import Mapping, MutableSequence, Sequence
from qutebrowser.qt.core import Qt, QEvent, QMetaMethod, QObject, pyqtBoundSignal

View File

@ -10,7 +10,8 @@ import inspect
import os.path
import collections
import enum
from typing import Any, Callable, MutableMapping, Optional, List, Union
from typing import Any, Callable, Optional, List, Union
from collections.abc import MutableMapping
import qutebrowser
from qutebrowser.utils import log, utils

View File

@ -4,7 +4,8 @@
"""Utilities related to javascript interaction."""
from typing import Sequence, Union
from typing import Union
from collections.abc import Sequence
_InnerJsArgType = Union[None, str, bool, int, float]
_JsArgType = Union[_InnerJsArgType, Sequence[_InnerJsArgType]]

View File

@ -10,7 +10,8 @@ import posixpath
import functools
import contextlib
import html
from typing import Any, Callable, FrozenSet, Iterator, List, Set, Tuple
from typing import Any, Callable, FrozenSet, List, Set, Tuple
from collections.abc import Iterator
import jinja2
import jinja2.nodes

View File

@ -15,8 +15,9 @@ import warnings
import json
import inspect
import argparse
from typing import (TYPE_CHECKING, Any, Iterator, Mapping, MutableSequence,
from typing import (TYPE_CHECKING, Any,
Optional, Set, Tuple, Union, TextIO, Literal, cast)
from collections.abc import Iterator, Mapping, MutableSequence
# NOTE: This is a Qt-free zone! All imports related to Qt logging should be done in
# qutebrowser.utils.qtlog (see https://github.com/qutebrowser/qutebrowser/issues/7769).

View File

@ -10,7 +10,8 @@
import dataclasses
import traceback
from typing import Any, Callable, Iterable, List, Union, Optional
from typing import Any, Callable, List, Union, Optional
from collections.abc import Iterable
from qutebrowser.qt.core import pyqtSignal, pyqtBoundSignal, QObject

View File

@ -7,8 +7,9 @@
import collections
import functools
from typing import (TYPE_CHECKING, Any, Callable, MutableMapping, MutableSequence,
Optional, Sequence, Union)
from typing import (TYPE_CHECKING, Any, Callable,
Optional, Union)
from collections.abc import MutableMapping, MutableSequence, Sequence
from qutebrowser.qt.core import QObject, QTimer
from qutebrowser.qt.widgets import QApplication

View File

@ -10,7 +10,8 @@ import faulthandler
import logging
import sys
import traceback
from typing import Iterator, Optional
from typing import Optional
from collections.abc import Iterator
from qutebrowser.qt import core as qtcore
from qutebrowser.utils import log

View File

@ -18,8 +18,9 @@ import enum
import pathlib
import operator
import contextlib
from typing import (Any, TYPE_CHECKING, BinaryIO, IO, Iterator, Literal,
from typing import (Any, TYPE_CHECKING, BinaryIO, IO, Literal,
Optional, Union, Tuple, Protocol, cast, overload, TypeVar)
from collections.abc import Iterator
from qutebrowser.qt import machinery, sip
from qutebrowser.qt.core import (qVersion, QEventLoop, QDataStream, QByteArray,

View File

@ -10,7 +10,8 @@ import contextlib
import posixpath
import pathlib
import importlib.resources
from typing import Iterator, Iterable, Union, Dict
from typing import Union, Dict
from collections.abc import Iterator, Iterable
if sys.version_info >= (3, 11): # pragma: no cover
# https://github.com/python/cpython/issues/90276

View File

@ -11,7 +11,8 @@ import contextlib
import enum
import argparse
import tempfile
from typing import Iterator, Optional, Dict
from typing import Optional, Dict
from collections.abc import Iterator
from qutebrowser.qt.core import QStandardPaths
from qutebrowser.qt.widgets import QApplication

View File

@ -11,7 +11,8 @@ import ipaddress
import posixpath
import urllib.parse
import mimetypes
from typing import Optional, Tuple, Union, Iterable, cast
from typing import Optional, Tuple, Union, cast
from collections.abc import Iterable
from qutebrowser.qt import machinery
from qutebrowser.qt.core import QUrl, QUrlQuery

View File

@ -10,7 +10,8 @@ import enum
import time
import dataclasses
import logging
from typing import Optional, Sequence, TypeVar, Union
from typing import Optional, TypeVar, Union
from collections.abc import Sequence
from qutebrowser.qt.core import pyqtSignal, pyqtSlot, QObject, QTimer
from qutebrowser.qt.core import QUrl

View File

@ -19,9 +19,10 @@ import contextlib
import shlex
import sysconfig
import mimetypes
from typing import (Any, Callable, IO, Iterator,
Optional, Sequence, Tuple, List, Type, Union,
from typing import (Any, Callable, IO,
Optional, Tuple, List, Type, Union,
TypeVar, Protocol)
from collections.abc import Iterator, Sequence
from qutebrowser.qt.core import QUrl, QVersionNumber, QRect, QPoint
from qutebrowser.qt.gui import QClipboard, QDesktopServices

View File

@ -19,8 +19,9 @@ import getpass
import functools
import dataclasses
import importlib.metadata
from typing import (Mapping, Optional, Sequence, Tuple, ClassVar, Dict, Any,
from typing import (Optional, Tuple, ClassVar, Dict, Any,
TYPE_CHECKING)
from collections.abc import Mapping, Sequence
from qutebrowser.qt import machinery
from qutebrowser.qt.core import PYQT_VERSION_STR

View File

@ -20,7 +20,8 @@ import platform
import collections
import dataclasses
import re
from typing import Iterable, List, Optional
from typing import List, Optional
from collections.abc import Iterable
try:
import winreg

View File

@ -15,7 +15,8 @@ import subprocess
import tokenize
import traceback
import pathlib
from typing import List, Iterator, Optional, Tuple
from typing import List, Optional, Tuple
from collections.abc import Iterator
REPO_ROOT = pathlib.Path(__file__).resolve().parents[2]
sys.path.insert(0, str(REPO_ROOT))

View File

@ -5,7 +5,8 @@
import pathlib
import logging
import csv
from typing import Iterable, Tuple
from typing import Tuple
from collections.abc import Iterable
from qutebrowser.qt.core import QUrl