Closes#32961
Change-Id: Ib326ce5c1027ca32b368904e0d57514779ea170b
Reviewed-on: https://dart-review.googlesource.com/53080
Reviewed-by: Jonas Termansen <sortie@google.com>
Commit-Queue: Alexander Thomas <athom@google.com>
In the process, I discovered multitests can't handle imports to
non-existent libraries. So I fixed that and cleaned up the code.
Change-Id: I9a8557e84f91ba7858bdf98f8732cd0ded55aa1a
Reviewed-on: https://dart-review.googlesource.com/52869
Commit-Queue: Bob Nystrom <rnystrom@google.com>
Reviewed-by: Leaf Petersen <leafp@google.com>
Based on https://dart-review.googlesource.com/c/sdk/+/52340, but adds
the necessary plumbing through the test system to pass through
negations to strong and preview-dart-2. Also adds support for those
negations to the analyzer.
Change-Id: I9793ff28bb593d25bbb0a2ed8736b5b53e0a62d8
Reviewed-on: https://dart-review.googlesource.com/52461
Commit-Queue: Janice Collins <jcollins@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
- Drop the `copy_observatory` and pub get steps. Use a checked in
`dart2js.packages` file and build from the source tree.
- Invoke dart2js directly for the build command.
- Use the dart2js executable checked in to the SDK when it is available,
otherwise fall back on the dart VM and dart2js source.
- Manually synthesize a filered `packages` directory out of the source
directories for observatory and it's dependencies
- Remove transformer section of the pubspec since it's unused.
Bug: #32900
Change-Id: I35a19ffc8c3e732c68b65adf4595a6a51e28b94f
Reviewed-on: https://dart-review.googlesource.com/51740
Reviewed-by: Zach Anderson <zra@google.com>
Commit-Queue: Nate Bosch <nbosch@google.com>
This reverts commit 3e1335edc3.
Reason for revert: crbug.com/836287 is resolved for Windows builders.
Original change's description:
> [infra] Temporarily remove Windows SDK builder from CQ
>
> TBR=sortie@google.com
>
> Bug: crbug.com/836287
> Change-Id: I3ec3eb378329f073afca0d1c30e0bd6425e9db00
> Reviewed-on: https://dart-review.googlesource.com/52450
> Reviewed-by: Alexander Thomas <athom@google.com>
TBR=sortie@google.com,athom@google.com
Change-Id: I17a47c053baf9a8e24cd280a28cd05ad9cb0cc66
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: crbug.com/836287
Reviewed-on: https://dart-review.googlesource.com/52480
Reviewed-by: Alexander Thomas <athom@google.com>
Commit-Queue: Alexander Thomas <athom@google.com>
build.py was only forwarding to ninja.py, so this CL just copies
ninja.py over build.py and removes ninja.py.
Change-Id: I7b13c8fb17dbc05825c35b3d806cd950bf1b953e
Reviewed-on: https://dart-review.googlesource.com/51520
Reviewed-by: Alexander Thomas <athom@google.com>
Commit-Queue: Zach Anderson <zra@google.com>
This includes Fasta, tools and observatory, so the checked-in SDK must
have the lower-case constants.
Change-Id: I8380ad041ad058f7d02ae19caccfecd434d13d75
Reviewed-on: https://dart-review.googlesource.com/50201
Commit-Queue: Lasse R.H. Nielsen <lrn@google.com>
Reviewed-by: Leaf Petersen <leafp@google.com>
Update the README to say that linux and macos use the 64-bit SDK
and windows uses the 32-bit SDK.
Change-Id: Id98d6aa49ed0a486aa8553b4d08f76a2462fb6b7
Reviewed-on: https://dart-review.googlesource.com/50503
Commit-Queue: William Hesse <whesse@google.com>
Reviewed-by: Alexander Thomas <athom@google.com>
R=sra@google.com,sigmund@google.com
Change-Id: I2f5ccae15bcd993ab1e15ab556a25d6e0cd1d450
Reviewed-on: https://dart-review.googlesource.com/50504
Reviewed-by: Stephen Adams <sra@google.com>
Commit-Queue: Terry Lucas <terry@google.com>
* Preserve empty lines in the file header.
* Add empty entry to the tool's newly created sections.
* Remove extra empty line at the end of the file.
Change-Id: I271583774d5f5497025a9d85bcadf8b0b9e39e81
Reviewed-on: https://dart-review.googlesource.com/37600
Commit-Queue: Alexander Thomas <athom@google.com>
Reviewed-by: William Hesse <whesse@google.com>
+ and --force flag to always analysis past results (slower)
Change-Id: I9df760b61cfb71ecdf9a4b69d256895812f2eff1
Reviewed-on: https://dart-review.googlesource.com/50500
Commit-Queue: Johnni Winther <johnniwinther@google.com>
Reviewed-by: Alexander Thomas <athom@google.com>
This reverts commit 7594c1543f.
Reason for revert: https://crbug.com/830533 has been fixed and the
windows bots are back again.
Original change's description:
> [infra] Temporarily disable Windows SDK builder on CQ
>
> TBR=whesse@google.com
>
> Change-Id: I348d14b021fc7fc859dec39e88de4e3876385c7a
> Reviewed-on: https://dart-review.googlesource.com/50180
> Reviewed-by: Alexander Thomas <athom@google.com>
TBR=whesse@google.com,athom@google.com
Change-Id: I50c24d65a96f8f45b0ee2b821176a00c61998590
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://dart-review.googlesource.com/50241
Reviewed-by: Alexander Thomas <athom@google.com>
Commit-Queue: Alexander Thomas <athom@google.com>
Change-Id: Ib4e53bba660b01453506d493058f967d13dd259e
Reviewed-on: https://dart-review.googlesource.com/50222
Reviewed-by: Jonas Termansen <sortie@google.com>
Commit-Queue: Alexander Thomas <athom@google.com>
"=Object" was inacurate and contradicted the inferred type <Function> in strong mode.
Change-Id: Ibee4351357dde4aaacf95ff7265cd335fc5d06ea
Reviewed-on: https://dart-review.googlesource.com/49832
Commit-Queue: Sigmund Cherem <sigmund@google.com>
Reviewed-by: Stephen Adams <sra@google.com>
The buildername has changed and the builder is now based on the test matrix.
TBR=whesse@google.com
Change-Id: Iedbabd094fdd8b0e441d726a4c62b9c7894bb59c
Reviewed-on: https://dart-review.googlesource.com/49506
Reviewed-by: Alexander Thomas <athom@google.com>
test.py ignores RuntimeError, MissingRuntimeError, and Timeout when the
runtime is "none". Previously, the status update tool would attempt to fix
these "unexpected passes".
Change-Id: I73c15fdc7e18aa29d5553e58b6b4e65ec07c1246
Reviewed-on: https://dart-review.googlesource.com/49461
Reviewed-by: William Hesse <whesse@google.com>
These were ending up in the archive only in Fuchsia tree.
Change-Id: I8979663c596831e99eec764046e9b57bbf15f01b
Reviewed-on: https://dart-review.googlesource.com/48889
Reviewed-by: Zach Anderson <zra@google.com>
This disables most runtime features of dart:isolate, similar to dart:io.
For now, this supports `new ReceivePort()` and `ReceivePort.close` as
those are used by async tests to keep the Dart VM alive. Those are
no-ops in DDC. Also removes most of dart:_isolate_helper, except for
the JS API that's used to bootstrap DDC `main()`.
Change-Id: I84eab6cd39d05a70a6afe982e952076ddaaa8c0f
Reviewed-on: https://dart-review.googlesource.com/45754
Commit-Queue: Jenny Messerly <jmesserly@google.com>
Reviewed-by: Vijay Menon <vsm@google.com>
The http_server in the test.py scripts uses package_resolver, which
uses 10 packages from third_party/pkg and third_party/pkg_tested.
Change-Id: I1e9ca660b9bd0a6270bcc8e4121da6a3bf9713bd
Reviewed-on: https://dart-review.googlesource.com/47781
Commit-Queue: William Hesse <whesse@google.com>
Reviewed-by: Sigmund Cherem <sigmund@google.com>
Reviewed-by: Alexander Thomas <athom@google.com>
Change-Id: I7ab8e989e1e2038565e1d04a1c8f8ce880328ed8
Reviewed-on: https://dart-review.googlesource.com/47500
Reviewed-by: Peter von der Ahé <ahe@google.com>
Reviewed-by: Alexander Markov <alexmarkov@google.com>
Reviewed-by: Zach Anderson <zra@google.com>
related #32619
Change-Id: I0fc20f21cf3a6e231e0f3d962f139fd072acf3ab
Reviewed-on: https://dart-review.googlesource.com/47540
Reviewed-by: Ryan Macnak <rmacnak@google.com>
Commit-Queue: Zach Anderson <zra@google.com>
Change-Id: I84223c57dcbc74d9e5ba7d2d977fe9d5f6d686dc
Reviewed-on: https://dart-review.googlesource.com/46900
Reviewed-by: Erik Ernst <eernst@google.com>
Commit-Queue: William Hesse <whesse@google.com>
Change-Id: I1a3cc03fba9783807fa637a9d42fdbad68ee7686
Reviewed-on: https://dart-review.googlesource.com/31040
Commit-Queue: Peter von der Ahé <ahe@google.com>
Reviewed-by: Kevin Millikin <kmillikin@google.com>
This is used (at least temporarily) for unblocking other P0 changes.
Change-Id: I002af7cfe6384f8813646d5c488a2cf2e58673a5
Reviewed-on: https://dart-review.googlesource.com/46541
Reviewed-by: Vyacheslav Egorov <vegorov@google.com>
The new front end builders will continue to run them.
Change-Id: Iffd5af76bd3a082256ea4fb146981737462938f9
Reviewed-on: https://dart-review.googlesource.com/46042
Commit-Queue: Alexander Thomas <athom@google.com>
Reviewed-by: William Hesse <whesse@google.com>
Reviewed-by: Peter von der Ahé <ahe@google.com>
Change-Id: I1b4707826c00144da3190e75e19870b7e39acbf3
Reviewed-on: https://dart-review.googlesource.com/46065
Commit-Queue: Peter von der Ahé <ahe@google.com>
Reviewed-by: William Hesse <whesse@google.com>
This change is needed before we turn on the CFE by default in dart2js.
R=whesse@google.com,athom@google.com
Change-Id: I2868d2dcef82d95456a56e809fe90e28dc698437
Reviewed-on: https://dart-review.googlesource.com/45640
Reviewed-by: Alexander Thomas <athom@google.com>
Commit-Queue: Sigmund Cherem <sigmund@google.com>
The changes to the CQ bot should take effect immediately. The changes
to the other bots will take effect once those bots are switched over
to use the test matrix.
Change-Id: Ibfe59817a11f730fd1847cdc60b3244b4a71a480
Reviewed-on: https://dart-review.googlesource.com/45300
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
These are a couple of cases where inlining differs from the previous
version and makes a difference in angular code.
Change-Id: Ibc8ba0d720b8bb49481c41e1332fc6a4a0292d9d
Reviewed-on: https://dart-review.googlesource.com/44701
Reviewed-by: Sigmund Cherem <sigmund@google.com>
Commit-Queue: Stephen Adams <sra@google.com>
Update the generated `dart.rb` formula file to fix:
```
Warning: Calling <<-EOS.undent is deprecated!
Use <<~EOS instead.
/usr/local/Homebrew/Library/Taps/dart-lang/homebrew-dart/dart.rb:72:in `caveats'
Please report this to the dart-lang/dart tap!
```
being reported by `brew`.
Fixes https://github.com/dart-lang/homebrew-dart/issues/48
Credit for original patch to @fsouza:
06b76e0935Closes#32346https://github.com/dart-lang/sdk/pull/32346
GitOrigin-RevId: 938a696caea21eda193375ad4cce5aab0e7b5e71
Change-Id: I757647a7ef0a373cb0258f0fcf03f89849aeba5e
Reviewed-on: https://dart-review.googlesource.com/44100
Reviewed-by: Kevin Moore <kevmoo@google.com>
Reviewed-by: William Hesse <whesse@google.com>
The current behavior is to - for instance - create all multitests in a
suite (e.g. language_2) up front, despite having a test-selector that
restricts it a lot.
This CL skips tests faster (i.e. before creating multitests).
Example:
Now:
$ time tools/test.py -m release -a x64 -c dartk --strong language_2/lalala
Test configuration: dartk_vm_release_x64_strong
real 0m0.598s
user 0m0.760s
sys 0m0.116s
Before:
$ time tools/test.py -m release -a x64 -c dartk --strong language_2/lalala
Test configuration: dartk_vm_release_x64_strong
real 0m1.796s
user 0m2.156s
sys 0m0.344s
Change-Id: Ib3c254d4e18c8ed4e6c66f7e25f384ce6b652f02
Reviewed-on: https://dart-review.googlesource.com/44061
Reviewed-by: William Hesse <whesse@google.com>
Commit-Queue: Jens Johansen <jensj@google.com>
dart:isolate was used for the `Future<Isolate>` return type of
spawnDomUri, which is an unimplemented experimental method. This method
now returns `Future`.
This change helps dart4web disable support for dart:isolate (#30538)
Change-Id: Ida87c2a27ac33d1b9a14feb7dd6d306a546a0aaf
Reviewed-on: https://dart-review.googlesource.com/43860
Reviewed-by: Terry Lucas <terry@google.com>
It has been running as expected this week. It has been red, but normally because
of actual breakages that will be prevented once this is on by default.
R=efortuna@google.com
CC=athom@google.com,whesse@google.com
Change-Id: I85a406d30b9c65274104e4a1b33f9af6a18b3616
Reviewed-on: https://dart-review.googlesource.com/43493
Reviewed-by: Emily Fortuna <efortuna@google.com>
Reviewed-by: Sigmund Cherem <sigmund@google.com>
Event type parameters instead of dynamic.
- Fixed missing interceptor in dart2js for MutationEvent (even though its deprecated
and should not be used). The MutationEvent is created when a node is deleted. Enabled
Dart MutationEvent class generation.
- Fixed/re-enabled all indexed_db tests to run and pass successfully.
Stephen please take a look - target in VersionChangeEvent is a final field, per your suggestion,
instead of a getter. The MutationEvent is returned in the browser and without the MutationEvent
Dart class the error:
Uncaught TypeError: t1.get$target is not a function
R=vsm@google.com,gabrielchow@google.com,sra@google.com
Change-Id: Ic36aea8c33b4263a32ff9d047ba3e6b979e03b10
Reviewed-on: https://dart-review.googlesource.com/41569
Reviewed-by: Stephen Adams <sra@google.com>
Reviewed-by: Vijay Menon <vsm@google.com>
Commit-Queue: Terry Lucas <terry@google.com>
This updates the checked-in dartfmt to use dart_style 1.0.10.
Change-Id: I2c8ec63bd6634e3cb1b220078ccbca4a1e85d7c6
Reviewed-on: https://dart-review.googlesource.com/43344
Reviewed-by: Jonas Termansen <sortie@google.com>
Commit-Queue: William Hesse <whesse@google.com>
This is take 2 with appropriate status files updates or fixes to the
tests.
This reverts commit 4925ed38ac.
Change-Id: I133b9ae307f0feed1b72ec5a0131facdc51ad4e9
Reviewed-on: https://dart-review.googlesource.com/41600
Commit-Queue: Siva Chandra <sivachandra@google.com>
Reviewed-by: Ryan Macnak <rmacnak@google.com>
This is blocked on first landing the change to the dart2js_swarming recipe.
R=whesse@google.com,athom@google.com
Change-Id: Id7c26499cbb3d5337d6c72c10a688dd22d60dd78
Reviewed-on: https://dart-review.googlesource.com/41580
Commit-Queue: Sigmund Cherem <sigmund@google.com>
Reviewed-by: William Hesse <whesse@google.com>
Reviewed-by: Alexander Thomas <athom@google.com>
This reverts commit 4678cdaa24.
Reason for revert: This broke gcc arm builds.
Original change's description:
> [infra] Use wheezy sysroot for local builds on linux.
>
> I had though that this is how things already worked, but it wasn't.
>
> Change-Id: Iaa6b4e7d9e791f3fad29431c5715fcb19df8a76b
> Reviewed-on: https://dart-review.googlesource.com/40840
> Reviewed-by: Siva Annamalai <asiva@google.com>
> Commit-Queue: Zach Anderson <zra@google.com>
TBR=rmacnak@google.com,zra@google.com,asiva@google.com
Change-Id: I013fe2d3736acdcb8ce7d1ec959419f20aa0aa54
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://dart-review.googlesource.com/41340
Reviewed-by: Zach Anderson <zra@google.com>
This reverts commit 41eef1cbb5.
Reason for revert: Backing out to revert:
[infra] Use wheezy sysroot for local builds on linux.
Original change's description:
> [infra] Fix asan build
>
> Change-Id: Ib5b1efbf12bdf7455e2c9d32c37ce5a06ed3195b
> Reviewed-on: https://dart-review.googlesource.com/41000
> Reviewed-by: Zach Anderson <zra@google.com>
> Reviewed-by: Ryan Macnak <rmacnak@google.com>
> Commit-Queue: Zach Anderson <zra@google.com>
TBR=rmacnak@google.com,zra@google.com
Change-Id: Ica54f78a98784aa7e1b40f8c7e113298606255c9
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://dart-review.googlesource.com/41341
Reviewed-by: Zach Anderson <zra@google.com>
Commit-Queue: Zach Anderson <zra@google.com>
This reverts commit 3e967d3d76.
Reason for revert: <INSERT REASONING HERE>
Original change's description:
> Create isolate from the platform kernel when running VM tests under dartk.
>
> Status of tests which now start failing has been updated.
>
> Ability to run the vm tests in strong mode has also been added. The
> status of tests which fail in strong mode will be updated when the vm
> tests are moved under the strong mode tests on the bots.
>
> Change-Id: I95f94c09dd0ebbf1fe661ee1f6e0c3e7b07509bd
> Reviewed-on: https://dart-review.googlesource.com/40642
> Commit-Queue: Siva Chandra <sivachandra@google.com>
> Reviewed-by: Siva Annamalai <asiva@google.com>
TBR=sivachandra@google.com,asiva@google.com
Change-Id: I6144bbe882cdf56ee6be3132c6f9dec2cbafcb47
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://dart-review.googlesource.com/41026
Reviewed-by: Siva Annamalai <asiva@google.com>
Commit-Queue: Siva Annamalai <asiva@google.com>
Status of tests which now start failing has been updated.
Ability to run the vm tests in strong mode has also been added. The
status of tests which fail in strong mode will be updated when the vm
tests are moved under the strong mode tests on the bots.
Change-Id: I95f94c09dd0ebbf1fe661ee1f6e0c3e7b07509bd
Reviewed-on: https://dart-review.googlesource.com/40642
Commit-Queue: Siva Chandra <sivachandra@google.com>
Reviewed-by: Siva Annamalai <asiva@google.com>
I had though that this is how things already worked, but it wasn't.
Change-Id: Iaa6b4e7d9e791f3fad29431c5715fcb19df8a76b
Reviewed-on: https://dart-review.googlesource.com/40840
Reviewed-by: Siva Annamalai <asiva@google.com>
Commit-Queue: Zach Anderson <zra@google.com>
Change-Id: I534d283d7f604d0f0e686dc23606e81f665ec5e4
Reviewed-on: https://dart-review.googlesource.com/40527
Reviewed-by: Aske Simon Christensen <askesc@google.com>
Commit-Queue: Peter von der Ahé <ahe@google.com>
Change-Id: If98db1948e21c43eed60c7e1ee18c9fff61be88c
Reviewed-on: https://dart-review.googlesource.com/40540
Commit-Queue: Peter von der Ahé <ahe@google.com>
Commit-Queue: William Hesse <whesse@google.com>
Reviewed-by: William Hesse <whesse@google.com>
* Send fewer files to shards by not including co19_2 in the file set.
Change-Id: I317a8fc44cf60e0489e23514cf9bf119afa827ee
Reviewed-on: https://dart-review.googlesource.com/39941
Commit-Queue: Alexander Thomas <athom@google.com>
Reviewed-by: William Hesse <whesse@google.com>
This change helps in confining flag manipulation to just the embedder.
When we are ready to turn all dart 2 flags to true by default, the
change can be confined to just the VM.
Change-Id: I4ac550c331b1f236a2bd9d0453b7c567eb0c05d3
Reviewed-on: https://dart-review.googlesource.com/38881
Commit-Queue: Siva Chandra <sivachandra@google.com>
Reviewed-by: Siva Annamalai <asiva@google.com>
Change-Id: I9ff39eae6cf6bcd9aad59a8320d6a665e480182a
Reviewed-on: https://dart-review.googlesource.com/38580
Commit-Queue: Alexander Thomas <athom@google.com>
Reviewed-by: William Hesse <whesse@google.com>
Changes signature of Iterable.singleWhere.
Makes LinkedHashMap no longer be a HashMap.
Change-Id: I7a12fea533d42b0fc8357086649df38ad01f3cdd
Reviewed-on: https://dart-review.googlesource.com/39140
Commit-Queue: Leaf Petersen <leafp@google.com>
Reviewed-by: William Hesse <whesse@google.com>
Reviewed-by: Leaf Petersen <leafp@google.com>
Reviewed-by: Lasse R.H. Nielsen <lrn@google.com>
This change shifts logic for invoking Dart scripts during the build
from a couple of python scripts to a new template called dart_action().
Change-Id: Ic0818122cd7317cbd22a7255d880fe8f87271b7e
Reviewed-on: https://dart-review.googlesource.com/39260
Commit-Queue: Zach Anderson <zra@google.com>
Reviewed-by: Ryan Macnak <rmacnak@google.com>
Change-Id: I4c7f7c7b39e07eee42b4dd5375fb855d3348ac49
Reviewed-on: https://dart-review.googlesource.com/39121
Commit-Queue: Peter von der Ahé <ahe@google.com>
Reviewed-by: William Hesse <whesse@google.com>
This reverts commit 0b59f24f97.
Reason for revert: Creates crashes in dart2js with kernel, see
https://luci-milo.appspot.com/buildbot/client.dart/dart2js-linux-d8-minified-1-5-be/9751
Original change's description:
> New methods on Iterable, List, Set, Queue, Map.
> Changes signature of Iterable.singleWhere.
> Makes LinkedHashMap no longer be a HashMap.
>
> Change-Id: Ibd7e56e1ac03cb9fb10d19d1328d452fcd06d89f
> Reviewed-on: https://dart-review.googlesource.com/32541
> Commit-Queue: Lasse R.H. Nielsen <lrn@google.com>
> Reviewed-by: Leaf Petersen <leafp@google.com>
TBR=lrn@google.com,leafp@google.com
Change-Id: Iab904f5885a5213ae2e16ef496eed0b6843185f3
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://dart-review.googlesource.com/39060
Reviewed-by: William Hesse <whesse@google.com>
* Prevent autofixing tests across suites.
* Handle invalid input when selecting files.
* Only display sections in files that apply to the failing test.
Change-Id: Ia7f22bdf29901af05742e461ca009f2e3a4a3e37
Reviewed-on: https://dart-review.googlesource.com/37400
Reviewed-by: William Hesse <whesse@google.com>
Changes signature of Iterable.singleWhere.
Makes LinkedHashMap no longer be a HashMap.
Change-Id: Ibd7e56e1ac03cb9fb10d19d1328d452fcd06d89f
Reviewed-on: https://dart-review.googlesource.com/32541
Commit-Queue: Lasse R.H. Nielsen <lrn@google.com>
Reviewed-by: Leaf Petersen <leafp@google.com>
With the old implementation, looking up the expectations for a single
test was O(n) in the number of status file entries in all status files
(!). That means getting the status of m tests was O(n * m). :(
This parses entry paths into a tree and only traverses the branches of
that the test patch matches. On my script that determines the
expectation of every test on every configuration, it changes the runtime
from ~30s to ~1.5.
On my laptop, this change also takes this:
time ./tools/test.py -m release --list -c dartdevc language_2
From about ~4.5s to ~3.5.
Storing the expectations in a more structured way also opens the door
to some other changes we could do:
- Separate out the configuration from ExpectationSet so that you can
use a single ExpectationSet for multiple configurations.
- Determining which status entries are pointless because they are
covered by a similar expectation higher up the file system tree.
- Determining which status entries collide and hit the same test.
Change-Id: I121bca34b68e1e6bb45edb59bd3cfe95d37e6bef
Reviewed-on: https://dart-review.googlesource.com/38382
Commit-Queue: Bob Nystrom <rnystrom@google.com>
Reviewed-by: William Hesse <whesse@google.com>
Change-Id: I0155868d1311d3ab21660881ef36f8f6ceafe24e
Reviewed-on: https://dart-review.googlesource.com/37980
Reviewed-by: William Hesse <whesse@google.com>
Commit-Queue: Alexander Thomas <athom@google.com>
Change-Id: Ie93900b32e86d67c2928b38030434509ab2fc5ec
Reviewed-on: https://dart-review.googlesource.com/38121
Reviewed-by: Alexander Thomas <athom@google.com>
Commit-Queue: William Hesse <whesse@google.com>
This is a branch of co19 tests where the tests have been
made strong mode compliant. A co19_2_analyzer.status file
has been added with the current statuses of the tests when
run on dartanalyzer --strong. We expect more Dart 2 configurations
to start running these tests and adding status files.
Change-Id: I22077272707620b92dd1092c38bbb4f3d5964493
Reviewed-on: https://dart-review.googlesource.com/37743
Reviewed-by: Paul Berry <paulberry@google.com>
Reviewed-by: Alexander Thomas <athom@google.com>
Dart 2 has no notion of "checked mode", so a failed assertion in a
const constructor should always be a compile error.
Change-Id: I02227c03613346918de1e3a7f7c70d209a940b90
Reviewed-on: https://dart-review.googlesource.com/37647
Reviewed-by: Leaf Petersen <leafp@google.com>
This reverts commit c5306595f4, which updated
the status for linux only, and updates it for all operating systems instead.
It also fixes a minor error in the status update tools.
Change-Id: I556dff775f221b872c5cea27b7ed5a0088d378a5
Reviewed-on: https://dart-review.googlesource.com/37261
Reviewed-by: Alexander Thomas <athom@google.com>
test.py looks at the status code to find out if a test crashed or not.
On linux everything < 0 is a crash, but on Windows a bit pattern is
in play.
It is unclear why this is the case, but some test currently 'Fail'
(instead of the expected 'Crash') on Windows because of exit code
-1073740791 (aka 3221226505 aka 0xC0000409 aka
STATUS_STACK_BUFFER_OVERRUN
(https://msdn.microsoft.com/en-us/library/cc704588.aspx)) indicating
that something isn't quite right with the crash-sniffing on Windows.
This CL changes it to indicate a crash if the exit-code is "0xC0...",
"0x80..." or "0x40..." as listed by
https://msdn.microsoft.com/en-us/library/cc704588.aspx.
Change-Id: I6c692173c3c3b5fb6c857a55a739d8f136d662bf
Reviewed-on: https://dart-review.googlesource.com/36261
Reviewed-by: Johnni Winther <johnniwinther@google.com>
Commit-Queue: Jens Johansen <jensj@google.com>
This reverts commit 87a009422e.
Reason for revert: Doesn't cover 0x80 and 0x40. Upcomming CL will do that.
Original change's description:
> [test.py] Refactor and change crash-sniffing
>
> test.py looks at the status code to find out if a test crashed or not.
> On linux everything < 0 is a crash, but on Windows a bit pattern is
> in play.
> It is unclear why this is the case, but some test currently 'Fail'
> (instead of the expected 'Crash') on Windows because of exit code
> -1073740791 (aka 3221226505 aka 0xC0000409 aka
> STATUS_STACK_BUFFER_OVERRUN
> (https://msdn.microsoft.com/en-us/library/cc704588.aspx)) indicating
> that something isn't quite right with the crash-sniffing on Windows.
>
> This CL changes it to indicate a crash if the exit-code is "0xC00..." as
> this is a "NTSTATUS code" (which must mean crash) according to
> https://blogs.msdn.microsoft.com/joshpoley/2011/06/13/common-process-termination-values/.
>
> Change-Id: Ie7e1a00b3b870ea176dbdc4db41dc458e61e9a28
> Reviewed-on: https://dart-review.googlesource.com/36240
> Reviewed-by: Johnni Winther <johnniwinther@google.com>
> Commit-Queue: Jens Johansen <jensj@google.com>
TBR=jensj@google.com,johnniwinther@google.com
Change-Id: Iba1d3e1aa1c7525e374e2d0763926b13a67169ad
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://dart-review.googlesource.com/36260
Reviewed-by: Jens Johansen <jensj@google.com>
Commit-Queue: Jens Johansen <jensj@google.com>
test.py looks at the status code to find out if a test crashed or not.
On linux everything < 0 is a crash, but on Windows a bit pattern is
in play.
It is unclear why this is the case, but some test currently 'Fail'
(instead of the expected 'Crash') on Windows because of exit code
-1073740791 (aka 3221226505 aka 0xC0000409 aka
STATUS_STACK_BUFFER_OVERRUN
(https://msdn.microsoft.com/en-us/library/cc704588.aspx)) indicating
that something isn't quite right with the crash-sniffing on Windows.
This CL changes it to indicate a crash if the exit-code is "0xC00..." as
this is a "NTSTATUS code" (which must mean crash) according to
https://blogs.msdn.microsoft.com/joshpoley/2011/06/13/common-process-termination-values/.
Change-Id: Ie7e1a00b3b870ea176dbdc4db41dc458e61e9a28
Reviewed-on: https://dart-review.googlesource.com/36240
Reviewed-by: Johnni Winther <johnniwinther@google.com>
Commit-Queue: Jens Johansen <jensj@google.com>
Change-Id: I4b6b321fbf6522f81844018c787228e05141a9a4
Reviewed-on: https://dart-review.googlesource.com/35200
Commit-Queue: Alexander Thomas <athom@google.com>
Reviewed-by: William Hesse <whesse@google.com>
And so there is no need to maintain status files for this platform.
R=whesse@google.com
Change-Id: Ie70e4b7308cfd9b1b179b2d1eeeb8f36dd1a62dc
Reviewed-on: https://dart-review.googlesource.com/34824
Commit-Queue: Erik Corry <erikcorry@google.com>
Reviewed-by: William Hesse <whesse@google.com>
- I beleive create_snapshot.dart is no longer in use: it was replaced by
create_snapshot_entry + GN application snapshot rules.
- utils_wrapper seems to be something really historical (maybe we thought we
were going to only have a single wrapper for all of our tools back in the
day). The only use of it is to track build dependencies in test.py, which I
think we can do by directly using dart2js.dart.snapshot instead.
Change-Id: I6e32403eb8c5d40f0b58e48ae5ff6fb60fd855b3
Reviewed-on: https://dart-review.googlesource.com/34923
Reviewed-by: Bob Nystrom <rnystrom@google.com>
Reviewed-by: Stephen Adams <sra@google.com>
Commit-Queue: Sigmund Cherem <sigmund@google.com>
This makes it easier to run DDC tests, and fixes a bug where DDC+Kernel
tests could be run without setting the strong mode flag.
Change-Id: I7b0632d903050c7385c553ba8d4562062084df28
Reviewed-on: https://dart-review.googlesource.com/34024
Reviewed-by: Bob Nystrom <rnystrom@google.com>
Commit-Queue: Jenny Messerly <jmesserly@google.com>
Otherwise, files calculated by ninja to be clean are deleted, but
not rebuilt.
related #31774
Change-Id: I5f0c2a3f6b06de20195d8a3b7320dd59df38fbdb
Reviewed-on: https://dart-review.googlesource.com/33700
Reviewed-by: Vijay Menon <vsm@google.com>
Commit-Queue: Zach Anderson <zra@google.com>
This also adds the missing vm-kernel opt-counter builder.
Bug: https://github.com/dart-lang/sdk/issues/31753
Change-Id: I0199218f83d227cfc52505c213d7b689acd9c43e
Reviewed-on: https://dart-review.googlesource.com/31984
Commit-Queue: Alexander Thomas <athom@google.com>
Reviewed-by: William Hesse <whesse@google.com>
Reviewed-by: Martin Kustermann <kustermann@google.com>
After Clang 6.0, changing the value of a single string can change the
order of symbols in the .rodata section. This confuses Golem's
checks for the equivalence of two binaries.
This change adds a GN flag to omit the git hash and commit time from
the Dart VM's version string to avoid re-running Golem benchmarks on
commits where the only VM change is in the version string.
To use it, pass --gn-args="dart_version_git_info=false" to gn.py
Change-Id: I8134714d50e3c9b6dae750a515dc3c2228d76b53
Reviewed-on: https://dart-review.googlesource.com/33000
Reviewed-by: Siva Annamalai <asiva@google.com>
Commit-Queue: Zach Anderson <zra@google.com>
This looks like it was included in
a922e51fed by mistake, and it's
cluttering up the output of test runs.
Change-Id: I38227ee014009909a7e45a0d5db696dba277c6c3
Reviewed-on: https://dart-review.googlesource.com/32920
Reviewed-by: William Hesse <whesse@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
This reverts commit 8ee7a97651.
Reason for revert: lld optimization level -Wl,-O1 appears to either
have a regression or to confuse Golem binary comparison tool.
Original change's description:
> [infra] Roll clang toolchain forward
>
> Change-Id: I41afe48f2fdc056436b58dc8158c62e9207cc43f
> Reviewed-on: https://dart-review.googlesource.com/32140
> Commit-Queue: Zach Anderson <zra@google.com>
> Reviewed-by: Alexander Thomas <athom@google.com>
TBR=whesse@google.com,rmacnak@google.com,zra@google.com,athom@google.com
# Not skipping CQ checks because original CL landed > 1 day ago.
Change-Id: I36ec03150a22f89c4cb5371dd1bf43df8a6f16f6
Reviewed-on: https://dart-review.googlesource.com/32800
Commit-Queue: Zach Anderson <zra@google.com>
Reviewed-by: Zach Anderson <zra@google.com>
When testing multitests needed files are copied, but some files are
copied multiple times, creating race conditions that might cause tests
to fail because incomplete files are read.
For instance running
"python tools/test.py -m release -c dartk --strong language_2"
is fine (i.e. everything passes), but running
"python tools/test.py -m release -c dartk --strong language_2/generic_constructor_mixin3_test"
can get 0, 1 or 2 errors depending on the computers mood...
This fixes the problem by introducing a map from copied-to-path to Future,
so the same Future is returned when asked to copy a file subsequent times,
thus avoiding the race condition.
Fixes#31368.
Bug:
Change-Id: Id7d4a12424085c75f3543bd06a617121ad5eff35
Reviewed-on: https://dart-review.googlesource.com/32282
Commit-Queue: Jens Johansen <jensj@google.com>
Reviewed-by: William Hesse <whesse@google.com>
Change-Id: I41afe48f2fdc056436b58dc8158c62e9207cc43f
Reviewed-on: https://dart-review.googlesource.com/32140
Commit-Queue: Zach Anderson <zra@google.com>
Reviewed-by: Alexander Thomas <athom@google.com>
Change-Id: I6f27037103feb4bdd037cdc0a78fa0a254c95930
Reviewed-on: https://dart-review.googlesource.com/32080
Reviewed-by: William Hesse <whesse@google.com>
Commit-Queue: Alexander Thomas <athom@google.com>
Bug: 31749
Change-Id: I3e9354a9f914788bbe2d08841e2212bddf033d12
Reviewed-on: https://dart-review.googlesource.com/31943
Reviewed-by: William Hesse <whesse@google.com>
Commit-Queue: Alexander Thomas <athom@google.com>
This includes two fixes that only caused problems in windows:
- we assumed file-uris in other parts of DDK, and this caused problems with sourcemaps
- we generated module names containing a leading "./" (e.g. "./expect"), this didn't cause trouble in linux, but it is incorrect.
Bug:
Change-Id: Id3c363670544ed0a8373184ec5445549346fc7bf
Reviewed-on: https://dart-review.googlesource.com/31748
Reviewed-by: Jake Macdonald <jakemac@google.com>
Reviewed-by: Sigmund Cherem <sigmund@google.com>
Commit-Queue: Sigmund Cherem <sigmund@google.com>
Also, updated status files to correctly fix failures in FF, IE and removed other spurious status entries.
R=alanknight@google.com,vsm@google.com
Change-Id: Ic965103d892ff4d5d119712e3187e829f57cd022
Reviewed-on: https://dart-review.googlesource.com/31800
Reviewed-by: Terry Lucas <terry@google.com>
This reverts commits e122f48257 and b2b902f55a.
Reason for revert: broke ddk in windows, need to investigate proper fix
Change-Id: I5c03bae406f57570cc465aad32610c19ac385944
Reviewed-on: https://dart-review.googlesource.com/31541
Reviewed-by: Sigmund Cherem <sigmund@google.com>
This adds the basic support for using the path to the .dill file as a module
name. The main difference between this and Jake's original CL is that we now
hide the multi-root as an implementation detail.
Change-Id: If24af1aaefa5c1445c7c84bd9ff4a7a4d738a320
Reviewed-on: https://dart-review.googlesource.com/31283
Reviewed-by: Jake Macdonald <jakemac@google.com>
Commit-Queue: Sigmund Cherem <sigmund@google.com>
This reverts commit 0c8294e4a0.
Bug:
Change-Id: Idb35c64fd5365f2669e8aff45765fed74e0f0766
Reviewed-on: https://dart-review.googlesource.com/31440
Commit-Queue: Terry Lucas <terry@google.com>
Reviewed-by: Terry Lucas <terry@google.com>
This should prevent the bots from running out of disk space.
Change-Id: I3ca7794f8006f616473cf02c62f000a4c44d5b36
Reviewed-on: https://dart-review.googlesource.com/31120
Commit-Queue: Alexander Thomas <athom@google.com>
Reviewed-by: William Hesse <whesse@google.com>
* Enable --limit-ints-to-64-bits for CFE when it is used to generate
kernel for VM as CFE relies on int.parse being able to parse correct
literals and reject incorrect.
* Pass --limit-ints-to-64-bits to gen_kernel via environment
variable to support batch mode compilation.
Issue: https://github.com/dart-lang/sdk/issues/31339
Re-landing https://dart-review.googlesource.com/29941 with the fix:
* Use checked-in SDK to avoid timeouts on SIMARM bots.
Checked-in SDK was updated and now includes necessary fixes.
Change-Id: I4a5a99455b60204572f3d619d7eb374035b03e40
Reviewed-on: https://dart-review.googlesource.com/30640
Commit-Queue: Alexander Markov <alexmarkov@google.com>
Reviewed-by: Vyacheslav Egorov <vegorov@google.com>
Reviewed-by: Martin Kustermann <kustermann@google.com>
related #31613
Change-Id: I7ba803d574ea8ad8f801c7a6b2d3486b63fb6ab7
Reviewed-on: https://dart-review.googlesource.com/30660
Reviewed-by: Ryan Macnak <rmacnak@google.com>
Commit-Queue: Zach Anderson <zra@google.com>
Strong mode types are queried from:
* Return types of interface targets of instance calls.
* Return types of static calls.
* Types of instance and static fields.
* Types of local variables (for initial types of phis).
The strong mode types are used to specialize int and double operations
and optimize 'is' checks.
https://github.com/dart-lang/sdk/issues/30480
Change-Id: I2302509f396eacfcab8ed41e3f50e8c74dd662fd
Reviewed-on: https://dart-review.googlesource.com/30386
Commit-Queue: Alexander Markov <alexmarkov@google.com>
Reviewed-by: Vyacheslav Egorov <vegorov@google.com>
This reverts commit 2a3f00a179.
Reason for revert: SIMARM bots are timing out.
Original change's description:
> [VM] Enable --limit-ints-to-64-bits in Dart 2.0 precompiler, v2.
>
> * Enable --limit-ints-to-64-bits for CFE when it is used to generate
> kernel for VM as CFE relies on int.parse being able to parse correct
> literals and reject incorrect.
>
> * Pass --limit-ints-to-64-bits to gen_kernel via environment
> variable to support batch mode compilation.
>
> * Use current Dart SDK instead of checked-in Dart SDK to run CFE
> in gen_kernel as checked-in Dart SDK is old and it doesn't have
> int.parse fix yet.
>
> Issue: https://github.com/dart-lang/sdk/issues/31339
> Change-Id: Iaba2a7945a3faa9427f9aab1e9f2b907fa2246a3
> Reviewed-on: https://dart-review.googlesource.com/29941
> Commit-Queue: Alexander Markov <alexmarkov@google.com>
> Reviewed-by: Martin Kustermann <kustermann@google.com>
TBR=vegorov@google.com,kustermann@google.com,alexmarkov@google.com,zra@google.com,asiva@google.com
Change-Id: Iecf26953bc6ae95c3bf0d1142bb89fb51cb0aaee
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Issue: https://github.com/dart-lang/sdk/issues/31339
Reviewed-on: https://dart-review.googlesource.com/30440
Reviewed-by: Vyacheslav Egorov <vegorov@google.com>
Commit-Queue: Vyacheslav Egorov <vegorov@google.com>
* Enable --limit-ints-to-64-bits for CFE when it is used to generate
kernel for VM as CFE relies on int.parse being able to parse correct
literals and reject incorrect.
* Pass --limit-ints-to-64-bits to gen_kernel via environment
variable to support batch mode compilation.
* Use current Dart SDK instead of checked-in Dart SDK to run CFE
in gen_kernel as checked-in Dart SDK is old and it doesn't have
int.parse fix yet.
Issue: https://github.com/dart-lang/sdk/issues/31339
Change-Id: Iaba2a7945a3faa9427f9aab1e9f2b907fa2246a3
Reviewed-on: https://dart-review.googlesource.com/29941
Commit-Queue: Alexander Markov <alexmarkov@google.com>
Reviewed-by: Martin Kustermann <kustermann@google.com>
Change-Id: I3f90979fad2681775cae56d499f3ff5968ea6485
Reviewed-on: https://dart-review.googlesource.com/29545
Commit-Queue: Terry Lucas <terry@google.com>
Reviewed-by: Terry Lucas <terry@google.com>
Change-Id: I37a0961382ca0da5ed549c76c18f3ac5b15ab29e
Reviewed-on: https://dart-review.googlesource.com/27580
Commit-Queue: Alexander Thomas <athom@google.com>
Reviewed-by: Martin Kustermann <kustermann@google.com>
Some tests are run via createCommand, some via
computeCompilationArtifact. This meant that some tests got an
environment and some didn't, resulting in the batch workers
getting restarted all the time.
This CL fixes the issue by passing the environment to createCommand as
well, meaning that the batch workers doesn't restart unnecessarily.
Before:
$ cls; xvfb-run -a '--server-args=-screen 0 1024x768x24' python -u ./tools/test.py -mrelease --checked --strong --use-sdk -rchrome -cdartdevk language_2
[03:09 | 100% | + 5171 | - 0]
$ cls; xvfb-run -a '--server-args=-screen 0 1024x768x24' python -u ./tools/test.py -mrelease --checked --strong --use-sdk -rchrome -cdartdevc language_2
[02:33 | 100% | + 5170 | - 0]
Now:
$ cls; xvfb-run -a '--server-args=-screen 0 1024x768x24' python -u ./tools/test.py -mrelease --checked --strong --use-sdk -rchrome -cdartdevk language_2
[01:41 | 100% | + 5171 | - 0]
$ cls; xvfb-run -a '--server-args=-screen 0 1024x768x24' python -u ./tools/test.py -mrelease --checked --strong --use-sdk -rchrome -cdartdevc language_2
[01:59 | 100% | + 5170 | - 0]
I.e. dartdevk tests are now almost twice as fast (on my machine).
Bug:
Change-Id: I15111436d3411b6ba85209950e4a5f20ee515539
Reviewed-on: https://dart-review.googlesource.com/29100
Reviewed-by: William Hesse <whesse@google.com>
Commit-Queue: Jens Johansen <jensj@google.com>
Without strong mode, a "good enough" implementation is to simply call
the generic method with "dynamic" for the type arguments, which is what
this does. That should be enough to unblock our internal users.
We also need to not report a compile error when
dart_internal/extract_type_arguments.dart imports the hidden
"dart:_internal" library.
This patch does both of those for the VM and dart2js (using its old
front end).
Note that the test still fails because the test is more particular than
most actual user code would be -- it validates that the instantiated
type arguments are *exactly* correct, and not that the returned object
is merely subtype compatible.
Bug:
Change-Id: I0343beace4991861b29712b3fd7067ec8dc8f8ba
Reviewed-on: https://dart-review.googlesource.com/28020
Commit-Queue: Bob Nystrom <rnystrom@google.com>
Reviewed-by: Alexander Thomas <athom@google.com>
Reviewed-by: Régis Crelier <regis@google.com>
Reviewed-by: Sigmund Cherem <sigmund@google.com>
The batch runner uses an exitCode of 1 to signal compile-time errors,
which we need to support in the VMKernelCompilationCommandOutput.
Furthermore allow running the output of a dart -> kernel compilation on
the VM even though we expect an compile-time error (sometimes the
frontend has bugs and doesn't emit the compile-time errors and we need
to run the VM to get them)
Issue https://github.com/dart-lang/sdk/issues/31585
Change-Id: I8b4c34557dbf3de487247d75b02777bacbd452c1
Reviewed-on: https://dart-review.googlesource.com/28642
Reviewed-by: Martin Kustermann <kustermann@google.com>
This makes isolate tests fail, since we no longer run from "source" (or
rather use the kernel-isolate to to "source -> dill" for us).
The special vm/cc suite will continue to be run via the kerne-isolate, so we
have the coverage for these (which probably include reload tests).
Issue https://github.com/dart-lang/sdk/issues/31585
Change-Id: I51bd2f9345d650b4ff2a98aa1c8365c765e0d013
Reviewed-on: https://dart-review.googlesource.com/28722
Commit-Queue: Martin Kustermann <kustermann@google.com>
Reviewed-by: Vyacheslav Egorov <vegorov@google.com>
Switch it to use pkg/vm/tool/dart2 which is the source of truth for what
Dart 2 VM configuration means. Don't pass any additional flags from
tools/test.py itself.
Align pkg/vm/tool/dart2 with what tools/test.py was passing to VM on _2 suites.
Make default invocation `tools/test.py -c dartk --strong -m release,debug`
green by updating status files and skipping suites that are not Dart 2.0
compliant. I have filed issues #31588 for isolate suite and #31587 for
service suite.
Reland of https://dart-review.googlesource.com/27820
Change-Id: I49400fae716f75425e70bf1e561b3375ba39157e
Reviewed-on: https://dart-review.googlesource.com/28565
Commit-Queue: Vyacheslav Egorov <vegorov@google.com>
Reviewed-by: Martin Kustermann <kustermann@google.com>