2016-01-15 09:58:38 -06:00
|
|
|
[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.
|
2017-02-14 02:58:44 -06:00
|
|
|
# FIXME: has to be specified on the command line otherwise pylint fails with
|
|
|
|
# DuplicateSectionError for the IPA section
|
|
|
|
#load-plugins=pylint_plugins
|
2016-01-15 09:58:38 -06:00
|
|
|
|
2016-11-18 04:31:36 -06:00
|
|
|
# A list of packages with safe C extensions to load
|
2022-12-02 04:53:52 -06:00
|
|
|
extension-pkg-allow-list=
|
2016-11-18 04:31:36 -06:00
|
|
|
_ldap,
|
|
|
|
cryptography,
|
|
|
|
gssapi,
|
2022-12-02 03:59:26 -06:00
|
|
|
netifaces,
|
|
|
|
lxml.etree,
|
|
|
|
pysss_murmur,
|
2016-11-18 04:31:36 -06:00
|
|
|
|
2018-07-12 15:20:59 -05:00
|
|
|
[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
|
2016-11-18 04:31:36 -06:00
|
|
|
|
2016-01-15 09:58:38 -06:00
|
|
|
[MESSAGES CONTROL]
|
|
|
|
|
|
|
|
enable=
|
|
|
|
all,
|
2021-07-30 04:12:36 -05:00
|
|
|
python3,
|
|
|
|
useless-suppression,
|
2016-01-15 09:58:38 -06:00
|
|
|
|
|
|
|
disable=
|
2021-07-30 04:12:36 -05:00
|
|
|
bad-inline-option,
|
|
|
|
c-extension-no-member,
|
|
|
|
deprecated-pragma,
|
|
|
|
file-ignored,
|
|
|
|
locally-disabled,
|
|
|
|
raw-checker-failed,
|
|
|
|
suppressed-message,
|
|
|
|
use-symbolic-message-instead,
|
2016-05-19 07:25:31 -05:00
|
|
|
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,
|
2016-01-15 09:58:38 -06:00
|
|
|
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,
|
2016-02-17 05:57:30 -06:00
|
|
|
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,
|
2017-05-26 14:41:40 -05:00
|
|
|
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
|
2018-07-12 09:21:34 -05:00
|
|
|
bad-option-value, # required to support upgrade to pylint 2.0
|
2018-07-12 15:20:59 -05:00
|
|
|
assignment-from-no-return, # new in pylint 2.0
|
|
|
|
keyword-arg-before-vararg, # pylint 2.0, remove after dropping Python 2
|
2018-11-09 04:15:48 -06:00
|
|
|
consider-using-enumerate, # pylint 2.1, clean up tests later
|
2019-02-28 09:41:52 -06:00
|
|
|
no-else-raise, # python 2.4.0
|
2019-10-18 14:56:47 -05:00
|
|
|
import-outside-toplevel, # pylint 2.4.2
|
2020-04-28 06:38:03 -05:00
|
|
|
f-string-without-interpolation, # pylint 2.5.0, bare f-strings are ok
|
2020-08-22 04:20:31 -05:00
|
|
|
super-with-arguments, # pylint 2.6.0, zero-length form is syntactic sugar
|
2020-08-22 05:24:46 -05:00
|
|
|
raise-missing-from, # pylint 2.6.0, implicit exception chaining is ok
|
2021-04-25 03:22:45 -05:00
|
|
|
consider-using-with, # pylint 2.8.0, contextmanager is not mandatory
|
|
|
|
consider-using-max-builtin, # pylint 2.8.0, can be more readable
|
|
|
|
consider-using-min-builtin, # pylint 2.8.0, can be more readable
|
2022-02-17 11:03:01 -06:00
|
|
|
redundant-u-string-prefix, # pylint 2.10.0, too many unessential changes
|
2022-02-17 11:12:04 -06:00
|
|
|
consider-using-f-string, # pylint 2.11.0, format can be more readable
|
2022-02-17 11:32:49 -06:00
|
|
|
use-dict-literal, # pylint 2.10.0 dict vs {}
|
|
|
|
use-list-literal, # pylint 2.10.0 list() vs []
|
2022-02-18 02:26:29 -06:00
|
|
|
unspecified-encoding, # pylint 2.10.0, ASCII or UTF8 and platform-specific
|
pylint: Skip use-implicit-booleaness-not-comparison
Pylint 2.12.0 introduced new checker:
> Used when Pylint detects that collection literal comparison is being
used to check for emptiness; Use implicit booleaness insteadof a
collection classes; empty collections are considered as false
Comparison of variable to equality to collection:
> Lexicographical comparison between built-in collections works as follows:
For two collections to compare equal, they must be of the same type,
have the same length, and each pair of corresponding elements must
compare equal (for example, [1,2] == (1,2) is false because the type is
not the same).
Collections that support order comparison are ordered the same as their
first unequal elements (for example, [1,2,x] <= [1,2,y] has the same
value as x <= y). If a corresponding element does not exist, the shorter
collection is ordered first (for example, [1,2] < [1,2,3] is true).
So, `assert value == {}` is not the same as `assert not value`.
Fixes: https://pagure.io/freeipa/issue/9117
Signed-off-by: Stanislav Levin <slev@altlinux.org>
Reviewed-By: Rob Crittenden <rcritten@redhat.com>
2022-02-18 10:04:42 -06:00
|
|
|
use-implicit-booleaness-not-comparison, # pylint 2.12.2, weak comparison
|
2016-01-15 09:58:38 -06:00
|
|
|
|
|
|
|
[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})'
|
2016-09-26 11:24:39 -05:00
|
|
|
|
|
|
|
|
|
|
|
[VARIABLES]
|
2018-01-03 03:14:03 -06:00
|
|
|
dummy-variables-rgx=(_.+|unused)
|
2017-02-14 02:58:44 -06:00
|
|
|
|
|
|
|
|
|
|
|
[IPA]
|
|
|
|
forbidden-imports=
|
|
|
|
client/:ipaserver,
|
2017-10-11 05:09:30 -05:00
|
|
|
ipaclient/:ipaclient.install:ipalib.install:ipaserver,
|
2017-02-14 02:58:44 -06:00
|
|
|
ipaclient/install/:ipaserver,
|
2017-10-11 05:09:30 -05:00
|
|
|
ipalib/:ipaclient.install:ipalib.install:ipaserver,
|
2017-02-14 02:58:44 -06:00
|
|
|
ipalib/install/:ipaserver,
|
|
|
|
ipaplatform/:ipaclient:ipalib:ipaserver,
|
2017-10-11 05:09:30 -05:00
|
|
|
ipapython/:ipaclient:ipalib:ipaserver
|
2019-05-15 06:40:42 -05:00
|
|
|
ipatests/pytest_ipa:ipaserver:ipaclient.install:ipalib.install
|
|
|
|
ipatests/test_integration:ipaserver
|