diff --git a/pkgs/stream_transform/analysis_options.yaml b/pkgs/stream_transform/analysis_options.yaml
index ecc45a6..82dd7e8 100644
--- a/pkgs/stream_transform/analysis_options.yaml
+++ b/pkgs/stream_transform/analysis_options.yaml
@@ -82,7 +82,7 @@
     - unnecessary_lambdas
     - unnecessary_new
     - unnecessary_null_aware_assignments
-    #- unnecessary_parenthesis
+    - unnecessary_parenthesis
     - unnecessary_statements
     - unnecessary_this
     - unnecessary_overrides
diff --git a/pkgs/stream_transform/test/followd_by_test.dart b/pkgs/stream_transform/test/followd_by_test.dart
index 956bf23..0e8853d 100644
--- a/pkgs/stream_transform/test/followd_by_test.dart
+++ b/pkgs/stream_transform/test/followd_by_test.dart
@@ -132,7 +132,7 @@
             await Future(() {});
             subscription = transformed.listen(emittedValues.add);
             second.add(3);
-            await Future((() {}));
+            await Future(() {});
             expect(emittedValues, [3]);
           });
 
diff --git a/pkgs/stream_transform/test/merge_test.dart b/pkgs/stream_transform/test/merge_test.dart
index cf576ac..4d3050a 100644
--- a/pkgs/stream_transform/test/merge_test.dart
+++ b/pkgs/stream_transform/test/merge_test.dart
@@ -54,7 +54,7 @@
       var first = StreamController.broadcast();
       var second = StreamController();
       var emittedValues = [];
-      var transformed = first.stream.transform((merge(second.stream)));
+      var transformed = first.stream.transform(merge(second.stream));
       var subscription = transformed.listen(emittedValues.add);
       first.add(1);
       second.add(2);
diff --git a/pkgs/stream_transform/test/scan_test.dart b/pkgs/stream_transform/test/scan_test.dart
index 7fe7bf9..f321539 100644
--- a/pkgs/stream_transform/test/scan_test.dart
+++ b/pkgs/stream_transform/test/scan_test.dart
@@ -34,7 +34,7 @@
 
       var errors = [];
 
-      source.stream.transform((scan(0, sum))).listen(null, onError: errors.add);
+      source.stream.transform(scan(0, sum)).listen(null, onError: errors.add);
 
       source.addError(StateError('fail'));
       await Future(() {});
@@ -98,7 +98,7 @@
         var errors = [];
 
         source.stream
-            .transform((scan(0, combine)))
+            .transform(scan(0, combine))
             .listen(null, onError: errors.add);
 
         source.add(1);
diff --git a/pkgs/stream_transform/test/tap_test.dart b/pkgs/stream_transform/test/tap_test.dart
index 3b52442..816c80f 100644
--- a/pkgs/stream_transform/test/tap_test.dart
+++ b/pkgs/stream_transform/test/tap_test.dart
@@ -51,9 +51,9 @@
     var doneCalled = false;
     var source = StreamController();
     source.stream
-        .transform((tap((_) {}, onDone: () {
+        .transform(tap((_) {}, onDone: () {
           doneCalled = true;
-        })))
+        }))
         .listen((_) {});
     await source.close();
     expect(doneCalled, true);
