chore(deps): update dependency dart to v3.9.0 #5250
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
3.8.3
->3.9.0
Warning
Some dependencies could not be looked up. Check the Dependency Dashboard for more information.
Release Notes
dart-lang/sdk (dart)
v3.9.0
Compare Source
Released on: 2025-08-13
Language
Dart 3.9 assumes null safety when computing type promotion, reachability, and
definite assignment. This makes these features produce more accurate results for
modern Dart programs. As a result of this change, more dead_code warnings may be
produced. To take advantage of these improvements, set your package's SDK
constraint lower bound to 3.9 or greater (
sdk: '^3.9.0'
).Tools
Analyzer
The dart command-line tool commands that use the analysis server now run
the AOT-compiled analysis server snapshot. These include
dart analyze
,dart fix
, anddart language-server
.There is no functional difference when using the AOT-compiled analysis server
snapshot. But various tests indicate that there is a significant speedup in
the time to analyze a project.
In case of an incompatibility with the AOT-compiled snapshot, a
--no-use-aot-snapshot
flag may be passed to these commands. (Please file anissue with the appropriate project if you find that you need to use this
flag! It will be removed in the future.) This flag directs the tool to revert
to the old behavior, using the JIT-compiled analysis server snapshot. To
direct the Dart Code plugin for VS Code to pass this flag, use the
dart.analyzerAdditionalArgs
setting. To direct the DartIntelliJ plugin to pass this flag, use the
dart.server.additional.arguments
registry property, similar to these steps.
Add the
switch_on_type
lint rule.Add the
unnecessary_unawaited
lint rule.Add an assist to convert a field formal parameter to a normal parameter.
Dart build
dart build -f exe <target>
is nowdart build cli --target=<target>
. Seedart build cli --help
for more info.Dart Development Compiler (dartdevc)
Outstanding async code now checks and cancels itself after a hot restart if
it was started in a different generation of the application before the
restart. This includes outstanding
Future
s created by callingJSPromise.toDart
from thedart:js_interop
and the underlying thedart:js_util
helperpromiseToFuture
. Dart callbacks will not be run, butcallbacks on the JavaScript side will still be executed.
Fixed a soundness issue that allowed direct invocation of the value returned
from a getter without any runtime checks when the getter's return type was a
generic type argument instantiated as
dynamic
orFunction
.A getter defined as:
Could trigger the issue with a direct invocation:
Dart native compiler
Added cross-compilation support for
target architectures of
arm
(ARM32) andriscv64
(RV64GC)when the target OS is Linux.
Pub
Git dependencies can now be version-solved based on git tags.
Use a
tag_pattern
in the descriptor and a version constraint, and allcommits matching the pattern will be considered during resolution. For
example:
Starting from language version 3.9 the
flutter
constraint upper bound is nowrespected in your root package. For example:
Results in
dart pub get
failing if invoked with a version ofthe Flutter SDK different from
3.33.0
.The upper bound of the flutter constraint is still ignored in
packages used as dependencies.
https://github.com/flutter/flutter/issues/954725472 for details.
Configuration
📅 Schedule: Branch creation - "after 4pm on friday,before 9am on monday,every weekend" in timezone Europe/Paris, Automerge - At any time (no schedule defined).
🚦 Automerge: Enabled.
♻ Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.