For instructions on installing the Dart or Flutter extensions, go here.
v3.70.0 2023-08-01
Editor
- #4637: A new setting
dart.sdkSwitchingTarget
allows you to configure the SDK Picker to modify the selected SDK globally, instead of only for the current workspace. - #4630: The “SDK configured in dart.[flutter]sdkPath is not a valid SDK folder” warning message now opens the specific settings file that configures the invalid path (instead of always User Settings).
Flutter
- #4632: The Flutter device picker now shows the IDs of devices so that two devices of the same kind can be differentiated.
Testing
- #4586: Test gutter icons will no longer show on the wrong lines on Windows when using functions that wrap calls to
test()
(such as Flutter’stestWidgets
). This fix requires updating to the latest version ofpackage:test
for Dart projects, and will require a future Flutter SDK release for Flutter.
Misc
- #4652: Connecting to a remote Live Share session from Windows will no longer sometimes try to analyze your local disk.
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. Many are already available in the current beta channels though some are currently only available on bleeding-edge builds and will show up in future beta/stable SDK releases.
- #4518/#4159/#1831: The new Move to File refactoring is no longer behind an experimental flag.
- #4573: Some stack traces printed to the Debug Console will no longer try to open files using incorrect relative paths when clicking on the filename on the right side.
- #4636: Basic evaluation support is now available from the Debug Console when execution is not paused.
- #4106: The Open Symbol in Workspace search is now significantly faster for workspace with large numbers of projects.
- #4364: Code completion inside files that are
part of
libraries with a large number of files is no longer extremely slow when the results contain snippet or@override
completions. - #4561: When the Fix All command (
"source.fixAll"
) is triggered automatically (for example because it was added to"editor.codeActionsOnSave"
), removing unused imports is now excluded. If you want to remove unused imports on save, you can additionally add"source.organizeImports"
to"editor.codeActionsOnSave"
. - #4576: The Fix All command now applies fixes iteratively, so if the result of applying one fix causes a warning that also has a fix, that will be resolved too.
- #4621: The Convert to StatelessWidget refactor now correctly removes instances of
widget.
inside function expressions. - #4627: Hovering over an identifier declared in a
for
loop variable now shows the type.
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!