mirror of
https://salsa.debian.org/freeipa-team/freeipa.git
synced 2025-02-03 12:11:25 -06:00
pylint: updates related to deprecations
pylint 3.0 has deprectated a few functions: - check_messages: Use utils.only_required_for_messages - The config attribute of BaseChecker has been deprecated. You can use checker.linter.config to access the global configuration object instead of a checker-specific object - Everything related to the __implements__ construct was removed. - Checker should only inherit BaseChecker or any of the other checker types from pylint.checkers. Signed-off-by: Florence Blanc-Renaud <flo@redhat.com> Reviewed-By: Alexander Bokovoy <abokovoy@redhat.com> Reviewed-By: Rob Crittenden <rcritten@redhat.com>
This commit is contained in:
parent
8981ede1a2
commit
020af153db
@ -10,5 +10,5 @@ ipaserver == @VERSION@
|
||||
ipatests == @VERSION@
|
||||
|
||||
# keep pylint version in sync with current Fedora release
|
||||
# F37 has 2.15.5
|
||||
pylint ~= 2.15.5
|
||||
# F39 has 3.0.25
|
||||
pylint ~= 3.0.2
|
||||
|
@ -10,10 +10,9 @@ import sys
|
||||
import textwrap
|
||||
|
||||
from astroid import MANAGER, register_module_extender
|
||||
from astroid import scoped_nodes
|
||||
from astroid.nodes import scoped_nodes
|
||||
from pylint.checkers import BaseChecker
|
||||
from pylint.checkers.utils import check_messages
|
||||
from pylint.interfaces import IAstroidChecker
|
||||
from pylint.checkers.utils import only_required_for_messages
|
||||
from astroid.builder import AstroidBuilder
|
||||
|
||||
|
||||
@ -33,14 +32,18 @@ def fake_class(name_or_class_obj, members=()):
|
||||
if isinstance(name_or_class_obj, scoped_nodes.ClassDef):
|
||||
cl = name_or_class_obj
|
||||
else:
|
||||
cl = scoped_nodes.ClassDef(name_or_class_obj, None)
|
||||
cl = scoped_nodes.ClassDef(
|
||||
name=name_or_class_obj, lineno=None, col_offset=None, parent=None,
|
||||
end_lineno=None, end_col_offset=None)
|
||||
|
||||
for m in members:
|
||||
if isinstance(m, str):
|
||||
if m in cl.locals:
|
||||
_warning_already_exists(cl, m)
|
||||
else:
|
||||
cl.locals[m] = [scoped_nodes.ClassDef(m, None)]
|
||||
cl.locals[m] = [scoped_nodes.ClassDef(
|
||||
name=m, lineno=None, col_offset=None, parent=None,
|
||||
end_lineno=None, end_col_offset=None)]
|
||||
elif isinstance(m, dict):
|
||||
for key, val in m.items():
|
||||
assert isinstance(key, str), "key must be string"
|
||||
@ -250,7 +253,6 @@ register_module_extender(MANAGER, 'ipalib.request', ipalib_request_transform)
|
||||
|
||||
|
||||
class IPAChecker(BaseChecker):
|
||||
__implements__ = IAstroidChecker
|
||||
|
||||
name = 'ipa'
|
||||
msgs = {
|
||||
@ -278,7 +280,7 @@ class IPAChecker(BaseChecker):
|
||||
self._dir = os.path.abspath(os.path.dirname(__file__))
|
||||
|
||||
self._forbidden_imports = {self._dir: []}
|
||||
for forbidden_import in self.config.forbidden_imports:
|
||||
for forbidden_import in self.linter.config.forbidden_imports:
|
||||
forbidden_import = forbidden_import.split(':')
|
||||
path = os.path.join(self._dir, forbidden_import[0])
|
||||
path = os.path.abspath(path)
|
||||
@ -320,12 +322,12 @@ class IPAChecker(BaseChecker):
|
||||
self.add_message('ipa-forbidden-import',
|
||||
args=(name, module, relpath), node=node)
|
||||
|
||||
@check_messages('ipa-forbidden-import')
|
||||
@only_required_for_messages('ipa-forbidden-import')
|
||||
def visit_import(self, node):
|
||||
names = [n[0] for n in node.names]
|
||||
self._check_forbidden_imports(node, names)
|
||||
|
||||
@check_messages('ipa-forbidden-import')
|
||||
@only_required_for_messages('ipa-forbidden-import')
|
||||
def visit_importfrom(self, node):
|
||||
names = ['{}.{}'.format(node.modname, n[0]) for n in node.names]
|
||||
self._check_forbidden_imports(node, names)
|
||||
|
Loading…
Reference in New Issue
Block a user