For instructions on installing the Dart or Flutter extensions, go here.
v3.58.0 2023-01-25
Inlay Hints for Types and Parameter Names
#4154/#3609/#4156: Inlay hints are now available for types and parameter names. Hints will be shown while holding down Ctrl
+Alt
(or Ctrl
+Option
on macOS).
Hovering over an Inlay Hint will show the same hover information as if the hint had been written in the document.
You can change the behaviour with the editor.inlayHints.enabled
setting for Dart:
"[dart]": {
// 'off' - never show
// 'on' - always show
// 'offUnlessPressed' - show only while shortcut keys are held down (default)
// 'onUnlessPressed' - show, but hide while shortcut keys are held down
"editor.inlayHints.enabled": "offUnlessPressed"
},
Note: This feature requires Dart 2.19 / Flutter 3.7 or later.
Type Hierarchy
- #2527/#4217/#3313: An improved Type Hierarchy is now available. It can be accessed from the editor context menu or using the Types: Show Type Hierarchy command in the command palette (
F1
).
You can change the direction of the type hierarchy using the “Show Subtypes” / “Show Supertypes” button on the hierarchy menu bar.
Note: This feature requires Dart 2.19 / Flutter 3.7 or later.
Call Hierarchy
#612: A Call Hierarchy is now available. It can be accessed from the editor context menu, or using the Calls: Show Call Hierarchy command in the command palette (F1
).
You can change the direction of the call hierarchy using the “Show Incoming Calls” / “Show Outgoing Calls” button on the hierarchy menu bar.
Note: This feature requires Dart 2.19 / Flutter 3.7 or later.
Flutter
- #4332: Explicitly selecting a device in the device selector will now save that device as the preferred device for that project. The preferred device will be automatically selected (if available) each time you open that project. This overrides the previous behaviour of always selected the last connected mobile device. You can switch back to the previous behaviour using the
dart.flutterRememberSelectedDevice
setting. - #4268: The Flutter: New Project command now has an additional template type “Application (empty)” which creates a basic Hello World app instead of the counter app.
- #4335: Icon previews are now available for recently-added icons.
- #4349: Icon previews no longer fail to load for icons that contain (but do not start with) numbers.
Editor
- #4143: Code completion auto-importing now works for extension members.
- #4119: A new setting
dart.documentation
controls how much dartdoc documentation is shown in hovers/code completions. Options are"full"
(the default),"summary"
(showing just the first paragraph) or"none"
(no dartdocs are shown). - #4279: Quick-fixes generated by the analysis server (including plugins) for
pubspec.yaml
andanalysis_options.yaml
will now show up as expected.
Testing
- #4325/#4328: Running a test suite with a large number of tests should no longer take several times longer than running the tests from the command line.
- #4326: Opening a project with a large number of tests no longer triggers an “Unresponsive extension host” warning.
- #4341: The test explorer no longer sometimes shows old test names that have been removed/renamed but were never run.
Debugger
- #4353: Fields of record types (experimental) are now displayed in debugger views such as hovers, watch window, etc.
- #4213: List types from
dart:typed_data
such asUint8List
are now displayed the same way as standardList
s in debugger views if using the new preview SDK DAPs. - #3551/#4128: Dart SDK libraries are now correctly mapped to local sources when stepping if using the new preview SDK DAPs. This means breakpoints set in SDK libraries via the editors Go-to-Definition functionality when not debugging will work as expected.
Other
- #4350: It’s no longer possible to create new projects with invalid names using the Dart: New Project/Flutter: New Project by pressing
<enter>
when a validation error is displayed. - #4307: Automatic fetching of packages when
pubspec.yaml
is modified no longer silently fails if the initial prompt to fetch packages at project load was ignored (and left in the VS Code notification area).
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!