For instructions on installing the Dart or Flutter extensions, go here.
v3.94.0 2024-08-01
Flutter
- #5180: Enabling a new platform no longer fails if Flutter has recently been upgraded and emits a welcome banner when trying to read config via
flutter config --machine
. - #5174: Wrapper scripts (that are not symlinks) named
flutter
onPATH
inside a folder namedbin
(such as at/usr/bin/flutter
) no longer produce invalid Flutter SDK paths leading to “Could not find Dart in your Flutter SDK” messages. Additionally,/opt/flutter
is included as an automatic search path for the Flutter SDK. - #5164: Stepping into Dart SDK sources when using the latest Flutter
beta
no longer downloads additional copies of source files from the VM when they should be opened from disk.
Debugger
- #5183/#5204: Issues where Flutter debug sessions on Windows would fail to launch when using VS Code 1.92 (currently Insiders) have been resolved.
- #5191: Debug sessions no longer fail to start if the Dart Tooling Daemon failed to start.
- #4734: A change so that breakpoints are resolved eagerly and should turn red (if valid) immediately rather than only when the function first executes is now in the Flutter/Dart
beta
channel. Additionally, an issue that could cause breakpoints to appear to jump to the wrong line (even though internally they were still set on the requested line) has been resolved.
Editor
- #5156: Using analysis server plugins on the latest Dart/Flutter beta no longer produces errors like “URI scheme ‘c’ is not supported” on Windows.
- #5192: Modifying a pubspec in a template project (something that contains
__
or{
in the folder name) no longer triggerspub get
. - #5189: Manually saving a
pubspec.yaml
in a project namedbuild
(such aspkg:build
) now triggerspub get
(file changes on disk for folders namedbuild
still do not).
Commands
- @rodrigogmdias contributed #5175: A new command Pub: Get Packages for All Projects will fetch packages for all projects in the workspace instead of only the project for the active file.
DevTools
- #5208: Opening static DevTools extensions no longer fails when there are no active debug sessions.
- #5089: Icons used in the debug toolbar for launching DevTools have been updated to better match the icons used within DevTools.
Misc
- #5067: Using Pub Workspaces no long results in spurious notifications of needing to run
pub get
because projects don’t have their own.dart_tool/package_config.json
file. - #5155: Improvements have been made to extension shut down to reduce the chance of orphaned processes after closing VS Code.
- @FMorschel contributed #5203: Improved the descriptions on log settings that support substitutions like
~
. - @FMorschel contributed #5188: Fixed typos and improved consistency of log settings descriptions.
- #5184: Using variables like
${name}
or${kind}
in the name of a folder for debugging logs no longer results in empty folders being created with those literal tokens before the debug session starts. - #5154: All log files now support
${workspaceName}
which will be replaced by the name of the current open workspace/folder. - #5187:
dart.dapLogFile
now supports using${name}
to insert the debug session name (matching other debugging log files). - #5186: Debugging log files now support using
${kind}
to insert a description of the kind of debug session (dart
,dart_test
,flutter
,flutter_test
). - #5186: Legacy debugging log file settings are now in the “Legacy” settings section.
Features/Fixes Enabled with Future SDKs
The following items depend on changes to the Dart/Flutter SDKs that have not yet been released to stable channels. They may be available to test in the current beta/master channels and will show up in future SDK releases.
- #5205: “Go to Type Definition” now works for
for-in
loop variables. - #5202: The “Don’t show again” option for “Project contains issues that can be fixed by dart fix” prompt now correctly persists across sessions.
- #5169: “Format Selection” can no longer format the entire file if the algorithm to minimize edits fails.
- #5198/#5200: Formatting no longer fails to produce minimal edits (which can result in breakpoints positions being lost) for various kinds of formatting changes including collapsing empty collections from multiple lines into one, removal of trailing whitespace in comments, wrapping/unwrapping of consecutive
>
in type parameters. - #5199: Displaying numbers as hex in the debugger now applies to lists from
dart:typed_data
such asUint8List
. - #5153: Parameter hints are now available on callable classes.
- #5197: Running the Dart: Capture Debugging Logs command while a session is running is now able to capture VM Service traffic.
- #5193: Many improvements have been made to breakpoints that should reduce the chance of seeing grey/unverified breakpoints until they are hit, or breakpoints that are displayed in the wrong location after hot restarts.
- #5162: Code completion for returning from function expressions now correctly takes into account the return type of the function and includes suggestions for things like record fields.
Upstream Issues
Some feature requests and fixes require new features and fixes in upstream projects like VS Code and LSP which use counts of 👍s on those issues to help gauge demand. The Dart-Code website now lists some of the most significant upstream issues with a description of the feature/fix they would enable. Please consider reviewing this list and adding your 👍 to any GitHub issues relevant to features you’d like to see!