# Copyright (c) 2017, the Dart project authors.  Please see the AUTHORS file
# for details. All rights reserved. Use of this source code is governed by a
# BSD-style license that can be found in the LICENSE file.

analyzer:
  errors:
    todo: ignore
    # Allow deprecated calls from within the same package
    deprecated_member_use_from_same_package: ignore
    illegal_language_version_override: ignore
  language:
    strict-inference: true
    strict-raw-types: true

linter:
  rules:
    - always_declare_return_types
    - annotate_overrides
    - avoid_dynamic_calls
    - prefer_final_fields
    - prefer_if_null_operators
    - prefer_null_aware_operators
    - use_super_parameters
    - exhaustive_cases
    - no_default_cases
