Enable some lints
diff --git a/pkgs/stream_transform/analysis_options.yaml b/pkgs/stream_transform/analysis_options.yaml
index 590a8e5..5741706 100644
--- a/pkgs/stream_transform/analysis_options.yaml
+++ b/pkgs/stream_transform/analysis_options.yaml
@@ -1,37 +1,40 @@
analyzer:
- strong-mode: true
+ strong-mode:
+ implicit-casts: false
errors:
- unused_import: error
- unused_local_variable: error
dead_code: error
override_on_non_overriding_method: error
-
+ unused_element: error
+ unused_import: error
+ unused_local_variable: error
linter:
rules:
- # Errors
- - avoid_empty_else
- # Wait for FutureOr to work
- #- await_only_futures
- - comment_references
- - control_flow_in_finally
- - empty_statements
- - hash_and_equals
- - test_types_in_equals
- - throw_in_finally
- - unawaited_futures
- - unrelated_type_equality_checks
- - valid_regexps
-
- # Style
- annotate_overrides
+ - avoid_empty_else
- avoid_init_to_null
- avoid_return_types_on_setters
+ - await_only_futures
- camel_case_types
+ - comment_references
+ - control_flow_in_finally
+ - directives_ordering
- empty_catches
- empty_constructor_bodies
+ - empty_statements
+ - hash_and_equals
+ - implementation_imports
- library_names
- library_prefixes
- non_constant_identifier_names
+ - omit_local_variable_types
+ - only_throw_errors
+ - prefer_final_fields
- prefer_is_not_empty
+ - prefer_single_quotes
- slash_for_doc_comments
+ - test_types_in_equals
+ - test_types_in_equals
+ - throw_in_finally
- type_init_formals
+ - unrelated_type_equality_checks
+ - valid_regexps
diff --git a/pkgs/stream_transform/lib/src/async_map_buffer.dart b/pkgs/stream_transform/lib/src/async_map_buffer.dart
index 315e77a..f2fd2a4 100644
--- a/pkgs/stream_transform/lib/src/async_map_buffer.dart
+++ b/pkgs/stream_transform/lib/src/async_map_buffer.dart
@@ -28,7 +28,7 @@
/// pending conversions have finished.
StreamTransformer<S, T> asyncMapBuffer<S, T>(
Future<T> convert(List<S> collected)) {
- var workFinished = new StreamController<Null>();
+ var workFinished = new StreamController();
// Let the first event through.
workFinished.add(null);
return fromBind((values) => values
@@ -40,7 +40,7 @@
/// rather than once per listener, and [then] is called after completing the
/// work.
StreamTransformer<S, T> _asyncMapThen<S, T>(
- Future<T> convert(S event), void then(_)) {
+ Future<T> convert(S event), void then(Object _)) {
Future pendingEvent;
return fromHandlers(handleData: (event, sink) {
pendingEvent =
diff --git a/pkgs/stream_transform/lib/src/audit.dart b/pkgs/stream_transform/lib/src/audit.dart
index 12bb9d5..2463ee6 100644
--- a/pkgs/stream_transform/lib/src/audit.dart
+++ b/pkgs/stream_transform/lib/src/audit.dart
@@ -18,7 +18,7 @@
/// within [duration].
StreamTransformer<T, T> audit<T>(Duration duration) {
Timer timer;
- bool shouldClose = false;
+ var shouldClose = false;
T recentData;
return fromHandlers(handleData: (T data, EventSink<T> sink) {
diff --git a/pkgs/stream_transform/lib/src/buffer.dart b/pkgs/stream_transform/lib/src/buffer.dart
index f5ef7bf..5c594c8 100644
--- a/pkgs/stream_transform/lib/src/buffer.dart
+++ b/pkgs/stream_transform/lib/src/buffer.dart
@@ -12,7 +12,8 @@
///
/// Errors from the source stream or the trigger are immediately forwarded to
/// the output.
-StreamTransformer<T, List<T>> buffer<T>(Stream trigger) => new _Buffer(trigger);
+StreamTransformer<T, List<T>> buffer<T>(Stream trigger) =>
+ new _Buffer<T>(trigger);
/// A StreamTransformer which aggregates values and emits when it sees a value
/// on [_trigger].
@@ -35,9 +36,9 @@
: new StreamController<List<T>>(sync: true);
List<T> currentResults;
- bool waitingForTrigger = true;
- bool isTriggerDone = false;
- bool isValueDone = false;
+ var waitingForTrigger = true;
+ var isTriggerDone = false;
+ var isValueDone = false;
StreamSubscription valueSub;
StreamSubscription triggerSub;
diff --git a/pkgs/stream_transform/lib/src/concat.dart b/pkgs/stream_transform/lib/src/concat.dart
index 955918a..39e747b 100644
--- a/pkgs/stream_transform/lib/src/concat.dart
+++ b/pkgs/stream_transform/lib/src/concat.dart
@@ -20,7 +20,7 @@
StreamTransformer<T, T> concat<T>(Stream<T> next) => new _Concat<T>(next);
class _Concat<T> implements StreamTransformer<T, T> {
- final Stream _next;
+ final Stream<T> _next;
_Concat(this._next);
diff --git a/pkgs/stream_transform/lib/src/debounce.dart b/pkgs/stream_transform/lib/src/debounce.dart
index fffb221..1ff91de 100644
--- a/pkgs/stream_transform/lib/src/debounce.dart
+++ b/pkgs/stream_transform/lib/src/debounce.dart
@@ -36,7 +36,7 @@
Duration duration, R collect(T element, R soFar)) {
Timer timer;
R soFar;
- bool shouldClose = false;
+ var shouldClose = false;
return fromHandlers(handleData: (T value, EventSink<R> sink) {
timer?.cancel();
timer = new Timer(duration, () {
diff --git a/pkgs/stream_transform/lib/src/from_handlers.dart b/pkgs/stream_transform/lib/src/from_handlers.dart
index 1303584..cf1c24d 100644
--- a/pkgs/stream_transform/lib/src/from_handlers.dart
+++ b/pkgs/stream_transform/lib/src/from_handlers.dart
@@ -51,9 +51,9 @@
StreamSubscription<S> subscription;
controller.onListen = () {
if (subscription != null) return;
- bool valuesDone = false;
+ var valuesDone = false;
subscription = values.listen((value) => _handleData(value, controller),
- onError: (error, stackTrace) {
+ onError: (error, StackTrace stackTrace) {
_handleError(error, stackTrace, controller);
}, onDone: () {
valuesDone = true;
diff --git a/pkgs/stream_transform/lib/src/merge.dart b/pkgs/stream_transform/lib/src/merge.dart
index 563cff0..3653eb9 100644
--- a/pkgs/stream_transform/lib/src/merge.dart
+++ b/pkgs/stream_transform/lib/src/merge.dart
@@ -32,7 +32,7 @@
? new StreamController<T>.broadcast(sync: true)
: new StreamController<T>(sync: true);
- List<Stream<T>> allStreams = [first]..addAll(_others);
+ var allStreams = [first]..addAll(_others);
if (first.isBroadcast) {
allStreams = allStreams
.map((s) => s.isBroadcast ? s : s.asBroadcastStream())
diff --git a/pkgs/stream_transform/lib/src/scan.dart b/pkgs/stream_transform/lib/src/scan.dart
index 7c26076..fb8c745 100644
--- a/pkgs/stream_transform/lib/src/scan.dart
+++ b/pkgs/stream_transform/lib/src/scan.dart
@@ -10,6 +10,6 @@
StreamTransformer<S, T> scan<S, T>(
T initialValue, T combine(T previousValue, S element)) =>
fromBind((stream) {
- T accumulated = initialValue;
+ var accumulated = initialValue;
return stream.map((value) => accumulated = combine(accumulated, value));
});
diff --git a/pkgs/stream_transform/pubspec.yaml b/pkgs/stream_transform/pubspec.yaml
index c9bdfac..996e405 100644
--- a/pkgs/stream_transform/pubspec.yaml
+++ b/pkgs/stream_transform/pubspec.yaml
@@ -2,7 +2,7 @@
description: A collection of utilities to transform and manipulate streams.
author: Dart Team <misc@dartlang.org>
homepage: https://www.github.com/dart-lang/stream_transform
-version: 0.0.9
+version: 0.0.10-dev
environment:
sdk: ">=1.22.0 <2.0.0"
diff --git a/pkgs/stream_transform/test/async_where_test.dart b/pkgs/stream_transform/test/async_where_test.dart
index 18c34bc..4cf8af6 100644
--- a/pkgs/stream_transform/test/async_where_test.dart
+++ b/pkgs/stream_transform/test/async_where_test.dart
@@ -36,7 +36,7 @@
});
test('forwards values to multiple listeners', () async {
- var values = new StreamController.broadcast();
+ var values = new StreamController<int>.broadcast();
var filtered = values.stream.transform(asyncWhere((e) async => e > 2));
var firstValues = [];
var secondValues = [];
diff --git a/pkgs/stream_transform/test/switch_test.dart b/pkgs/stream_transform/test/switch_test.dart
index ccc9877..624c1a5 100644
--- a/pkgs/stream_transform/test/switch_test.dart
+++ b/pkgs/stream_transform/test/switch_test.dart
@@ -1,6 +1,7 @@
-import 'package:test/test.dart';
import 'dart:async';
+import 'package:test/test.dart';
+
import 'package:stream_transform/stream_transform.dart';
void main() {
@@ -125,7 +126,7 @@
group('switchMap', () {
test('uses map function', () async {
- var outer = new StreamController();
+ var outer = new StreamController<List>();
var values = [];
outer.stream
diff --git a/pkgs/stream_transform/test/tap_test.dart b/pkgs/stream_transform/test/tap_test.dart
index eb64eee..1f384ff 100644
--- a/pkgs/stream_transform/test/tap_test.dart
+++ b/pkgs/stream_transform/test/tap_test.dart
@@ -1,6 +1,7 @@
-import 'package:test/test.dart';
import 'dart:async';
+import 'package:test/test.dart';
+
import 'package:stream_transform/stream_transform.dart';
void main() {