For instructions on installing the Dart or Flutter extensions, go here.
v3.104.0 2025-02-03
Removing Support for Old SDK Versions
As previously announced, support for older Dart/Flutter SDKs is being removed from the extension. This version of the extension (v3.104) is the last version that will work with SDKs earlier than Dart 3.0 and Flutter 3.10. If you’re using an affected SDK, a one-time notification will be shown.
In the next release of the extension, code supporting these SDK versions will be removed. A table showing which extension versions support which SDKs (and instructions on how to change extension version) is available on the SDK Compatibility page if you need to continue to use unsupported SDKs.
Color Previews in Code Completions
#3941: When using the latest stable version of Flutter, in addition to the large dartdoc previews for the currently selected completion item, color previews are now shown inline against each color completion even when not selected.
Improved Version Manager Support
#5334/#5377/#5117: @davidmartos96 contributed new settings dart.getFlutterSdkCommand
and dart.getDartSdkCommand
that allow executing a command to locate the Dart/Flutter SDKs to use for a workspace. This improves compatibility with some SDK version managers (such as mise
and asdf
) because they can be queried for the current SDK instead of reading from PATH
(or package.json
).
Editor
- #5378: The Add ‘x’ to dependencies quick-fix no longer tries to use a malformed package name when the imported URI contains more than one forward slash.
Misc
- #5401: When using a VS Code workspace (
.code-workspace
file), relative paths in settings are now resolved relative to the folder containing the workspace file instead of the first folder in the workspace.
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.
- #5369: Functions assigned to local variables no longer fail to highlight other references correctly (instead, highlighting everything with the same name) when the text cursor is at their position.
- #5365: Opening DevTools pages with the WASM experiment enabled no longer produces invalid URLs.
- #5363: The debugger no longer incorrectly evaluates values for initializing parameters instead of class variables inside constructor bodies.
- #5360/#4418: Stack traces printed to the Debug Console now have clickable links on the right hand side when the output has a prefix like
I/flutter
. - #5359: Diagnostics no longer produce “Illegal argument: character must be non-negative” errors that prevent diagnostics updating for some kinds of invalid parameters in constant constructor calls.
- #5350: Extract Method now uses the newer
Function()
syntax avoiding some generating diagnostics for function types with unnamed parameters. - #5343: Lints no longer run for files that don’t exist, which prevents a persistent
lower_case_with_underscores
diagnostic if a file tries to import a non-existant file with a violating name.
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!