partial bitcoin#23212: enable mypy import checking

This commit is contained in:
Kittywhiskers Van Gogh 2024-11-23 18:25:18 +00:00
parent f77eca9256
commit df6be0e8c0
No known key found for this signature in database
GPG Key ID: 30CD0C065E5C4AAD
8 changed files with 19 additions and 15 deletions

View File

@ -13,8 +13,9 @@ update-alternatives --install /usr/bin/clang-format-diff clang-format-diff $(whi
${CI_RETRY_EXE} pip3 install codespell==2.0.0 ${CI_RETRY_EXE} pip3 install codespell==2.0.0
${CI_RETRY_EXE} pip3 install flake8==3.8.3 ${CI_RETRY_EXE} pip3 install flake8==3.8.3
${CI_RETRY_EXE} pip3 install mypy==0.910
${CI_RETRY_EXE} pip3 install pyzmq==22.3.0
${CI_RETRY_EXE} pip3 install vulture==2.3 ${CI_RETRY_EXE} pip3 install vulture==2.3
${CI_RETRY_EXE} pip3 install mypy==0.781
SHELLCHECK_VERSION=v0.8.0 SHELLCHECK_VERSION=v0.8.0
curl -sL "https://github.com/koalaman/shellcheck/releases/download/${SHELLCHECK_VERSION}/shellcheck-${SHELLCHECK_VERSION}.linux.x86_64.tar.xz" | tar --xz -xf - --directory /tmp/ curl -sL "https://github.com/koalaman/shellcheck/releases/download/${SHELLCHECK_VERSION}/shellcheck-${SHELLCHECK_VERSION}.linux.x86_64.tar.xz" | tar --xz -xf - --directory /tmp/

View File

@ -77,10 +77,10 @@ RUN pip3 install \
flake8==3.8.3 \ flake8==3.8.3 \
jinja2 \ jinja2 \
lief==0.13.2 \ lief==0.13.2 \
pyzmq \ multiprocess \
vulture==2.3 \ mypy==0.910 \
mypy==0.781 \ pyzmq==22.3.0 \
multiprocess vulture==2.3
# dash_hash # dash_hash
ARG DASH_HASH_VERSION=1.4.0 ARG DASH_HASH_VERSION=1.4.0

View File

@ -10,7 +10,7 @@ Otherwise the exit status will be 1 and it will log which executables failed whi
import sys import sys
from typing import List from typing import List
import lief import lief #type:ignore
def check_ELF_RELRO(binary) -> bool: def check_ELF_RELRO(binary) -> bool:
''' '''

View File

@ -13,7 +13,7 @@ Example usage:
import sys import sys
from typing import Dict, List from typing import Dict, List
import lief import lief #type:ignore
# Debian 11 (Bullseye) EOL: 2026. https://wiki.debian.org/LTS # Debian 11 (Bullseye) EOL: 2026. https://wiki.debian.org/LTS
# #

View File

@ -308,12 +308,15 @@ Use the `-v` option for verbose output.
#### Dependencies #### Dependencies
| Lint test | Dependency | Version [used by CI](../ci/lint/04_install.sh) | Installation | Lint test | Dependency |
|-----------|:----------:|:-------------------------------------------:|-------------- |-----------|:----------:|
| [`lint-python.sh`](lint/lint-python.sh) | [flake8](https://gitlab.com/pycqa/flake8) | [3.8.3](https://github.com/bitcoin/bitcoin/pull/19348) | `pip3 install flake8==3.8.3` | [`lint-python.sh`](lint/lint-python.sh) | [flake8](https://gitlab.com/pycqa/flake8)
| [`lint-python.sh`](lint/lint-python.sh) | [mypy](https://github.com/python/mypy) | [0.781](https://github.com/bitcoin/bitcoin/pull/19348) | `pip3 install mypy==0.781` | [`lint-python.sh`](lint/lint-python.sh) | [mypy](https://github.com/python/mypy)
| [`lint-shell.sh`](lint/lint-shell.sh) | [ShellCheck](https://github.com/koalaman/shellcheck) | [0.7.2](https://github.com/bitcoin/bitcoin/pull/21749) | [details...](https://github.com/koalaman/shellcheck#installing) | [`lint-python.sh`](lint/lint-python.sh) | [pyzmq](https://github.com/zeromq/pyzmq)
| [`lint-spelling.sh`](lint/lint-spelling.sh) | [codespell](https://github.com/codespell-project/codespell) | [2.0.0](https://github.com/bitcoin/bitcoin/pull/20817) | `pip3 install codespell==2.0.0` | [`lint-shell.sh`](lint/lint-shell.sh) | [ShellCheck](https://github.com/koalaman/shellcheck)
| [`lint-spelling.sh`](lint/lint-spelling.sh) | [codespell](https://github.com/codespell-project/codespell)
In use versions and install instructions are available in the [CI setup](../ci/lint/04_install.sh).
Please be aware that on Linux distributions all dependencies are usually available as packages, but could be outdated. Please be aware that on Linux distributions all dependencies are usually available as packages, but could be outdated.

View File

@ -188,7 +188,7 @@ def print_logs_plain(log_events, colors):
def print_logs_html(log_events): def print_logs_html(log_events):
"""Renders the iterator of log events into html.""" """Renders the iterator of log events into html."""
try: try:
import jinja2 import jinja2 #type:ignore
except ImportError: except ImportError:
print("jinja2 not found. Try `pip install jinja2`") print("jinja2 not found. Try `pip install jinja2`")
sys.exit(1) sys.exit(1)

View File

View File

@ -40,7 +40,7 @@ except UnicodeDecodeError:
CROSS = "x " CROSS = "x "
CIRCLE = "o " CIRCLE = "o "
if os.name != 'nt' or sys.getwindowsversion() >= (10, 0, 14393): if os.name != 'nt' or sys.getwindowsversion() >= (10, 0, 14393): #type:ignore
if os.name == 'nt': if os.name == 'nt':
import ctypes import ctypes
kernel32 = ctypes.windll.kernel32 # type: ignore kernel32 = ctypes.windll.kernel32 # type: ignore