For instructions on installing the Dart or Flutter extensions, go here.
v3.84.0 2024-03-01
Move Multiple Files/Folders
#4533: With Dart v3.3 / Flutter v3.19 it’s now possible to move multiple files/folders in a single action and have import
statements updated automatically.
Flutter
- #4954: Improvements have been made to the built-in flow for downloading Flutter. The built-in Git extension will now be included when trying to locate
git
for cloning and error messages have been improved.
Testing
- #4924: A progress notification is now shown immediately when starting a debug session. This should make it clearer when test sessions are starting up until the point that the test starts (and the test icon updates).
DevTools
- #5000: A new DevTools: Open DevTools in Web Browser command is available in the command palette that always opens DevTools in an external browser regardless of embed settings.
- #4997: When using the
dart.customDevTools
setting to run DevTools from source, errors starting DevTools are surfaced better.
Dart Tooling Daemon
- #4984/#4985/#5013/#5017/#5010: Support for the new Dart Tooling Daemon has been added. This daemon is aimed at simplifying communication between Dart and Flutter tools (including DevTools Extensions) in the future.
Misc
- #5001: Due to breaking changes in the code completion APIs, the
dart.useLegacyAnalyzerProtocol
setting is now ignored for Dart SDKs 3.3 and later. The LSP protocol will always be used for these newer SDKs.
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.
- #5002: Pressing
F2
to rename a generic class with the class name selected or the cursor at the end of the class name no longer reports “The element can’t be renamed”. - #4995: Automatic
toString()
invocations in the debugger (controlled by thedart.evaluateToStringInDebugViews
setting) now evaluate up to 100 values per request instead of 11. - #4877: The hover for
Enum.values
no longer incorrectly reports the type asEnum
instead ofList<Enum>
. - #4730: The Copy Value action in the Watch window no longer copies truncated values.
- #4780/#4931: For loops are now foldable.
- #4723: Function expressions are now foldable.
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!