.analysis_options 1.98 KB
Newer Older
1 2 3 4 5 6 7
# Specify analysis options.
#
# Note that until there is a default "all-in" lint rule-set we need
# to opt-in to all desired lints (https://github.com/dart-lang/sdk/issues/25843).
# For a list of lints, see: http://dart-lang.github.io/linter/lints/

analyzer:
8 9
  language:
    enableSuperMixins: true
Hixie's avatar
Hixie committed
10
  strong-mode: true
11 12 13 14 15
  errors:
    # we allow overriding fields (if they use super, ideally...)
    strong_mode_invalid_field_override: ignore
    # we allow type narrowing
    strong_mode_invalid_method_override: ignore
Hixie's avatar
Hixie committed
16 17 18
    strong_mode_static_type_error: ignore
    strong_mode_down_cast_composite: ignore
    type_argument_not_matching_bounds: ignore
19
    argument_type_not_assignable: ignore
Hixie's avatar
Hixie committed
20
    # we allow having TODOs in the code
21 22 23
    todo: ignore
linter:
  rules:
24
    - avoid_empty_else
25
    - always_declare_return_types
Ian Hickson's avatar
Ian Hickson committed
26 27 28 29 30
    # - always_specify_types # still a lot of work to do before enabling this one
    # - annotate_overrides # still a lot of work to do before enabling this one
    # - avoid_as # https://github.com/dart-lang/linter/issues/195
    - avoid_init_to_null
    # - avoid_return_types_on_setters # still a lot of work to do before enabling this one
31
    - camel_case_types
Ian Hickson's avatar
Ian Hickson committed
32
    # - constant_identifier_names # still a lot of work to do before enabling this one
33
    - empty_constructor_bodies
34
    - hash_and_equals
Ian Hickson's avatar
Ian Hickson committed
35 36
    # - implementation_imports # "// ignore:" isn't working yet
    - library_names
37 38
    - library_prefixes
    - non_constant_identifier_names
Ian Hickson's avatar
Ian Hickson committed
39 40 41 42 43 44
    # - one_member_abstracts # "// ignore:" isn't working yet
    - package_api_docs
    - package_names
    - package_prefixed_library_names
    - prefer_is_not_empty
    # - public_member_api_docs # still a lot of work to do before enabling this one
45
    - slash_for_doc_comments
Ian Hickson's avatar
Ian Hickson committed
46 47
    - sort_constructors_first
    - sort_unnamed_constructors_first
48
    - super_goes_last
Ian Hickson's avatar
Ian Hickson committed
49
    # - type_annotate_public_apis # see always_specify_types, which this is a subset of
50 51
    - type_init_formals
    - unnecessary_brace_in_string_interp
Ian Hickson's avatar
Ian Hickson committed
52
    - unnecessary_getters_setters