This check box displays whether a file is migrating, opting out, or
already migrated. The check box can be clicked to toggle between
migrating and opting out. Clicking the check box updates status in the
navigation tree. Clicking on check boxes updates the status in the
title bar.
Screenshot here: https://screenshot.googleplex.com/9z9v9L5DHhBXzEU.png
In terms of the HTML, a new parent above '.content' div was added:
the '.file' div, which includes a '.title-bar' div above the '.content'
div.
Bug: https://github.com/dart-lang/sdk/issues/44101 and
Change-Id: I021f0dd873119ae801e29faa92e97fe48d03ef3c
https://github.com/dart-lang/sdk/issues/44124
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/174440
Commit-Queue: Samuel Rawlins <srawlins@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
The directory contains tools related to code completion that are not
used to measure completion metrics, so the old name was too specific.
Change-Id: Ie8745901655df6e7b29da645b3b0a48011ca9f10
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/174483
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
This is needed, for example, when renaming an optional named parameter
when a simple 'renameParameter' isn't sufficient. The existing arguments
need to be preserved.
This also removes the 'statements' style of code template because it
wasn't fully supported and isn't currently needed.
Change-Id: I66035c88fcffef77f7de9eedff4efbaf2720ccb1
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/174482
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
An address containing an object header is sometimes interpreted as a object slot due to array truncation and concurrent marking/sweeping. Always accessing it as a word assuages TSAN that it won't be subject to tearing, and allows for the removal of TSAN suppressions from header access. In turn, this will allow TSAN to verify some acquire/release header accesses.
TEST=tsan
Bug: https://github.com/dart-lang/sdk/issues/44091
Change-Id: I7bf6449bf7dfeabd9db76e4bb37456e3be2d5124
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/172861
Commit-Queue: Ryan Macnak <rmacnak@google.com>
Reviewed-by: Alexander Markov <alexmarkov@google.com>
Reviewed-by: Martin Kustermann <kustermann@google.com>
This avoids an apparent hang when visiting the SDK file
`html_dart2js.dart` (which happens anytime the user clicks on a link
like `HtmlElement`).
Bug: https://buganizer.corp.google.com/issues/168936042
Change-Id: I52bb535b6a2ca1a74071e272b1276520048a67bd
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/174441
Reviewed-by: Samuel Rawlins <srawlins@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
We have removed the Angular plugin, so we don't need the API.
Change-Id: Ifba20fba248b690f429b6a532dc5333a25f5e610
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/174400
Reviewed-by: Devon Carew <devoncarew@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
These tests were passing by a wrong reason.
It is not possible to express a recursive typedef anymore.
When we try to instantiate `G` in `typedef F = G Function()`, it
will instantiate `typdef G = F Function()` right now, directly into
the corresponding FunctionType, but because we are in the process
of setting the return type of `F` right now, `G` is not yet referenced
in `F`, so is not referened by `G` itself.
Such recursion is possible during linking, but then we break it.
We still report errors, and resolved AST still has necessary references.
Change-Id: I47b18f80b00edd01268c65c3e1786892ad0d5091
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/174381
Reviewed-by: Samuel Rawlins <srawlins@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
- Ensure the lexer is running at the latest language version. Before, it
would fail to handle files that used extension methods since it didn't
tokenize "extension" correctly.
- Don't visit files that produce parse errors. It was reporting the
errors but still going ahead and parsing them... which actually
worked surprisingly well (yay error recovery) but could lead to
dubious results.
Change-Id: I0e94b5c56efaeb3c2ccde0fbf20c09733aac4998
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/174021
Auto-Submit: Bob Nystrom <rnystrom@google.com>
Commit-Queue: Phil Quitslund <pquitslund@google.com>
Reviewed-by: Phil Quitslund <pquitslund@google.com>
As I see on Golem, now there is a light degradation of performance
for files in the content overlay. This should fix it.
Change-Id: Ic762a646c7dab6cbbd4792cca2c5d3ce1c49edd0
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/174360
Reviewed-by: Samuel Rawlins <srawlins@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
This should be slightly more efficient because we read bytes from
the OS file. We need both bytes (to compute hash) and string (as code).
So, it seems silly to read bytes, decode into string, then again
encode into bytes.
Change-Id: I3ee7c7282cf4f72dc32bcf9b8ffe68899a2ca3c7
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/174341
Reviewed-by: Samuel Rawlins <srawlins@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
A benchmark that is a collection of other benchmarks.
This benchmark has two purposes:
- As a medium sized compilation benchmark
- As a tool for running benchmarks as part of a larger program
This benchmark is not intended to be run for the purpose of generating
benchmark timing results on Golem.
It should be extended over time to include most public benchmarks that
are meaningful on all Dart platforms.
Change-Id: I17f034cfd68d01ff5b4842b89b216fcea0d5bd3c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/170060
Commit-Queue: Stephen Adams <sra@google.com>
Reviewed-by: William Hesse <whesse@google.com>
I saw from 4% to 6% analysis time used by IgnoreValidator constructor.
We did quite a few expensive operations each time, for each file.
Now we will do it once for each bucket.
Change-Id: Ia7c79b777269c9e4c10a9fb9f2864cc7249eacf9
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/174230
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
There is a surge of ConflictingEditException reported, and I don't
know how to reproduce it. We need more details.
Change-Id: I591d6a0e8337258deaf48b4cc56fa9c2f2557104
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/174221
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Also fixes a bug in DartCompletionRequestImpl.
Change-Id: I5110226da6e238dae8e632972b969b0e1b17c94b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/174222
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
If synthesized members have legacy signatures, mark these as
nullable-by-default even when inserted into opt-in classes.
Change-Id: I956912402cae85f6ceb28a73477d44917780a6d5
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/174240
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
Commit-Queue: Johnni Winther <johnniwinther@google.com>
Both ARM and ARM64 variants did not account for the
fact that TransitionNativeToGenerated will clobber
LR on slow path.
TEST=tests/ffi/regress_jump_to_frame_test.dart
Cq-Include-Trybots: luci.dart.try:vm-ffi-android-release-arm-try,vm-ffi-android-release-arm64-try,vm-kernel-linux-release-simarm64-try,vm-kernel-linux-release-simarm-try,vm-kernel-precomp-linux-release-simarm-try,vm-kernel-precomp-linux-release-simarm64-try
Change-Id: I40d48b720b2a7f31ff20903a887295ab2034662c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/173962
Commit-Queue: Vyacheslav Egorov <vegorov@google.com>
Reviewed-by: Martin Kustermann <kustermann@google.com>
This is a preparation CL to enable actually sharing JIT'ed code between
isolates within the same isolate group.
We start with conservative settings, disabling various compiler
optimisations. We will lift those restrictions step-by-step.
Since this is guarded by FLAG_enable_isolate_groups it will not affect
any production code. Only individual tests which opt-in via the flag.
TEST=Existing tests opt'ing into --enable-isolate-groups.
Issue https://github.com/dart-lang/sdk/issues/36097
Change-Id: I05c4151116a8516f92c76b4d57f2c7fb725168ed
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/173970
Reviewed-by: Vyacheslav Egorov <vegorov@google.com>
Change-Id: I6587b1f543cd838bae02155c34d2f83d474b1846
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/173521
Commit-Queue: Ivan Inozemtsev <iinozemtsev@google.com>
Auto-Submit: Ivan Inozemtsev <iinozemtsev@google.com>
Reviewed-by: David Morgan <davidmorgan@google.com>