diff --git a/examples/stocks/.analysis_options b/examples/stocks/.analysis_options deleted file mode 100644 index f9e8f30d8f..0000000000 --- a/examples/stocks/.analysis_options +++ /dev/null @@ -1,3 +0,0 @@ -analyzer: - exclude: - - 'lib/i18n/stock_messages_*.dart' diff --git a/packages/.analysis_options b/packages/.analysis_options new file mode 100644 index 0000000000..d4fc7fa2ed --- /dev/null +++ b/packages/.analysis_options @@ -0,0 +1,55 @@ +# 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/ + +# This file is the .analysis_options file used by Flutter editors, such as +# Atom. It is very similar to flutter_tools/flutter_analysis_options; the only +# difference (currently) is the public_member_api_docs option, which triggers +# too many messages to be used in editors. + +analyzer: + language: + enableStrictCallChecks: true + enableSuperMixins: true + strong-mode: true + 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 + strong_mode_static_type_error: ignore + strong_mode_down_cast_composite: ignore + # we allow having TODOs in the code + todo: ignore +linter: + rules: + - avoid_empty_else + - always_declare_return_types + - always_specify_types + - annotate_overrides + - avoid_as + - avoid_init_to_null + # - avoid_return_types_on_setters # https://github.com/dart-lang/linter/issues/202 + - camel_case_types + # - constant_identifier_names # https://github.com/dart-lang/linter/issues/204 (and 203) + - empty_constructor_bodies + - hash_and_equals + # - implementation_imports # https://github.com/dart-lang/linter/issues/203 + - library_names + - library_prefixes + - non_constant_identifier_names + # - one_member_abstracts # https://github.com/dart-lang/linter/issues/203 + - package_api_docs + - package_names + - package_prefixed_library_names + - prefer_is_not_empty + - slash_for_doc_comments + - sort_constructors_first + - sort_unnamed_constructors_first + - super_goes_last + - type_annotate_public_apis # subset of always_specify_types + - type_init_formals + - unnecessary_brace_in_string_interp + - unnecessary_getters_setters