-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path.swiftlint.yml
314 lines (308 loc) · 7.23 KB
/
.swiftlint.yml
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
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
reporter: xcode
excluded:
- RealTrackerSPM/Sources/RealTrackerApp/Generated/*.swift
- RealTrackerSPM/.build
- RealTrackerSPM/.swiftpm
- Utils/.build
- Utils/.swiftpm
- Utils/Package.swift
analyzer_rules:
- unused_import
custom_rules:
todos_without_ticket_number:
name: "No TODOs without ticket number"
regex: "TODO(?!\\([A-Z]+\\-[0-9]+\\))"
match_kinds:
- comment
- comment.mark
- comment.url
- doccomment
- doccomment.field
- string
message: "No TODOs are allowed without ticket number, please use format TODO(FD-123) in your strings and comments."
severity: error
wip_left_in_source:
name: "WIP left in source code"
regex: "WIP"
match_kinds:
- comment
- comment.mark
- comment.url
- doccomment
- doccomment.field
- string
message: "WIP is only allowed during development, make sure to remove it before making your PR ready for review."
severity: warning
disabled_rules:
- function_parameter_count
- todo
opt_in_rules:
- accessibility_label_for_image
- accessibility_trait_for_button
- anonymous_argument_in_multiline_closure
- array_init
- attributes
- closure_body_length
- closure_end_indentation
- closure_spacing
- collection_alignment
- comma_inheritance
- contains_over_filter_count
- contains_over_filter_is_empty
- contains_over_first_not_nil
- contains_over_range_nil_comparison
- convenience_type
- discarded_notification_center_observer
- discouraged_assert
- discouraged_object_literal
- empty_collection_literal
- empty_count
- empty_string
- expiring_todo
- explicit_init
- fallthrough
- fatal_error_message
- file_name
- file_name_no_space
- file_types_order
- first_where
- flatmap_over_map_reduce
- force_unwrapping
- identical_operands
- implicitly_unwrapped_optional
- indentation_width
- joined_default_parameter
- last_where
- legacy_multiple
- legacy_objc_type
- let_var_whitespace
- literal_expression_end_indentation
- local_doc_comment
#- missing_docs
- modifier_order
- multiline_arguments
- multiline_arguments_brackets
- multiline_function_chains
- multiline_literal_brackets
- multiline_parameters
- multiline_parameters_brackets
- number_separator
- object_literal
- operator_usage_whitespace
- overridden_super_call
- override_in_extension
- prefer_self_in_static_references
- prefer_self_type_over_type_of_self
- prefer_zero_over_explicit_init
- prefixed_toplevel_constant
- private_subject
#- private_swiftui_state
- reduce_into
- redundant_nil_coalescing
- redundant_self_in_closure
- redundant_type_annotation
- return_value_from_void_function
- sorted_enum_cases
- sorted_first_last
- sorted_imports
- static_operator
- toggle_bool
- trailing_closure
- type_contents_order
- unavailable_function
- unhandled_throwing_task
- unneeded_parentheses_in_closure_argument
- unowned_variable_capture
- untyped_error_in_catch
- vertical_whitespace_between_cases
- vertical_whitespace_closing_braces
- vertical_whitespace_opening_braces
- weak_delegate
accessibility_label_for_image:
severity: error
accessibility_trait_for_button:
severity: error
anonymous_argument_in_multiline_closure:
severity: error
array_init:
severity: error
attributes:
severity: error
always_on_same_line:
- "@objc"
closure_body_length:
warning: 50
error: 60
closure_end_indentation:
severity: error
closure_spacing:
severity: error
collection_alignment:
severity: error
comma_inheritance:
severity: error
contains_over_filter_count:
severity: error
contains_over_filter_is_empty:
severity: error
contains_over_first_not_nil:
severity: error
contains_over_range_nil_comparison:
severity: error
convenience_type:
severity: error
cyclomatic_complexity:
warning: 16
discarded_notification_center_observer:
severity: error
discouraged_assert:
severity: error
discouraged_object_literal:
severity: error
empty_collection_literal:
severity: error
empty_count:
severity: error
empty_string:
severity: error
explicit_init:
severity: error
fallthrough:
severity: error
fatal_error_message:
severity: error
file_length:
warning: 600
error: 1200
file_name:
severity: error
file_name_no_space:
severity: error
file_types_order:
severity: error
first_where:
severity: error
flatmap_over_map_reduce:
severity: error
force_unwrapping:
severity: error
function_body_length:
warning: 80
identical_operands:
severity: error
identifier_name:
allowed_symbols:
- at
- id
- tr
- vm
min_length:
error: 1
warning: 2
max_length:
error: 60
warning: 50
implicitly_unwrapped_optional:
severity: error
indentation_width:
severity: warning
joined_default_parameter:
severity: error
last_where:
severity: error
legacy_multiple:
severity: error
legacy_objc_type:
severity: error
let_var_whitespace:
severity: error
line_length:
warning: 160
error: 240
literal_expression_end_indentation:
severity: error
local_doc_comment:
severity: error
modifier_order:
severity: error
multiline_arguments:
severity: error
multiline_arguments_brackets:
severity: error
multiline_function_chains:
severity: error
multiline_literal_brackets:
severity: error
multiline_parameters:
severity: error
multiline_parameters_brackets:
severity: error
number_separator:
severity: error
object_literal:
severity: error
operator_usage_whitespace:
severity: error
overridden_super_call:
severity: error
override_in_extension:
severity: error
prefer_self_in_static_references:
severity: error
prefer_self_type_over_type_of_self:
severity: error
prefer_zero_over_explicit_init:
severity: error
prefixed_toplevel_constant:
severity: error
only_private: true
private_subject:
severity: error
reduce_into:
severity: error
redundant_nil_coalescing:
severity: error
redundant_self_in_closure:
severity: error
redundant_type_annotation:
severity: error
return_value_from_void_function:
severity: error
sorted_enum_cases:
severity: error
sorted_first_last:
severity: error
sorted_imports:
severity: error
static_operator:
severity: error
toggle_bool:
severity: error
trailing_closure:
severity: error
type_contents_order:
severity: error
type_name:
max_length:
error: 60
warning: 50
unavailable_function:
severity: error
unhandled_throwing_task:
severity: error
unneeded_parentheses_in_closure_argument:
severity: error
unowned_variable_capture:
severity: error
untyped_error_in_catch:
severity: error
unused_import:
severity: error
vertical_whitespace_between_cases:
severity: error
vertical_whitespace_closing_braces:
severity: error
vertical_whitespace_opening_braces:
severity: error
weak_delegate:
severity: error