# Copyright (c) 2019, 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.

include: analysis_options_no_lints.yaml

linter:
  rules:
    - annotate_overrides
    - curly_braces_in_flow_control_structures
    - prefer_adjacent_string_concatenation
    - unawaited_futures
    - recursive_getters
    - avoid_empty_else
    - empty_statements
    - list_remove_unrelated_type
    - iterable_contains_unrelated_type
    - valid_regexps
    - package_api_docs
    - lines_longer_than_80_chars
    # - always_specify_types
    - use_super_parameters
