Browse Source

pylint: enable various optional checks/extensions

https://github.com/fphammerle/ical2vdir/commit/3ddcbbd3e757644be6e32cf1c6135c82c845b4ab
https://github.com/fphammerle/ical2vdir/commit/4dcddd2d1b1b2808acf1d58c6475a64b297a00eb
Fabian Peter Hammerle 1 year ago
parent
commit
b7197cbc67

+ 22 - 2
.pylintrc

@@ -1,6 +1,26 @@
-[MESSAGE CONTROL]
+[MASTER]
 
-disable=missing-function-docstring,
+load-plugins=pylint.extensions.check_elif,
+             pylint.extensions.comparison_placement,
+             pylint.extensions.confusing_elif,
+             pylint.extensions.consider_ternary_expression,
+             pylint.extensions.emptystring,
+             pylint.extensions.eq_without_hash,
+             pylint.extensions.for_any_all,
+             pylint.extensions.mccabe,
+             pylint.extensions.no_self_use,
+             pylint.extensions.overlapping_exceptions,
+             pylint.extensions.private_import,
+             pylint.extensions.redefined_loop_name,
+             pylint.extensions.redefined_variable_type,
+             pylint.extensions.set_membership,
+             pylint.extensions.typing
+
+[MESSAGES CONTROL]
+
+disable=consider-alternative-union-syntax, # requires python>=3.10
+        deprecated-typing-alias, # requires python>=3.9, e.g. for dict[...]
+        missing-function-docstring,
         missing-module-docstring
 
 [DESIGN]

+ 3 - 1
switchbot_mqtt/_cli.py

@@ -148,7 +148,9 @@ def _main() -> None:
             mqtt_password = mqtt_password[:-1]
     else:
         mqtt_password = args.mqtt_password
-    if args.device_password_path:
+    if (  # pylint: disable=consider-ternary-expression; bulky with black's wraps
+        args.device_password_path
+    ):
         device_passwords = json.loads(args.device_password_path.read_text())
     else:
         device_passwords = {}

+ 1 - 0
tests/test_actor_base_device_info.py

@@ -24,6 +24,7 @@ import unittest.mock
 import bluepy.btle
 import pytest
 
+# pylint: disable=import-private-name; internal
 from switchbot_mqtt._actors import _ButtonAutomator, _CurtainMotor
 from switchbot_mqtt._actors.base import _MQTTControlledActor
 

+ 1 - 1
tests/test_cli.py

@@ -23,7 +23,7 @@ import subprocess
 import typing
 import unittest.mock
 
-import _pytest.capture
+import _pytest.capture  # pylint: disable=import-private-name; typing
 import pytest
 
 import switchbot_mqtt

+ 2 - 1
tests/test_mqtt.py

@@ -20,10 +20,11 @@ import logging
 import typing
 import unittest.mock
 
-import _pytest.logging
+import _pytest.logging  # pylint: disable=import-private-name; typing
 import pytest
 from paho.mqtt.client import MQTT_ERR_QUEUE_SIZE, MQTT_ERR_SUCCESS, MQTTMessage, Client
 
+# pylint: disable=import-private-name; internal
 import switchbot_mqtt
 import switchbot_mqtt._actors
 from switchbot_mqtt._actors import _ButtonAutomator, _CurtainMotor

+ 2 - 1
tests/test_switchbot_button_automator.py

@@ -24,10 +24,11 @@ import logging
 import typing
 import unittest.mock
 
-import _pytest.logging
+import _pytest.logging  # pylint: disable=import-private-name; typing
 import bluepy.btle
 import pytest
 
+# pylint: disable=import-private-name; internal
 from switchbot_mqtt._actors import _ButtonAutomator
 
 

+ 2 - 1
tests/test_switchbot_curtain_motor.py

@@ -20,10 +20,11 @@ import logging
 import typing
 import unittest.mock
 
-import _pytest.logging
+import _pytest.logging  # pylint: disable=import-private-name; typing
 import bluepy.btle
 import pytest
 
+# pylint: disable=import-private-name; internal
 import switchbot_mqtt._utils
 from switchbot_mqtt._actors import _CurtainMotor
 

+ 2 - 1
tests/test_switchbot_curtain_motor_position.py

@@ -19,10 +19,11 @@
 import logging
 import unittest.mock
 
-import _pytest.logging
+import _pytest.logging  # pylint: disable=import-private-name; typing
 import pytest
 from paho.mqtt.client import MQTTMessage
 
+# pylint: disable=import-private-name; internal
 from switchbot_mqtt._actors import _CurtainMotor
 from switchbot_mqtt._actors.base import _MQTTCallbackUserdata
 

+ 1 - 0
tests/test_utils.py

@@ -20,6 +20,7 @@ import typing
 
 import pytest
 
+# pylint: disable=import-private-name; internal
 from switchbot_mqtt._utils import (
     _mac_address_valid,
     _MQTTTopicLevel,