-
Notifications
You must be signed in to change notification settings - Fork 30
Expand file tree
/
Copy path.pylintrc
More file actions
136 lines (108 loc) · 5.21 KB
/
Copy path.pylintrc
File metadata and controls
136 lines (108 loc) · 5.21 KB
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
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
[BASIC]
# Regular expression matching correct argument names. Overrides argument-
# naming-style. If left empty, argument names will be checked with the set
# naming style.
argument-rgx=[a-z_][a-z0-9_]{0,15}$ # Starsim
variable-rgx=[a-z_][a-z0-9_]{0,15}$ # Starsim
attr-rgx=[a-z_][a-z0-9_]{0,15}$ # Starsim
class-attribute-rgx=[a-z_][a-z0-9_]{0,15}$ # Starsim
function-rgx=[a-z_][a-z0-9_]{0,15}$ # Starsim
method-rgx=[a-z_][a-z0-9_]{0,15}$ # Starsim
class-rgx=[a-zA-Z_][a-zA-Z0-9_]{0,15}$ # Starsim
# Good variable names which should always be accepted, separated by a comma.
good-names=E # Starsim
[DESIGN]
# Maximum number of arguments for function / method.
max-args=20 # Starsim
# Maximum number of attributes for a class (see R0902).
max-attributes=20 # Starsim
# Maximum number of boolean expressions in an if statement (see R0916).
max-bool-expr=5
# Maximum number of branch for function / method body.
max-branches=15 # Starsim
# Maximum number of locals for function / method body.
max-locals=20 # Starsim
# Maximum number of parents for a class (see R0901).
max-parents=7
# Maximum number of public methods for a class (see R0904).
max-public-methods=20
# Maximum number of return / yield for function / method body.
max-returns=5 # Starsim
# Maximum number of statements in function / method body.
max-statements=200 # Starsim
# Minimum number of public methods for a class (see R0903).
min-public-methods=2
[FORMAT]
# Maximum number of characters on a single line.
max-line-length=200 # Starsim
# Maximum number of lines in a module.
max-module-lines=2000 # Starsim
# Allow the body of an if to be on the same line as the test if there is no
# else.
single-line-if-stmt=yes # Starsim
[IMPORTS]
# Allow wildcard imports from modules that define __all__.
allow-wildcard-with-all=yes # Starsim
[MESSAGES CONTROL]
# Disable the message, report, category or checker with the given id(s). You
# can either give multiple identifiers separated by comma (,) or put this
# option multiple times (only on the command line, not in the configuration
# file where it should appear only once). You can also use "--disable=all" to
# disable everything first and then re-enable specific checks. For example, if
# you want to run only the similarities checker, you can use "--disable=all
# --enable=similarities". If you want to run only the classes checker, but have
# no Warning level messages displayed, use "--disable=all --enable=classes
# --disable=W".
disable=raw-checker-failed,
bad-inline-option,
locally-disabled,
file-ignored,
suppressed-message,
useless-suppression,
deprecated-pragma,
use-symbolic-message-instead,
C0103, # Starsim: allow lowercase constants
C0115, # Starsim: one-line subclasses don't need class docstrings
C0116, # Starsim: simple methods don't need docstrings
C0321, # Starsim: multiple statements on a line
C0325, # Starsim: allow parentheses in if
C0411, # Starsim: allow different import order
C0412, # Starsim: allow ungrouped imports
C0413, # Starsim: allow imports not at the top
C1802, # Starsim: if len(x) is idiomatic Python
C2401, # Starsim: Greek letters (β) for mathematical notation
C3001, # Starsim: lambdas acceptable for simple expressions
E1101, # Starsim: don't check class membership (dynamic classes)
E1120, # Starsim: false positive with numpy subclassing
E1121, # Starsim: false positive with numpy subclassing
E1126, # Starsim: false positive with objdict indexing
E1130, # Starsim: false positive with dynamic types/None guards
E1134, # Starsim: false positive, sc.objdict supports ** unpacking
E1136, # Starsim: false positive, dynamic types are subscriptable at runtime
I1101, # Starsim: false positive with numpy C-extensions
R0401, # Starsim: lazy imports handle cyclic dependencies correctly
R1704, # Starsim: argument reassignment in loops
R1705, # Starsim: allow else-return
R1710, # Starsim: return-or-raise pattern is valid
R1711, # Starsim: empty return
R1720, # Starsim: allow else after raise
R1735, # Starsim: dict literal
W0107, # Starsim: explicit pass in base classes is intentional
W0201, # Starsim: multi-phase init (init_pre/init_post) is core architecture
W0212, # Starsim: internal framework classes access each other's internals
W0221, # Starsim: intentional signature refinement in subclasses
W0223, # Starsim: minimal subclasses use class vars, not method overrides
W0231, # Starsim: Sciris base classes don't need parent init
W0237, # Starsim: intentional parameter renames for API clarity
W0613, # Starsim: unused args in base class interfaces (OOP pattern)
W0621, # Starsim: local variable shadowing is pervasive and intentional
W0702, # Starsim: allow bare except
W0718, # Starsim: allow catching general exception
W0719, # Starsim: allow raising general exception
W1113 # Starsim: keyword-only arg pattern is intentional
[MISCELLANEOUS]
# List of note tags to take in consideration, separated by a comma.
notes=FIXME,
XXX,
TODO,
TEMP # Starsim