mirror of
https://github.com/flutter/packages.git
synced 2025-07-01 15:23:25 +08:00
Add example to flutter_lints package (#354)
This commit is contained in:

committed by
GitHub

parent
1b5a36994b
commit
f18ba69189
@ -32,7 +32,7 @@ task:
|
||||
- name: format+analyze
|
||||
format_script: ./script/tool_runner.sh format --fail-on-change --clang-format=clang-format-5.0
|
||||
license_script: pub global run flutter_plugin_tools license-check
|
||||
analyze_script: ./script/tool_runner.sh analyze --custom-analysis=web_benchmarks/testing/test_app
|
||||
analyze_script: ./script/tool_runner.sh analyze --custom-analysis=web_benchmarks/testing/test_app,flutter_lints/example
|
||||
- name: publishable
|
||||
version_script: ./script/tool_runner.sh version-check
|
||||
publishable_script: ./script/tool_runner.sh publish-check
|
||||
|
@ -1,3 +1,7 @@
|
||||
## 1.0.1
|
||||
|
||||
* Added an example project
|
||||
|
||||
## 1.0.0
|
||||
|
||||
* Initial release
|
||||
|
16
packages/flutter_lints/example/README.md
Normal file
16
packages/flutter_lints/example/README.md
Normal file
@ -0,0 +1,16 @@
|
||||
An example project that showcases how to enable the lint set from
|
||||
`package:flutter_lints`, which contains recommended lints for Flutter apps,
|
||||
packages, and plugins.
|
||||
|
||||
The `flutter_lints` packages is listed as a dev_dependency in the `pubspec.yaml`
|
||||
file.
|
||||
|
||||
The lint set provided by the package is activated in the `analysis_options.yaml`
|
||||
file. The lints enforced for this project can be further customized in that
|
||||
file.
|
||||
|
||||
The Dart code in this project (e.g. `lib/main.dart`) is analyzed using the
|
||||
lint configuration provided by `package:flutter_lints`.
|
||||
|
||||
The issues identified by the analyzer are surfaced in IDEs with Dart support or
|
||||
by invoking `flutter analyze` from the command line.
|
29
packages/flutter_lints/example/analysis_options.yaml
Normal file
29
packages/flutter_lints/example/analysis_options.yaml
Normal file
@ -0,0 +1,29 @@
|
||||
# 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
|
||||
|
||||
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:
|
||||
# avoid_print: false # Uncomment to disable the `avoid_print` rule
|
||||
# prefer_single_quotes: true # Uncomment to enable the `prefer_single_quotes` rule
|
||||
|
||||
# Additional information about this file can be found at
|
||||
# https://dart.dev/guides/language/analysis-options
|
33
packages/flutter_lints/example/lib/main.dart
Normal file
33
packages/flutter_lints/example/lib/main.dart
Normal file
@ -0,0 +1,33 @@
|
||||
// Copyright 2013 The Flutter Authors. All rights reserved.
|
||||
// Use of this source code is governed by a BSD-style license that can be
|
||||
// found in the LICENSE file.
|
||||
|
||||
// The code in this file (and all other dart files in the package) is
|
||||
// analyzed using the rules activated in `analysis_options.yaml`.
|
||||
|
||||
// The following syntax deactivates a lint for the entire file:
|
||||
// ignore_for_file: avoid_renaming_method_parameters
|
||||
|
||||
void main() {
|
||||
const String partOne = 'Hello';
|
||||
const String partTwo = 'World';
|
||||
|
||||
// The following syntax deactivates a lint on a per-line bases:
|
||||
print('$partOne $partTwo'); // ignore: avoid_print
|
||||
}
|
||||
|
||||
abstract class Base {
|
||||
int methodA(int foo);
|
||||
String methodB(String foo);
|
||||
}
|
||||
|
||||
// Normally, the parameter renaming from `foo` to `bar` in this class would
|
||||
// trigger the `avoid_renaming_method_parameters` lint, but it has been
|
||||
// deactivated for the file with the `ignore_for_file` comment above.
|
||||
class Sub extends Base {
|
||||
@override
|
||||
int methodA(int bar) => bar;
|
||||
|
||||
@override
|
||||
String methodB(String bar) => bar;
|
||||
}
|
13
packages/flutter_lints/example/pubspec.yaml
Normal file
13
packages/flutter_lints/example/pubspec.yaml
Normal file
@ -0,0 +1,13 @@
|
||||
name: example
|
||||
description: A project that showcases how to enable the recommended lints for Flutter apps, packages, and plugins.
|
||||
|
||||
publish_to: none
|
||||
|
||||
environment:
|
||||
sdk: '>=2.12.0 <3.0.0'
|
||||
|
||||
# Add the latest version of `package:flutter_lints` as a dev_dependency. The
|
||||
# lint set provided by this package is activated in the `analysis_options.yaml`
|
||||
# file located next to this `pubspec.yaml` file.
|
||||
dev_dependencies:
|
||||
flutter_lints: ^1.0.0 # Check https://pub.dev/packages/flutter_lints for latest version number.
|
@ -1,6 +1,6 @@
|
||||
name: flutter_lints
|
||||
description: Recommended lints for Flutter apps, packages, and plugins to encourage good coding practices.
|
||||
version: 1.0.0
|
||||
version: 1.0.1
|
||||
homepage: https://github.com/flutter/packages/tree/master/packages/flutter_lints
|
||||
|
||||
environment:
|
||||
|
@ -3,7 +3,8 @@
|
||||
# Use of this source code is governed by a BSD-style license that can be
|
||||
# found in the LICENSE file.
|
||||
|
||||
filecount=`find . -name '*.dart' | wc -l`
|
||||
# Dart sources are only allowed in the example directory.
|
||||
filecount=`find . -name '*.dart' ! -path './example/*' | wc -l`
|
||||
if [ $filecount -ne 0 ]
|
||||
then
|
||||
echo 'Dart sources are not allowed in this package:'
|
||||
|
Reference in New Issue
Block a user