For instructions on installing the Dart or Flutter extensions, go here.
v2.9.2
- Running
Flutter: New Project
will no longer complain about missing SDKs ifdart
is not in yourPATH
v2.9.1
- A more appropriate error message is now shown when running
Flutter: New Project
when Flutter cannot be found
v2.9.0
- A new command (
Flutter: New Project
) has been created to simplify the process of creating and opening a new Flutter project (unlike others, this command is in the palette even without a project open) - Flutter and Dart debuggers have been merged, you will no longer be asked to choose between Flutter and Dart when running new projects!
- As part of this, the
type
attribute on launch configurations in yourlaunch.json
will be automatically changed fromdart-cli
/flutter
todart
upon opening the project
- As part of this, the
- Flutter projects no longer require a
launch.json
file if being launched with default arguments; if you hit F5 in a project without one it will just launch immediately - If your packages are missing or out of date you will be prompted to run
pub get
/flutter packages get
upon loading your project (this can be disabled with the newdart.promptToGetPackages
setting, which can be set at the folder level) - Snippets have been added for Flutter widgets (
stless
,stful
,stanim
) and will show only inside Flutter projects - Quick Fixes and other code actions that insert code now support tab stops and selections (for example the
Wrap with new widget
assist will now select the textwidget
for you to type over) - Code completions will no longer insert parentheses/argument placeholders if they are already present
- Code completions will no longer insert named argument placeholders if a value is already present
- A spinner will be shown in the status bar during analysis
- A spinner will be shown in the status bar while Flutter/Pub commands are running
- Quick fixes will now be sorted in the lighbulb menu by the severity of the error that they fix
- Quick fixes and code assists are now categorised as QuickFix and Refactor in Code to allow for keybinding a specific type
- SDKs will now be listed by version number in the SDK picker
- Snippets will no longer be prioritised over other completions in the completions list
- A workaround for a change in VS Code 1.20 that causes breakpoints to not be hit on Windows has been implemented
- Package restore commands will now be terminated and re-run if you invoke them again while they are already running (this includes if you change
pubspec.yaml
and save) - Due to a number of issues with the implementation, external files (SDK, packages) will no longer open read-only (this behaviour may be restored in some form in future)
- Executing package restore commands in a workspace that has no
pubspec.yaml
on Windows will no longer get the extension stuck in a loop - Saving
pubspec.yaml
in a Dart project will no longer runflutter packages get
if you have a Flutter project in the same workspace - Running
Flutter: Get Packages
will no longer sometimes unexpectedly ask you for the workspace folder to run the command in - Opening a Dart file outside of a folder will no longer show errors in the developer console
- A new setting (
dart.previewDart2
) has been added which allows you to opt-in to Dart 2 behaviour such as optionalnew
/const
(you must be using an SDK that supports this!)
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!