From 00b0ef3c1fefd1eb86ccfad3cf287374aa2d2ff2 Mon Sep 17 00:00:00 2001 From: qutebrowser bot Date: Mon, 20 Dec 2021 04:21:35 +0000 Subject: Update dependencies --- misc/requirements/requirements-check-manifest.txt | 2 +- misc/requirements/requirements-dev.txt | 12 ++++++------ misc/requirements/requirements-mypy.txt | 8 ++++---- misc/requirements/requirements-pylint.txt | 4 ++-- misc/requirements/requirements-sphinx.txt | 2 +- misc/requirements/requirements-tests.txt | 8 ++++---- misc/requirements/requirements-tox.txt | 2 +- requirements.txt | 2 +- 8 files changed, 20 insertions(+), 20 deletions(-) diff --git a/misc/requirements/requirements-check-manifest.txt b/misc/requirements/requirements-check-manifest.txt index c61218ba3..bd32971c2 100644 --- a/misc/requirements/requirements-check-manifest.txt +++ b/misc/requirements/requirements-check-manifest.txt @@ -6,4 +6,4 @@ packaging==21.3 pep517==0.12.0 pyparsing==3.0.6 toml==0.10.2 -tomli==1.2.2 +tomli==2.0.0 diff --git a/misc/requirements/requirements-dev.txt b/misc/requirements/requirements-dev.txt index 4d08bf58d..6de742e61 100644 --- a/misc/requirements/requirements-dev.txt +++ b/misc/requirements/requirements-dev.txt @@ -7,13 +7,13 @@ certifi==2021.10.8 cffi==1.15.0 charset-normalizer==2.0.9 colorama==0.4.4 -cryptography==36.0.0 +cryptography==36.0.1 Deprecated==1.2.13 docutils==0.18.1 github3.py==3.0.0 -hunter==3.3.8 +hunter==3.4.3 idna==3.3 -importlib-metadata==4.8.2 +importlib-metadata==4.10.0 jeepney==0.7.1 jwcrypto==1.0 keyring==23.4.0 @@ -23,11 +23,11 @@ pep517==0.12.0 pkginfo==1.8.2 pycparser==2.21 Pygments==2.10.0 -Pympler==0.9 +Pympler==1.0 pyparsing==3.0.6 PyQt-builder==1.12.2 python-dateutil==2.8.2 -readme-renderer==31.0 +readme-renderer==32.0 requests==2.26.0 requests-toolbelt==0.9.1 rfc3986==1.5.0 @@ -35,7 +35,7 @@ SecretStorage==3.3.1 sip==6.5.0 six==1.16.0 toml==0.10.2 -tomli==1.2.2 +tomli==2.0.0 tqdm==4.62.3 twine==3.7.1 uritemplate==4.1.1 diff --git a/misc/requirements/requirements-mypy.txt b/misc/requirements/requirements-mypy.txt index 09d406b7e..8dfc046fd 100644 --- a/misc/requirements/requirements-mypy.txt +++ b/misc/requirements/requirements-mypy.txt @@ -2,17 +2,17 @@ chardet==4.0.0 diff-cover==6.4.4 -importlib-metadata==4.8.2 +importlib-metadata==4.10.0 importlib-resources==5.4.0 Jinja2==3.0.3 -lxml==4.6.5 +lxml==4.7.1 MarkupSafe==2.0.1 -mypy==0.910 +mypy==0.920 mypy-extensions==0.4.3 pluggy==1.0.0 Pygments==2.10.0 PyQt5-stubs==5.15.2.0 -toml==0.10.2 +tomli==2.0.0 types-dataclasses==0.6.1 types-PyYAML==6.0.1 typing_extensions==4.0.1 diff --git a/misc/requirements/requirements-pylint.txt b/misc/requirements/requirements-pylint.txt index 740849ab4..b41f16a90 100644 --- a/misc/requirements/requirements-pylint.txt +++ b/misc/requirements/requirements-pylint.txt @@ -4,14 +4,14 @@ astroid==2.9.0 certifi==2021.10.8 cffi==1.15.0 charset-normalizer==2.0.9 -cryptography==36.0.0 +cryptography==36.0.1 Deprecated==1.2.13 future==0.18.2 github3.py==3.0.0 idna==3.3 isort==5.10.1 jwcrypto==1.0 -lazy-object-proxy==1.6.0 +lazy-object-proxy==1.7.1 mccabe==0.6.1 pefile==2021.9.3 platformdirs==2.4.0 diff --git a/misc/requirements/requirements-sphinx.txt b/misc/requirements/requirements-sphinx.txt index 5ff5b6926..6fc36a3c1 100644 --- a/misc/requirements/requirements-sphinx.txt +++ b/misc/requirements/requirements-sphinx.txt @@ -15,7 +15,7 @@ pyparsing==3.0.6 pytz==2021.3 requests==2.26.0 snowballstemmer==2.2.0 -Sphinx==4.3.1 +Sphinx==4.3.2 sphinxcontrib-applehelp==1.0.2 sphinxcontrib-devhelp==1.0.2 sphinxcontrib-htmlhelp==2.0.0 diff --git a/misc/requirements/requirements-tests.txt b/misc/requirements/requirements-tests.txt index dd6c777a3..4a8a28d54 100644 --- a/misc/requirements/requirements-tests.txt +++ b/misc/requirements/requirements-tests.txt @@ -12,13 +12,13 @@ execnet==1.9.0 filelock==3.4.0 Flask==2.0.2 glob2==0.7 -hunter==3.3.8 -hypothesis==6.31.4 +hunter==3.4.3 +hypothesis==6.31.6 icdiff==2.0.4 idna==3.3 iniconfig==1.1.1 itsdangerous==2.0.1 -jaraco.functools==3.4.0 +jaraco.functools==3.5.0 # Jinja2==3.0.3 Mako==1.1.6 manhole==1.8.0 @@ -54,7 +54,7 @@ sortedcontainers==2.4.0 soupsieve==2.3.1 tldextract==3.1.2 toml==0.10.2 -tomli==1.2.2 +tomli==2.0.0 urllib3==1.26.7 vulture==2.3 Werkzeug==2.0.2 diff --git a/misc/requirements/requirements-tox.txt b/misc/requirements/requirements-tox.txt index 6f466eecd..150d73660 100644 --- a/misc/requirements/requirements-tox.txt +++ b/misc/requirements/requirements-tox.txt @@ -9,7 +9,7 @@ platformdirs==2.4.0 pluggy==1.0.0 py==1.11.0 pyparsing==3.0.6 -setuptools==59.6.0 +setuptools==60.0.0 six==1.16.0 toml==0.10.2 tox==3.24.4 diff --git a/requirements.txt b/requirements.txt index 19ee64901..d0dafebd9 100644 --- a/requirements.txt +++ b/requirements.txt @@ -3,7 +3,7 @@ adblock==0.5.1 colorama==0.4.4 dataclasses==0.6 ; python_version<"3.7" -importlib-metadata==4.8.2 ; python_version<"3.8" +importlib-metadata==4.10.0 ; python_version<"3.8" importlib-resources==5.4.0 ; python_version<"3.9" Jinja2==3.0.3 MarkupSafe==2.0.1 -- cgit v1.2.3-54-g00ecf From 6b66221dea65df665cc2d55db61680dd478a7cf9 Mon Sep 17 00:00:00 2001 From: Florian Bruhin Date: Mon, 20 Dec 2021 11:36:26 +0100 Subject: scripts: Handle lines with == in marker correctly --- scripts/dev/recompile_requirements.py | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/scripts/dev/recompile_requirements.py b/scripts/dev/recompile_requirements.py index 61423c7c4..a5ab8df4f 100644 --- a/scripts/dev/recompile_requirements.py +++ b/scripts/dev/recompile_requirements.py @@ -392,14 +392,14 @@ def _get_changed_files(): def parse_versioned_line(line): """Parse a requirements.txt line into name/version.""" - if '==' in line: - if line[0] == '#': # ignored dependency - line = line[1:].strip() + if line[0] == '#': # ignored dependency + line = line[1:].strip() - # Strip comments and pip environment markers - line = line.rsplit('#', maxsplit=1)[0] - line = line.split(';')[0].strip() + # Strip comments and pip environment markers + line = line.rsplit('#', maxsplit=1)[0] + line = line.split(';')[0].strip() + if '==' in line: name, version = line.split('==') elif line.startswith('-e'): rest, name = line.split('#egg=') -- cgit v1.2.3-54-g00ecf From 1d0787f852ebc8ac6217c0d07445950f921142b7 Mon Sep 17 00:00:00 2001 From: Florian Bruhin Date: Mon, 20 Dec 2021 11:36:48 +0100 Subject: requirements: Do the Python 3.6 dance --- misc/requirements/requirements-qutebrowser.txt-raw | 5 ++++- misc/requirements/requirements-tests.txt | 6 ++++-- misc/requirements/requirements-tests.txt-raw | 6 ++++++ misc/requirements/requirements-tox.txt | 3 ++- misc/requirements/requirements-tox.txt-raw | 3 +++ requirements.txt | 3 ++- 6 files changed, 21 insertions(+), 5 deletions(-) diff --git a/misc/requirements/requirements-qutebrowser.txt-raw b/misc/requirements/requirements-qutebrowser.txt-raw index e07ea992a..9f2e369a1 100644 --- a/misc/requirements/requirements-qutebrowser.txt-raw +++ b/misc/requirements/requirements-qutebrowser.txt-raw @@ -15,6 +15,9 @@ importlib-metadata # Determining PyQt version typing_extensions # from importlib-metadata #@ markers: importlib-resources python_version<"3.9" -#@ markers: importlib-metadata python_version<"3.8" +#@ markers: importlib-metadata python_version=="3.7.*" #@ markers: typing_extensions python_version<"3.8" #@ markers: dataclasses python_version<"3.7" + +# Python 3.6 +#@ add: importlib-metadata<4.9 ; python_version=="3.6.*" diff --git a/misc/requirements/requirements-tests.txt b/misc/requirements/requirements-tests.txt index 4a8a28d54..fa37c75a5 100644 --- a/misc/requirements/requirements-tests.txt +++ b/misc/requirements/requirements-tests.txt @@ -18,7 +18,7 @@ icdiff==2.0.4 idna==3.3 iniconfig==1.1.1 itsdangerous==2.0.1 -jaraco.functools==3.5.0 +jaraco.functools==3.5.0 ; python_version>="3.7" # Jinja2==3.0.3 Mako==1.1.6 manhole==1.8.0 @@ -54,7 +54,9 @@ sortedcontainers==2.4.0 soupsieve==2.3.1 tldextract==3.1.2 toml==0.10.2 -tomli==2.0.0 +tomli==2.0.0 ; python_version>="3.7" urllib3==1.26.7 vulture==2.3 Werkzeug==2.0.2 +jaraco.functools<3.5 ; python_version=="3.6.*" +tomli<2 ; python_version=="3.6.*" diff --git a/misc/requirements/requirements-tests.txt-raw b/misc/requirements/requirements-tests.txt-raw index 5586a86ef..22a50679a 100644 --- a/misc/requirements/requirements-tests.txt-raw +++ b/misc/requirements/requirements-tests.txt-raw @@ -35,3 +35,9 @@ pytest-icdiff tldextract #@ ignore: Jinja2, MarkupSafe, colorama + +# Python 3.6 +#@ markers: jaraco.functools python_version>="3.7" +#@ add: jaraco.functools<3.5 ; python_version=="3.6.*" +#@ markers: tomli python_version>="3.7" +#@ add: tomli<2 ; python_version=="3.6.*" diff --git a/misc/requirements/requirements-tox.txt b/misc/requirements/requirements-tox.txt index 150d73660..f9f9e12a2 100644 --- a/misc/requirements/requirements-tox.txt +++ b/misc/requirements/requirements-tox.txt @@ -9,9 +9,10 @@ platformdirs==2.4.0 pluggy==1.0.0 py==1.11.0 pyparsing==3.0.6 -setuptools==60.0.0 +setuptools==60.0.0 ; python_version>="3.7" six==1.16.0 toml==0.10.2 tox==3.24.4 virtualenv==20.10.0 wheel==0.37.0 +setuptools<60 ; python_version=="3.6.*" diff --git a/misc/requirements/requirements-tox.txt-raw b/misc/requirements/requirements-tox.txt-raw index 27d58e1f4..2f7f64b1f 100644 --- a/misc/requirements/requirements-tox.txt-raw +++ b/misc/requirements/requirements-tox.txt-raw @@ -1,2 +1,5 @@ tox wheel + +#@ markers: setuptools python_version>="3.7" +#@ add: setuptools<60 ; python_version=="3.6.*" diff --git a/requirements.txt b/requirements.txt index d0dafebd9..7528da7d4 100644 --- a/requirements.txt +++ b/requirements.txt @@ -3,7 +3,7 @@ adblock==0.5.1 colorama==0.4.4 dataclasses==0.6 ; python_version<"3.7" -importlib-metadata==4.10.0 ; python_version<"3.8" +importlib-metadata==4.10.0 ; python_version=="3.7.*" importlib-resources==5.4.0 ; python_version<"3.9" Jinja2==3.0.3 MarkupSafe==2.0.1 @@ -11,3 +11,4 @@ Pygments==2.10.0 PyYAML==6.0 typing_extensions==4.0.1 ; python_version<"3.8" zipp==3.6.0 +importlib-metadata<4.9 ; python_version=="3.6.*" -- cgit v1.2.3-54-g00ecf From 450619e25af5ab8bf7352bae85c59002fe09ec49 Mon Sep 17 00:00:00 2001 From: Florian Bruhin Date: Mon, 20 Dec 2021 12:07:02 +0100 Subject: Update annotations for new mypy --- qutebrowser/extensions/loader.py | 4 +--- qutebrowser/utils/debug.py | 4 ++-- qutebrowser/utils/log.py | 7 +++++-- qutebrowser/utils/version.py | 3 ++- 4 files changed, 10 insertions(+), 8 deletions(-) diff --git a/qutebrowser/extensions/loader.py b/qutebrowser/extensions/loader.py index c7b619b3e..2774d04e4 100644 --- a/qutebrowser/extensions/loader.py +++ b/qutebrowser/extensions/loader.py @@ -95,9 +95,7 @@ def load_components(*, skip_hooks: bool = False) -> None: def walk_components() -> Iterator[ExtensionInfo]: """Yield ExtensionInfo objects for all modules.""" for _finder, name, ispkg in pkgutil.walk_packages( - # Only packages have a __path__ attribute, - # but we're sure this is one. - path=components.__path__, # type: ignore[attr-defined] + path=components.__path__, prefix=components.__name__ + '.', onerror=_on_walk_error): if ispkg: diff --git a/qutebrowser/utils/debug.py b/qutebrowser/utils/debug.py index 7d069909a..0fa74f4e7 100644 --- a/qutebrowser/utils/debug.py +++ b/qutebrowser/utils/debug.py @@ -81,7 +81,7 @@ def log_signals(obj: QObject) -> QObject: pass if inspect.isclass(obj): - old_init = obj.__init__ # type: ignore[misc] + old_init = obj.__init__ @functools.wraps(old_init) def new_init(self: Any, *args: Any, **kwargs: Any) -> None: @@ -89,7 +89,7 @@ def log_signals(obj: QObject) -> QObject: old_init(self, *args, **kwargs) connect_log_slot(self) - obj.__init__ = new_init # type: ignore[misc] + obj.__init__ = new_init else: connect_log_slot(obj) diff --git a/qutebrowser/utils/log.py b/qutebrowser/utils/log.py index 54ca4029b..6677e383e 100644 --- a/qutebrowser/utils/log.py +++ b/qutebrowser/utils/log.py @@ -43,7 +43,9 @@ except ImportError: colorama = None if TYPE_CHECKING: + # pylint: disable=unused-import from qutebrowser.config import config as configmodule + from typing import TextIO _log_inited = False _args = None @@ -257,7 +259,7 @@ def _init_handlers( force_color: bool, json_logging: bool, ram_capacity: int -) -> Tuple[logging.StreamHandler, Optional['RAMHandler']]: +) -> Tuple["logging.StreamHandler[TextIO]", Optional['RAMHandler']]: """Init log handlers. Args: @@ -727,7 +729,8 @@ class ColoredFormatter(logging.Formatter): datefmt: str, style: str, *, use_colors: bool) -> None: - super().__init__(fmt, datefmt, style) + super().__init__(fmt, datefmt, style) # type: ignore[arg-type] + # FIXME Use Literal["%", "{", "$"] once we use Python 3.8 or typing_extensions self.use_colors = use_colors def format(self, record: logging.LogRecord) -> str: diff --git a/qutebrowser/utils/version.py b/qutebrowser/utils/version.py index 3beb6fb83..8da86dd00 100644 --- a/qutebrowser/utils/version.py +++ b/qutebrowser/utils/version.py @@ -514,7 +514,8 @@ def _get_pyqt_webengine_qt_version() -> Optional[str]: import importlib_metadata except ImportError: try: - import importlib.metadata as importlib_metadata # type: ignore[no-redef] + # pylint: disable=line-too-long + import importlib.metadata as importlib_metadata # type: ignore[import, no-redef] except ImportError: log.misc.debug("Neither importlib.metadata nor backport available") return None -- cgit v1.2.3-54-g00ecf From e78c6699a0a44c8ed063e0f95a34b7357133514d Mon Sep 17 00:00:00 2001 From: Florian Bruhin Date: Mon, 20 Dec 2021 15:08:02 +0100 Subject: scripts: More version parsing in recompile_requirements Required for misc_checks.py --- scripts/dev/recompile_requirements.py | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/scripts/dev/recompile_requirements.py b/scripts/dev/recompile_requirements.py index a5ab8df4f..185770132 100644 --- a/scripts/dev/recompile_requirements.py +++ b/scripts/dev/recompile_requirements.py @@ -399,8 +399,14 @@ def parse_versioned_line(line): line = line.rsplit('#', maxsplit=1)[0] line = line.split(';')[0].strip() - if '==' in line: - name, version = line.split('==') + ops = ["==", "~=", "!=", ">", "<", ">=", "<="] + + if any(op in line for op in ops): + # strictly speaking, this version isn't necessarily correct, but it's + # enough for the table. + for op in ops: + if op in line: + name, version = line.split(op) elif line.startswith('-e'): rest, name = line.split('#egg=') version = rest.split('@')[1][:7] -- cgit v1.2.3-54-g00ecf