forked from coala/coala
-
Notifications
You must be signed in to change notification settings - Fork 0
/
.coafile
160 lines (128 loc) · 4.71 KB
/
.coafile
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
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
[Default]
files = *.py, coalib/**/*.py, ./coala, tests/**/*.py, docs/conf.py
ignore =
tests/bearlib/languages/documentation/documentation_extraction_testdata/*.py,
tests/collecting/collectors_test_dir/bears/incorrect_bear.py,
max_line_length = 80
use_spaces = True
[python]
# Patches may conflict with autopep8 so putting them in own section so they
# will be executed sequentially; also we need the LineLengthBear to double
# check the line length because PEP8Bear sometimes isn't able to correct the
# linelength.
bears = SpaceConsistencyBear, QuotesBear
language = Python
preferred_quotation = '
default_actions = **: ApplyPatchAction
[flakes]
# Do not set default_action to ApplyPatchAction as it may lead to some
# required imports being removed that might result in coala behaving weirdly.
default_actions = *: ShowPatchAction
bears = PyUnusedCodeBear
language = Python
remove_all_unused_imports = true
[autopep8]
bears = PEP8Bear, PycodestyleBear
pycodestyle_ignore = E121, E123, E126, E226, E704,
W503, W504
default_actions = PEP8Bear: ApplyPatchAction
[linelength] # Sometimes autopep8 makes too long lines, need to check after!
bears = LineLengthBear
ignore_length_regex = ^.*https?://
[DOCS]
bears = SpaceConsistencyBear, LineLengthBear
files = docs/**/*.rst,*.rst
ignore = docs/API/
ignore_length_regex = ^.*https?://
default_actions = SpaceConsistencyBear: ApplyPatchAction
[languagetool]
enabled = False
bears = LanguageToolBear
files = docs/**/*.rst,*.rst
ignore = docs/API/
languagetool_disable_rules =
EN_QUOTES, # `` for links in rst files
WHITESPACE_RULE, # Indents in code
UPPERCASE_SENTENCE_START, # Sentences start with "coala"
COMMA_PARENTHESIS_WHITESPACE, # Confuses .coafile
DOUBLE_PUNCTUATION, # Used in `.. note::`
SENTENCE_WHITESPACE, # Thinks coalib.xyz should have space
THE_PUNCT, # Confused by symbols in code
EN_A_VS_AN, # Mistakes variable `a` to be an article
EN_UNPAIRED_BRACKETS, # Confused with brackets in code
ENGLISH_WORD_REPEAT_BEGINNING_RULE, # Confuses itself in regex
CD_NN, # index -> indices
SENT_START_CONJUNCTIVE_LINKING_ADVERB_COMMA,
SENTENCE_FRAGMENT, # Thinks headings are sentences
ENGLISH_WORD_REPEAT_RULE, # Found in code
POSSESIVE_APOSTROPHE # Confused by directory name "objects"
[commit]
bears = GitCommitBear
shortlog_trailing_period = False
shortlog_regex = ([^:]*|[^:]+[^ ]: [A-Z0-9*].*)
[Pylint]
enabled = False
bears = PyLintBear
pylint_cli_options = --ignore\=CVS,cindex.py,tests
pylint_disable = missing-docstring, # Lots of functions don't need docstrings
arguments-differ, # Some child classes need to change
# argument signature of a inherited function
bad-builtin, # Pylint doesn't like most builting functions
# like filter, map etc. It prefers using for
# loops for everything - although sometimes
# map and other builtins are more intuitive.
fixme, # Already done using KeywordBear
locally-disabled, # Without this a pylint pragma is also
# considered an issue
no-member, # Currently Pylint doesn't understand our enum()
# making a lot of false positives here
bad-continuation # Our indentation style guide is
# different from PEP
[LineCounting]
enabled = False
bears = LineCountBear
max_lines_per_file = 1000
[invalidlinks]
enabled = False
files = docs/**/*.rst
ignore = docs/API
bears = InvalidLinkBear
[css]
bears = CSSLintBear
files = docs/_static/**.css
[rst]
bears = reSTLintBear
files = README.rst
[rstcheck]
bears = RSTcheckBear
files = **.rst
ignore = docs/Developers/coala_settings.rst
[text]
bears = SpaceConsistencyBear
files =
LICENSE, ISSUE_TEMPLATE, PULL_REQUEST_TEMPLATE.md, MANIFEST.in,
**.sh, .travis.yml, ./.circleci/config.yml, setup.cfg,
./docs/_static/custom.css
ignore = node_modules/
[jinja2]
bears = Jinja2Bear
files = **.jj2
[TODOS]
enabled = False
bears = KeywordBear
language = python 3
ci_keywords, keywords = \#TODO, \# TODO, \#FIXME, \# FIXME
cs_keywords =
[urllib]
# Encourage usage of requests library by blacklisting usage of urlopen()
bears = KeywordBear
language = python 3
keywords = urlopen
[yml]
bears = YAMLLintBear
files = **.yml, **.yaml
[bash]
bears = ShellCheckBear
files = **.sh
shell = bash
shellcheck_ignore = SC2046, SC2154