New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[ Breaking Change Request ] Remove Observatory from the Dart VM #50233
Comments
//cc @zanderso |
The |
SGTM. |
CL adding support for |
I'm not sure the timeline is achievable, but otherwise the plan sgtm. I also added flutter/devtools#4711 to the tracker. |
lgtm with the caveat that the performance of devtools is acceptable to the engineers who currently use observatory |
lgtm |
@bkonyi do you find you have enough time to implement this? |
The initial work needed to allow for disabling Observatory by default is already up for review. Once that change lands and |
@bkonyi |
@zanderso I think we'll just need to make a change here in the engine to allow for this option to be set. |
@bkonyi That sounds plausible to me, but you'd be the expert on where and when the new flag needs to be set in the service isolate code. |
Many gaps in functionality between Observatory and DevTools are filed under this tag |
To prepare for the eventual removal of Observatory, we plan on disabling Observatory by default while providing an escape hatch to manually serve the tool for some period of time before completely removing Observatory from the SDK. This change adds flags that can be used to configure whether or not Observatory is served. Currently, '--serve-observatory' is the default behavior, but will be changed to '--no-serve-observatory' once tooling is ready to support the escape hatch behavior. Part of #50233 TEST=run_test.dart Change-Id: Ib6d1e1587d9fbd3c61d4a4c75d90635052835844 Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/267720 Reviewed-by: Siva Annamalai <asiva@google.com> Commit-Queue: Ben Konyi <bkonyi@google.com>
Observatory is being deprecated for Dart 3.0 so it should no longer be referenced in tooling messaging / flags. See dart-lang/sdk#50233
Observatory is being deprecated for Dart 3.0 so it should no longer be referenced in tooling messaging / flags. See dart-lang/sdk#50233
Observatory is being deprecated for Dart 3.0 so it should no longer be referenced in tooling messaging / flags. See dart-lang/sdk#50233
Observatory is being deprecated for Dart 3.0 so it should no longer be referenced in tooling messaging / flags. See dart-lang/sdk#50233
Sorry for my ignorance, will we also remove the |
@bkonyi and @rmacnak-google are we planning on keeping this open until all issues in this tag are resolved? |
Observatory is being deprecated for Dart 3.0 so it should no longer be referenced in tooling messaging / flags. See dart-lang/sdk#50233
I don't know if we'll end up porting everything under that tag as some of the functionality isn't critical / widely used, so we'll need to make a judgement call at some point.
@srawlins definitely not :-) |
CL to disable serving Observatory by default is up for review. |
Thanks @bkonyi. CC: @XilaiZhang and @CaseyHillers as this may impact flutter rolls. |
Observatory can still be enabled by providing `--serve-observatory` or invoking the `_serveObservatory` private service RPC via web socket or HTTP. Related to #50233 TEST=pkg/dartdev/test/commands/run_test Change-Id: I89b000e69bb31c91a9a5386fed1ee590cdafa58c Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/287821 Reviewed-by: Michael Thomsen <mit@google.com> Commit-Queue: Ben Konyi <bkonyi@google.com> Reviewed-by: Siva Annamalai <asiva@google.com>
Observatory can still be enabled by providing `--serve-observatory` or invoking the `_serveObservatory` private service RPC via web socket or HTTP. Related to dart-lang/sdk#50233
This reverts commit edead9c. Reason for revert: We have some flutter framework tests that are breaking, "flutter test should respect --serve-observatory". This will apparently be fixed when flutter/flutter#122419 lands. Original change's description: > [ Observatory ] Disable serving Observatory by default > > Observatory can still be enabled by providing `--serve-observatory` or > invoking the `_serveObservatory` private service RPC via web socket or > HTTP. > > Related to #50233 > > TEST=pkg/dartdev/test/commands/run_test > > Change-Id: I89b000e69bb31c91a9a5386fed1ee590cdafa58c > Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/287821 > Reviewed-by: Michael Thomsen <mit@google.com> > Commit-Queue: Ben Konyi <bkonyi@google.com> > Reviewed-by: Siva Annamalai <asiva@google.com> Change-Id: I994c86cbca9d0eb25e1f9adddeede94c227acad9 Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/288601 Commit-Queue: Siva Annamalai <asiva@google.com> Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Reviewed-by: Zach Anderson <zra@google.com>
Observatory can still be enabled by providing `--serve-observatory` or invoking the `_serveObservatory` private service RPC via web socket or HTTP. Related to dart-lang/sdk#50233
@bkonyi looks like this landed, but got reverted? |
@mit-mit that's correct. We were having issues getting this landed among all the other breaking changes and it was decided this was lower priority to get into 3.0. We're going to target the next stable release instead. |
OK, thanks |
The Observatory developer tooling was developed during the early days of the Dart project to allow for developers to debug, dive into CPU and memory performance characteristics, and inspect program structure of Dart programs. This tool was developed and maintained solely by Dart VM engineers without much input from UX designers, making it powerful for Dart SDK developers but difficult to use by the average Dart developer.
With the development of Dart DevTools by a dedicated team, it no longer makes sense to continue work on Observatory with the associated compatibility and maintenance burdens, especially now that Dart DevTools is at near feature parity with Observatory.
Impact:
Pre-Dart 3.0, users wishing to continue using Observatory will need to pass an
--enable-observatory
flag for Observatory to be served by the VM. For Dart 3.0, this flag will be removed and remaining Observatory users will be required to move to the new Dart DevTools developer tooling.Dart DevTools is at near feature parity with Observatory and should meet the needs of the vast majority of Dart developers. Any missing functionality in DevTools that's critical to an individual's workflow should be documented in a new issue on the DevTools issue tracker.
Proposal:
--enable-observatory
, making Observatory disabled by default by still available.--enable-observatory
flag and remove Observatory completely from the SDK.cc @a-siva @kenzieschmoll @mit-mit
The text was updated successfully, but these errors were encountered: