-
Notifications
You must be signed in to change notification settings - Fork 86
Description
Currently webdev daemon writes all build progress as daemon.logMessage
events. Many of these would work better as app.progress
events since they're already used to show nice progress notifications when building Flutter apps.
For example, here's a webdev daemon build:
[9:30:35 AM]: <== [{"event":"daemon.connected","params":{"version":"0.4.2","pid":18674}}]
[9:30:36 AM]: <== [{"event":"daemon.logMessage","params":{"level":"INFO","message":"Connecting to the build daemon..."}}]
[9:30:37 AM]: <== [{"event":"daemon.logMessage","params":{"level":"INFO","message":"Generating build script..."}}]
[9:30:37 AM]: <== [{"event":"daemon.logMessage","params":{"level":"INFO","message":"Generating build script completed, took 366ms"}}]
[9:30:37 AM]: <== [{"event":"daemon.logMessage","params":{"level":"INFO","message":""}}]
[9:30:37 AM]: <== [{"event":"daemon.logMessage","params":{"level":"INFO","message":"Starting daemon..."}}]
[9:30:39 AM]: <== [{"event":"daemon.logMessage","params":{"level":"INFO","message":"BuildDefinition: Initializing inputs"}}]
[9:30:39 AM]: <== [{"event":"daemon.logMessage","params":{"level":"INFO","message":"BuildDefinition: Reading cached asset graph..."}}]
[9:30:39 AM]: <== [{"event":"daemon.logMessage","params":{"level":"INFO","message":"BuildDefinition: Reading cached asset graph completed, took 368ms"}}]
And here's a Flutter build:
[9:09:12 AM]: <== [{"event":"daemon.connected","params":{"version":"0.4.2","pid":14493}}]
[9:09:12 AM]: <== [{"event":"app.start","params":{"appId":"f7f9f43e-4003-4e5f-aff2-f97b7d8e5459","deviceId":"1DD6786B-37D4-4355-AA15-B818A87A18B4","directory":"/Users/dantup/Dev/Google/flutter/examples/flutter_gallery","supportsRestart":true,"launchMode":"run"}}]
[9:09:12 AM]: <== Launching lib/main.dart on iPhone XS Max in debug mode...
[9:09:16 AM]: <== [{"event":"app.progress","params":{"appId":"f7f9f43e-4003-4e5f-aff2-f97b7d8e5459","id":"0","progressId":null,"message":"Running Xcode build..."}}]
[9:09:21 AM]: <== [{"event":"app.progress","params":{"appId":"f7f9f43e-4003-4e5f-aff2-f97b7d8e5459","id":"0","progressId":null,"finished":true}}]
[9:09:21 AM]: <== Xcode build done. 4.8s
[9:09:26 AM]: <== [{"event":"app.debugPort","params":{"appId":"f7f9f43e-4003-4e5f-aff2-f97b7d8e5459","port":52628,"wsUri":"ws://127.0.0.1:52628/ws","baseUri":"file:///Users/dantup/Library/Developer/CoreSimulator/Devices/1DD6786B-37D4-4355-AA15-B818A87A18B4/data/Containers/Data/Application/504526A6-634C-4B7B-B6B5-22DE55D3FE3F/tmp/flutter_gallerybZpreZ/flutter_gallery/"}}]
[9:09:27 AM]: <== [{"event":"app.progress","params":{"appId":"f7f9f43e-4003-4e5f-aff2-f97b7d8e5459","id":"1","progressId":null,"message":"Syncing files to device iPhone XS Max..."}}]
[9:09:30 AM]: <== [{"event":"app.progress","params":{"appId":"f7f9f43e-4003-4e5f-aff2-f97b7d8e5459","id":"1","progressId":null,"finished":true}}]
[9:09:30 AM]: <== [{"event":"app.started","params":{"appId":"f7f9f43e-4003-4e5f-aff2-f97b7d8e5459"}}]
In VS Code, daemon.logMessage
isn't currently surfaced anywhere (though I'll fix this, and make it work similar to Flutter's non-JSON stdout output, going to the debug console), but the app.progress
notifications are used to show the progress of a build/launch in a progress notification:
If we could change webdev daemon's progress notifications (all the ones that appear twice, the second one with "Completed" on the end) to app.progress
, then we'd get the same sort of build notifications for webdev without additional work.