[VM] Use the incremental compiler to compile sources only when the observatory
server is started.

When the incremental compiler is used it accumulates state that
increases the footprint of the process. This state is needed only
when the 'reload' or 'expression evaluation' functionality is used
in the debugger.

Currently in the VM we do not have a good way of detecting when the
debugger will be used as the vm service observatory functionality
can be turned on dynamically after the program has started.

This CL turns on the incremental compiler only when command line options
are used to start the observatory server. We could run into issues with
'expression evaluation' when the observatory is started dynamically after
the program is loaded.

Change-Id: I18c17698622071bca428018f7fdac1a84b0f195e
Reviewed-on: https://dart-review.googlesource.com/64667
Reviewed-by: Ryan Macnak <rmacnak@google.com>
Commit-Queue: Siva Annamalai <asiva@google.com>
6 files changed
tree: 9bf305b2ff15ad355c4dccd0e6ad9dafac1f34e9
  1. .clang-format
  2. .gitattributes
  3. .gitconfig
  4. .github/
  5. .gitignore
  6. .gn
  7. .mailmap
  8. .packages
  10. BUILD.gn
  11. CHANGELOG.md
  12. DEPS
  15. PRESUBMIT.py
  16. README.dart-sdk
  17. README.md
  19. build/
  20. client/
  21. codereview.settings
  22. dartdoc_options.yaml
  23. docs/
  24. pkg/
  25. runtime/
  26. samples-dev/
  27. samples/
  28. sdk/
  29. tests/
  30. third_party/
  31. tools/
  32. utils/


Dart is an open-source, scalable programming language, with robust libraries and runtimes, for building web, server, and mobile apps.

Using Dart

Visit the dartlang.org to learn more about the language, tools, getting started, and more.

Browse pub.dartlang.org for more packages and libraries contributed by the community and the Dart team.

Building Dart

If you want to build Dart yourself, here is a guide to getting the source, preparing your machine to build the SDK, and building.

There are more documents on our wiki.

Contributing to Dart

The easiest way to contribute to Dart is to file issues.

You can also contribute patches, as described in Contributing.

License & patents