Skip to content

Commit 75311ae

Browse files
derekxu16Commit Queue
authored andcommitted
[VM/Timeline] Add Microtask stream
TEST=runtime/vm/dart_api_impl_test.cc Change-Id: Icb078489f3600ac0fb8b314ca3bf748f482a687e Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/422860 Reviewed-by: Ben Konyi <[email protected]>
1 parent cdab11c commit 75311ae

File tree

13 files changed

+22
-14
lines changed

13 files changed

+22
-14
lines changed

pkg/dartdev/lib/src/commands/run.dart

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -153,8 +153,9 @@ class RunCommand extends DartdevCommand {
153153
'timeline-streams',
154154
help: 'Enables recording for specific timeline streams.\n'
155155
'Valid streams include: all, API, Compiler, CompilerVerbose, Dart, '
156-
'Debugger, Embedder, GC, Isolate, VM.\n'
157-
'Defaults to "Compiler, Dart, GC" when --observe is provided.',
156+
'Debugger, Embedder, GC, Isolate, Microtask, VM.\n'
157+
'Defaults to "Compiler, Dart, GC, Microtask" when --observe is '
158+
'provided.',
158159
valueHelp: 'str1, str2, ...',
159160
hide: !verbose,
160161
);
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
version=4.17
1+
version=4.18

pkg/vm_service/lib/src/vm_service.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ export 'snapshot_graph.dart'
2727
HeapSnapshotObjectNoData,
2828
HeapSnapshotObjectNullData;
2929

30-
const String vmServiceVersion = '4.17.0';
30+
const String vmServiceVersion = '4.18.0';
3131

3232
/// @optional
3333
const String optional = 'optional';

pkg/vm_service_interface/lib/src/vm_service_interface.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ import 'service_extension_registry.dart';
1717

1818
export 'service_extension_registry.dart' show ServiceExtensionRegistry;
1919

20-
const String vmServiceVersion = '4.17.0';
20+
const String vmServiceVersion = '4.18.0';
2121

2222
/// A class representation of the Dart VM Service Protocol.
2323
abstract interface class VmServiceInterface {

runtime/bin/main_options.cc

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -168,7 +168,7 @@ void Options::PrintUsage() {
168168
" --pause-isolates-on-exit\n"
169169
" --pause-isolates-on-unhandled-exceptions\n"
170170
" --warn-on-pause-with-no-debugger\n"
171-
" --timeline-streams=\"Compiler, Dart, GC\"\n"
171+
" --timeline-streams=\"Compiler, Dart, GC, Microtask\"\n"
172172
" This set is subject to change.\n"
173173
" Please see these options (--help --verbose) for further documentation.\n"
174174
"--write-service-info=<file_uri>\n"
@@ -210,7 +210,7 @@ void Options::PrintUsage() {
210210
" --pause-isolates-on-exit\n"
211211
" --pause-isolates-on-unhandled-exceptions\n"
212212
" --warn-on-pause-with-no-debugger\n"
213-
" --timeline-streams=\"Compiler, Dart, GC\"\n"
213+
" --timeline-streams=\"Compiler, Dart, GC, Microtask\"\n"
214214
" This set is subject to change.\n"
215215
" Please see these options for further documentation.\n"
216216
#endif // !defined(PRODUCT)
@@ -456,7 +456,7 @@ bool Options::ProcessObserveOption(const char* arg,
456456
vm_options->AddArgument("--pause-isolates-on-unhandled-exceptions");
457457
vm_options->AddArgument("--profiler");
458458
vm_options->AddArgument("--warn-on-pause-with-no-debugger");
459-
vm_options->AddArgument("--timeline-streams=\"Compiler,Dart,GC\"");
459+
vm_options->AddArgument("--timeline-streams=\"Compiler,Dart,GC,Microtask\"");
460460
#if !defined(DART_PRECOMPILED_RUNTIME)
461461
dfe()->set_use_incremental_compiler(true);
462462
#endif // !defined(DART_PRECOMPILED_RUNTIME)

runtime/docs/timeline.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@ Streams, also called categories, are sets of events whose recordering can be ena
3333
| `Embedder` | Events created by `Dart_RecordTimelineEvent`. |
3434
| `GC` | Events related to garbage collection or heap iteration. |
3535
| `Isolate` | Isolate or isolate group lifecycle events such as startup or shutdown. |
36+
| `Microtask` | Events representing `dart:async` microtasks. This stream only contains events when the VM is started with the `--profile-microtasks` flag. |
3637
| `VM` | VM lifecycle events such a startup or shutdown. |
3738

3839
The set of enabled streams can be selected with the `timeline_streams` flag. E.g., `--timeline_stream=VM,Isolate,GC,Dart` or `--timeline_streams=All`.
@@ -45,7 +46,7 @@ There are also some convenience flags:
4546

4647
| Flag | Expansion |
4748
| ---- | --------- |
48-
|`--timeline_streams=All` | `--timeline_streams=API,Compiler,CompilerVerbose,Dart,Debugger,Embedder,GC,Isolate,VM` |
49+
|`--timeline_streams=All` | `--timeline_streams=API,Compiler,CompilerVerbose,Dart,Debugger,Embedder,GC,Isolate,Microtask,VM` |
4950
| `--complete_timeline` | `--timeline_recorder=endless --timeline_streams=All` |
5051
| `--startup_timeline` | `--timeline_recorder=startup --timeline_streams=All` |
5152

runtime/include/dart_tools_api.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -300,6 +300,7 @@ DART_EXPORT bool Dart_IsReloading();
300300
* "Embedder" - Execution of Dart embedder code
301301
* "GC" - Execution of Dart Garbage Collector
302302
* "Isolate" - Dart Isolate lifecycle execution
303+
* "Microtask" - Execution of Dart microtasks
303304
* "VM" - Execution in Dart VM runtime code
304305
* "" - None
305306
*

runtime/observatory/tests/service/get_version_rpc_test.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ var tests = <VMTest>[
1212
final result = await vm.invokeRpcNoUpgrade('getVersion', {});
1313
expect(result['type'], 'Version');
1414
expect(result['major'], 4);
15-
expect(result['minor'], 17);
15+
expect(result['minor'], 18);
1616
expect(result['_privateMajor'], 0);
1717
expect(result['_privateMinor'], 0);
1818
},

runtime/vm/dart_api_impl_test.cc

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10140,6 +10140,7 @@ TEST_CASE(DartAPI_TimelineCategories) {
1014010140
EXPECT_NOTSUBSTRING("Debugger", js_str);
1014110141
EXPECT_NOTSUBSTRING("Embedder", js_str);
1014210142
EXPECT_NOTSUBSTRING("Isolate", js_str);
10143+
EXPECT_NOTSUBSTRING("Microtask", js_str);
1014310144
EXPECT_NOTSUBSTRING("VM", js_str);
1014410145
}
1014510146

@@ -10158,6 +10159,7 @@ TEST_CASE(DartAPI_TimelineCategories) {
1015810159
EXPECT_NOTSUBSTRING("Debugger", js_str);
1015910160
EXPECT_NOTSUBSTRING("Embedder", js_str);
1016010161
EXPECT_SUBSTRING("Isolate", js_str);
10162+
EXPECT_NOTSUBSTRING("Microtask", js_str);
1016110163
EXPECT_NOTSUBSTRING("VM", js_str);
1016210164
}
1016310165

@@ -10176,6 +10178,7 @@ TEST_CASE(DartAPI_TimelineCategories) {
1017610178
EXPECT_NOTSUBSTRING("Debugger", js_str);
1017710179
EXPECT_NOTSUBSTRING("Embedder", js_str);
1017810180
EXPECT_NOTSUBSTRING("Isolate", js_str);
10181+
EXPECT_NOTSUBSTRING("Microtask", js_str);
1017910182
EXPECT_NOTSUBSTRING("VM", js_str);
1018010183
}
1018110184
}

runtime/vm/service.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@
1919
namespace dart {
2020

2121
#define SERVICE_PROTOCOL_MAJOR_VERSION 4
22-
#define SERVICE_PROTOCOL_MINOR_VERSION 17
22+
#define SERVICE_PROTOCOL_MINOR_VERSION 18
2323

2424
class Array;
2525
class EmbedderServiceHandler;

0 commit comments

Comments
 (0)