Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion flutter-candidate.txt
Original file line number Diff line number Diff line change
@@ -1 +1 @@
b0e66e6dd81c20dae6a3ce2ee515a165dbbbfb3e
02a06a851ff3d25e353f5f33f46c47f179e70467
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,8 @@ extension type _UserAgentSpecificMemoryBreakdownAttributionElement._(JSObject _)
@JS()
extension type _UserAgentSpecificMemoryBreakdownAttributionContainerElement._(
JSObject _
) implements JSObject {
)
implements JSObject {
external String get id;

external String get url;
Expand Down
35 changes: 14 additions & 21 deletions packages/devtools_app/test/service/timeline_streams_test.dart
Original file line number Diff line number Diff line change
Expand Up @@ -22,30 +22,23 @@ void main() {
await env.tearDownEnvironment(force: true);
});

test(
'timeline streams initialized on vm service opened',
() async {
await env.setupEnvironment();
test('timeline streams initialized on vm service opened', () async {
await env.setupEnvironment();

// Await a short delay to make sure the timelineStreamManager is done
// initializing.
await delay();
// Await a short delay to make sure the timelineStreamManager is done
// initializing.
await delay();

expect(serviceConnection.serviceManager.service, equals(env.service));
expect(serviceConnection.timelineStreamManager, isNotNull);
expect(
serviceConnection.timelineStreamManager.basicStreams,
isNotEmpty,
);
expect(
serviceConnection.timelineStreamManager.advancedStreams,
isNotEmpty,
);
expect(serviceConnection.serviceManager.service, equals(env.service));
expect(serviceConnection.timelineStreamManager, isNotNull);
expect(serviceConnection.timelineStreamManager.basicStreams, isNotEmpty);
expect(
serviceConnection.timelineStreamManager.advancedStreams,
isNotEmpty,
);

await env.tearDownEnvironment();
},
timeout: const Timeout.factor(4),
);
await env.tearDownEnvironment();
}, timeout: const Timeout.factor(4));

test('notifies on stream change', () async {
await env.setupEnvironment();
Expand Down
3 changes: 3 additions & 0 deletions packages/devtools_shared/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,9 @@ Copyright 2025 The Flutter Authors
Use of this source code is governed by a BSD-style license that can be
found in the LICENSE file or at https://developers.google.com/open-source/licenses/bsd.
-->
# 13.0.1
* Handle null values for `FlutterStore.flutterClientId`.

# 13.0.0
* **Breaking change:** Removed `DevToolsStoreKeys.analyticsEnabled` and
`DevToolsStoreKeys.isFirstRun` since these were only used for legacy analytics.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,5 +17,6 @@ class FlutterStore {

bool get gaEnabled => properties[gaEnabledKey] == true;

String get flutterClientId => properties[flutterClientIdKey] as String;
String get flutterClientId =>
(properties[flutterClientIdKey] as String?) ?? '';
}
5 changes: 0 additions & 5 deletions packages/devtools_shared/lib/src/server/server_api.dart
Original file line number Diff line number Diff line change
Expand Up @@ -68,13 +68,8 @@ class ServerApi {
dtd,
);

// TODO(kenz): remove legacy analytics once the unified analytics rollout
// is complete and verified for robustness (est. Fall 2025).

// ----- Flutter Tool GA store. -----
case apiGetFlutterGAClientId:
// Flutter Tool GA clientId - ONLY get Flutter's clientId if enabled is
// true.
return _encodeResponse(
LocalFileSystem.flutterStoreExists()
? _flutterStore.flutterClientId
Expand Down
2 changes: 1 addition & 1 deletion packages/devtools_shared/pubspec.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
name: devtools_shared
description: Package of shared Dart structures between devtools_app, dds, and other tools.

version: 13.0.0
version: 13.0.1

repository: https://github.com/flutter/devtools/tree/master/packages/devtools_shared

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,8 @@ void main() {
const storeName = 'test_store';

setUp(() {
tempDir = Directory.systemTemp.createTempSync('persistent_properties_test');
tempDir =
Directory.systemTemp.createTempSync('persistent_properties_test');
properties = IOPersistentProperties(
storeName,
documentDirPath: tempDir.path,
Expand Down
Loading