summaryrefslogtreecommitdiff
path: root/.pylintrc
blob: 7ae204787b64f6c7ab1a03da14bb5bfa96c050c9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
# The format of this file isn't really documented; just use --generate-rcfile
[MASTER]
# Add <file or directory> to the black list. It should be a base name, not a
# path. You may set this option multiple times.
ignore=test,tests,tests.py,local_settings.py,horizon_wsgi.py

[Messages Control]
disable=
# "F" Fatal errors that prevent further processing
# "I" Informational noise
 locally-disabled,
# "E" Error for important programming issues (likely bugs)
 method-hidden,
 no-member,
 not-callable,
# "W" Warnings for stylistic problems or minor programming issues
 arguments-differ,
 attribute-defined-outside-init,
 bad-indentation,
 broad-except,
 fixme,
 # python3 way: pylint suggests to follow PEP 3102
 keyword-arg-before-vararg,  # TODO
 pointless-string-statement,
 protected-access,
 # We should do it carefully considering PEP3134
 raise-missing-from,  # TODO
 redefined-builtin,
 redefined-outer-name,
 signature-differs,
 super-init-not-called,
 unidiomatic-typecheck,
 unused-argument,
 unused-wildcard-import,
 useless-else-on-loop,
 wildcard-import,
# "C" Coding convention violations
 abstract-method,
 anomalous-backslash-in-string,
 bad-builtin,
 bad-continuation,
 deprecated-lambda,
 global-statement,
 # Not a good idea to disable this globally
 # Check one by one and add pylint disabled comment if needed
 import-outside-toplevel,  # TODO
 invalid-name,
 missing-docstring,
 superfluous-parens,
 too-many-lines,
 unused-variable,
 # import order is checked by flake8 (and pylint rule is incompatible with it)
 wrong-import-order,
# "R" Refactor recommendations
 duplicate-code,
 inconsistent-return-statements,  # TODO
 interface-not-implemented,
 no-self-use,
 too-many-ancestors,
 too-many-arguments,
 too-many-branches,
 too-many-function-args,
 too-many-instance-attributes,
 too-many-locals,
 too-many-return-statements,
 too-many-statements,
 useless-object-inheritance

[Basic]
# Variable names can be 1 to 31 characters long, with lowercase and underscores
variable-rgx=[a-z_][a-z0-9_]{0,30}$

# Argument names can be 2 to 31 characters long, with lowercase and underscores
argument-rgx=[a-z_][a-z0-9_]{1,30}$

# Method names should be at least 3 characters long
# and be lowecased with underscores
method-rgx=([a-z_][a-z0-9_]{2,50}|setUp|tearDown)$

# Module names matching keystone-* are ok (files in bin/)
module-rgx=(([a-z_][a-z0-9_]*)|([A-Z][a-zA-Z0-9]+)|(keystone-[a-z0-9_-]+))$

# Don't require docstrings on tests.
no-docstring-rgx=((__.*__)|([tT]est.*)|setUp|tearDown)$

[Format]
# Maximum number of characters on a single line.
max-line-length=80

[Design]
max-public-methods=100
min-public-methods=0
max-args=6

[Variables]

# List of additional names supposed to be defined in builtins. Remember that
# you should avoid to define new builtins when possible.
# _ is used by our localization
additional-builtins=_

[typecheck]
# List of module names for which member attributes should not be checked
ignored-modules=six.moves,_MovedItems

[reports]
# Tells whether to display a full report or only the messages
reports=no