Skip to content
This repository was archived by the owner on Oct 18, 2024. It is now read-only.

Commit 34ed68f

Browse files
authored
Move to new analyzer language settings (#126)
Enable and fix a bunch of lints. Require Dart 2.18 or greater
1 parent b525d5c commit 34ed68f

File tree

6 files changed

+98
-105
lines changed

6 files changed

+98
-105
lines changed

.github/workflows/test-package.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ jobs:
4747
matrix:
4848
# Add macos-latest and/or windows-latest if relevant for this package.
4949
os: [ubuntu-latest]
50-
sdk: [2.12.0, dev]
50+
sdk: [2.18.0, dev]
5151
steps:
5252
- uses: actions/checkout@755da8c3cf115ac066823e79a1e1788f8940201b
5353
- uses: dart-lang/setup-dart@6a218f2413a3e78e9087f638a238f6b40893203d

CHANGELOG.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
## 1.1.1-dev
22

33
* Add a check that throws if a logger name ends with '.'.
4+
* Require Dart 2.18
45

56
## 1.1.0
67

analysis_options.yaml

Lines changed: 33 additions & 41 deletions
Original file line numberDiff line numberDiff line change
@@ -1,63 +1,55 @@
1+
# https://dart.dev/guides/language/analysis-options
12
include: package:lints/recommended.yaml
23

34
analyzer:
4-
strong-mode:
5-
implicit-casts: false
5+
language:
6+
strict-casts: true
7+
strict-raw-types: true
68

79
linter:
810
rules:
9-
- annotate_overrides
11+
- always_declare_return_types
12+
- avoid_bool_literals_in_conditional_expressions
13+
- avoid_catching_errors
14+
- avoid_classes_with_only_static_members
1015
- avoid_dynamic_calls
11-
- avoid_function_literals_in_foreach_calls
12-
- avoid_init_to_null
13-
- avoid_null_checks_in_equality_operators
14-
- avoid_relative_lib_imports
16+
- avoid_private_typedef_functions
17+
- avoid_redundant_argument_values
1518
- avoid_returning_null
19+
- avoid_returning_null_for_future
20+
- avoid_returning_this
1621
- avoid_unused_constructor_parameters
17-
- await_only_futures
18-
- camel_case_types
22+
- avoid_void_async
1923
- cancel_subscriptions
2024
- comment_references
21-
# See https://github.com/dart-lang/logging/issues/43
22-
#- constant_identifier_names
23-
- control_flow_in_finally
2425
- directives_ordering
25-
- empty_catches
26-
- empty_constructor_bodies
27-
- empty_statements
28-
- hash_and_equals
29-
- implementation_imports
30-
- iterable_contains_unrelated_type
31-
- library_names
32-
- library_prefixes
33-
- list_remove_unrelated_type
26+
- join_return_with_assignment
27+
- lines_longer_than_80_chars
28+
- literal_only_boolean_expressions
29+
- missing_whitespace_between_adjacent_strings
3430
- no_adjacent_strings_in_list
35-
- non_constant_identifier_names
31+
- no_runtimeType_toString
3632
- omit_local_variable_types
3733
- only_throw_errors
38-
- overridden_fields
3934
- package_api_docs
40-
- package_names
41-
- package_prefixed_library_names
42-
- prefer_adjacent_string_concatenation
43-
- prefer_collection_literals
44-
- prefer_conditional_assignment
35+
- prefer_asserts_in_initializer_lists
4536
- prefer_const_constructors
46-
- prefer_final_fields
47-
- prefer_generic_function_type_aliases
48-
- prefer_initializing_formals
49-
- prefer_interpolation_to_compose_strings
37+
- prefer_const_declarations
38+
- prefer_expression_function_bodies
39+
- prefer_final_locals
40+
- prefer_relative_imports
5041
- prefer_single_quotes
51-
- prefer_typing_uninitialized_variables
52-
- slash_for_doc_comments
42+
- sort_pub_dependencies
5343
- test_types_in_equals
5444
- throw_in_finally
55-
- type_init_formals
56-
- unnecessary_brace_in_string_interps
57-
- unnecessary_const
58-
- unnecessary_getters_setters
45+
- type_annotate_public_apis
46+
- unawaited_futures
47+
- unnecessary_await_in_return
5948
- unnecessary_lambdas
60-
- unnecessary_new
61-
- unnecessary_null_aware_assignments
49+
- unnecessary_parenthesis
50+
- unnecessary_raw_strings
6251
- unnecessary_statements
63-
- unnecessary_this
52+
- use_if_null_to_convert_nulls_to_bools
53+
- use_raw_strings
54+
- use_string_buffers
55+
- use_super_parameters

lib/src/logger.dart

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -83,7 +83,7 @@ class Logger {
8383
}
8484

8585
// Split hierarchical names (separated with '.').
86-
var dot = name.lastIndexOf('.');
86+
final dot = name.lastIndexOf('.');
8787
Logger? parent;
8888
String thisName;
8989
if (dot == -1) {
@@ -161,7 +161,7 @@ class Logger {
161161
}
162162

163163
/// Whether a message for [value]'s level is loggable in this logger.
164-
bool isLoggable(Level value) => (value >= level);
164+
bool isLoggable(Level value) => value >= level;
165165

166166
/// Adds a log record for a [message] at a particular [logLevel] if
167167
/// `isLoggable(logLevel)` is true.
@@ -202,7 +202,7 @@ class Logger {
202202
}
203203
zone ??= Zone.current;
204204

205-
var record =
205+
final record =
206206
LogRecord(logLevel, msg, fullName, error, stackTrace, zone, object);
207207

208208
if (parent == null) {

pubspec.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,8 @@ description: >-
77
repository: https://github.com/dart-lang/logging
88

99
environment:
10-
sdk: ">=2.12.0 <3.0.0"
10+
sdk: ">=2.18.0 <3.0.0"
1111

1212
dev_dependencies:
13-
lints: '>=1.0.0 <3.0.0'
13+
lints: ^2.0.0
1414
test: ^1.16.0

0 commit comments

Comments
 (0)