| # Licensed to the Apache Software Foundation (ASF) under one |
| # or more contributor license agreements. See the NOTICE file |
| # distributed with this work for additional information |
| # regarding copyright ownership. The ASF licenses this file |
| # to you under the Apache License, Version 2.0 (the |
| # "License"); you may not use this file except in compliance |
| # with the License. You may obtain a copy of the License at |
| # |
| # http://www.apache.org/licenses/LICENSE-2.0 |
| # |
| # Unless required by applicable law or agreed to in writing, |
| # software distributed under the License is distributed on an |
| # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| # KIND, either express or implied. See the License for the |
| # specific language governing permissions and limitations |
| # under the License. |
| |
| # This file configures the analyzer, which statically analyzes Dart code to |
| # check for errors, warnings, and lints. |
| # |
| # The issues identified by the analyzer are surfaced in the UI of Dart-enabled |
| # IDEs (https://dart.dev/tools#ides-and-editors). The analyzer can also be |
| # invoked from the command line by running `flutter analyze`. |
| |
| # The following line activates a set of recommended lints for Flutter apps, |
| # packages, and plugins designed to encourage good coding practices. |
| include: package:flutter_lints/flutter.yaml |
| |
| # exclude generated files |
| analyzer: |
| exclude: |
| - build/** |
| - lib/**.g.dart |
| - lib/api/** |
| - lib/l10n/**.arb |
| - test/**.mocks.dart |
| |
| linter: |
| # The lint rules applied to this project can be customized in the |
| # section below to disable rules from the `package:flutter_lints/flutter.yaml` |
| # included above or to enable additional rules. A list of all available lints |
| # and their documentation is published at |
| # https://dart-lang.github.io/linter/lints/index.html. |
| # |
| # Instead of disabling a lint rule for the entire project in the |
| # section below, it can also be suppressed for a single line of code |
| # or a specific dart file by using the `// ignore: name_of_lint` and |
| # `// ignore_for_file: name_of_lint` syntax on the line or in the file |
| # producing the lint. |
| rules: |
| # Turn on those off by default: |
| always_put_control_body_on_new_line: true |
| avoid_bool_literals_in_conditional_expressions: true |
| avoid_catching_errors: true |
| avoid_double_and_int_checks: true |
| avoid_dynamic_calls: true |
| avoid_field_initializers_in_const_classes: true |
| avoid_implementing_value_types: true |
| avoid_js_rounded_ints: true |
| avoid_multiple_declarations_per_line: true |
| avoid_private_typedef_functions: true |
| avoid_returning_null_for_future: true |
| avoid_returning_this: true |
| avoid_setters_without_getters: true |
| avoid_slow_async_io: true |
| avoid_type_to_string: true |
| avoid_unused_constructor_parameters: true |
| cancel_subscriptions: true |
| close_sinks: true |
| comment_references: true |
| conditional_uri_does_not_exist: true |
| deprecated_consistency: true |
| do_not_use_environment: true |
| eol_at_end_of_file: true |
| invariant_booleans: true |
| leading_newlines_in_multiline_strings: true |
| literal_only_boolean_expressions: true |
| no_runtimeType_toString: true |
| noop_primitive_operations: true |
| one_member_abstracts: true |
| only_throw_errors: true |
| package_api_docs: true |
| parameter_assignments: true |
| prefer_asserts_in_initializer_lists: true |
| prefer_single_quotes: true |
| secure_pubspec_urls: true |
| sized_box_shrink_expand: true |
| sort_pub_dependencies: true |
| sort_unnamed_constructors_first: true |
| test_types_in_equals: true |
| tighten_type_of_initializing_formals: true |
| unnecessary_await_in_return: true |
| unnecessary_null_aware_operator_on_extension_on_nullable: true |
| unnecessary_null_checks: true |
| unnecessary_parenthesis: true |
| unnecessary_statements: true |
| unnecessary_to_list_in_spreads: true |
| unsafe_html: true |
| use_enums: true |
| use_if_null_to_convert_nulls_to_bools: true |
| use_is_even_rather_than_modulo: true |
| use_raw_strings: true |
| use_to_and_as_if_applicable: true |
| |
| #Turn off those on by default: |
| avoid_web_libraries_in_flutter: false |
| avoid_print: false |
| prefer_interpolation_to_compose_strings: false |
| use_key_in_widget_constructors: false |
| |
| # Additional information about this file can be found at |
| # https://dart.dev/guides/language/analysis-options |