aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Mensinger <daniel@mensinger-ka.de>2019-04-23 14:59:54 +0200
committerDaniel Mensinger <daniel@mensinger-ka.de>2019-04-29 12:22:50 +0200
commit2b5831f94fdfdbce711189502c6f41606c12af61 (patch)
tree2d11b6257d3e4dc40b4657664dbfccf73349ba0e
parente75211d321d7416b8a4871d3015a7915fb86b53b (diff)
downloadmeson-2b5831f94fdfdbce711189502c6f41606c12af61.zip
meson-2b5831f94fdfdbce711189502c6f41606c12af61.tar.gz
meson-2b5831f94fdfdbce711189502c6f41606c12af61.tar.bz2
Fix flake8-bugbear warnings
-rw-r--r--mesonbuild/ast/visitor.py2
-rw-r--r--mesonbuild/backend/backends.py4
-rw-r--r--mesonbuild/coredata.py2
-rw-r--r--mesonbuild/dependencies/base.py6
-rw-r--r--mesonbuild/interpreterbase.py2
-rw-r--r--mesonbuild/mintro.py2
-rw-r--r--mesonbuild/mlog.py43
-rw-r--r--mesonbuild/mparser.py2
-rw-r--r--sideci.yml1
9 files changed, 35 insertions, 29 deletions
diff --git a/mesonbuild/ast/visitor.py b/mesonbuild/ast/visitor.py
index c8769d4..fab4ed2 100644
--- a/mesonbuild/ast/visitor.py
+++ b/mesonbuild/ast/visitor.py
@@ -134,7 +134,5 @@ class AstVisitor:
self.visit_default_func(node)
for i in node.arguments:
i.accept(self)
- for i in node.commas:
- pass
for val in node.kwargs.values():
val.accept(self)
diff --git a/mesonbuild/backend/backends.py b/mesonbuild/backend/backends.py
index 4a4f7f4..5ff9b55 100644
--- a/mesonbuild/backend/backends.py
+++ b/mesonbuild/backend/backends.py
@@ -320,12 +320,14 @@ class Backend:
raise MesonException('Unknown data type in object list.')
return obj_list
- def serialize_executable(self, tname, exe, cmd_args, workdir, env={},
+ def serialize_executable(self, tname, exe, cmd_args, workdir, env=None,
extra_paths=None, capture=None):
'''
Serialize an executable for running with a generator or a custom target
'''
import hashlib
+ if env is None:
+ env = {}
if extra_paths is None:
# The callee didn't check if we needed extra paths, so check it here
if mesonlib.is_windows() or mesonlib.is_cygwin():
diff --git a/mesonbuild/coredata.py b/mesonbuild/coredata.py
index 9281019..b836086 100644
--- a/mesonbuild/coredata.py
+++ b/mesonbuild/coredata.py
@@ -20,7 +20,7 @@ from pathlib import PurePath
from collections import OrderedDict
from .mesonlib import (
MesonException, MachineChoice, PerMachine,
- default_libdir, default_libexecdir, default_prefix, stringlistify
+ default_libdir, default_libexecdir, default_prefix
)
from .wrap import WrapMode
import ast
diff --git a/mesonbuild/dependencies/base.py b/mesonbuild/dependencies/base.py
index 313f2a0..c34b102 100644
--- a/mesonbuild/dependencies/base.py
+++ b/mesonbuild/dependencies/base.py
@@ -924,9 +924,11 @@ class CMakeTraceLine:
return s.format(self.file, self.line, self.func, self.args)
class CMakeTarget:
- def __init__(self, name, type, properies = {}):
+ def __init__(self, name, target_type, properies = None):
+ if properies is None:
+ properies = {}
self.name = name
- self.type = type
+ self.type = target_type
self.properies = properies
def __repr__(self):
diff --git a/mesonbuild/interpreterbase.py b/mesonbuild/interpreterbase.py
index c148cbd..8a67f25 100644
--- a/mesonbuild/interpreterbase.py
+++ b/mesonbuild/interpreterbase.py
@@ -144,7 +144,7 @@ def stringArgs(f):
return wrapped
def noArgsFlattening(f):
- setattr(f, 'no-args-flattening', True)
+ setattr(f, 'no-args-flattening', True) # noqa: B010
return f
def disablerIfNotFound(f):
diff --git a/mesonbuild/mintro.py b/mesonbuild/mintro.py
index a4a6978..c47fffd 100644
--- a/mesonbuild/mintro.py
+++ b/mesonbuild/mintro.py
@@ -27,7 +27,7 @@ from . import mlog
from .backend import backends
from .mparser import FunctionNode, ArrayNode, ArgumentNode, StringNode
from typing import List, Optional
-import sys, os
+import os
import pathlib
def get_meson_info_file(info_dir: str):
diff --git a/mesonbuild/mlog.py b/mesonbuild/mlog.py
index 2121282..79dee47 100644
--- a/mesonbuild/mlog.py
+++ b/mesonbuild/mlog.py
@@ -19,6 +19,7 @@ import time
import platform
from contextlib import contextmanager
import typing
+from typing import Any, Generator, List, Optional, Sequence, TextIO, Union
"""This is (mostly) a standalone module used to write logging
information about Meson runs. Some output goes to screen,
@@ -43,11 +44,11 @@ if platform.system().lower() == 'windows':
colorize_console = os.isatty(sys.stdout.fileno()) and _windows_ansi() # type: bool
else:
colorize_console = os.isatty(sys.stdout.fileno()) and os.environ.get('TERM') != 'dumb'
-log_dir = None # type: typing.Optional[str]
-log_file = None # type: typing.Optional[typing.TextIO]
+log_dir = None # type: Optional[str]
+log_file = None # type: Optional[TextIO]
log_fname = 'meson-log.txt' # type: str
log_depth = 0 # type: int
-log_timestamp_start = None # type: typing.Optional[float]
+log_timestamp_start = None # type: Optional[float]
log_fatal_warnings = False # type: bool
log_disable_stdout = False # type: bool
log_errors_only = False # type: bool
@@ -78,7 +79,7 @@ def set_timestamp_start(start: float) -> None:
global log_timestamp_start
log_timestamp_start = start
-def shutdown() -> typing.Optional[str]:
+def shutdown() -> Optional[str]:
global log_file
if log_file is not None:
path = log_file.name
@@ -124,8 +125,8 @@ def cyan(text: str) -> AnsiDecorator:
# This really should be AnsiDecorator or anything that implements
# __str__(), but that requires protocols from typing_extensions
-def process_markup(args: typing.Sequence[typing.Union[AnsiDecorator, str]], keep: bool) -> typing.List[str]:
- arr = [] # type: typing.List[str]
+def process_markup(args: Sequence[Union[AnsiDecorator, str]], keep: bool) -> List[str]:
+ arr = [] # type: List[str]
if log_timestamp_start is not None:
arr = ['[{:.3f}]'.format(time.monotonic() - log_timestamp_start)]
for arg in args:
@@ -139,7 +140,7 @@ def process_markup(args: typing.Sequence[typing.Union[AnsiDecorator, str]], keep
arr.append(str(arg))
return arr
-def force_print(*args: str, **kwargs: typing.Any) -> None:
+def force_print(*args: str, **kwargs: Any) -> None:
global log_disable_stdout
if log_disable_stdout:
return
@@ -160,14 +161,14 @@ def force_print(*args: str, **kwargs: typing.Any) -> None:
print(cleaned, end='')
# We really want a heterogenous dict for this, but that's in typing_extensions
-def debug(*args: typing.Union[str, AnsiDecorator], **kwargs: typing.Any) -> None:
+def debug(*args: Union[str, AnsiDecorator], **kwargs: Any) -> None:
arr = process_markup(args, False)
if log_file is not None:
print(*arr, file=log_file, **kwargs)
log_file.flush()
-def log(*args: typing.Union[str, AnsiDecorator], is_error: bool = False,
- **kwargs: typing.Any) -> None:
+def log(*args: Union[str, AnsiDecorator], is_error: bool = False,
+ **kwargs: Any) -> None:
global log_errors_only
arr = process_markup(args, False)
if log_file is not None:
@@ -178,7 +179,7 @@ def log(*args: typing.Union[str, AnsiDecorator], is_error: bool = False,
if not log_errors_only or is_error:
force_print(*arr, **kwargs)
-def _log_error(severity: str, *rargs: typing.Union[str, AnsiDecorator], **kwargs: typing.Any) -> None:
+def _log_error(severity: str, *rargs: Union[str, AnsiDecorator], **kwargs: Any) -> None:
from .mesonlib import get_error_location_string
from .environment import build_filename
from .mesonlib import MesonException
@@ -186,7 +187,7 @@ def _log_error(severity: str, *rargs: typing.Union[str, AnsiDecorator], **kwargs
# The tping requirements here are non-obvious. Lists are invariant,
# therefore List[A] and List[Union[A, B]] are not able to be joined
if severity == 'warning':
- label = [yellow('WARNING:')] # type: typing.List[typing.Union[str, AnsiDecorator]]
+ label = [yellow('WARNING:')] # type: List[Union[str, AnsiDecorator]]
elif severity == 'error':
label = [red('ERROR:')]
elif severity == 'deprecation':
@@ -202,7 +203,7 @@ def _log_error(severity: str, *rargs: typing.Union[str, AnsiDecorator], **kwargs
location_str = get_error_location_string(location_file, location.lineno)
# Unions are frankly awful, and we have to cast here to get mypy
# to understand that the list concatenation is safe
- location_list = typing.cast(typing.List[typing.Union[str, AnsiDecorator]], [location_str])
+ location_list = typing.cast(List[Union[str, AnsiDecorator]], [location_str])
args = location_list + args
log(*args, **kwargs)
@@ -211,18 +212,20 @@ def _log_error(severity: str, *rargs: typing.Union[str, AnsiDecorator], **kwargs
if log_fatal_warnings:
raise MesonException("Fatal warnings enabled, aborting")
-def error(*args: typing.Union[str, AnsiDecorator], **kwargs: typing.Any) -> None:
+def error(*args: Union[str, AnsiDecorator], **kwargs: Any) -> None:
return _log_error('error', *args, **kwargs, is_error=True)
-def warning(*args: typing.Union[str, AnsiDecorator], **kwargs: typing.Any) -> None:
+def warning(*args: Union[str, AnsiDecorator], **kwargs: Any) -> None:
return _log_error('warning', *args, **kwargs, is_error=True)
-def deprecation(*args: typing.Union[str, AnsiDecorator], **kwargs: typing.Any) -> None:
+def deprecation(*args: Union[str, AnsiDecorator], **kwargs: Any) -> None:
return _log_error('deprecation', *args, **kwargs, is_error=True)
-def exception(e: Exception, prefix: AnsiDecorator = red('ERROR:')) -> None:
+def exception(e: Exception, prefix: Optional[AnsiDecorator] = None) -> None:
+ if prefix is None:
+ prefix = red('ERROR:')
log()
- args = [] # type: typing.List[typing.Union[AnsiDecorator, str]]
+ args = [] # type: List[Union[AnsiDecorator, str]]
if hasattr(e, 'file') and hasattr(e, 'lineno') and hasattr(e, 'colno'):
# Mypy can't figure this out, and it's pretty easy to vidual inspect
# that this is correct, so we'll just ignore it.
@@ -234,7 +237,7 @@ def exception(e: Exception, prefix: AnsiDecorator = red('ERROR:')) -> None:
# Format a list for logging purposes as a string. It separates
# all but the last item with commas, and the last with 'and'.
-def format_list(input_list: typing.List[str]) -> str:
+def format_list(input_list: List[str]) -> str:
l = len(input_list)
if l > 2:
return ' and '.join([', '.join(input_list[:-1]), input_list[-1]])
@@ -246,7 +249,7 @@ def format_list(input_list: typing.List[str]) -> str:
return ''
@contextmanager
-def nested() -> typing.Generator[None, None, None]:
+def nested() -> Generator[None, None, None]:
global log_depth
log_depth += 1
try:
diff --git a/mesonbuild/mparser.py b/mesonbuild/mparser.py
index 4305a7c..b4fb032 100644
--- a/mesonbuild/mparser.py
+++ b/mesonbuild/mparser.py
@@ -217,7 +217,7 @@ class BaseNode:
fname = 'visit_{}'.format(type(self).__name__)
if hasattr(visitor, fname):
func = getattr(visitor, fname)
- if hasattr(func, '__call__'):
+ if callable(func):
func(self)
class ElementaryNode(BaseNode):
diff --git a/sideci.yml b/sideci.yml
index af65457..5c56196 100644
--- a/sideci.yml
+++ b/sideci.yml
@@ -4,3 +4,4 @@ linter:
plugins:
- flake8-blind-except
- flake8-builtins
+ - flake8-bugbear