Skip to content

Commit 0cc9fa5

Browse files
author
Anna Gringauze
authored
Migrate the rest of package:dwds to null safety (#1689)
* Migrate debugging/inspector.dart to null safety * Migrate expression evaluator to null safety * format * Fix failing tests * Migrate services/chrome_proxu_service.dart to null safety * Migrate rest of the services and dwds_vm_client to null safety * Migrate package:dwds to null safety * Make inspector.getObject return non-null value * Remove unused parameter restoreBreakpoint in tests * Cleanup error messages in Inspector._getScript * Cleanup * Fixed spelling error
1 parent 3d2ad34 commit 0cc9fa5

File tree

8 files changed

+136
-161
lines changed

8 files changed

+136
-161
lines changed

dwds/CHANGELOG.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
the scope.
88
- Remove showing uncaptured values from the stack during evaluation.
99
- Refactor code to break most circular dependencies between files.
10+
- Migrate `package:dwds` to null safety.
1011

1112
**Breaking changes**
1213
- Remove no longer used `ExpressionCompilerService.handler`.

dwds/lib/dart_web_debug_service.dart

Lines changed: 24 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -2,12 +2,9 @@
22
// for details. All rights reserved. Use of this source code is governed by a
33
// BSD-style license that can be found in the LICENSE file.
44

5-
// @dart = 2.9
6-
75
import 'dart:async';
86

97
import 'package:logging/logging.dart';
10-
import 'package:meta/meta.dart';
118
import 'package:shelf/shelf.dart';
129
import 'package:sse/server/sse_handler.dart';
1310
import 'package:webkit_inspection_protocol/webkit_inspection_protocol.dart';
@@ -33,7 +30,7 @@ class Dwds {
3330
static final _logger = Logger('DWDS');
3431
final Middleware middleware;
3532
final Handler handler;
36-
final DevTools _devTools;
33+
final DevTools? _devTools;
3734
final DevHandler _devHandler;
3835
final AssetReader _assetReader;
3936
final bool _enableDebugging;
@@ -67,53 +64,42 @@ class Dwds {
6764
}
6865

6966
static Future<Dwds> start({
70-
@required AssetReader assetReader,
71-
@required Stream<BuildResult> buildResults,
72-
@required ConnectionProvider chromeConnection,
73-
@required LoadStrategy loadStrategy,
74-
@required bool enableDebugging,
67+
required AssetReader assetReader,
68+
required Stream<BuildResult> buildResults,
69+
required ConnectionProvider chromeConnection,
70+
required LoadStrategy loadStrategy,
71+
required bool enableDebugging,
7572
// TODO(annagrin): make expressionCompiler argument required
7673
// [issue 881](https://github.com/dart-lang/webdev/issues/881)
77-
ExpressionCompiler expressionCompiler,
78-
bool enableDebugExtension,
79-
String hostname,
80-
bool useSseForDebugProxy,
81-
bool useSseForDebugBackend,
82-
bool useSseForInjectedClient,
83-
UrlEncoder urlEncoder,
84-
bool spawnDds,
74+
ExpressionCompiler? expressionCompiler,
75+
bool enableDebugExtension = false,
76+
String hostname = 'localhost',
77+
bool useSseForDebugProxy = true,
78+
bool useSseForDebugBackend = true,
79+
bool useSseForInjectedClient = true,
80+
UrlEncoder? urlEncoder,
81+
bool spawnDds = true,
8582
// TODO(elliette): DevTools is inconsistently capitalized throughout this
86-
// file. Change all occurances of devtools/Devtools to devTools/DevTools.
87-
bool enableDevtoolsLaunch,
88-
DevtoolsLauncher devtoolsLauncher,
89-
bool launchDevToolsInNewWindow,
90-
SdkConfigurationProvider sdkConfigurationProvider,
91-
bool emitDebugEvents,
83+
// file. Change all occurrences of devtools/Devtools to devTools/DevTools.
84+
bool enableDevtoolsLaunch = true,
85+
DevtoolsLauncher? devtoolsLauncher,
86+
bool launchDevToolsInNewWindow = true,
87+
SdkConfigurationProvider? sdkConfigurationProvider,
88+
bool emitDebugEvents = true,
9289
}) async {
93-
hostname ??= 'localhost';
94-
enableDebugging ??= true;
95-
enableDebugExtension ??= false;
96-
useSseForDebugProxy ??= true;
97-
useSseForDebugBackend ??= true;
98-
useSseForInjectedClient ??= true;
99-
enableDevtoolsLaunch ??= true;
100-
launchDevToolsInNewWindow ??= true;
101-
spawnDds ??= true;
10290
globalLoadStrategy = loadStrategy;
103-
emitDebugEvents ??= true;
104-
10591
sdkConfigurationProvider ??= DefaultSdkConfigurationProvider();
10692

107-
DevTools devTools;
108-
Future<String> extensionUri;
109-
ExtensionBackend extensionBackend;
93+
DevTools? devTools;
94+
Future<String>? extensionUri;
95+
ExtensionBackend? extensionBackend;
11096
if (enableDebugExtension) {
11197
final handler = useSseForDebugBackend
11298
? SseSocketHandler(SseHandler(Uri.parse('/\$debug'),
11399
// Proxy servers may actively kill long standing connections.
114100
// Allow for clients to reconnect in a short window. Making the
115101
// window too long may cause issues if the user closes a debug
116-
// session and initites a new one during the keepAlive window.
102+
// session and initiates a new one during the keepAlive window.
117103
keepAlive: const Duration(seconds: 5)))
118104
: WebSocketSocketHandler();
119105

@@ -154,7 +140,6 @@ class Dwds {
154140
urlEncoder,
155141
useSseForDebugProxy,
156142
useSseForInjectedClient,
157-
serveDevTools,
158143
expressionCompiler,
159144
injected,
160145
spawnDds,

dwds/lib/dwds.dart

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,6 @@
22
// for details. All rights reserved. Use of this source code is governed by a
33
// BSD-style license that can be found in the LICENSE file.
44

5-
// @dart = 2.9
6-
75
export 'dart_web_debug_service.dart' show Dwds, ConnectionProvider;
86
export 'src/connections/app_connection.dart' show AppConnection;
97
export 'src/connections/debug_connection.dart' show DebugConnection;

dwds/lib/src/debugging/inspector.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -374,7 +374,7 @@ class AppInspector implements AppInspectorInterface {
374374
}
375375
final scriptRef = _scriptRefsById[objectId];
376376
if (scriptRef != null) {
377-
return await _getScript(scriptRef);
377+
return _getScript(scriptRef);
378378
}
379379
final instance = await _instanceHelper
380380
.instanceFor(remoteObjectFor(objectId), offset: offset, count: count);

0 commit comments

Comments
 (0)