Commit Graph

31 Commits

Author SHA1 Message Date
Danny Tuppeny f50975e3b5 [dds] Bump DDS to 5.0.0, use devtools_shared 11.0.0, and support a second DTD URI for web editors
devtools_shared 11.0.0 updates some signatures to use a new DTDInfo class to support both a local + exposed URI for DTD. A new CLI flag `--dtd-exposed-uri` for `devtools server` allows passing this second URI.

The DevTools server will use `--dtd-uri` to connect to DTD itself, but serve `--dtd-exposed-uri` to the frontend.

`--dtd-exposed-uri` is entirely optional and if not supplied, the value from `--dtd-uri` will be used in its place.

Change-Id: I5ab052ff9c4e7b2b186c1592f1ba2d63b7711113
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/383400
Reviewed-by: Ben Konyi <bkonyi@google.com>
Commit-Queue: Kenzie Davisson <kenzieschmoll@google.com>
Reviewed-by: Kenzie Davisson <kenzieschmoll@google.com>
2024-09-11 17:05:09 +00:00
Srujan Gaddam ac038f7e84 [dds] Roll chrome_tag, browser_launcher_rev, and add --use-mock-keychain flag to dds
With this roll, Chrome now triggers a dialog on MacOS requesting
credentials. This results in timeouts for
pkg/dds/test/devtools_server/remote_control_test. To avoid user
input, we use a mock keychain instead. The same change has gone
into browser_launcher_rev, and so we include that commit here.

Bug: https://github.com/dart-lang/sdk/issues/56519
Change-Id: I0e0733b658eb09b0775178e617e5ceb42e184ec4
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/381705
Commit-Queue: Srujan Gaddam <srujzs@google.com>
Reviewed-by: Ben Konyi <bkonyi@google.com>
Reviewed-by: Sigmund Cherem <sigmund@google.com>
2024-08-22 18:17:51 +00:00
Danny Tuppeny ae6ed09fc1 [dds] Add cross-origin-resource-policy to DevTools server to enable WASM when embedded
See https://github.com/flutter/devtools/issues/7856#issuecomment-2147440081

Change-Id: If9d19eef8f8475e3dddb70db55e6b72e0ceb6f08
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/374945
Reviewed-by: Kenzie Davisson <kenzieschmoll@google.com>
Reviewed-by: Ben Konyi <bkonyi@google.com>
Commit-Queue: Ben Konyi <bkonyi@google.com>
2024-07-11 15:59:15 +00:00
Kenzie Schmoll 0b6aff760b Add headers to the DevTools server to enable serving DevTools with wasm.
Bug: https://github.com/flutter/devtools/issues/7856
Change-Id: I854fbaad9c1e477c3218bd159cd1a6db1aae8e74
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/369100
Reviewed-by: Kevin Moore <kevmoo@google.com>
Commit-Queue: Kenzie Davisson <kenzieschmoll@google.com>
Reviewed-by: Ben Konyi <bkonyi@google.com>
2024-06-05 17:26:23 +00:00
Kenzie Schmoll 27648f6b3a Upgrade DDS dependency on devtools_shared to ^9.0.1.
This upgrade requires adapting to breaking changes for the unified_analytics and DevTools extensions logic in `devtools_shared`.

unified_analytics:
- remove the `unified_analytics` dependency from DDS. The DevTools server handler no longer interacts with this package.

DevTools extensions:
- Serve DevTools extensions from their absolute location in the pub cache.

Bug: https://github.com/flutter/devtools/issues/7547
Change-Id: I13e08c48c5335cccbddecebe907ff9dcc337c461
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/362062
Reviewed-by: Ben Konyi <bkonyi@google.com>
Commit-Queue: Kenzie Davisson <kenzieschmoll@google.com>
2024-04-11 16:02:48 +00:00
Kenzie Schmoll c042924d0d Add UnifiedAnalytics service to the Dart Tooling Daemon.
This CL also removes unified analytics code from DDS and DevTools server.

Bug: https://github.com/dart-lang/sdk/issues/55280
Change-Id: I6f1c56cb8dce6f611ee73de7081c0a9cd43187c4
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/360221
Commit-Queue: Kenzie Davisson <kenzieschmoll@google.com>
Reviewed-by: Elias Yishak <eliasyishak@google.com>
Reviewed-by: Ben Konyi <bkonyi@google.com>
2024-04-04 00:20:32 +00:00
Ben Konyi 6eb85949fd [ VM / DDS ] Add --print-dtd-uri flag and launch DTD from the correct snapshot for AOT
This adds support for printing the DTD connection information to stdout
when --print-dtd-uri is passed.

This change also fixes an issue where DDS would fail to spawn an isolate
with the DTD snapshot when DDS was running in AOT mode. This means the
SDK must be shipped with both AppJIT and AOT DTD snapshots, at least
until dartdev is moved to run from AOT.

Fixes https://github.com/dart-lang/sdk/issues/55034

TEST=run_test.dart

Change-Id: I788ef9bfe76297a8d594992a2aac440ed9e2ecac
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/358541
Reviewed-by: Siva Annamalai <asiva@google.com>
Commit-Queue: Ben Konyi <bkonyi@google.com>
Reviewed-by: Kenzie Davisson <kenzieschmoll@google.com>
2024-03-21 19:50:46 +00:00
Kenzie Schmoll 408918d6f5 [dds] Start DTD from DevTools server if it is not already started.
Fixes https://github.com/dart-lang/sdk/issues/54937.

Tested: pkg/dartdev test for `dart devtools` command, and new `dtd_test.dart` in pkg/dds.
Change-Id: I530ba2fe4d5809082378b61c282ba7856974e21e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/354460
Commit-Queue: Kenzie Davisson <kenzieschmoll@google.com>
Reviewed-by: Ben Konyi <bkonyi@google.com>
Reviewed-by: Dan Chevalier <danchevalier@google.com>
2024-03-18 21:50:09 +00:00
Kenzie Schmoll 77ac59ad09 Update package:devtools_shared dep to version 8.0.1
Change-Id: I4f2acded3f990f965ff96813b20a033775f9e87a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/358223
Commit-Queue: Kenzie Davisson <kenzieschmoll@google.com>
Reviewed-by: Ben Konyi <bkonyi@google.com>
2024-03-18 18:16:53 +00:00
Kenzie Schmoll 10306be9d8 [dds] Only initialize analytics when assigning the handler for DevTools server.
Otherwise, `DevToolsUtils.initializeAnalytics()` was getting called even when it was unused (e.g. the g3 case).

Change-Id: I9f911b776f8ea4ba63c1384feb5c1cd73fa18c3c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/354342
Reviewed-by: Elias Yishak <eliasyishak@google.com>
Reviewed-by: Derek Xu <derekx@google.com>
Reviewed-by: Ben Konyi <bkonyi@google.com>
Commit-Queue: Kenzie Davisson <kenzieschmoll@google.com>
2024-02-26 19:21:27 +00:00
eliasyishak 247c3e147a Reland "Add parameter for analytics instance"
This is a reland of commit 0e5542211c

Original change's description:
> Add parameter for analytics instance
>
> R=sstrickl@google.com
>
> Change-Id: I8ef2fe2c757a7625c2e3aa7eba48513e4c2f4e88
> Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/352561
> Reviewed-by: Ben Konyi <bkonyi@google.com>
> Reviewed-by: Kenzie Davisson <kenzieschmoll@google.com>
> Commit-Queue: Kenzie Davisson <kenzieschmoll@google.com>

Change-Id: Ia4b84fe72e235138c81ca58c32a78859804fafae
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/353320
Reviewed-by: Kenzie Davisson <kenzieschmoll@google.com>
Auto-Submit: Elias Yishak <eliasyishak@google.com>
Reviewed-by: Ben Konyi <bkonyi@google.com>
Commit-Queue: Ben Konyi <bkonyi@google.com>
2024-02-21 22:38:50 +00:00
Elias Yishak 53cbcc8c81 Revert "Add parameter for analytics instance"
This reverts commit 0e5542211c.

Reason for revert: breaking google3 tests

Original change's description:
> Add parameter for analytics instance
>
> R=sstrickl@google.com
>
> Change-Id: I8ef2fe2c757a7625c2e3aa7eba48513e4c2f4e88
> Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/352561
> Reviewed-by: Ben Konyi <bkonyi@google.com>
> Reviewed-by: Kenzie Davisson <kenzieschmoll@google.com>
> Commit-Queue: Kenzie Davisson <kenzieschmoll@google.com>

Change-Id: Iec1f2eb0224e8ff8b0375736a96f3986c42cacaa
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/353040
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Reviewed-by: Alexander Thomas <athom@google.com>
Auto-Submit: Elias Yishak <eliasyishak@google.com>
Commit-Queue: Alexander Thomas <athom@google.com>
2024-02-19 08:58:28 +00:00
eliasyishak 0e5542211c Add parameter for analytics instance
R=sstrickl@google.com

Change-Id: I8ef2fe2c757a7625c2e3aa7eba48513e4c2f4e88
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/352561
Reviewed-by: Ben Konyi <bkonyi@google.com>
Reviewed-by: Kenzie Davisson <kenzieschmoll@google.com>
Commit-Queue: Kenzie Davisson <kenzieschmoll@google.com>
2024-02-17 00:09:29 +00:00
Dan Chevalier 03f797a85a Solidify dtd lifecycle
- devtools server can now take the dtd uri as a parameter on startup
   - dtdUri is passed to the server handler so that devtools can request it.
- FileService is implemented inside the Dart Tooling Daemon (dtd_impl)
    - Added FileService.setProjectRoots
    - Added unit tests and rpc exceptions
- on startup dtd now prints { uri, secret } so that the caller has the secret that allows them to call FileService.setProjectRoots

Fixes: https://github.com/dart-lang/sdk/issues/54790

Change-Id: I7a66aca2f8f06f6a611a46c727a9d5c2485fbe3e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/346922
Reviewed-by: Ben Konyi <bkonyi@google.com>
Commit-Queue: Dan Chevalier <danchevalier@google.com>
2024-02-13 16:17:18 +00:00
Tim Maffett cc309f25d5 change 'appsize' url to correct 'app-size' - Fixes #54724
Closes https://github.com/dart-lang/sdk/pull/54725

GitOrigin-RevId: a5b77575f45296e08707e3eca9701a5916419aa1
Change-Id: I6748c19578797443b83ef78fc9ca8d348066a131
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/348187
Commit-Queue: Ben Konyi <bkonyi@google.com>
Reviewed-by: Ben Konyi <bkonyi@google.com>
2024-01-29 14:23:28 +00:00
Ben Konyi 8db4393f1e [ CLI ] Start DDS instance if VM service URI passed to dart devtools doesn't have a DDS connection
This is can happen if a Dart or Flutter application is started in a
non-standard way (e.g., not through the `dart` or `flutter` CLI
tooling). Developers using custom embedders need to use `dart devtools`
to start a DevTools instance, so it's a good opportunity to check for a
DDS instance and launch DDS for the target application if one isn't
found.

Change-Id: I817ca0951c7839e8e9a0d1c78756caa45381cea1
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/346820
Reviewed-by: Kenzie Davisson <kenzieschmoll@google.com>
Commit-Queue: Ben Konyi <bkonyi@google.com>
2024-01-18 16:28:37 +00:00
Danny Tuppeny 5fde2e1534 [dds/devtools_server] Add support for finding VS Code extensions defined in packages
See https://github.com/Dart-Code/Dart-Code/issues/4705

Change-Id: I724c039cd6940dd5939330a6f91f38567db9a179
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/337781
Reviewed-by: Kenzie Davisson <kenzieschmoll@google.com>
Reviewed-by: Ben Konyi <bkonyi@google.com>
Commit-Queue: Kenzie Davisson <kenzieschmoll@google.com>
2023-12-06 20:56:11 +00:00
Devon Carew baff2375c3 [dds] updates to the dart devtools app size cli flags
Change-Id: I049a98452ec5f8e4e322e2cb9687aaa702819937
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/289449
Reviewed-by: Ben Konyi <bkonyi@google.com>
Reviewed-by: Kenzie Davisson <kenzieschmoll@google.com>
Commit-Queue: Devon Carew <devoncarew@google.com>
2023-03-20 17:33:46 +00:00
Elliott Brooks 4ac70a3696 Add 'cache-control: no-store' header to DevTools server
Bug: https://github.com/flutter/devtools/issues/3896
Change-Id: I5cfc2e92716517a044a848339426feb827bb64cb
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/286100
Commit-Queue: Elliott Brooks <elliottbrooks@google.com>
Reviewed-by: Nate Bosch <nbosch@google.com>
Reviewed-by: Ben Konyi <bkonyi@google.com>
2023-03-01 01:13:40 +00:00
Devon Carew 2d15cad9e5 [pkg/dds] use package:lints/recommended.yaml
Change-Id: I05eb1af5dd985ee9f752b8ea409cabc785740472
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/283964
Commit-Queue: Devon Carew <devoncarew@google.com>
Reviewed-by: Ben Konyi <bkonyi@google.com>
2023-02-21 18:30:23 +00:00
Danny Tuppeny 70e8dc6ee4 [devtools] Ping browsers running DevTools before trying to reuse them
It's possible the browser has been closed but is in the SSE timeout period and therefore looks active. Ping it to see if it's actually responsive before deciding whether to reuse it or launch a new window.

Fixes https://github.com/Dart-Code/Dart-Code/issues/3966.

Change-Id: I2fdcba036b8b63f7ab974e8fef5dd565c2917b64
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/257581
Reviewed-by: Kenzie Davisson <kenzieschmoll@google.com>
Commit-Queue: Ben Konyi <bkonyi@google.com>
Reviewed-by: Ben Konyi <bkonyi@google.com>
2022-09-07 17:38:57 +00:00
Ben Konyi cc92eb0a7f [ CLI ] Fix LateInitializationError in DartDev when passed an invalid flag
`log` was previously initialized after argument parsing had already
taken place, which caused an exception when an invalid flag was passed
to DartDev as `log` was referenced in the `dart fix` command
description, which is accessed when building the usage message.

Also fixes a minor test failure related to usage line lengths not being
set correctly for `dart devtools`.

Fixes https://github.com/dart-lang/sdk/issues/49437

Fixed: 49437
Change-Id: Ib367677db5f34d7b6da31e51dbe717c954298ecf
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/251241
Reviewed-by: Ryan Macnak <rmacnak@google.com>
Commit-Queue: Ben Konyi <bkonyi@google.com>
2022-07-12 18:22:42 +00:00
Kenzie Schmoll 2e895ad146 Remove duplicated devtools_shared code from dds.
Fixes https://github.com/flutter/devtools/issues/3571.

Change-Id: I168b44ef0e59a16695ce824499dff774ba46f3d1
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/239800
Reviewed-by: Ben Konyi <bkonyi@google.com>
Commit-Queue: Kenzie Davisson <kenzieschmoll@google.com>
2022-04-01 16:22:36 +00:00
Elliott Brooks 9f4d5b6e4a Set the cache-control header's max-age value to 0s for DevTools.
This ensures that the `index.html` file (which determines whether to
load the new service worker and therefore invalidate the cache) will
always be fresh.

Bug: https://github.com/flutter/devtools/issues/3896
Change-Id: Ib0b6adda66b7dd926f57724f21c2a7c6284bce60
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/237842
Reviewed-by: Ben Konyi <bkonyi@google.com>
Reviewed-by: Kenzie Davisson <kenzieschmoll@google.com>
Commit-Queue: Elliott Brooks <elliottbrooks@google.com>
2022-03-18 22:46:02 +00:00
Kenzie Schmoll 167970dea7 Reland "Add DevTools Server test and test driver to DDS"
This reverts commit d0dff0e9ba.

Reason for revert: fixed broken tests to reland.

Original change's description:
> Revert "Add DevTools Server test and test driver to DDS"
>
> This reverts commit 02bff5bde2.
>
> Reason for revert: broken tests. (e.g. https://ci.chromium.org/ui/p/dart/builders/ci.sandbox/pkg-mac-release/20638/overview)
>
> Original change's description:
> > Add DevTools Server test and test driver to DDS
> >
> > Bug: https://github.com/dart-lang/sdk/issues/48300
> > Change-Id: I3b72274d111489448a482d65eb7cc23a9f263edf
> > Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/233320
> > Reviewed-by: Ben Konyi <bkonyi@google.com>
> > Commit-Queue: Kenzie Davisson <kenzieschmoll@google.com>
>
> TBR=bkonyi@google.com,kenzieschmoll@google.com
>
> Change-Id: Iaca6b34a4e55ddd7b984b49821f3cc95337d696a
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Bug: https://github.com/dart-lang/sdk/issues/48300
> Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/234114
> Reviewed-by: Kenzie Davisson <kenzieschmoll@google.com>
> Commit-Queue: Kenzie Davisson <kenzieschmoll@google.com>

# Not skipping CQ checks because original CL landed > 1 day ago.

Bug: https://github.com/dart-lang/sdk/issues/48300
Change-Id: I60ffd0e8a394353014408530d636c5918e517a59
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/234861
Reviewed-by: Ben Konyi <bkonyi@google.com>
Reviewed-by: Kenzie Davisson <kenzieschmoll@google.com>
Reviewed-by: Siva Annamalai <asiva@google.com>
Reviewed-by: Jake Macdonald <jakemac@google.com>
Commit-Queue: Kenzie Davisson <kenzieschmoll@google.com>
2022-03-09 16:48:54 +00:00
Kenzie Davisson d0dff0e9ba Revert "Add DevTools Server test and test driver to DDS"
This reverts commit 02bff5bde2.

Reason for revert: broken tests. (e.g. https://ci.chromium.org/ui/p/dart/builders/ci.sandbox/pkg-mac-release/20638/overview)

Original change's description:
> Add DevTools Server test and test driver to DDS
>
> Bug: https://github.com/dart-lang/sdk/issues/48300
> Change-Id: I3b72274d111489448a482d65eb7cc23a9f263edf
> Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/233320
> Reviewed-by: Ben Konyi <bkonyi@google.com>
> Commit-Queue: Kenzie Davisson <kenzieschmoll@google.com>

TBR=bkonyi@google.com,kenzieschmoll@google.com

Change-Id: Iaca6b34a4e55ddd7b984b49821f3cc95337d696a
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: https://github.com/dart-lang/sdk/issues/48300
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/234114
Reviewed-by: Kenzie Davisson <kenzieschmoll@google.com>
Commit-Queue: Kenzie Davisson <kenzieschmoll@google.com>
2022-02-23 23:46:44 +00:00
Kenzie Schmoll 02bff5bde2 Add DevTools Server test and test driver to DDS
Bug: https://github.com/dart-lang/sdk/issues/48300
Change-Id: I3b72274d111489448a482d65eb7cc23a9f263edf
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/233320
Reviewed-by: Ben Konyi <bkonyi@google.com>
Commit-Queue: Kenzie Davisson <kenzieschmoll@google.com>
2022-02-23 21:09:04 +00:00
Elliott Brooks a6c96a4707 Allow Dart DevTools to be embedded in Chrome DevTools.
Change-Id: Iff97f9dbc432ed926d668ac8339c32b679e316ed
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/232482
Reviewed-by: Ben Konyi <bkonyi@google.com>
Commit-Queue: Ben Konyi <bkonyi@google.com>
Reviewed-by: Kenzie Davisson <kenzieschmoll@google.com>
2022-02-10 23:52:41 +00:00
Kenzie Schmoll deb9cd31e7 Add missing 'help' option to DevTools server arg parser.
This option existed in the previous impl of devtools server: https://github.com/flutter/devtools/blob/v2.10.0/packages/devtools_server/lib/src/server.dart#L507-L516

Change-Id: Icdc2f1b29e9128531a51fbc471c7b52e761e8f31
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/232122
Reviewed-by: Ben Konyi <bkonyi@google.com>
Commit-Queue: Ben Konyi <bkonyi@google.com>
Commit-Queue: Kenzie Davisson <kenzieschmoll@google.com>
2022-02-08 19:15:56 +00:00
Ben Konyi d1baf327a1 [ DDS / CLI ] Add serveDevToolsWithArgs to devtools_server library
Also moves ArgParser creation for `dart devtools` from dartdev to
devtools_server

Change-Id: I26e0c1a14eeccda163c9e62a240c4bd57a13f382
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/230541
Reviewed-by: Kenzie (Schmoll) Davisson <kenzieschmoll@google.com>
Commit-Queue: Ben Konyi <bkonyi@google.com>
2022-01-28 00:02:01 +00:00
Ben Konyi 3b736b8460 [ package:dds ] Migrate package:devtools_server functionality under package:dds/devtools_server.dart
Will allow for us to remove dependencies on package:devtools_server in
various packages.

Change-Id: I055cc7bb05d5b4ce0071e3f88a71cb9596e76c74
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/228022
Reviewed-by: Kenzie (Schmoll) Davisson <kenzieschmoll@google.com>
Commit-Queue: Ben Konyi <bkonyi@google.com>
2022-01-18 22:42:05 +00:00