Removes unused code in DevTools app `extensions/` and `framework/` directories (#9909)
Work towards https://github.com/flutter/devtools/issues/9906
Chained on top of https://github.com/flutter/devtools/pull/9908
diff --git a/analysis_options.yaml b/analysis_options.yaml
index d6dd068..e57f4c2 100644
--- a/analysis_options.yaml
+++ b/analysis_options.yaml
@@ -164,8 +164,6 @@
# TODO(https://github.com/flutter/devtools/issues/9906) remove these
# excludes as findings are resolved.
- integration_test/**
- - lib/src/extensions/**
- - lib/src/framework/**
- lib/src/screens/**
- lib/src/service/**
- lib/src/shared/**
diff --git a/packages/devtools_app/lib/src/extensions/embedded/_controller_web.dart b/packages/devtools_app/lib/src/extensions/embedded/_controller_web.dart
index 388fe7a..1da1d18 100644
--- a/packages/devtools_app/lib/src/extensions/embedded/_controller_web.dart
+++ b/packages/devtools_app/lib/src/extensions/embedded/_controller_web.dart
@@ -78,6 +78,7 @@
final extensionPostEventStream =
StreamController<DevToolsExtensionEvent>.broadcast();
+ // ignore: unused-code, TODO(https://github.com/flutter/devtools/issues/9907): false positive.
bool _initialized = false;
@override
diff --git a/packages/devtools_app/lib/src/extensions/embedded/_view_desktop.dart b/packages/devtools_app/lib/src/extensions/embedded/_view_desktop.dart
index 5d9403f..051461b 100644
--- a/packages/devtools_app/lib/src/extensions/embedded/_view_desktop.dart
+++ b/packages/devtools_app/lib/src/extensions/embedded/_view_desktop.dart
@@ -7,9 +7,10 @@
import 'controller.dart';
class EmbeddedExtension extends StatelessWidget {
- const EmbeddedExtension({super.key, required this.controller});
-
- final EmbeddedExtensionController controller;
+ const EmbeddedExtension({
+ super.key,
+ required EmbeddedExtensionController controller,
+ });
@override
Widget build(BuildContext context) {
diff --git a/packages/devtools_app/lib/src/extensions/extension_service.dart b/packages/devtools_app/lib/src/extensions/extension_service.dart
index 2c7513b..ae49a3b 100644
--- a/packages/devtools_app/lib/src/extensions/extension_service.dart
+++ b/packages/devtools_app/lib/src/extensions/extension_service.dart
@@ -70,6 +70,7 @@
///
/// This set of extensions will include one version of a DevTools extension
/// per package.
+ @visibleForTesting
List<DevToolsExtensionConfig> get availableExtensions =>
_currentExtensions.value.availableExtensions;
diff --git a/packages/devtools_app/lib/src/framework/home_screen.dart b/packages/devtools_app/lib/src/framework/home_screen.dart
index 7b02646..6da52cb 100644
--- a/packages/devtools_app/lib/src/framework/home_screen.dart
+++ b/packages/devtools_app/lib/src/framework/home_screen.dart
@@ -32,8 +32,6 @@
titleGenerator: () => devToolsTitle.value,
);
- static final id = ScreenMetaData.home.id;
-
final List<DevToolsJsonFile> sampleData;
@override
@@ -165,10 +163,7 @@
void initState() {
super.initState();
connectDialogController = TextEditingController();
- assert(() {
- _debugInitVmServiceCache();
- return true;
- }());
+ if (kDebugMode) _debugInitVmServiceCache();
}
void _debugInitVmServiceCache() async {
@@ -176,7 +171,7 @@
// developers who tend to repeatedly restart DevTools to debug the same
// test application.
final uri = await storage.getValue(_debugVmServiceUriKey);
- if (uri != null) {
+ if (uri != null && mounted) {
setState(() {
connectDialogController.text = uri;
});
@@ -258,10 +253,9 @@
return;
}
- assert(() {
+ if (kDebugMode) {
safeUnawaited(storage.setValue(_debugVmServiceUriKey, uri));
- return true;
- }());
+ }
// Cache the routerDelegate and notifications providers before the async
// gap as the landing screen may not be displayed by the time the async gap
diff --git a/packages/devtools_app/lib/src/framework/release_notes.dart b/packages/devtools_app/lib/src/framework/release_notes.dart
index f6ea52c..f7632c6 100644
--- a/packages/devtools_app/lib/src/framework/release_notes.dart
+++ b/packages/devtools_app/lib/src/framework/release_notes.dart
@@ -28,6 +28,7 @@
// from the flutter/website PR, which has a GitHub action that automatically
// stages commits to firebase. Example:
// https://flutter-docs-prod--pr12652-devtools-release-notes-2-52-3bbb8c0u.web.app/tools/devtools/release-notes/release-notes-2.52.0.md.
+// ignore: unused-code, debug-only feature.
String? _debugReleaseNotesUrl;
const releaseNotesKey = Key('release_notes');
diff --git a/packages/devtools_app/lib/src/framework/scaffold/status_line.dart b/packages/devtools_app/lib/src/framework/scaffold/status_line.dart
index 16133d3..54e78dc 100644
--- a/packages/devtools_app/lib/src/framework/scaffold/status_line.dart
+++ b/packages/devtools_app/lib/src/framework/scaffold/status_line.dart
@@ -37,8 +37,6 @@
/// Whether to highlight the footer when DevTools is connected to an app.
final bool highlightForConnection;
- static const deviceInfoTooltip = 'Device Info';
-
/// The padding around the footer in the DevTools UI.
EdgeInsets get padding => const EdgeInsets.symmetric(
horizontal: defaultSpacing,