For instructions on installing the Dart or Flutter extensions, go here.
Support for Flutter Profile and Release Modes
You can now create launch configurations for
release modes for Flutter apps. For now, this requires you to create a
launch.json and set the
For more information on using profile and release modes, see Running Flutter Apps in Profile or Release Modes.
Flutter Memory Usage Monitoring
When running a
profile build (or if you set
showMemoryUsage in your launch configuration) the total memory for your applications heaps will be shown in the status bar.
Note: This is heap usage and not total process memory. In debug builds it may not be reflective of actual usage in a release build.
Progress Notifications for Long Running Tasks
Long running tasks like
Flutter: Get Packages and Flutter builds will now show more obvious progress notifications with progress animations.
As part of this, these actions may also now be cancelled from the
x in the notification.
Flutter Icons in Tooltips and Completion Descriptions
Flutter icons now show correctly in tooltips and completion descriptions instead of chunks of HTML.
Extract Widget Refactor
Extract Widget refactor is now available on the lightbulb menu that creates a new Widget class and inserts a call to its constructor in the original position.
Extract Method Refactor
Extract Method refactor is now available on the lightbulb menu.
Better Feedback for Failed Renames
Failed renames will now show errors directly in the editor instead of window-scoped notifications that require dismissing. In an upcoming VS Code release we will stop the rename input box from appearing at a location that does not support a rename.
Preview: Better Handling of Windows Paths
A new setting (
dart.previewExperimentalWindowsDriveLetterHandling) has been added. Setting this value to
true will cause all drive letters to be converted to uppercase when Dart Code interacts with services like the analysis server. This should fix a number of issues affecting Windows users (unexpected errors like
Type 'x' cannot be assigned to type 'x' or completion and errors not updating when referencing code with
package: imports). In future this behaviour may become the default so please try it out and send feedback.
- Exception messages shown in popups during debugging are no longer truncated
F5in a Flutter project will no longer pick
bin/main.dartto execute over
- More output from
flutter runwill be shown in Debug Console
- The display of lists and maps in the debugger variables pane has been improved
Add to Watchaction on variables (in the debugger variables pane) will now correctly populate watch expressions
Slow Mode Banneris now known as
Debug Mode Banner
- @343max contributed a
dart.flutterSelectDeviceWhenConnectedsetting to control whether to automatically select the most recently connected device in Flutter projects (defaults to
trueto preserve current behaviour)
- Organize Imports is now bound to
- A new
dart.organizeDirectivesOnSavesetting has been added
- CPU usage while moving the caret/selection around the editor should be much lower
- Code’s automatic indentation detection will be disabled for Dart since sometimes it picks 4 spaces based on line continuation indenting
- A new
Go to Super Methodcommand has been added
Find Referenceswill now also include the declaration
- TODOs will once again appear in the Problems pane if you set the
- Formatting of the hover tooltips has been improved
- Tooltips will no longer show on import prefixes (there was no useful information in them)
- Duplicate code fixes will no longer show in the lightbulb menu when there are multiple on the same line
- @aemino contributed a fix for ligatures not working correctly on
=>due to them being considered individual tokens
- Analysis of AngularDart now enabled by default (requires a v2 dev SDK) and can be controlled with the dart.analyzeAngularTemplates setting
- The error message shown when the analysis server fails to start will now be more appropriate