jenkins-bot has submitted this change. (
https://gerrit.wikimedia.org/r/c/pywikibot/core/+/1189977?usp=email )
Change subject: Typing: Solve some mypy issues
......................................................................
Typing: Solve some mypy issues
Change-Id: I61f3608565f7ad909a3e85412967bfdd55732c02
---
M .pre-commit-config.yaml
M conftest.py
M pywikibot/backports.py
M pywikibot/tools/chars.py
M pywikibot/tools/threading.py
M pywikibot/userinterfaces/buffer_interface.py
6 files changed, 14 insertions(+), 12 deletions(-)
Approvals:
Xqt: Looks good to me, approved
jenkins-bot: Verified
diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml
index cc0cae2..1560236 100644
--- a/.pre-commit-config.yaml
+++ b/.pre-commit-config.yaml
@@ -135,6 +135,6 @@
pagegenerators/(__init__|_filters)|
scripts/(?:i18n/)?__init__|
site/(__init__|_basesite|_decorators|_interwikimap|_tokenwallet|_upload)|
- tools/(_logging|_unidata|formatter)|
- userinterfaces/(__init__|_interface_base|terminal_interface)
+ tools/(_deprecate|_logging|_unidata|chars|formatter)|
+
userinterfaces/(__init__|_interface_base|buffer_interface|terminal_interface|transliteration)
)\.py$
diff --git a/conftest.py b/conftest.py
index 5e92cd4..0155796 100644
--- a/conftest.py
+++ b/conftest.py
@@ -26,8 +26,9 @@
r'scripts/(i18n/)?__init__|'
r'site/(__init__|_basesite|_decorators|_interwikimap|'
r'_tokenwallet|_upload)|'
- r'tools/(_logging|_unidata|formatter)|'
- r'userinterfaces/(__init__|_interface_base|terminal_interface)'
+ r'tools/(_deprecate|_logging|_unidata|chars|formatter)|'
+ r'userinterfaces/(__init__|_interface_base|buffer_interface|'
+ r'terminal_interface|transliteration)'
r')\.py'
)
diff --git a/pywikibot/backports.py b/pywikibot/backports.py
index 00636aa..ca4d3c6 100644
--- a/pywikibot/backports.py
+++ b/pywikibot/backports.py
@@ -20,8 +20,8 @@
# Placed here to omit circular import in tools
-PYTHON_VERSION = sys.version_info[:3]
-SPHINX_RUNNING = 'sphinx' in sys.modules
+PYTHON_VERSION: tuple[int, int, int] = sys.version_info[:3]
+SPHINX_RUNNING: bool = 'sphinx' in sys.modules
# functools.cache
if PYTHON_VERSION >= (3, 9):
diff --git a/pywikibot/tools/chars.py b/pywikibot/tools/chars.py
index 08d50e2..e251b97 100644
--- a/pywikibot/tools/chars.py
+++ b/pywikibot/tools/chars.py
@@ -1,6 +1,6 @@
"""Character based helper functions (not wiki-dependent)."""
#
-# (C) Pywikibot team, 2015-2024
+# (C) Pywikibot team, 2015-2025
#
# Distributed under the terms of the MIT license.
#
@@ -8,6 +8,7 @@
import re
from contextlib import suppress
+from typing import cast
from urllib.parse import unquote
from pywikibot.backports import Iterable
@@ -125,13 +126,13 @@
if isinstance(encodings, str):
return unquote(title, encodings, errors='strict')
- first_exception = None
+ first_exception: BaseException | None = None
for enc in encodings:
try:
return unquote(title, enc, errors='strict')
except (UnicodeError, LookupError) as e:
- if not first_exception:
+ if first_exception is None:
first_exception = e
# Couldn't convert, raise the first exception
- raise first_exception
+ raise cast(BaseException, first_exception)
diff --git a/pywikibot/tools/threading.py b/pywikibot/tools/threading.py
index 522a461..83c40de 100644
--- a/pywikibot/tools/threading.py
+++ b/pywikibot/tools/threading.py
@@ -69,7 +69,7 @@
raise RuntimeError('No generator for ThreadedGenerator to run.')
self.args, self.kwargs = args, kwargs
super().__init__(group=group, name=name)
- self.queue = queue.Queue(qsize)
+ self.queue: queue.Queue[Any] = queue.Queue(qsize)
self.finished = threading.Event()
def __iter__(self):
diff --git a/pywikibot/userinterfaces/buffer_interface.py
b/pywikibot/userinterfaces/buffer_interface.py
index 22121e9..31f6993f 100644
--- a/pywikibot/userinterfaces/buffer_interface.py
+++ b/pywikibot/userinterfaces/buffer_interface.py
@@ -30,7 +30,7 @@
"""Initialize the UI."""
super().__init__()
- self._buffer = queue.Queue()
+ self._buffer: queue.Queue[Any] = queue.Queue()
self.log_handler = logging.handlers.QueueHandler(self._buffer)
self.log_handler.setLevel(VERBOSE if config.verbose_output else INFO)
--
To view, visit
https://gerrit.wikimedia.org/r/c/pywikibot/core/+/1189977?usp=email
To unsubscribe, or for help writing mail filters, visit
https://gerrit.wikimedia.org/r/settings?usp=email
Gerrit-MessageType: merged
Gerrit-Project: pywikibot/core
Gerrit-Branch: master
Gerrit-Change-Id: I61f3608565f7ad909a3e85412967bfdd55732c02
Gerrit-Change-Number: 1189977
Gerrit-PatchSet: 2
Gerrit-Owner: Xqt <[email protected]>
Gerrit-Reviewer: Xqt <[email protected]>
Gerrit-Reviewer: jenkins-bot
_______________________________________________
Pywikibot-commits mailing list -- [email protected]
To unsubscribe send an email to [email protected]