Commit Graph

113297 Commits

Author SHA1 Message Date
Ryan Macnak 2f2a523818 Fix gcc 16 build.
TEST=local build
Bug: https://github.com/dart-lang/sdk/issues/63406
Change-Id: I20c2806e569211ef7d32e95961179dbf2aba15a9
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/505181
Reviewed-by: Alexander Markov <alexmarkov@google.com>
Commit-Queue: Ryan Macnak <rmacnak@google.com>
2026-05-20 19:36:12 -07:00
Nate Biggs 595cc71901 [wasm_builder] Add support for including extra custom sections when serializing a wasm module.
Allows the caller to extend `CustomSection` with their own subclasses
and include them when serializing the module.

Change-Id: I2bda659eab531def94abd0dae682ea24f717d1af
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/504840
Reviewed-by: Martin Kustermann <kustermann@google.com>
Commit-Queue: Nate Biggs <natebiggs@google.com>
2026-05-20 18:55:10 -07:00
Sam Rawlins bcb511529a DAS plugins: Remove AOT snapshot before compiling a new one
Fixes https://github.com/dart-lang/sdk/issues/63385

Change-Id: I76cecc3486f3fc03093efac8c7cc2d65c8977eb5
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/505062
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Samuel Rawlins <srawlins@google.com>
2026-05-20 16:25:29 -07:00
Alexander Markov c93a1c2bc3 [vm,aot] Restore generation of TTS for type arguments passed to factory constructors
This is a follow-up to https://dart-review.googlesource.com/c/sdk/+/501762.

TEST=ci
Fixes https://github.com/dart-lang/sdk/issues/63404

Change-Id: I85386738c203a7fb27171bf904723106b764288e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/504680
Commit-Queue: Alexander Markov <alexmarkov@google.com>
Reviewed-by: Slava Egorov <vegorov@google.com>
2026-05-20 15:11:47 -07:00
Danny Tuppeny 4b609fd598 [analysis_server] Refactor some refactoring classes to simplify a future change
These are just some minor changes (logically, but a bit noisy mixed in with upcoming functional changes) from a future change I'm working on to handle command resolution for the new refactorings. In particular:

- Make it a bit clearer which classes refer to which refactoring system
- Rename `RefactorCommandHandler` -> `RefactorCommandExecutor` since there will also be a Resolver soon
- Extract some code from `RefactorCommandExecutor` into `RefactorCommandHandlerMixin` so it can be reused by the upcoming resolve handler
- Fix some type args that used `Object` when some implementations are `void` but we don't care about the type anyway
- Create a `ParameterizedRefactoringProducer` abstract class so that all refactors with no parameters don't have to implement stubs for `parameters` (and soon `resolve()`)

Change-Id: I865da1c5dac9dc5834564b5a4a47199c20b64979
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/504601
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Keerti Parthasarathy <keertip@google.com>
Commit-Queue: Keerti Parthasarathy <keertip@google.com>
2026-05-20 15:00:15 -07:00
Konstantin Shcheglov fb2962c045 Issue 63382. Use WorkspacePackage.isInTestDirectory() instead of CompilationUnitExtension.
Bug: https://github.com/dart-lang/sdk/issues/63382
Change-Id: I3c1d2495f9cb6804c73d1f36314556186f825a67
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/505064
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
Reviewed-by: Samuel Rawlins <srawlins@google.com>
2026-05-20 14:39:04 -07:00
Alexander Markov c5391da658 [modular_aot] Flatten/expand vectors of instance type arguments
Issue: https://github.com/dart-lang/sdk/issues/61635
Change-Id: Id4e4e45385f8d79e97e351e4b8a6ed9ba0d99701
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/505061
Commit-Queue: Alexander Markov <alexmarkov@google.com>
Reviewed-by: Slava Egorov <vegorov@google.com>
2026-05-20 14:20:57 -07:00
Daco Harkes 6f7f338328 [dartdev] dart build cli add --target-sanitizer support
Closes: https://github.com/dart-lang/sdk/issues/63374

Does not yet add sanitizer support for build hooks:
https://github.com/dart-lang/native/issues/2497

Change-Id: I53763b94d03a9b759f226a2b45f723706a1e5934
Cq-Include-Trybots: luci.dart.try:pkg-linux-debug-try,pkg-linux-release-arm64-try,pkg-linux-release-try,pkg-mac-release-try,pkg-win-release-try
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/504880
Commit-Queue: Daco Harkes <dacoharkes@google.com>
Reviewed-by: Ryan Macnak <rmacnak@google.com>
Reviewed-by: Ben Konyi <bkonyi@google.com>
2026-05-20 13:45:54 -07:00
Danny Tuppeny bb220724dc [analysis_server] Convert LSP spec tests to test_reflective_loader
No functional changes, this just converts the tests from group/test to test_reflective_loader to match other tests.

Changing the group()/test() calls to methods results in the tests being re-sorted by member name.

To possibly simplify reviewing, I've pushed this to Gerrit as two patch sets:

- PS1: does the conversion but includes index numbers in each test to preserve the order
- PS2: removes the index numbers and re-orders the tests

Change-Id: I72ebe3d3066b181a77052bec5082e4bd34066939
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/504580
Reviewed-by: Keerti Parthasarathy <keertip@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2026-05-20 13:05:22 -07:00
Keerti Parthasarathy d3f4debece [dart fix]Fix adding package to both dependencies and dev_dependencies in pubspec.
Closes https://github.com/dart-lang/sdk/issues/63409

Change-Id: I51258cf986b9b60a8d7add58f7737d6c8bf9f1ac
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/505040
Commit-Queue: Keerti Parthasarathy <keertip@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2026-05-20 12:56:57 -07:00
Alexander Markov fd3ec3b96b [modular_aot] Make NaN handling in doubleToIntBits/intBitsToDouble platform independent
Fixes https://github.com/dart-lang/sdk/issues/63400

Issue: https://github.com/dart-lang/sdk/issues/61635
Change-Id: I45d4603212b1c8205ea8b0f76ea6b5e24bc06f2d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/504683
Reviewed-by: Slava Egorov <vegorov@google.com>
Commit-Queue: Alexander Markov <alexmarkov@google.com>
2026-05-20 12:46:04 -07:00
Alexander Markov 1aa61dabf7 [modular_aot] Fix accesses to certain fields of Dart objects
Issue: https://github.com/dart-lang/sdk/issues/61635
Change-Id: I4c14828fec7487b2d97643d8089fb2d4a18e754e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/505020
Commit-Queue: Alexander Markov <alexmarkov@google.com>
Reviewed-by: Slava Egorov <vegorov@google.com>
2026-05-20 11:43:22 -07:00
Alexander Markov c0902a81a0 [modular_aot] Code generation for NullCheck
Issue: https://github.com/dart-lang/sdk/issues/61635
Change-Id: I0a3ba9dae62514ed9330366e9e4e33b38f44e4c8
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/504760
Reviewed-by: Slava Egorov <vegorov@google.com>
Commit-Queue: Alexander Markov <alexmarkov@google.com>
2026-05-20 11:42:54 -07:00
Ryan Macnak 25a757da3e Reland "[build] Generate AOT snapshots in the SDK as dylibs on Mac."
Also apply code signing like we do for C++ binaries.

Cq-Include-Trybots: luci.dart.try:dart-sdk-mac-try,dart-sdk-mac-arm64-try
Change-Id: If2a379c0cde556ad3198cafc5b53a386bd265197
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/504721
Reviewed-by: Alexander Markov <alexmarkov@google.com>
Commit-Queue: Ryan Macnak <rmacnak@google.com>
2026-05-20 11:33:39 -07:00
Brian Wilkerson a16de199d7 Convert many lint tests to use markdown
This is a rediculously large CL, and if you want me to split it up I'm
willing to do so.

However, the changes were all made by running a script I wrote and then
running the formatter over the code, so hopefully a spot-check will be
sufficient.

Change-Id: Ifc59b2cc3bf9e4edf0229a130cd587dc73f95615
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/505042
Reviewed-by: Samuel Rawlins <srawlins@google.com>
SLSA-Policy-Verified: SLSA Policy Verification Service <devtools-gerritcodereview-exitgate@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2026-05-20 11:27:11 -07:00
Sam Rawlins 73b76b93b3 DAS: Make more fields final or visibleForTesting
Change-Id: I43812c53605ed722dec7f45377b5d5cfbe6ef443
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/504762
Reviewed-by: Keerti Parthasarathy <keertip@google.com>
Commit-Queue: Samuel Rawlins <srawlins@google.com>
2026-05-20 10:09:44 -07:00
Danny Tuppeny da6eab18cb [analysis_server] Extract custom protocol classes to their own files
No functional changes here, it just extracts definitions of custom protocol classes that are not trivial into their own files.

Change-Id: I0194a3074d280b6423dfae8b5e522ec536ce0dab
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/504560
Commit-Queue: Keerti Parthasarathy <keertip@google.com>
Reviewed-by: Keerti Parthasarathy <keertip@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2026-05-20 09:52:18 -07:00
Konstantin Shcheglov 3009984866 CQ. Replace many parseStringWithErrors() with parseTestCodeWithDiagnostics().
Change-Id: Id992c63a83bbb8eb2f2539f8735b72ee1c3a2e39
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/504121
Reviewed-by: Johnni Winther <johnniwinther@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2026-05-20 09:34:54 -07:00
Konstantin Shcheglov 29ca3eb0dd CQ. Remove assertNoErrorsInCode(), use resolveTestCodeWithDiagnostics().
Change-Id: Ifc5591e192ddf48d4c4da3ffb653cc4d0fc26b61
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/504300
Reviewed-by: Johnni Winther <johnniwinther@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2026-05-20 09:26:24 -07:00
Konstantin Shcheglov 39fcaa5d01 Augment. Allow 'static abstract' fields.
Change-Id: I42c4bbb9193c2debd3661898a8c410f76916958a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/504720
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Johnni Winther <johnniwinther@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2026-05-20 08:49:01 -07:00
Konstantin Shcheglov a07da4d626 Augment. Order AST modifier tokens by the specification.
Update generated AST node metadata and token ordering so child entities,
begin tokens, and reconstructed source follow the grammar order for
modifier tokens.

Place `augment` before declaration modifiers on class type aliases and
the affected top-level and class-level declarations. Order field
modifiers as `augment external static abstract covariant`, and order
named formal parameter modifiers as `required covariant`.

Also emit the missing modifier tokens in `ToSourceVisitor` so source
reconstruction preserves augmentation syntax and the canonical modifier
order.

Change-Id: I57b4aa05f856779526bc3c8d5e3319d8c260bc49
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/504682
Reviewed-by: Johnni Winther <johnniwinther@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2026-05-20 08:41:46 -07:00
Alexander Aprelev 58047e7d94 [vm/native_api] Ensure isolate is not available for duration of native port operations.
Follow-up to 5a98fe5564.

TEST=ci

Change-Id: I62269b713968f0d0e436d86b7d7b481fc5b52cc5
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/501620
Commit-Queue: Alexander Aprelev <aam@google.com>
Reviewed-by: Martin Kustermann <kustermann@google.com>
Reviewed-by: Ryan Macnak <rmacnak@google.com>
2026-05-20 08:40:17 -07:00
Jake Macdonald 82a952f14a Fix casting of List<String> parameters in VM service generator.
Also updates special cased handling of the `scope` parameter to instead work for any Map typed parameter.

Simplified things in general here by casting values to the correct collection type and then relying on `.cast()` to fill in the proper generic types instead of explicitly filling them in.

Change-Id: I7fef91105ca73ee9726780abd76e92817a9e46c0
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/504780
Commit-Queue: Jake Macdonald <jakemac@google.com>
Auto-Submit: Jake Macdonald <jakemac@google.com>
Reviewed-by: Ben Konyi <bkonyi@google.com>
2026-05-20 08:28:31 -07:00
Ryan Macnak b2911c0bf1 Fix GCC build.
TEST=ci
Bug: https://github.com/dart-lang/sdk/issues/63406
Change-Id: I3bb3963fcc182777c5d2c0e062ae4bbf3c5aae75
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/504800
Reviewed-by: Alexander Markov <alexmarkov@google.com>
Commit-Queue: Ryan Macnak <rmacnak@google.com>
2026-05-20 08:21:30 -07:00
Sam Rawlins 5f2c7f7ef0 DAS: Replace RequestConverter with extensions
Preliminary work before introducing a 'setAnalysisRoots' request

Also remove inferred types, in the tests. Very old style.

Change-Id: Id4495702419f1e219f758c509fdc617f6d411d54
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/504761
Commit-Queue: Samuel Rawlins <srawlins@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2026-05-20 07:36:29 -07:00
Tess Strickland 2b9e597980 [vm] Fix CanonicalizeHash for TypedData.
Previously, the loop threw away the calculated hash value, so the
finalized hash was only the combined hash from the length plus last
byte.

Fix this, and also use 32-bit chunks as much as possible to reduce the
number of iterations for larger typed data objects.

TEST=ci

Change-Id: I0c033701232f1a1299356cab0b09079f9f86c026
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/504980
Reviewed-by: Ryan Macnak <rmacnak@google.com>
Commit-Queue: Tess Strickland <sstrickl@google.com>
2026-05-20 06:38:42 -07:00
Chloe Stefantsova e7461ea9e7 [cfe] Adjust initializer's parent in ConstantsTransformer
The parent of the initializer is set to the `VariableInitialization`
node, while previously it was set to the corresponding variable. There
is no observable change for the ouptut for the old variables. For the
new variables, the adjustments restores the expected parent relation
and addresses some verification issues.

Part of https://github.com/dart-lang/sdk/issues/61572

Change-Id: Ie81b1a06078867076c4aad42fb213fd09e4a3f73
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/504960
Reviewed-by: Johnni Winther <johnniwinther@google.com>
Commit-Queue: Chloe Stefantsova <cstefantsova@google.com>
2026-05-20 06:22:16 -07:00
Slava Egorov bc16ca4d51 [vm] Preserve ThreadLocal value if dart::Thread is reclaimed
dart::Thread object representing Isolate's mutator can be reclaimed when
thread is suspended, so we need to preserve thread_locals on Isolate
itself.

TEST=vm/dart/thread_local_test

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

Change-Id: I7502b9bc67a07fb2e82479d3052740516a6a6964
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/504921
Commit-Queue: Slava Egorov <vegorov@google.com>
Reviewed-by: Martin Kustermann <kustermann@google.com>
2026-05-20 06:21:29 -07:00
Chloe Stefantsova cbb94bc140 [cfe] Add SourceLoader.isClosureContextLoweringEnabled
This is a follow-up to
https://dart-review.googlesource.com/c/sdk/+/497240/comment/275b2e79_902b4da9/

Part of https://github.com/dart-lang/sdk/issues/61572

Change-Id: I476d3ed9a5e02bc639c5848c064d89ee0d4f742e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/504520
Commit-Queue: Chloe Stefantsova <cstefantsova@google.com>
Reviewed-by: Johnni Winther <johnniwinther@google.com>
2026-05-20 06:07:28 -07:00
Tess Strickland 58e0b77bd6 [vm,dyn_modules] Fix source reports for enhanced enums with bytecode.
Coverage information for enhanced enums should not include initializer
functions for enum elements or the values field, so skip over these when
the enum is defined in bytecode.

TEST=vm/cc/SourceReport_Coverage_IssueCov386_EnhancedEnums

Cq-Include-Trybots: luci.dart.try:vm-dyn-linux-debug-x64-try,vm-aot-dyn-linux-debug-x64-try,vm-aot-dyn-linux-product-x64-try
Change-Id: I1dba3c87fdfcc39762bba5f0c35cfd061ec76371
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/504240
Commit-Queue: Tess Strickland <sstrickl@google.com>
Reviewed-by: Alexander Markov <alexmarkov@google.com>
2026-05-20 06:04:16 -07:00
Martin Kustermann 84704290ab [vm] Change various external FFI declarations from Object to Object?
The C side can return any object, including `null`, we should therefore
change those declarations to return top type / `Object?`.

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

TEST=https://dartbug.com/63411

CoreLibraryReviewExempt: Internal only changes
Change-Id: I6478e39113fba5d422059de62b88fe738ddbfc05
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/504920
Commit-Queue: Martin Kustermann <kustermann@google.com>
Reviewed-by: Slava Egorov <vegorov@google.com>
2026-05-20 02:28:18 -07:00
Simon Binder 58f9d88fb2 [dart2wasm, standalone] Migrate String
This migrates the `String` implementation from using JS interop to
explicit host imports for the standalone target.

This moves a few helper methods shared between the JS and standalone
targets to `dart:_string_helper`. This also moves the embedder regexp
implementation to `dart:_string` to be able to access internals in some
string methods (similar to how the JS implementation special-cases
`JSSyntaxRegExp`).

This removes the final real use of JS-interop in the standalone target.
So, we can:

 - Remove internal JS helper libraries from the target.
 - Skip JS-interop transformations in the compiler.
 - Stop emitting a helper module and support script.

Because `js_interop` is imported in `dart:_wasm`, we can't remove the
library entirely. This replaces it with a stub to avoid compilation
errors, a proper removal is tracked in dartbug.com/63166.

Change-Id: Ide495c210c3a272438deebf8fe4f3f44ba314ffa
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/501960
Reviewed-by: Martin Kustermann <kustermann@google.com>
Reviewed-by: Kevin Moore <kevmoo@google.com>
Commit-Queue: Martin Kustermann <kustermann@google.com>
2026-05-20 00:22:27 -07:00
Sam Rawlins 3de2ddee09 Reapply "Switch on building devtools from source when building the Dart SDK"
This reverts commit 2a93a26d91, which a change to use `defined` so that the GN script does not crash in
Flutter.

Fixes flutter/devtools#9786

See go/moving-devtools-to-dart-sdk-2025.

In this change, we make the source of devtools be configurable, in
actions like build_sdk.

If `build_devtools_from_sources` is true, we build local devtools,
and if false, we continue to use the prebuilt sources.

This may be an intermediate step, while we test out building devtools
from source. Or it may be permanently be a choice, if we keep building
with CIPD.

Change-Id: I9d509b07971942f2c4884224a6efda9001522bd4
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/502120
Reviewed-by: Alexander Thomas <athom@google.com>
Commit-Queue: Samuel Rawlins <srawlins@google.com>
2026-05-19 20:55:22 -07:00
Kallen Tu efd30a2de0 [migrate] Initial implementation of SDK constraint bumping.
Uses the pubspec util `computeVersionBumpEdit` that bumps the pubspec
file's `sdk:` one minor version up.

Very basic iteration through the given pubspec files to bump all of
them. We'll very likely have to refactor this as we get the pre/post
migrations involved, but I wanted to get there in small (reviewable)
steps.

Bug: https://github.com/dart-lang/sdk/issues/63268
Change-Id: I2a7abeacdc76b114dfef7888cd6db6bc8973d01a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/504381
Commit-Queue: Kallen Tu <kallentu@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2026-05-19 14:11:50 -07:00
Danny Tuppeny 0888111999 [analysis_server] Add protocol classes for new interactive forms
Change-Id: Iefb251c2a4982bf4118430e0f2885f248e1b5a57
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/504540
Reviewed-by: Keerti Parthasarathy <keertip@google.com>
Commit-Queue: Keerti Parthasarathy <keertip@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2026-05-19 12:23:39 -07:00
Danny Tuppeny ddeb964d80 [analysis_server] Handle some reserved names ("default", "new") in LSP codegen
Both of these names are used in the JSON in the Go-spec'd refactoring support, so we need to map them to new names.

We had some existing code for mapping some kinds of names (like enums), but not for JSON fields in interface classes.

See https://github.com/dart-lang/sdk/issues/63371

Change-Id: Ic223a783be9170774444844bb1934a3733ddf446
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/504261
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Keerti Parthasarathy <keertip@google.com>
Commit-Queue: Keerti Parthasarathy <keertip@google.com>
2026-05-19 12:12:02 -07:00
pq 04c6612781 [analytics] propagate analytics environment variables to subtools
Updates the main `dartdev` command runner to read and propagate the unified analytics environment variables (`DASH__SUPPRESS_ANALYTICS` and `DASH__TOOL`) to all spawned isolates and child processes using the handy new `VmInteropHandler.setEnvironmentVariable` support (see: https://dart-review.googlesource.com/c/sdk/+/499300).

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



Change-Id: Iae68790a2cf861dd01edbea81f9faf7d7529f5f2
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/504321
Reviewed-by: Ben Konyi <bkonyi@google.com>
Commit-Queue: Phil Quitslund <pquitslund@google.com>
2026-05-19 11:57:42 -07:00
Ryan Macnak 039aef728a [standalone] Remove the fallback root certificates.
The discovery of the system root certificates is more robust after 2142d8e148.

TEST=ci
Change-Id: I8215cb92f98e620b82f21261c13e061a2b488b5d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/433923
Reviewed-by: Slava Egorov <vegorov@google.com>
Commit-Queue: Ryan Macnak <rmacnak@google.com>
2026-05-19 11:20:48 -07:00
Ryan Macnak 1b850ae2be Revert "[build] Generate AOT snapshots in the SDK as dylibs on Mac."
This reverts commit 7cc84b94b3.

Reason for revert: fail to launch, need to setup code signing

Original change's description:
> [build] Generate AOT snapshots in the SDK as dylibs on Mac.
>
> Change-Id: I95efe7342e595b44bfce1a15229b926a721aea82
> Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/499480
> Reviewed-by: Alexander Markov <alexmarkov@google.com>
> Commit-Queue: Ryan Macnak <rmacnak@google.com>

Change-Id: I4a2742ddc4a39166ea4b642ee12661a8217e7417
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/504681
Reviewed-by: Alexander Markov <alexmarkov@google.com>
Commit-Queue: Ryan Macnak <rmacnak@google.com>
Bot-Commit: rubber-stamper@appspot.gserviceaccount.com <rubber-stamper@appspot.gserviceaccount.com>
2026-05-19 11:10:25 -07:00
Nicholas Shahan 68a3d4e688 [ddc] Allow blocks to appear in scope offset test
With the addition of the const constructors in extension types there
are now blocks appearing in SDK outline .dills.

The missing file offsets were added in
https://dart-review.googlesource.com/c/sdk/+/497842.

Fixes: https://github.com/dart-lang/sdk/issues/63226
Change-Id: I7e40578927008f39c54366f39bef300dbcb45e27
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/504400
Reviewed-by: Nate Biggs <natebiggs@google.com>
Commit-Queue: Nicholas Shahan <nshahan@google.com>
Auto-Submit: Nicholas Shahan <nshahan@google.com>
Commit-Queue: Nate Biggs <natebiggs@google.com>
2026-05-19 10:26:05 -07:00
Nate Biggs db2d7531f3 Update chrome, firefox, d8, jsc, and jsshell versions.
Change-Id: I139bf9985bf447e9c6abd09024fb80e8b6b7f625
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/504660
Reviewed-by: Nicholas Shahan <nshahan@google.com>
Commit-Queue: Nate Biggs <natebiggs@google.com>
2026-05-19 10:12:11 -07:00
Konstantin Shcheglov eba2982bc8 Augment. Report augmentationInducedGetterReturnTypeMismatch.
Report a dedicated diagnostic when an augmenting field or top-level
variable induces a getter whose return type differs from the getter
being augmented.

Previously, augmentation return type checking only covered executable
declarations with explicit return type annotations. Variable
augmentations that induced getters could therefore miss this mismatch,
or would not describe the induced getter case directly.

Add the new diagnostic code and use it for getter fragments induced by
variables. Keep the existing augmentation return type mismatch
diagnostic for methods and explicitly declared getters, and report the
induced getter diagnostic on the variable name so that mismatches in
multi-variable declarations are attributed to the specific variable.

Change-Id: Ifb421112d659815070110834702f68616e360a10
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/504181
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Johnni Winther <johnniwinther@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2026-05-19 09:48:27 -07:00
dart-autoroll@skia-public.iam.gserviceaccount.com 416ce754cb Roll Fuchsia Test Scripts from R2EllDf4DgBXVNuiN... to dQ4PjIJB5kZFU8Y32...
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/fuchsia-test-scripts-dart-sdk
Please CC fuchsia-3p-engprod@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in Fuchsia Test Scripts: https://bugs.fuchsia.dev/p/fuchsia/issues/list
To file a bug in Dart SDK: https://github.com/dart-lang/sdk/issues

To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md

Cq-Include-Trybots: luci.dart.try:vm-fuchsia-release-x64-try;luci.dart.try:vm-fuchsia-release-arm64-try
Change-Id: Ia383ffdacc942b074e3c78c43a778b5003104d46
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/496204
Reviewed-by: Ryan Macnak <rmacnak@google.com>
Reviewed-by: Zijie He <zijiehe@google.com>
Commit-Queue: Zijie He <zijiehe@google.com>
2026-05-19 09:13:46 -07:00
Ryan Macnak 6a9b9b331c [vm, compiler] Fix calculation to find the beginning of the FFI callback stub on ARM32.
TEST=ci
Bug: https://github.com/dart-lang/sdk/issues/63402
Change-Id: I4aff8d6dca9aa71fd68275fd495b7dba2e119df5
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/504401
Commit-Queue: Ryan Macnak <rmacnak@google.com>
Reviewed-by: Alexander Markov <alexmarkov@google.com>
2026-05-19 09:06:20 -07:00
Keerti Parthasarathy c4ce9dbdfd Add a skill for finding obsolete issues in the Analysis Server open issues.
This is an initial commit. Plan to add
- if repro is available, agent to test it out
- add failing tests where possible


Change-Id: I35c63a0e4183b7609643fb7d851f1b25a2025c74
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/503623
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Keerti Parthasarathy <keertip@google.com>
2026-05-19 08:06:14 -07:00
Sigurd Meldgaard e1c29b6381 Bump pub to ec276d10a7fa0f6c6ec005340fb9ad29f3b012d0
Changes:
```
> git log --format="%C(auto) %h %s" 7440821..ec276d1
 https://dart.googlesource.com/pub.git/+/ec276d10 Remove unintended `-v` flag from binstub template (4821)
 https://dart.googlesource.com/pub.git/+/d5fca3ae Quiet warning instead of stack trace when failing to parse advisories (4817)
 https://dart.googlesource.com/pub.git/+/b5263b3f Separate state for sources (4811)
 https://dart.googlesource.com/pub.git/+/764c4b3e add: when no descriptor given, use descriptor from existing resolution if present (4801)
 https://dart.googlesource.com/pub.git/+/1bceb7ac Bump test from 1.29.0 to 1.31.0 (4799)
 https://dart.googlesource.com/pub.git/+/64f18711 Add dependency constraints natively to `pub deps --json` (4797)
 https://dart.googlesource.com/pub.git/+/5ebb0f11 `outdated` Include replacement text in --json output (4793)
 https://dart.googlesource.com/pub.git/+/c5275713 Avoid flaky replacements when filtering for goldens (4794)
 https://dart.googlesource.com/pub.git/+/2dda3a3e Bump analyzer from 10.0.2 to 10.2.0 (4777)
 https://dart.googlesource.com/pub.git/+/03d73494 Bump source_span from 1.10.1 to 1.10.2 (4753)
 https://dart.googlesource.com/pub.git/+/1ec99bf1 Bump checks from 0.3.0 to 0.3.1 (4618)
 https://dart.googlesource.com/pub.git/+/b00da1e0 Use kernel to compile tests (4795)
 https://dart.googlesource.com/pub.git/+/7bd9ac74 Don't download via the cache in `pub unpack` (4785)
 https://dart.googlesource.com/pub.git/+/72d16f60 Support safe.bareRepository=explicit (4776)

```

Diff: https://dart.googlesource.com/pub.git/+/74408212b5348003381bc63f3b59274aaa23cfa3..ec276d10a7fa0f6c6ec005340fb9ad29f3b012d0/
Change-Id: I4682a8de2bdb2bec8cfabe9e64957bba90ccc2e1
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/504640
Commit-Queue: Jonas Jensen <jonasfj@google.com>
Reviewed-by: Jonas Jensen <jonasfj@google.com>
Auto-Submit: Sigurd Meldgaard <sigurdm@google.com>
2026-05-19 07:54:41 -07:00
Ryan Macnak a8419fb546 [build] Fix building the Debian package on Resolute.
dpkg-buildpackage now wants a timestamp in the changelog.

Also remove --git-revision-file and --git-timestamp-file, which were part of the previous way to build Debian packages.

Change-Id: Idbcf418571889ad7588424e6d8ae6e81ec79942b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/504280
Reviewed-by: Ivan Inozemtsev <iinozemtsev@google.com>
Commit-Queue: Ryan Macnak <rmacnak@google.com>
2026-05-19 07:18:47 -07:00
Ryan Macnak 6613ac694e [infra] Fix wasted parent machine time on vm-mac-{debug,release}-arm64.
A test shard will run on the parent only if the tests are the last step.

Change-Id: Ib251abe84c631330432b1cdd75897cb0f540a6fc
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/504281
Commit-Queue: Ryan Macnak <rmacnak@google.com>
Reviewed-by: Ivan Inozemtsev <iinozemtsev@google.com>
2026-05-19 07:17:52 -07:00
Chloe Stefantsova 10dd51ee4c [cfe] Verify new variables have contexts
Part of https://github.com/dart-lang/sdk/issues/61572

Change-Id: I01295904c8fd5f76574e8979eb40e4cd174f9e09
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/504202
Reviewed-by: Alexander Markov <alexmarkov@google.com>
Reviewed-by: Johnni Winther <johnniwinther@google.com>
Commit-Queue: Chloe Stefantsova <cstefantsova@google.com>
2026-05-19 04:29:29 -07:00
Tess Strickland 52cfd29cbb [vm,dynamic_modules] Add RecordCoverage instruction.
The RecordCoverage instruction has an A/E encoding. The A argument
is the type of coverage being recorded, whereas the E argument is
the logical index into the coverage array for updating whether that
source position has been hit.

Also adds new metadata to the bytecode component for the coverage
arrays associated with bytecode containing RecordCoverage instructions
and a new runtime entry for lazily allocate the coverage array for
an interpreted function when needed.

The type of coverage is encoded in the RecordCoverage instruction,
despite being redundant with the information in the coverage array, so that checking whether that type of coverage is currently enabled at
runtime doesn't require either accessing the coverage array (which may
be lazily allocated), forcing allocation of the coverage array just to
discover that type of coverage is currently disabled, or reading the
serialized bytecode component to avoid that forced allocation.

------

Other changes:

Source reporting now treats unexecuted interpreted functions when
not forcing compilation as if they were uncompiled native functions,
so that the source report from running the same code gives the same
result whether using the interpreter or the native compiler.

Bytecode closures are no longer skipped in source reports. Previously
any closure without a context scope was skipped, but bytecode closures
don't have those.

TEST=vm/cc/SourceReport_Coverage

Cq-Include-Trybots: luci.dart.try:vm-dyn-linux-debug-x64-try,vm-aot-dyn-linux-debug-x64-try,vm-aot-dyn-linux-product-x64-try
Change-Id: I7557e5dd4c98331c7ca2f5c867dd5f6d03e9d756
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/501520
Reviewed-by: Alexander Markov <alexmarkov@google.com>
2026-05-19 04:27:39 -07:00