Commit graph

100147 commits

Author SHA1 Message Date
Konstantin Shcheglov
295caec05f Legacy. Remove boolStart and doubleStar.
Change-Id: Ia12ecb3a0a1995a813f6727430c80045e2841233
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/354703
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2024-02-27 21:57:28 +00:00
Konstantin Shcheglov
e8244d3a8a Stop implementing Comparable for enum Modifier.
The order of modifiers is meaningless.

Change-Id: I85838569ef8c4eb1285ca9443117e1f781a718e5
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/354740
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2024-02-27 21:20:24 +00:00
Sam Rawlins
7359dedd68 Bump dartdoc to 40c470e050161964ce2c1b566bcdf9be40494eef
Change-Id: I67d78b438e00b2025cde805a338e780596c32a86
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/354720
Reviewed-by: Kallen Tu <kallentu@google.com>
Commit-Queue: Samuel Rawlins <srawlins@google.com>
2024-02-27 20:50:06 +00:00
Konstantin Shcheglov
b09404bfb0 Legacy. Remove comparableStar() and futureOrStar()
Change-Id: Ib4800a3f4b4ccf779230e7c16115bc1ba8558612
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/354704
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Samuel Rawlins <srawlins@google.com>
2024-02-27 20:28:48 +00:00
Danny Tuppeny
55fe6b5104 [dds/dap] Add tests for downloading macro sources
With the previous change, macro-generated sources will be downloaded from the VM the same as other sources we cannot map locally (which used to include SDK sources, but since we now map them to the local SDK, was currently nothing - hence the previously-skipped tests).

This just adds a test for this behaviour. In future when we have "full" macro support, this path will still be valid because some DAP clients might not support URIs as "source paths", and we will have to handle them with downloaded source anyway (we might also use this in future if we detect when the sources are different and download from the VM in that case).

Change-Id: Ib3289f9fe8396f3610d51fedd16d831b587afd04
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/354027
Commit-Queue: Ben Konyi <bkonyi@google.com>
Reviewed-by: Ben Konyi <bkonyi@google.com>
Reviewed-by: Helin Shiah <helinx@google.com>
2024-02-27 20:08:02 +00:00
Danny Tuppeny
7f63f01bbe [dds/dap] Add support for communicating with a DAP client using URIs instead of file paths
Change-Id: I90a623f924dfbeb2e82f090a6d223f080baa7e93
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/352280
Reviewed-by: Ben Konyi <bkonyi@google.com>
Reviewed-by: Helin Shiah <helinx@google.com>
Commit-Queue: Helin Shiah <helinx@google.com>
2024-02-27 19:10:17 +00:00
Konstantin Shcheglov
a04f131496 CQ. Remove cast from LibraryOrAugmentationScope, update the comment.
Change-Id: I8c370ef89dda0afe22182d6146edbe92063fbe44
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/354701
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Phil Quitslund <pquitslund@google.com>
2024-02-27 19:03:08 +00:00
Ben Konyi
bef3373526 [ package:vm_service ] Prepare for 14.1.0 release
Change-Id: I8661dedd5c7212952a653b54f94f0df04d8de2f5
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/354680
Reviewed-by: Polina Cherkasova <polinach@google.com>
Commit-Queue: Ben Konyi <bkonyi@google.com>
2024-02-27 18:28:38 +00:00
Devon Carew
cad61f9860 [deps] rev http, protobuf, tools, web, yaml_edit
Revisions updated by `dart tools/rev_sdk_deps.dart`.

http (ce0de37..6e0a46f):
  6e0a46f  2024-02-24  Alex Li  [cronet_http] 🏗️ Use dart-define to determine dependency (dart-lang/http#1111)
  d5cab74  2024-02-23  Alex Li  👷 Update configuration related files (dart-lang/http#1091)
  6873731  2024-02-22  Brian Quinlan  Make it possible for `CronetClient` to own the lifetime of an existing `CronetEngine` (dart-lang/http#1137)

protobuf (f085bfd..ef0ab7d):
  ef0ab7d  2024-02-23  Sebastian  Optimize repeated field decoding (dart-lang/protobuf#911)

tools (9f4e6a4..c7fbf26):
  c7fbf26  2024-02-21  Elias Yishak  Fallback to current datetime when failing on parse session json file (dart-lang/tools#235)

web (975e55c..d96c01d):
  d96c01d  2024-02-23  Srujan Gaddam  Use extension types and generics internally (dart-lang/web#184)

yaml_edit (82ab64d..54884db):
  54884db  2024-02-23  Devon Carew  update to the latest sdk; update lints (dart-lang/yaml_edit#68)

Change-Id: Ib2cb7971df05f4501f81fe5c04b7eaf88d0d93a3
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/354381
Commit-Queue: Devon Carew <devoncarew@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2024-02-27 18:17:15 +00:00
Sam Rawlins
e1a8a61193 linter: Remove deprecated traverseNodesInDFS method
Fixes https://github.com/dart-lang/linter/issues/3745

Change-Id: Icf92f66be7b3e86b731316c2a7702da842f3f9ff
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/354660
Commit-Queue: Phil Quitslund <pquitslund@google.com>
Reviewed-by: Phil Quitslund <pquitslund@google.com>
Commit-Queue: Samuel Rawlins <srawlins@google.com>
Auto-Submit: Samuel Rawlins <srawlins@google.com>
2024-02-27 17:15:28 +00:00
Konstantin Shcheglov
328bb274c2 Macro. Report MACRO_DEFINITION_APPLICATION_SAME_LIBRARY_CYCLE.
Bug: https://github.com/dart-lang/sdk/issues/54915
Change-Id: I0eb2d56b9fc4ad95c41de5681e22d55923845632
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/354382
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Phil Quitslund <pquitslund@google.com>
2024-02-27 17:06:10 +00:00
Konstantin Shcheglov
5f6daed1e1 Augment. Parse 'augmentKeyword' for top-level variables.
Change-Id: If8f0cb6fc1af77fb91774952931db5da214142e9
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/354520
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Johnni Winther <johnniwinther@google.com>
2024-02-27 16:48:18 +00:00
David Morgan
897c89e8bc [CFE] Split files needed by package:vm/modular/... into codes folder.
Fix "no exports" exclude for `api_unstable` to actually work: it was mixing up
the path root.

Tested: no code changes, only moves.
Change-Id: If06a96f0de8fb8b92f331978d457c72deda07cec
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/354301
Reviewed-by: Martin Kustermann <kustermann@google.com>
Commit-Queue: Morgan :) <davidmorgan@google.com>
Reviewed-by: Johnni Winther <johnniwinther@google.com>
2024-02-27 15:04:27 +00:00
Tess Strickland
6dff544f22 [vm/compiler] Improve Definition::ComputeType().
Instead of always returning CompileType::Dynamic(), return an
appropriate CompileType based on the representation() of the
definition.

Remove overrides of ComputeType() where the base ComputeType()
definition computes the same or possibly a better type.

TEST=ci

Cq-Include-Trybots: luci.dart.try:vm-aot-dwarf-linux-product-x64-try,vm-aot-linux-product-x64-try,vm-aot-mac-release-arm64-try
Change-Id: I6fcfb87958f385d6845fb081c9c6cd0aabe1dc08
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/354228
Reviewed-by: Slava Egorov <vegorov@google.com>
Commit-Queue: Tess Strickland <sstrickl@google.com>
2024-02-27 14:58:34 +00:00
Martin Kustermann
3c218ecc53 [dart2wasm] Work around V8/Chrome bug that swallows exceptions from rethrows
Issue https://g-issues.chromium.org/issues/327155548

Change-Id: I7babc0bcfad3e4351af08ce3accb61db6260d86b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/354227
Reviewed-by: Ömer Ağacan <omersa@google.com>
Reviewed-by: William Hesse <whesse@google.com>
2024-02-27 14:00:32 +00:00
David Morgan
f1f188cd96 [macros] Split out modular parts of package:vm into package:vm/modular.
The modular parts in package:vm/modular/** will only depend on

  * package:kernel

  * package:front_end
    => Only for auto-generated error code messages
    => Those error codes can be their own dart_library() in g3

Based on https://dart-review.googlesource.com/c/sdk/+/353980, with
changes:

  * Exclude package:kernel from "no exports" CFE presubmit.
  * Add package:vm/modular to CFE "allowed deps".
  * Fix import in `front_end/tool/perf_common.dart` and various others.

Tested: no code changes, only moves.
Change-Id: I9a44ac6ee05478812a9c8af31f6c4bbcf44b7c42
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/354221
Reviewed-by: Martin Kustermann <kustermann@google.com>
Commit-Queue: Morgan :) <davidmorgan@google.com>
Reviewed-by: Johnni Winther <johnniwinther@google.com>
2024-02-27 13:00:17 +00:00
Tess Strickland
12e7895d2e [gardening] Fix off-by-one error introduced after added import.
https://dart-review.googlesource.com/c/sdk/+/352863 added an import
before the lines that throw an error, causing the checks in these two
tests to be off by one.

TEST=standalone/dwarf_stack_trace_invisible_functions
     standalone/dwarf_stack_trace_obfuscate

Cq-Include-Trybots: luci.dart.try:vm-aot-linux-release-arm64-try,vm-aot-linux-release-x64-try
Change-Id: Ia2830bf6b49d991bb21a9973acb4c1888f9f441b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/354222
Auto-Submit: Tess Strickland <sstrickl@google.com>
Reviewed-by: Daco Harkes <dacoharkes@google.com>
2024-02-27 11:41:45 +00:00
Martin Kustermann
511a41a3b9 [dart2wasm] Skip timing out tests that hang test runner
Those timing out tests cause CI infra issues (purple bots)
on deflaking.

Issue https://github.com/dart-lang/sdk/issues/55025

Change-Id: Ibdc3766e0e482f180c03acc987c3323a3574647c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/354621
Commit-Queue: Martin Kustermann <kustermann@google.com>
Reviewed-by: William Hesse <whesse@google.com>
Auto-Submit: Martin Kustermann <kustermann@google.com>
2024-02-27 11:22:51 +00:00
Ömer Sinan Ağacan
94e653fe0e [dart2wasm] Implement --omit-bounds-checks flag
Similar to dart2js --trust-primitives, with --omit-bounds-checks
(implied by -O4) we omit bounds checks in standard library list and
typed array indexing methods, such as `operator []` and `[]=`.

For now this flag does not omit range checks in functions like
`setRange` and `setAll`:

- Functions like `setRange` do more work than functions like `[]` and
  `[]=`, and bounds checks are a smaller part of the whole operation.

- For the same reason, and also because they either don't return any
  values or have to return boxed (i.e. `getRange` needs to return an
  `Iterator`), inlining them is not as crucial as inlining an
  `Uint8List.[]` implementation (which avoids boxing when inlined).

Closes #54962.

Tested: dart2wasm change with small refactoring in VM, tested with existing tests.
Change-Id: Idd5f11ee85c7e67ba8de621b305c413e7e7f7ebb
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/353982
Reviewed-by: Martin Kustermann <kustermann@google.com>
2024-02-27 08:07:00 +00:00
Konstantin Shcheglov
dee244874c Legacy. Remove functionTypeStar()
Change-Id: I8a2417a13dd09d6171fda0ccf96ea99929382bab
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/354560
Reviewed-by: Samuel Rawlins <srawlins@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2024-02-27 07:04:10 +00:00
Konstantin Shcheglov
63f28de439 Augment. Update language/augmentation_libraries/class_augmentation_test
Change-Id: I979e22e7d6dfd9ef42b94e7d0868123359a104b9
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/354480
Reviewed-by: Jake Macdonald <jakemac@google.com>
2024-02-27 01:54:00 +00:00
Keerti Parthasarathy
2cf28ef9a1 Add a test, use case covers #54888.
Change-Id: Ib5dba73445947ae57ce2b053a052a5bd58fca8fb
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/354061
Commit-Queue: Keerti Parthasarathy <keertip@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2024-02-27 01:39:22 +00:00
Keerti Parthasarathy
f786cf0cdf Add workspace information to context page.
Change-Id: Ice0c7de6d12a3cbe71931fe4d45cd39da5929e6c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/354540
Commit-Queue: Keerti Parthasarathy <keertip@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2024-02-27 01:38:58 +00:00
Sigmund Cherem
c01ce3d3c0 [ddc] Log more data in expression-compiler tests.
Multiple end-to-end tests are failing in the bots because some steps
during the test execution are timing out. We currently have a
timeout of 5 seconds for these steps, but it's unclear if the
timeout is because of conditions in the bot machines (e.g. they are
slow), one off exceptions, or something else.

To address the flakiness, I expect we will want to increase the timeout,
but before we do it may be valuable to start measuring what is the
current distribution of timing in the bots to figure out the best value
to use.

This CL adds logging for timing data for that purpose. I've added
tracking for some interesting steps in the expresson-compiler test
framework, including the top two steps that usually hit a timeout in
practice (find-script and pause-event-for-line).

Example output on my local machine:
```
init-source: 233ms (avg), 121ms (p50), 696ms (p90), 696ms (max), 7 (total)
find-script: 18ms (avg), 18ms (p50), 21ms (p90), 25ms (max), 52 (total)
load-script: 22ms (avg), 22ms (p50), 27ms (p90), 30ms (max), 52 (total)
set-breakpoint: 0ms (avg), 1ms (p50), 1ms (p90), 2ms (max), 52 (total)
pause-event-for-line: 422ms (avg), 410ms (p50), 440ms (p90), 658ms (max), 52 (total)
check-in-frame: 459ms (avg), 446ms (p50), 480ms (p90), 695ms (max), 51 (total)
```

Change-Id: I04734b9905da8e1b4c9d06451be65a2dee32ba1c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/352988
Reviewed-by: Nicholas Shahan <nshahan@google.com>
Commit-Queue: Sigmund Cherem <sigmund@google.com>
2024-02-27 01:01:45 +00:00
Mayank Patke
b0556ba6cb [dart2js] Enable always_declare_return_types in pkg/compiler
Change-Id: Ia61e5d221ed74474b81e8f7188f4b947d17d9050
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/354421
Reviewed-by: Nate Biggs <natebiggs@google.com>
Commit-Queue: Mayank Patke <fishythefish@google.com>
2024-02-26 23:37:28 +00:00
Konstantin Shcheglov
8887700df7 Macro. Remove Modifier.TEMP_AUGMENTATION.
Change-Id: Ie42bcfac35508595b595a22c458af12e964a2b31
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/354500
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2024-02-26 23:13:28 +00:00
Mayank Patke
37345b9f7e [dart2js] Enable strict-inference and strict-raw-types in pkg/compiler.
Change-Id: I4712d32dc37a8cbfa0e1e5bd61659df651c77471
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/354140
Reviewed-by: Nate Biggs <natebiggs@google.com>
Commit-Queue: Mayank Patke <fishythefish@google.com>
2024-02-26 22:41:58 +00:00
Konstantin Shcheglov
1818a2ff9e Issue 55011. Fix GeneralizingAstVisitor.visitNamedType() to invoke visitTypeAnnotation().
Bug: https://github.com/dart-lang/sdk/issues/55011
Change-Id: I1bcd12afdc8cf9645aaca6b11baf9b738750414b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/354440
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Samuel Rawlins <srawlins@google.com>
2024-02-26 21:31:34 +00:00
Ben Konyi
ce642d040f [ CLI ] Add support for passing VM options to Dart runtimes via DART_VM_OPTIONS
The DART_VM_OPTIONS environment variable allows for users to specify a
set of VM options to be processed by the Dart runtime in a
self-contained executable created by `dart compile exe`.

DART_VM_OPTIONS should be a comma separated list of options and flags
with no whitespace. Options that accept multiple values as a list of
comma separated values are not supported and will result in argument
parsing failing.

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

TEST=compile_test.dart

Change-Id: I1d94ab1b992753a7dd69da722c051c9464d6d1cf
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/353820
Reviewed-by: Siva Annamalai <asiva@google.com>
Commit-Queue: Ben Konyi <bkonyi@google.com>
2024-02-26 21:07:40 +00:00
Konstantin Shcheglov
f6e1f6306d Use EnumSet instead of BooleanArray for element modifiers.
Change-Id: I5db1104cc13cc61c39e4b4565c3bc3942848c7f3
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/354281
Reviewed-by: Phil Quitslund <pquitslund@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2024-02-26 21:05:49 +00:00
Matthew Berry
4bea796167 [js_runtime/js_dev_runtime] Prefer Array.isArray over checking prototype
Closes https://github.com/dart-lang/sdk/pull/54990

GitOrigin-RevId: 9c51a86c10e70c5f92e8b72894f8d3de138cd17b
Change-Id: I4b74f3762ec720b0204331d0945da046be99ba33
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/353784
Reviewed-by: Sigmund Cherem <sigmund@google.com>
Reviewed-by: Stephen Adams <sra@google.com>
Commit-Queue: Sigmund Cherem <sigmund@google.com>
2024-02-26 20:33:49 +00:00
Danny Tuppeny
792d5005f5 [analyzer] Fix NodeLocators for positions between class name and type parameter lists
There are some special cases in the NodeLocators so that the offset at the end of a name is treated as part of the name. Those special cases did not include class declaration names, which meant double-clicking a class name in VS Code and hitting Rename would fail (because VS Code sends the offset at the end of the selection).

Fixes https://github.com/Dart-Code/Dart-Code/issues/5002

Change-Id: Ib23d70581f0d8a6317ddd6ba671f6566216d5075
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/354320
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Phil Quitslund <pquitslund@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2024-02-26 20:19:50 +00:00
Konstantin Shcheglov
f9d4df6331 CQ. Enable avoid_redundant_argument_values in analyzer/
Change-Id: I8e5f5f6629249d1fdfddcfe87d20680b37198765
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/353804
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Samuel Rawlins <srawlins@google.com>
2024-02-26 19:55:13 +00:00
Konstantin Shcheglov
8968e5500a CQ. Enable avoid_redundant_argument_values in analysis_server/
Change-Id: If9c09f81bdbac890553573a8491ca27cb4f22dd7
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/353805
Reviewed-by: Phil Quitslund <pquitslund@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2024-02-26 19:51:41 +00:00
Kenzie Schmoll
10306be9d8 [dds] Only initialize analytics when assigning the handler for DevTools server.
Otherwise, `DevToolsUtils.initializeAnalytics()` was getting called even when it was unused (e.g. the g3 case).

Change-Id: I9f911b776f8ea4ba63c1384feb5c1cd73fa18c3c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/354342
Reviewed-by: Elias Yishak <eliasyishak@google.com>
Reviewed-by: Derek Xu <derekx@google.com>
Reviewed-by: Ben Konyi <bkonyi@google.com>
Commit-Queue: Kenzie Davisson <kenzieschmoll@google.com>
2024-02-26 19:21:27 +00:00
Konstantin Shcheglov
3ba864a9d7 CQ. Covert Modifier into enum.
Change-Id: I9e76dfa1971a8f6c0fed9e568cde092aa25d9fce
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/354420
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Phil Quitslund <pquitslund@google.com>
2024-02-26 19:18:25 +00:00
Michael Thomsen
bc21bcd663 Update breaking-changes.md
Closes https://github.com/dart-lang/sdk/pull/55019

GitOrigin-RevId: d063791d1e03e7adb59e30a320b920d224a70f01
Change-Id: I4ab4aa6895706308055bc086b419114bd4b80221
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/354340
Reviewed-by: Michael Thomsen <mit@google.com>
Commit-Queue: Michael Thomsen <mit@google.com>
Reviewed-by: Marya Belanger <mbelanger@google.com>
Reviewed-by: Kevin Chisholm <kevinjchisholm@google.com>
2024-02-26 19:13:23 +00:00
Konstantin Shcheglov
5f664f7312 Enable language 3.3 in analyzer/ and analysis_server/.
Change-Id: I65a439be99cd4c75dba2fc68340e33b7d0dc8ebe
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/354341
Reviewed-by: Samuel Rawlins <srawlins@google.com>
Reviewed-by: Phil Quitslund <pquitslund@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2024-02-26 19:05:20 +00:00
Konstantin Shcheglov
287d424339 Macro. Return List<ElementAnnotationImpl> from 'ElementImpl.metadata'
So, we can remove casts in a few places.

Change-Id: I3ffa0e081633560f51a72327fd8fdd9e02ac46ac
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/354380
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2024-02-26 18:45:54 +00:00
Danny Tuppeny
8a62f4ac1a [analyzer] Add element display string for extension types
Fixes https://github.com/Dart-Code/Dart-Code/issues/5005

Change-Id: I8025576de57b5f459c54bd0f16fe05cf2d4fdb5b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/354300
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2024-02-26 18:44:23 +00:00
pq
39e240c484 bump package:linter language version to 3.3.0
Follow-up from https://dart-review.googlesource.com/c/sdk/+/354341

Change-Id: I24e6d952246e72c3fba76aaab926f76d6e072bfc
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/354360
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Phil Quitslund <pquitslund@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2024-02-26 18:29:53 +00:00
Konstantin Shcheglov
fe41579bf6 Macro. Update JsonSerializable to use throw instead of invalid code.
Bug: https://github.com/dart-lang/sdk/issues/55005
Change-Id: I7ba716576ef5c4cb3aef1e4bd10c70824d39964a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/354120
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Jake Macdonald <jakemac@google.com>
2024-02-26 18:22:47 +00:00
dependabot[bot]
d310d84f7f Bump actions/upload-artifact from 4.3.0 to 4.3.1
Closes https://github.com/dart-lang/sdk/pull/54881

GitOrigin-RevId: 0e19dc2cb23a9d2c055abfc348b60d7903e04151
Change-Id: Ic185f2f6de203b78b68170d7fb5ca6e0ff96854a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/351980
Reviewed-by: Alexander Thomas <athom@google.com>
2024-02-26 17:48:24 +00:00
Konstantin Shcheglov
421ffd331a Extension type. Issue 55006. An extension type with nullable suffix is nullable, for properties.
Bug: https://github.com/dart-lang/sdk/issues/55006
Change-Id: I5adf6029194b117470eb36f7bb62202ddc5ac92b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/354180
Reviewed-by: Phil Quitslund <pquitslund@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2024-02-26 16:48:49 +00:00
Ömer Sinan Ağacan
0ad3f77424 [dart2wasm] Start using VM's dead code elimination pass
Tested: existing tests
Change-Id: Idff55466336d53e4c20ab5c18efa6a7358bccbc0
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/354261
Reviewed-by: Martin Kustermann <kustermann@google.com>
Commit-Queue: Ömer Ağacan <omersa@google.com>
Reviewed-by: Tess Strickland <sstrickl@google.com>
2024-02-26 15:30:24 +00:00
Johnni Winther
b673fb57ed [cfe] Support type parameters in macros api
+ report crash as a compile-time error

Change-Id: I78ba2d4689dcd73d1b35358e0d948a29d23ef22f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/354024
Commit-Queue: Johnni Winther <johnniwinther@google.com>
Reviewed-by: Chloe Stefantsova <cstefantsova@google.com>
2024-02-26 15:06:19 +00:00
Martin Kustermann
e07a14d590 [dart2wasm] Allow dartPrint function to intercept print()s from Dart
Instead of directly printing all `print()`s from Dart to the console,
we allow the prints to be intercepted - by specifying a `dartPrint()`
function.

=> This will fix our test infrastructure, which will now recognize
async tests as being asynchronous and waits until the async test
is actually done with testing.

=> This will also make the test infrastructure report all prints
of a test when the test fails (it reports DOM, prints, various other
events)

=> Test failure output of `tools/test.py -n dart2js-*-{firefox,chrome}`
will become actually useful, containing printed errors & stack traces.

This is similar to what dart2js does in

    sdk/lib/_internal/js_runtime/lib/js_primitives.dart

Related Issue: https://github.com/dart-lang/sdk/issues/54973

Change-Id: Ibd935fd2d0b15d1b6e444214c4556a65034957dd
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/354100
Reviewed-by: Ömer Ağacan <omersa@google.com>
2024-02-26 14:38:35 +00:00
Martin Kustermann
c28f91401c [dart2wasm] Update timeout value for dart2wasm tests from 4 min to 1 min
Change-Id: I71bf1c9a6e6a2a0903359b4883f649cd33936e2b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/354026
Commit-Queue: Martin Kustermann <kustermann@google.com>
Reviewed-by: Ömer Ağacan <omersa@google.com>
2024-02-26 13:57:19 +00:00
Martin Kustermann
c05738f04f [dart2wasm] Use the vm's mixin deduplication pass in dart2wasm
It reduces FluteCounter
* 2.5% in unoptimized mode
* 0.8% in optimzed mode (and similar when gzip'ed)

Change-Id: If4852d66e8c214754f68e4d134960e8b622d20fd
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/354023
Reviewed-by: Ömer Ağacan <omersa@google.com>
Commit-Queue: Martin Kustermann <kustermann@google.com>
2024-02-26 11:24:51 +00:00
Martin Kustermann
c625797f8a [dart2wasm] Implement dart:developer in dart2wasm
* We migrate the `dart:developer` implementation of dart2js to
static interop.

* We make dart2wasm use the same implementation as dart2js.

Closes https://github.com/dart-lang/sdk/issues/54991

Change-Id: I7873edc7e804500c8eca878367d9045c98a1c2e8
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/354101
Reviewed-by: Srujan Gaddam <srujzs@google.com>
Commit-Queue: Martin Kustermann <kustermann@google.com>
2024-02-26 11:23:29 +00:00