freeipa/pylintrc
Stanislav Levin c6769ad12f Fix errors found by Pylint-2.4.3
New Pylint (2.4.3) catches several new 'true problems'. At the same
time, it warns about things that are massively and reasonably
employed in FreeIPA.

list of fixed:
- no-else-continue
- redeclared-assigned-name
- no-else-break
- unnecessary-comprehension
- using-constant-test (false positive)

list of ignored (responsibility of contributors and reviewers):
- import-outside-toplevel

Fixes: https://pagure.io/freeipa/issue/8102
Signed-off-by: Stanislav Levin <slev@altlinux.org>
Reviewed-By: Fraser Tweedale <ftweedal@redhat.com>
2019-10-21 18:01:32 +11:00

136 lines
3.7 KiB
INI

[MASTER]
# Pickle collected data for later comparisons.
persistent=no
# List of plugins (as comma separated values of python modules names) to load,
# usually to register additional checkers.
# FIXME: has to be specified on the command line otherwise pylint fails with
# DuplicateSectionError for the IPA section
#load-plugins=pylint_plugins
# Use multiple processes to speed up Pylint.
jobs=0
# A list of packages with safe C extensions to load
extension-pkg-whitelist=
_ldap,
cryptography,
gssapi,
netifaces
[CLASSES]
# List of valid names for the first argument in a metaclass class method.
# This can be removed after upgrading to pylint 2.0
valid-metaclass-classmethod-first-arg=cls
[MESSAGES CONTROL]
enable=
all,
python3
disable=
I,
duplicate-code,
interface-not-implemented,
no-self-use,
redefined-variable-type,
too-few-public-methods,
too-many-ancestors,
too-many-arguments,
too-many-boolean-expressions,
too-many-branches,
too-many-instance-attributes,
too-many-locals,
too-many-nested-blocks,
too-many-public-methods,
too-many-return-statements,
too-many-statements,
abstract-method,
anomalous-backslash-in-string,
arguments-differ,
attribute-defined-outside-init,
bad-builtin,
bad-indentation,
broad-except,
dangerous-default-value,
eval-used,
exec-used,
fixme,
global-statement,
no-init,
pointless-string-statement,
protected-access,
redefined-builtin,
redefined-outer-name,
super-init-not-called,
undefined-loop-variable,
unnecessary-lambda,
unused-argument,
useless-else-on-loop,
bad-continuation,
bad-whitespace,
blacklisted-name,
invalid-name,
line-too-long,
missing-docstring,
multiple-statements,
superfluous-parens,
too-many-lines,
unidiomatic-typecheck,
no-absolute-import,
wrong-import-order,
ungrouped-imports,
wrong-import-position,
unsubscriptable-object,
unsupported-membership-test,
not-an-iterable,
singleton-comparison,
misplaced-comparison-constant,
not-a-mapping,
singleton-comparison,
len-as-condition, # new in pylint 1.7
no-else-return, # new in pylint 1.7
single-string-used-for-slots, # new in pylint 1.7
useless-super-delegation, # new in pylint 1.7
redefined-argument-from-local, # new in pylint 1.7
consider-merging-isinstance, # new in pylint 1.7
bad-option-value, # required to support upgrade to pylint 2.0
assignment-from-no-return, # new in pylint 2.0
keyword-arg-before-vararg, # pylint 2.0, remove after dropping Python 2
consider-using-enumerate, # pylint 2.1, clean up tests later
no-else-raise, # python 2.4.0
import-outside-toplevel, # pylint 2.4.2
[REPORTS]
# Set the output format. Available formats are text, parseable, colorized, msvs
# (visual studio) and html. You can also give a reporter class, eg
# mypackage.mymodule.MyReporterClass.
output-format=colorized
# Tells whether to display a full report or only the messages
reports=no
# Template used to display messages. This is a python new-style format string
# used to format the message information. See doc for all details
msg-template='{path}:{line}: [{msg_id}({symbol}), {obj}] {msg})'
[VARIABLES]
dummy-variables-rgx=(_.+|unused)
[IPA]
forbidden-imports=
client/:ipaserver,
ipaclient/:ipaclient.install:ipalib.install:ipaserver,
ipaclient/install/:ipaserver,
ipalib/:ipaclient.install:ipalib.install:ipaserver,
ipalib/install/:ipaserver,
ipaplatform/:ipaclient:ipalib:ipaserver,
ipapython/:ipaclient:ipalib:ipaserver
ipatests/pytest_ipa:ipaserver:ipaclient.install:ipalib.install
ipatests/test_integration:ipaserver