For instructions on installing the Dart or Flutter extensions, go here.
- #3682: Code completion now re-triggers automatically after completing an argument name (
- #3645: Signature help now triggers automatically after completing an invocation that has arguments.
- #3620/#3649: Go-to-Definition now uses cached data for improved performance when using the original (non-LSP) language server protocol.
toolArgsin a launch configuration are no longer ignored when running a single group/test from CodeLens.
- #3687: A new setting
dart.suppressTestTimeoutshas been added that overrides the default test timeout to avoid timeouts while debugging. In the current form it only applies to tests that don’t explicitly override the timeout but in a future update the setting will use ‘package:test’s upcoming –ignore-timeouts flag to also ignore explicit timeouts.
- #3665: For multi-project workspaces, running tests from multiple projects at once now shows the correct test counts instead of only the last projects tests that completed.
- #3537/#3673: The legacy test runner (and its associated commands) has been removed from the extension. All functionality should now be available through the built-in VS Code test runner and its own commands.
- #3685: The
vmAdditionalArgslaunch configuration option have been updated to work for both CLI scripts run with
dartand tests run with
- #3691: A new setting
dart.cliAdditionalArgshas been added to inject args into only Dart CLI script invocations.
- #3689: A new setting
dart.testAdditionalArgshas been added to inject args into only
dart testtest invocations.
- #3637: A new setting
dart.reloadOnSavehas been added to suport hot reloading on-save for Dart projects. This is separate to
dart.flutterHotReloadOnSaveso behaviour can be configured independently and unlike Flutter, it defaults to off for Dart.
- #3656: A new launch configuration option
customToolallows replacing the tool used when launching debug sessions (
flutter). The replacement tools must be compatible with the tools they replace. This may be useful for wrapping
flutterwith custom behaviour, or running through
customToolReplacesArgsoption allows the custom tool to also replace the first x arguments from the constructed command.
- #3647/#3650: @guidezpl added icons against devices in the device picker and status bar based on their types.
- #3676: The Flutter: Cancel Widget Inspection now correctly appears in the command palette when in Inspect Widget mode.
- #3635/#3683/#3684: @EhsanAramide contributed support for adding Git and path dependencies via the Dart: Add Dependency command. URLs and paths can be pasted directly into the input box, or you can select the option for path/Git URL for some additional options/a filepicker.
- #3698: Running the analysis server with VM Service enabled using the
dart.analyzerVmServicePortsetting no longer fails when running in LSP mode.
- #3608/#3652: @guidezpl grouped all extension settings into categories in the VS Code settings UI.
- #3657: A single complete changelog for all versions of the extensions is now available at dartcode.org/releases.
Features Enabled with Future SDKs
These items rely on changes to the Dart/Flutter SDKs that have not yet been released to stable channels. They will show up automatically when you update your SDK in future (or if using development channels depending on the exact version).
#3240: Color previews are now shown in more places, including user-defined constant fields. Additionally, the VS Code color picker can now be used to change Flutter colors in source code.
- #3646: Flutter widget refactors are now sorted correctly in the Code Actions menu.
- #3598: Library-level annotations like
@Timeoutare now longer sorted (or removed) incorrectly when sorting
- #3669: Completions that insert
imports automatically will now use relative imports (instead of
package:URIs) when the
prefer_relative_importslint is enabled.
- #3632: The Dart: Hot Reload command now works when using the (experimental, upcoming) Dart SDK debug adapter.
- #3631: A previous fix for Hot Restarting hanging if exceptions occur during the restart has been applied to the (experimental, upcoming) Flutter SDK debug adapter.
- #3672: Completing a method/constructor name with no prefix typed no longer inserts parenthesis if they already exist after the cursor.
- #2167: Color previews are no longer shown for code that is commented out.