Remove unused code from `services/` (#9919)
diff --git a/analysis_options.yaml b/analysis_options.yaml
index b6c61e1..117473a 100644
--- a/analysis_options.yaml
+++ b/analysis_options.yaml
@@ -18,6 +18,13 @@
- '**/build/**'
- '**.freezed.dart'
- tool/flutter-sdk/
+ - build/**
+ - android/**
+ - ios/**
+ - web/**
+ - windows/**
+ - macos/**
+ - linux/**
linter:
rules:
@@ -166,7 +173,6 @@
- integration_test/**
# Investigate internal usages of inspector_controller before removing.
- lib/src/screens/inspector/**_controller.dart
- - lib/src/service/**
- lib/src/shared/**
- test/**
rules:
diff --git a/packages/devtools_app/analysis_options.yaml b/packages/devtools_app/analysis_options.yaml
index e85c2e1..1fb0989 100644
--- a/packages/devtools_app/analysis_options.yaml
+++ b/packages/devtools_app/analysis_options.yaml
@@ -13,6 +13,12 @@
# these files if you want to ensure code is not invalid except where
# expected.
- test/test_infra/test_data/syntax_highlighting/**
+ - android/**
+ - ios/**
+ - web/**
+ - windows/**
+ - macos/**
+ - linux/**
dart_code_metrics:
metrics-exclude:
diff --git a/packages/devtools_app/lib/src/service/service_extensions.dart b/packages/devtools_app/lib/src/service/service_extensions.dart
index b2bf785..c4fd56a 100644
--- a/packages/devtools_app/lib/src/service/service_extensions.dart
+++ b/packages/devtools_app/lib/src/service/service_extensions.dart
@@ -226,15 +226,6 @@
String get gaItemTooltipLink => '${gaItem}TooltipLink';
}
-final debugAllowBanner = ToggleableServiceExtensionDescription<bool>.from(
- extensions.debugAllowBanner,
- title: 'Debug Banner',
- iconAsset: 'icons/debug_banner@2x.png',
- gaScreenName: gac.inspector,
- gaItem: gac.debugBanner,
- tooltip: 'Toggle Debug Banner',
-);
-
final invertOversizedImages = ToggleableServiceExtensionDescription<bool>.from(
extensions.invertOversizedImages,
title: 'Highlight Oversized Images',
@@ -363,6 +354,8 @@
gaDocsItem: gac.slowAnimationDocs,
);
+// TODO(https://github.com/flutter/devtools/issues/2780): hook this up in the UI.
+// ignore: unused-code, TODO(https://github.com/flutter/devtools/issues/2780).
final togglePlatformMode = ServiceExtensionDescription<String>.from(
extensions.togglePlatformMode,
title: 'Override target platform',
diff --git a/packages/devtools_app/lib/src/service/timeline_streams.dart b/packages/devtools_app/lib/src/service/timeline_streams.dart
index 57e51d1..6d669a1 100644
--- a/packages/devtools_app/lib/src/service/timeline_streams.dart
+++ b/packages/devtools_app/lib/src/service/timeline_streams.dart
@@ -63,6 +63,7 @@
List<TimelineStream> get advancedStreams =>
_streamsWhere((stream) => stream.advanced);
+ @visibleForTesting
List<TimelineStream> get recordedStreams =>
_streamsWhere((stream) => stream.recorded.value);
diff --git a/packages/devtools_app/lib/src/service/vm_service_wrapper.dart b/packages/devtools_app/lib/src/service/vm_service_wrapper.dart
index a49971f..87724a9 100644
--- a/packages/devtools_app/lib/src/service/vm_service_wrapper.dart
+++ b/packages/devtools_app/lib/src/service/vm_service_wrapper.dart
@@ -94,8 +94,9 @@
final _activeStreams = <String, Future<Success>>{};
- final activeFutures = <TrackedFuture<Object>>{};
+ final activeFutureNames = <String>[];
+ @visibleForTesting
Future<void> get allFuturesCompleted => _allFuturesCompleter.future;
Completer<bool> _allFuturesCompleter = Completer<bool>()
@@ -326,20 +327,6 @@
// End Dart IO extension method wrappers.
- /// Testing only method to indicate that we don't really need to await all
- /// currently pending futures.
- ///
- /// If you use this method be sure to indicate why you believe all pending
- /// futures are safe to ignore. Currently the theory is this method should be
- /// used after a hot restart to avoid bugs where we have zombie futures lying
- /// around causing tests to flake.
- @visibleForTesting
- void doNotWaitForPendingFuturesBeforeExit() {
- _allFuturesCompleter = Completer<bool>();
- _allFuturesCompleter.complete(true);
- activeFutures.clear();
- }
-
@visibleForTesting
int vmServiceCallCount = 0;
@@ -383,15 +370,14 @@
vmServiceCallCount++;
vmServiceCalls.add(name);
- final trackedFuture = TrackedFuture(name, localFuture as Future<Object>);
if (_allFuturesCompleter.isCompleted) {
_allFuturesCompleter = Completer<bool>();
}
- activeFutures.add(trackedFuture);
+ activeFutureNames.add(name);
void futureComplete() {
- activeFutures.remove(trackedFuture);
- if (activeFutures.isEmpty) {
+ activeFutureNames.remove(name);
+ if (activeFutureNames.isEmpty) {
_allFuturesCompleter.safeComplete(true);
}
}
@@ -428,10 +414,6 @@
return parser(result.json);
}
- /// Forces the VM to perform a full garbage collection.
- Future<Success?> collectAllGarbage() =>
- _privateRpcInvoke('collectAllGarbage', parser: Success.parse);
-
Future<InstanceRef?> getReachableSize(String isolateId, String targetId) =>
_privateRpcInvoke(
'getReachableSize',
@@ -512,10 +494,3 @@
return response.dapResponse.body;
}
}
-
-class TrackedFuture<T> {
- TrackedFuture(this.name, this.future);
-
- final String name;
- final Future<T> future;
-}
diff --git a/packages/devtools_app/test/test_infra/flutter_test_environment.dart b/packages/devtools_app/test/test_infra/flutter_test_environment.dart
index 54da10a..812853c 100644
--- a/packages/devtools_app/test/test_infra/flutter_test_environment.dart
+++ b/packages/devtools_app/test/test_infra/flutter_test_environment.dart
@@ -200,8 +200,8 @@
const Duration(seconds: 20),
onTimeout: () {
throw 'Timed out waiting for futures to complete during teardown. '
- '${_service.activeFutures.length} futures remained:\n\n'
- ' ${_service.activeFutures.map((tf) => tf.name).join('\n ')}';
+ '${_service.activeFutureNames.length} futures remained:\n\n'
+ ' ${_service.activeFutureNames.join('\\n ')}';
},
);
await _flutter!.stop();
diff --git a/packages/devtools_extensions/example/app_that_uses_foo/analysis_options.yaml b/packages/devtools_extensions/example/app_that_uses_foo/analysis_options.yaml
index 0d29021..bf8d421 100644
--- a/packages/devtools_extensions/example/app_that_uses_foo/analysis_options.yaml
+++ b/packages/devtools_extensions/example/app_that_uses_foo/analysis_options.yaml
@@ -7,6 +7,15 @@
# The following line activates a set of recommended lints for Flutter apps,
# packages, and plugins designed to encourage good coding practices.
+analyzer:
+ exclude:
+ - build/**
+ - android/**
+ - ios/**
+ - web/**
+ - windows/**
+ - macos/**
+ - linux/**
include: package:flutter_lints/flutter.yaml
linter:
diff --git a/third_party/packages/widget_icons/analysis_options.yaml b/third_party/packages/widget_icons/analysis_options.yaml
index f9b3034..743e05a 100644
--- a/third_party/packages/widget_icons/analysis_options.yaml
+++ b/third_party/packages/widget_icons/analysis_options.yaml
@@ -1 +1,10 @@
+analyzer:
+ exclude:
+ - build/**
+ - android/**
+ - ios/**
+ - web/**
+ - windows/**
+ - macos/**
+ - linux/**
include: package:flutter_lints/flutter.yaml
diff --git a/third_party/packages/widget_icons/example/analysis_options.yaml b/third_party/packages/widget_icons/example/analysis_options.yaml
index f9b3034..743e05a 100644
--- a/third_party/packages/widget_icons/example/analysis_options.yaml
+++ b/third_party/packages/widget_icons/example/analysis_options.yaml
@@ -1 +1,10 @@
+analyzer:
+ exclude:
+ - build/**
+ - android/**
+ - ios/**
+ - web/**
+ - windows/**
+ - macos/**
+ - linux/**
include: package:flutter_lints/flutter.yaml
diff --git a/tool/analysis_options.yaml b/tool/analysis_options.yaml
index 81588d9..f4ded48 100644
--- a/tool/analysis_options.yaml
+++ b/tool/analysis_options.yaml
@@ -6,6 +6,13 @@
analyzer:
exclude:
- flutter-sdk/
+ - build/**
+ - android/**
+ - ios/**
+ - web/**
+ - windows/**
+ - macos/**
+ - linux/**
linter:
rules: