Commit Graph

64479 Commits

Author SHA1 Message Date
Mike Fairhurst 2f65830aeb Add null checks for spread operator
Change-Id: Ib3b0f46643a24e22e0344a4505743518f885e9e5
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/102501
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Mike Fairhurst <mfairhurst@google.com>
2019-06-12 20:58:03 +00:00
Ryan Macnak 31d5ba8790 Reapply "[vm, interpreter] Bytecode support for dynamic invocation forwarders."
Add missing entries to RAW_CLASSES_AND_FIELDS.

Change-Id: Ib90f4878d3eff81a6a059f7e38f1d6593cd85cfc
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/105820
Reviewed-by: Alexander Markov <alexmarkov@google.com>
Commit-Queue: Ryan Macnak <rmacnak@google.com>
2019-06-12 20:51:44 +00:00
Paul Berry 3f83aeb493 Migration: add the ability to "union" nullability nodes.
This will simplify some situations where nullability migration would
otherwise have to visit the source code in a very careful order.  For
example, when analyzing top level fields undergoing type inference, we
can simply create a node for the nullability of each top level field,
and then later use the "union" operation to hook up those nodes to the
nodes resulting from analyzing their initializers.  Without the union
operation, we would have to be careful to visit the top level fields
in dependency order.

Change-Id: I3b07e1abccc5b1c9f1c7c9fa7b13fb6af60c07d6
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/105800
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2019-06-12 20:10:24 +00:00
Paul Berry 0b5e37a429 Migration: Make always/never instance fields of the nullability graph.
Previously, they were static, which made them easier to access, but
made it difficult to track their edges (because we couldn't safely
mutate them, so we had to store their edges in special fields of
NullabilityGraph).  Now that we're passing NullabilityGraph all over
the place anyhow, there's no benefit to making them static anymore.

Change-Id: Ia3e7d32ae479f40f505621e5d6df04060e39b1c7
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/105723
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2019-06-12 20:10:24 +00:00
Aart Bik fa6fce61fa [dart/vm] Improved inlining methods and heuristics
Rationale:
Previous method cached graph information (instruction and call site
counts) on a per-function level, not accounting for potential
specializations. The improved method runs an extra constant folding
pass, and only caches per-function information for non-specialized
cases. As a result, we inling much better, see for example, the
added test as illustration.

Since we no longer cache for constants, compile-time may be increased
a bit due to the extra scan. In the long run we should consider
for common constant "situations" as the call site.

https://github.com/dart-lang/sdk/issues/36880

Change-Id: I19f007c7f1860ad0ea88fafb38695dc154189ad5
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/105460
Commit-Queue: Aart Bik <ajcbik@google.com>
Reviewed-by: Martin Kustermann <kustermann@google.com>
Reviewed-by: Alexander Markov <alexmarkov@google.com>
2019-06-12 19:39:10 +00:00
Ryan Macnak 8fa1cb2911 [vm] Remove Dart 1 enum implementation.
Change-Id: I5033eacf0fb66bb3b922e5c0f62d986c89f81708
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/105801
Reviewed-by: Siva Annamalai <asiva@google.com>
Commit-Queue: Ryan Macnak <rmacnak@google.com>
2019-06-12 19:26:32 +00:00
Ryan Macnak 433cb12a87 Revert "[vm, interpreter] Bytecode support for dynamic invocation forwarders."
This reverts commit 1d94323b5b.

Reason for revert: v8_snapshot_profile_writer_test

Original change's description:
> [vm, interpreter] Bytecode support for dynamic invocation forwarders.
> 
> Change-Id: I8fb26ca5b7d395c9275b7e1860b47b5c176c00b3
> Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/104941
> Commit-Queue: Ryan Macnak <rmacnak@google.com>
> Reviewed-by: Alexander Markov <alexmarkov@google.com>
> Reviewed-by: Régis Crelier <regis@google.com>

TBR=rmacnak@google.com,alexmarkov@google.com,regis@google.com

Change-Id: I7f3660e2148683567397a53f0b88ffab76671d94
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/105724
Reviewed-by: Ryan Macnak <rmacnak@google.com>
Commit-Queue: Ryan Macnak <rmacnak@google.com>
2019-06-12 19:01:55 +00:00
Alexander Thomas b33f40e4b0 [co19] Roll co19 to b0220fc898c32d3944cb8c54cf7b78dd8c7cbadb
2019-06-12 tvolkert@users.noreply.github.com Fix a few remaining call-sites (#386)

TBR=whesse@google.com

Change-Id: Id04507a1add9ab608b5a396f8f486d2ee1f4a51c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/105764
Reviewed-by: Alexander Thomas <athom@google.com>
Commit-Queue: Alexander Thomas <athom@google.com>
2019-06-12 18:52:30 +00:00
Alexander Thomas 73e2f469f8 [infra] Always produce a proper Dart version string on release channels
Previously, if --custom_for_pub was used we used the latest dev tag.
This "best effort" for Dart rolls from bleeding edge, but doesn't make
sense when rolling from other channels that have a proper version in the
VERSION file.

Change-Id: Icaf6c26858d9fd2132d26b7d64da21b3a05f0092
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/105763
Reviewed-by: Siva Annamalai <asiva@google.com>
2019-06-12 18:24:03 +00:00
asiva 972ad1c073 [VM/runtime] Fix performance regression introduced in https://dart-review.googlesource.com/c/sdk/+/104286
The change above was returning an incorrect offset for
dart::ClassHeapStats::state_ field in ClassTable::class_heap_stats_table_

This resulted in incorrect values being returned from TraceAllocationFor
causing all allocations to go into the slow path. This also caused the
errors in the profiler tests.

Change-Id: I98cceed7134f1596c0532a813fe15b2e3730dcb1
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/105701
Reviewed-by: Liam Appelbe <liama@google.com>
Reviewed-by: Ryan Macnak <rmacnak@google.com>
Commit-Queue: Siva Annamalai <asiva@google.com>
2019-06-12 18:13:04 +00:00
Ryan Macnak 1d94323b5b [vm, interpreter] Bytecode support for dynamic invocation forwarders.
Change-Id: I8fb26ca5b7d395c9275b7e1860b47b5c176c00b3
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/104941
Commit-Queue: Ryan Macnak <rmacnak@google.com>
Reviewed-by: Alexander Markov <alexmarkov@google.com>
Reviewed-by: Régis Crelier <regis@google.com>
2019-06-12 18:09:54 +00:00
Paul Berry 69d88daeb9 Remove unused imports
Change-Id: I08ae4f32ea9eb08f1147db2d056917fe4833e5e1
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/105780
Auto-Submit: Paul Berry <paulberry@google.com>
Reviewed-by: Mike Fairhurst <mfairhurst@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2019-06-12 17:54:24 +00:00
Daco Harkes f1038ee771 [vm/ffi] SimDBC64 align stack frame
And regression test for dartbug.com/37069

Fixes: https://github.com/dart-lang/sdk/issues/37176
Follow up of: https://dart-review.googlesource.com/c/sdk/+/103814
Bug: https://github.com/dart-lang/sdk/issues/37069
Change-Id: I2c791271f936580d66a48485a60ab6cddb1ba4f8
Cq-Include-Trybots: luci.dart.try:vm-ffi-android-debug-arm-try, app-kernel-linux-debug-x64-try, vm-kernel-linux-debug-simdbc64-try,vm-kernel-mac-debug-simdbc64-try,vm-kernel-reload-mac-debug-simdbc64-try,vm-kernel-linux-debug-ia32-try,vm-dartkb-linux-debug-simarm64-try,vm-kernel-win-debug-x64-try
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/104824
Commit-Queue: Daco Harkes <dacoharkes@google.com>
Reviewed-by: Samir Jindel <sjindel@google.com>
2019-06-12 16:25:34 +00:00
Konstantin Shcheglov 4324d46080 Use an available socket port for memory benchmark.
R=devoncarew@google.com

Change-Id: I96472010b6bfa01e0ae2254f105d8e71bb7e86d5
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/105683
Reviewed-by: Devon Carew <devoncarew@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-06-12 16:18:14 +00:00
Konstantin Shcheglov 0e4e14a288 Build summary2 in DDC.
New summary2 will unblock fixing long standing inference issues in
Analyzer.

We build it in addition to summary1, and will switch clients to summary2
incrementally. With this CL DDC will build summary2, but will not
consume it yet for analyzing code. This will be done in a separate CL.

This change was also tested in the internal repo, and does not cause
related build failures.

Change-Id: Ic2c635e45b514a2610e938129fa7527fd8d070b4
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/105261
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Nicholas Shahan <nshahan@google.com>
Reviewed-by: Vijay Menon <vsm@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-06-12 16:09:24 +00:00
Konstantin Shcheglov a173d22fe7 Record reference to the typedef from which a FunctionType was instantiated.
It seems that this is necessary for Angular compiler.

R=brianwilkerson@google.com

Change-Id: Ib5c0501d8f900ec9ca358cb4f4b4be90004cce77
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/105720
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-06-12 14:22:03 +00:00
Paul Berry b385528fee Migration: Write unit tests for NullabilityGraph.
Change-Id: I7d3ab1bde98ff28203dc73d61ecdc77e8fed25f3
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/105682
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2019-06-12 13:34:57 +00:00
Paul Berry c286d5a549 Separate testing methods from the rest of NullabilityGraph
So that we don't accidentally start to use them elsewhere in the
migration engine.

Change-Id: Iee290f9fc8761c952a2aadb1f4f6bb7bfe061a3f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/105700
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-06-12 13:34:57 +00:00
Danny Tuppeny c177b4cc4c Make the ranges of constructors in hovers match those of methods/functions
Fixes https://github.com/dart-lang/sdk/issues/35386.

Change-Id: I66c0b1b9f47b8f037da9585453330d6eb1de3c4e
Bug: https://github.com/dart-lang/sdk/issues/35386
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/105740
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Danny Tuppeny <dantup@google.com>
2019-06-12 13:28:37 +00:00
Danny Tuppeny cbb1816177 Remove unnecessary LSP hover handling comment/code
Change-Id: I1609dd07dae57b6bac48492c64f7ac1a7fb82d5b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/105741
Auto-Submit: Danny Tuppeny <dantup@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-06-12 13:25:27 +00:00
Paul Berry 686df33d99 Add parseString() to replace the deprecated parseCompilationUnit().
Change-Id: Ib272f6a281b09a02ba037049e76bf08dd78dbbab
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/105540
Commit-Queue: Paul Berry <paulberry@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-06-12 12:56:57 +00:00
Terry Lucas 92dabc8491 Cache the WidgetCreatorTracker.
This fixes the problem when the flutter bots run multiple tests from the flutter tool e.g.,
  flutter test first_widget_test.dart second_widget_test.dart

The first test causes the set of libraries, particularly Flutter's framework library, to be passed
to the transformer. The transformer needs the 'Widget' class located in Flutter's framework
library. The transformer on the first test works.  Each subsequent test only the libraries not in
the prior test are passed, without the framework library, the transformer is unable to find the
'Widget' class and the widget transformer fails to run.

This fix allows the use of a nice speedup to hot-reloading Flutter applications when
--track-widget-creation is enabled and it allows us to enable --track-widget-creation by default,
for command line Flutter users.

This fixes issue https://github.com/dart-lang/sdk/issues/36640

R=jacobr@google.com,askesc@google.com

Change-Id: I9a9c9dc69995122d0f7a7a3e1dfaebf57abb4afb
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/105661
Commit-Queue: Terry Lucas <terry@google.com>
Reviewed-by: Aske Simon Christensen <askesc@google.com>
Reviewed-by: Jacob Richman <jacobr@google.com>
2019-06-12 11:07:36 +00:00
Alexander Thomas 299532d088 [co19] Roll co19 to cd1be9d07df32413024fe5c4ae9c5c6017c2f2c8
2019-06-11 tvolkert@users.noreply.github.com More fixes to cast response to Stream<List<int>> (#385)
2019-06-11 tvolkert@users.noreply.github.com Pass Uint8List to Datagram (#382)
2019-06-11 tvolkert@users.noreply.github.com Cast HttpRequest and HttpClientResponse streams to List<int> (#384)
2019-06-10 sgrekhov@unipro.ru Fixes #364. Change expected result to null for default values of clientMaxWindowBits and serverMaxWindowBits
2019-06-07 sgrekhov@unipro.ru Fixes #380. Added tests for logical and bitwise operations via type aliases
2019-06-07 sgrekhov@unipro.ru Additional fix for #373. Code style improved and more strict pattern checking
2019-06-06 sgrekhov@unipro.ru Fix for #380. Added tests for type aliases for built-in types. Test string concatenation and arithmetic operations
2019-06-05 sgrekhov@unipro.ru Fixes #380. Added tests for type aliases for built-in types initialization
2019-06-05 sgrekhov@unipro.ru Fixes #373. Expect reasonable file mode on Unix
2019-06-04 sgrekhov@unipro.ru Fixes #379. Numerous fixes for io/Process tests
2019-06-04 sgrekhov@unipro.ru Fixes #378. Use Platform.resolvedExecutable instead of 'dart' command
2019-06-04 irina.arkhipets@gmail.com Fixed Issue #375: it's possible that IPv6 loopback does not exist.
2019-06-04 irina.arkhipets@gmail.com Fixed Issue #236: host.host can be either "localhost" or Platform.localHostname.
2019-06-04 irina.arkhipets@gmail.com Issue #370, instantiate-to-bounds: added static tests for non-function type aliases.
2019-06-04 sgrekhov@unipro.ru Fix for #377. Use correct network interface type name (IPvX)
2019-06-04 sgrekhov@unipro.ru Fixes #374. Change pattern for error messages
2019-06-04 irina.arkhipets@gmail.com Issue #370, instantiate-to-bounds: added dynamic tests for non-function type aliases.
2019-06-04 sgrekhov@unipro.ru Fix for #372. Expect.fail() on timeout added
2019-06-04 sgrekhov@unipro.ru Fixes #371. Remove excessive asyncStart()
2019-06-03 irina.arkhipets@gmail.com Issue #147, test super bounded types: added tests for non-function type aliases.
2019-05-30 sgrekhov@unipro.ru Fixes #369. Use correct type arguments to avoid errors
2019-05-30 sgrekhov@unipro.ru Fixes #368. Don't try to bind system port
2019-05-30 sgrekhov@unipro.ru Fixes #367. Remove excessive asyncStart()
2019-05-30 sgrekhov@unipro.ru Fixes #366. Change expected result to SocketException

TBR=whesse@google.com

Change-Id: I137689755907b3333e597d7d210db2b4d37d70d0
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/105641
Reviewed-by: Alexander Thomas <athom@google.com>
Reviewed-by: William Hesse <whesse@google.com>
2019-06-12 11:01:17 +00:00
Johnni Winther cbe48553c0 [CFE] Add LocalFunction as super-interface for FunctionExpression and FunctionDeclaration
+ use it in dart2js to simplify and clarify handle of local function nodes

Change-Id: I35da2dd8bd3baba6eff6ad631ebe63d572bae4d6
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/105423
Commit-Queue: Johnni Winther <johnniwinther@google.com>
Reviewed-by: Aske Simon Christensen <askesc@google.com>
2019-06-12 07:20:39 +00:00
Ryan Macnak 2be92b08c2 [vm] Remove more of the Dart 1 compiler.
Change-Id: Ib00e040f44275b9437e7fc622bf285607f4e4124
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/105681
Reviewed-by: Alexander Markov <alexmarkov@google.com>
Commit-Queue: Ryan Macnak <rmacnak@google.com>
2019-06-12 01:00:29 +00:00
Stephen Adams 701a2fed01 Parse binding recipes
Indexing scheme changed.

Change-Id: I44f7592b65d615827ea3b78f46117c71f3e50b31
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/105660
Commit-Queue: Stephen Adams <sra@google.com>
Reviewed-by: Sigmund Cherem <sigmund@google.com>
2019-06-11 23:52:59 +00:00
Sigmund Cherem 080ff1f3b9 Fix parsing of output-directory Uri in windows
Change-Id: I3e3417e5048f8545056d99df35ca2de140dc31f5
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/105680
Reviewed-by: Nicholas Shahan <nshahan@google.com>
Commit-Queue: Sigmund Cherem <sigmund@google.com>
2019-06-11 23:21:43 +00:00
Mike Fairhurst dab4eb045f Add a "legacy type asserter," manage broken test cases
Change-Id: Ic046805c3246ad7e5e7c56fb9188d6ebd197e2fa
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/105560
Commit-Queue: Mike Fairhurst <mfairhurst@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-06-11 23:17:43 +00:00
danrubel f69d5dc2c2 show analyzer details in dartfix
This updates dartfix to display details about the analysis process
if the analysis server provides them.

Change-Id: I0b2a7e8267b92e1eefd1ce90aa53a85cc91c48d1
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/105549
Commit-Queue: Dan Rubel <danrubel@google.com>
Auto-Submit: Dan Rubel <danrubel@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-06-11 22:46:13 +00:00
danrubel a3348ab702 sort some dartfix classes
Change-Id: I0655c6ae7d06219ee17957c9c49e90fbf8afe63d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/105548
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-06-11 22:46:13 +00:00
Sigmund Cherem 7c7160f022 Move isRedirectingFactory to CFE and add unit test for it.
Eventually it should be handled by Procedure.isRedirectingFactoryConstructor, but that is
currently broken for patch files.

It appears the VM has no patches of that kind, but dart2js does.

Change-Id: I0b64379f16089ad0d98ecd4df1ed9282ed6bc0e7
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/98523
Reviewed-by: Johnni Winther <johnniwinther@google.com>
Commit-Queue: Sigmund Cherem <sigmund@google.com>
2019-06-11 22:00:10 +00:00
Brian Wilkerson e6567601af Add a notice that the markdown file is generated and remove documentation specific to nnbd
Change-Id: Iece4cd98399b243c9d7fb69af888460bb45421fc
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/105600
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Kathy Walrath <kathyw@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2019-06-11 19:57:19 +00:00
Danny Tuppeny 1ba9ed7a35 Improve LSP JSON error when an expected object is not an object
Change-Id: I79632ceca51a5288f9b742f78483a6c2117f58d1
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/105588
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Danny Tuppeny <dantup@google.com>
2019-06-11 19:07:29 +00:00
Danny Tuppeny 9d5b4491b2 Remove redundant null checks from LSP validation
Change-Id: Ie978b598ecec85455628263d0e3cf2f6f8f71253
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/105587
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-06-11 19:07:29 +00:00
Danny Tuppeny ca3320e3bd Tweak LSP JSON validation error messages
Change-Id: I732d0020a68256632ee8ba823a0a31eb4a5360d3
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/105586
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-06-11 19:07:29 +00:00
Danny Tuppeny 972ea07459 Simplify LSP json error reporter with push/pop fields
Change-Id: I5186eb2de3cf956ada04237ac7ff90fc2d01b79b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/105585
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-06-11 19:07:29 +00:00
Danny Tuppeny 530a2f5681 Make a null LSP error reporter to avoid so many null checks
Change-Id: I08f9259ba5aca52c61dd6820a3cc54bf40a30c92
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/105584
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-06-11 19:07:29 +00:00
Danny Tuppeny 9fb2842fce Improve the error messages reported in LSP when params are not valid
Change-Id: I305955a22d687e8338138db48dff4e32589bbc6a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/105520
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-06-11 19:07:29 +00:00
Régis Crelier 2cc0261f39 [vm/bytecode] Collect token positions in closures and field initializers.
Allow single stepping and breakpoint setting on a few more bytecodes.
Limit traversing of closure object pool to avoid cycles.

Change-Id: I96befe0ff6255cd2e15464e6fe084896e4f2daff
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/105541
Commit-Queue: Régis Crelier <regis@google.com>
Reviewed-by: Alexander Markov <alexmarkov@google.com>
2019-06-11 19:03:28 +00:00
Konstantin Shcheglov 1b9d5b47ed Make sure that we have a unit in unit_withDirectives.
I still was not able to reproduce the issue, but I think this fixes it.

R=brianwilkerson@google.com

Change-Id: I209812bd2f2e8f0a5568ef14f7bfeaa4093c1341
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/105621
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-06-11 18:59:28 +00:00
Jonas Termansen 9c0fdd600e [infra] Update checked in SDKs to 2.3.3-dev.0.0
Change-Id: Ia6ebf5ad65c5e9d3690e122de399db4c0bc60fda
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/105640
Reviewed-by: Alexander Thomas <athom@google.com>
Commit-Queue: Jonas Termansen <sortie@google.com>
2019-06-11 18:45:58 +00:00
Konstantin Shcheglov 8e9e1877b5 Perform AST rewrite during metadata resolution.
R=brianwilkerson@google.com

Change-Id: I3e19bb1bc6e7d6f3f42134090ed7e7a4920420ee
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/105620
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-06-11 18:13:04 +00:00
Konstantin Shcheglov 149ebf683b Support for 'uri' property of Import/Export/CompilationUnitElement.
_Builder in source_gen uses code like this to check that the generated
file is expected in the library. While it is a questionable approach,
I don't feel that I have time to fix it, and remove the `uri` property
completely. So, we fix in in Analyzer with summary2.

`if (!library.parts.map((c) => c.uri).contains(part)) { ...fail... }`

R=brianwilkerson@google.com, paulberry@google.com

Change-Id: I983f29589cbb2613d5f896b87f6218c31a47afa9
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/105601
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-06-11 16:53:03 +00:00
Nicholas Shahan 8aa4414f1b [dartdevc] Ignore violation of empty_catches lint
* Only appears in a sourcemap test.

Issue: #37218
Change-Id: I0bb24db28c2d0041629de12c47273dfdc2b8b2f4
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/105547
Reviewed-by: Nate Bosch <nbosch@google.com>
Commit-Queue: Nicholas Shahan <nshahan@google.com>
2019-06-11 16:51:13 +00:00
Ben Konyi 34a6218f8e [ VM / Service ] Forward message for exceptions caught in VM service PUT requests
Fixes #36202

Change-Id: If578ec8e24a5acf10db85a7f17cc98a0b7168c57
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/105475
Commit-Queue: Ben Konyi <bkonyi@google.com>
Reviewed-by: Siva Annamalai <asiva@google.com>
2019-06-11 16:15:23 +00:00
Jonas Termansen b95eed15cf [release] Prepare changelog and version file for 2.3.2 and 2.3.3-dev.0.0
Change-Id: I13d22aaf86158b03a73304762ceef165698b055f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/105583
Reviewed-by: Alexander Thomas <athom@google.com>
2019-06-11 14:17:40 +00:00
Jonas Termansen 3972f738ca [security] [dart:io] Fix current directory being in front of PATH.
This is a security improvement.

On Linux and Android, starting a process with Process.run, Process.runSync
or Process.start would first search the current directory before searching
PATH (Issue [37101][]). Operating systems other than Linux and Android
didn't have this behavior and aren't affected by this vulnerability.

Effectively this puts the current working directory in the front of PATH,
even if it wasn't in the PATH.

This change fixes that vulnerability and only searches the directories in
the PATH environment variable.

Fixes https://github.com/dart-lang/sdk/issues/37101

Change-Id: I05f3137753237f9b3ba4be4eba63ad07a75d865e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/105582
Reviewed-by: William Hesse <whesse@google.com>
2019-06-11 13:21:22 +00:00
Alexander Thomas a356f64993 [infra] Remove unused member from test runner
This was a leftover from a refactoring that was accidentally committed.

Change-Id: Ibbf26cabbfa16d1aba7fe4811977008c46c19c34
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/104002
Auto-Submit: Alexander Thomas <athom@google.com>
Reviewed-by: William Hesse <whesse@google.com>
2019-06-11 13:21:11 +00:00
Robert Nystrom b37aa3b036 Update dart_style to 1.2.8.
It's a small change but does include some formatting differences, so
should be coordinated with rolling the pre-built SDK in case those
differences affect code in the SDK.

Change-Id: I6d7e049547f8b4d7e3a14c2424db6286ad76ec35
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/105360
Reviewed-by: Jonas Termansen <sortie@google.com>
Commit-Queue: Jonas Termansen <sortie@google.com>
2019-06-11 13:00:50 +00:00
Jonas Termansen 3d96805597 Merge CHANGELOG following 2.3.2-dev.0.1 release
Change-Id: I9ed7c7645d15b112d55f17f9593725a19e534c02
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/105421
Reviewed-by: William Hesse <whesse@google.com>
2019-06-11 12:46:43 +00:00