All tests have been migrated to PubPackageAnalysisServerTest.
Change-Id: Id6156e0a45772e1bf0d2acd9ece04639414442f0
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/242241
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
`diagnostic_listener.dart` is the last unmigrated import of
`common.dart`, which is imported in ~100 files.
`compiler_api.dart` is split to move the `compile` method with
unmigrated dependencies to another file to allow `compiler_api.dart` to
become migrated. Luckily there is only one reference to `compile`.
We no longer allow null `SourceSpan`s and use `SourceSpan.unknown()`
instead.
Added `SpannableWithEntity` as a migrated interface that `HInstruction`
can implement to break the dependency on a large unmigrated ssa library.
Change-Id: I0a5ff6e6c36a34ff55d98f634c671bb8f1fb9e1c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/242161
Reviewed-by: Mayank Patke <fishythefish@google.com>
Commit-Queue: Stephen Adams <sra@google.com>
This fixes https://github.com/dart-lang/sdk/issues/48848
When the base URI is just a filename, then base was empty, and we accidentally
added a / in the first position. This made the deferred URI absolute by
mistake.
Change-Id: I4d6a773f6ef8bfefbbf61417bfe7c005aa5e63ea
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/241990
Reviewed-by: Stephen Adams <sra@google.com>
Commit-Queue: Sigmund Cherem <sigmund@google.com>
Github allows templates to be built in a yaml format.
The current template is built in a query string outside of source control and difficult to update. The updated format provides validation enforcing issue structure and providing ease of creating automations.
Change-Id: Ic9c8b7f13dc67f440cdc827495821ebf162454bd
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/242121
Reviewed-by: Alexander Thomas <athom@google.com>
Commit-Queue: Kevin Chisholm <kevinjchisholm@google.com>
The ICData::AssertInvariantsAreSatisfied() method will grab a snapshot
of the ICData's entrie()s backing store array and does verifications
on it.
Though the place when we check for the last entry (which is a back-ref)
we re-load the entries() array which could be updated at this point.
This causes us to possibly fail an assertion which checks that for empty
ic data arrays it should be a cached empty array.
Closes https://github.com/dart-lang/sdk/issues/48787
TEST=Should fix flaky assertion hit.
Change-Id: I45cf57bd13a7c2e49c395eb25a2f6789c5140bf9
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/242109
Reviewed-by: Alexander Aprelev <aam@google.com>
Commit-Queue: Martin Kustermann <kustermann@google.com>
This change will append the name of the associated function
to the name of FFI trampolines.
Previously the name of all FFI trampolines was "FfiTrampoline",
which made them difficult to keep track of when there was
more than one trampoline (i.e. more than one FFI function).
TEST=Existing
Change-Id: I7b5efa25dc9064d5615309331e2cfeaa01e4c9f6
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/242100
Reviewed-by: Daco Harkes <dacoharkes@google.com>
Commit-Queue: Clement Skau <cskau@google.com>
This CL follows up on
https://dart-review.googlesource.com/c/sdk/+/239668
where parts was left non-working.
Now part files are ignored (i.e. we don't try to split it and add
imports/exports where it isn't supported), and the part declaration(s)
is(/are) kept only in the "main" file.
Change-Id: I63fa8ac8fcf173234a8162297f1c5eb1d94b00da
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/241961
Reviewed-by: Johnni Winther <johnniwinther@google.com>
Commit-Queue: Jens Johansen <jensj@google.com>
From a high level, the experimental invalidation works by comparing the
before and after version of a changed file, checking if the (textual)
outline has changed. If it hasn't it can go ahead with the experimental
invalidation, only recompiling the changed file/library.
Turns out, though, that if a *part* is changed in a
textual-outline-changing-way it is *not* detected, i.e. one can (in a
part) make a change that isn't compatible with (safe) experimental
invalidation, yet experimental invalidation will still be in effect.
A similar issue exists if a mixin is declared in a part file.
This CL fixes the issue.
Change-Id: I150184885164229e6a9e0a6fa86f7c330b3bc3f3
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/241969
Reviewed-by: Johnni Winther <johnniwinther@google.com>
Commit-Queue: Jens Johansen <jensj@google.com>
It makes more sense for Golem to display the benchmark results as a time than as a rate.
Change-Id: Iba262c98e9dc0d07983107966fa9b8d479e1b529
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/242064
Reviewed-by: Alexander Markov <alexmarkov@google.com>
Commit-Queue: Ryan Macnak <rmacnak@google.com>
Checks for late sentinels now behave like null checks and refine the
local on each branch.
Change-Id: I71fdcf50529c52ef82e2cff81425a34174e5c366
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/225320
Reviewed-by: Stephen Adams <sra@google.com>
This option allows the completion position to be an offset from the
start of each token, and plays well in each overlay mode. For the
original content:
```dart
void main() {
foo();
}
```
In OVERLAY_NONE mode, completing on `main`, with `--prefix-length=2`,
we complete at:
```dart
void main() {
^
foo();
}
```
In OVERLAY_REMOVE_TOKEN mode, completing on `main`, with
`--prefix-length=2`, we complete at:
```dart
void ma() {
^
foo();
}
In OVERLAY_REMOVE_REST_OF_FILE mode, completing on `main`, with
`--prefix-length=2`, we complete at:
```dart
void ma
^
```
Change-Id: Id2493777cb38f147f7a2c401a9e53e17561516bc
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/241982
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Samuel Rawlins <srawlins@google.com>
Previously, the 'slowest requests' flag would only track and print the
slowest 5 requests for each category. But this ends up printing many
requests which are not slow at all, and are perfectly reasonable. It is
more interesting to print the slowest results, those in the 90th
percentile.
The limit is set to 100. This is to set a limit on serialization in the
map/reduce system, and a limit on printing to stdout.
Change-Id: I31fde906e227ea195ec25d8c9c2d92569ceb72b7
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/241865
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Samuel Rawlins <srawlins@google.com>
Dead since cf1de7d46c.
TEST=ci
Change-Id: I6dd42a62a8bfc8ff71bae8f1e33930c1bacfe103
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/242040
Reviewed-by: Alexander Markov <alexmarkov@google.com>
Commit-Queue: Ryan Macnak <rmacnak@google.com>
As it is, it is broken if you pass `--help`.
Also, this adds line wrapping for option help text.
Change-Id: Ia1e096eba46b1f4db804f9c1ed771d4e67816ae8
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/242020
Auto-Submit: Samuel Rawlins <srawlins@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
This does not solve all the problems, but might be enough for a
specific problem of analyzing a single file.
Bug: https://github.com/dart-lang/sdk/issues/48832
Change-Id: I02bfbf19fdbd6e8b848efdb76c355363bf2b86eb
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/241983
Reviewed-by: Samuel Rawlins <srawlins@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
This change includes kernel-related changes:
* --compact-async option is added to kernel compilers (front-end
server and gen_kernel). This option disables desugaring of async
and await on kernel AST. Note that 'await for' is still desugared.
* File offset of the 'await' is now written for AwaitExpression nodes
in the kernel binaries (will be used for async stack traces).
* Async/async*/sync* functions and AwaitExpression nodes are supported
in TFA.
Design doc: go/compact-async-await.
TEST=ci
Issue: https://github.com/dart-lang/sdk/issues/48378
Change-Id: I4233086b7434bc48347f4220645b0be5f9133456
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/241842
Reviewed-by: Slava Egorov <vegorov@google.com>
Reviewed-by: Martin Kustermann <kustermann@google.com>
Reviewed-by: Johnni Winther <johnniwinther@google.com>
Commit-Queue: Alexander Markov <alexmarkov@google.com>