-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathanalysis_options.yaml
More file actions
136 lines (120 loc) · 3.97 KB
/
analysis_options.yaml
File metadata and controls
136 lines (120 loc) · 3.97 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
include: package:flutter_lints/flutter.yaml
analyzer:
errors:
depend_on_referenced_packages: ignore
avoid_dynamic_calls: ignore
avoid_slow_async_io: ignore
unused_field: ignore
invalid_use_of_visible_for_testing_member: ignore
use_build_context_synchronously: ignore
constant_identifier_names: ignore
strict_top_level_inference: ignore
library_private_types_in_public_api: ignore
deprecated_member_use: ignore
exclude:
- "**/*.g.dart"
- "**/*.freezed.dart"
- "**/*.gr.dart"
- "**/*.mocks.dart"
language:
strict-casts: false
strict-inference: false
strict-raw-types: false
linter:
rules:
# Printing & Debugging
avoid_print: true
# Style & Formatting
prefer_single_quotes: true
prefer_const_constructors: true
prefer_const_literals_to_create_immutables: true
prefer_typing_uninitialized_variables: false
use_key_in_widget_constructors: true
use_build_context_synchronously: true
use_full_hex_values_for_flutter_colors: true
sort_child_properties_last: true
annotate_overrides: true
# ✅ Line length
lines_longer_than_80_chars: false
directives_ordering: false
prefer_relative_imports: false
avoid_relative_lib_imports: true
# Async & Futures
await_only_futures: true
avoid_returning_null_for_void: true
# Containers & Widgets
avoid_unnecessary_containers: true
sized_box_for_whitespace: true
sized_box_shrink_expand: true
use_decorated_box: true
# Empty Blocks
empty_catches: true
empty_constructor_bodies: true
empty_statements: true
avoid_empty_else: true
# Naming & Identifiers
no_leading_underscores_for_local_identifiers: false
no_logic_in_create_state: true
# Const & Final
prefer_is_empty: false
prefer_const_constructors_in_immutables: true
prefer_const_declarations: true
avoid_init_to_null: true
prefer_final_fields: true
prefer_final_locals: true
prefer_final_parameters: false
# Null Safety
unnecessary_null_in_if_null_operators: true
avoid_null_checks_in_equality_operators: true
prefer_if_null_operators: true
prefer_null_aware_operators: true
use_if_null_to_convert_nulls_to_bools: true
null_check_on_nullable_type_parameter: true
null_closures: true
unnecessary_null_aware_assignments: true
unnecessary_null_checks: true
unnecessary_nullable_for_final_variable_declarations: true
# Code Organization
package_prefixed_library_names: true
implementation_imports: true
# Performance
avoid_function_literals_in_foreach_calls: false
prefer_foreach: false
avoid_slow_async_io: true
# Error Prevention
avoid_catches_without_on_clauses: false
avoid_catching_errors: true
avoid_dynamic_calls: true
avoid_type_to_string: true
cancel_subscriptions: true
close_sinks: true
collection_methods_unrelated_type: true
throw_in_finally: true
# Readability
always_declare_return_types: true
always_put_control_body_on_new_line: false
always_put_required_named_parameters_first: true
avoid_redundant_argument_values: true
avoid_setters_without_getters: true
avoid_single_cascade_in_expression_statements: true
cascade_invocations: false
join_return_with_assignment: false
leading_newlines_in_multiline_strings: true
missing_whitespace_between_adjacent_strings: true
noop_primitive_operations: true
omit_local_variable_types: false
prefer_interpolation_to_compose_strings: true
unnecessary_lambdas: true
unnecessary_parenthesis: true
unnecessary_raw_strings: true
unnecessary_string_escapes: true
unnecessary_string_interpolations: true
# Environment
do_not_use_environment: true
# Widget Specific
avoid_classes_with_only_static_members: false
use_named_constants: true
use_rethrow_when_possible: true
use_setters_to_change_properties: true
use_string_buffers: true
use_to_and_as_if_applicable: true