Testing
#3048/#3131: The ability to run Skipped tests (--run-skipped
) has been added to the test runner toolbar and context menus. This is currently only supported for Dart projects but will be enabled for Flutter projects in a future version. This allows a tests to be run even if they are annotated with skip: true
to check their status without needing to modify the code.
#3097: Additionally, running a specific test from CodeLens links will always pass --run-skipped
when supported, making it easy to run skipped tests directly from the editor.
Other test runner changes include:
- #3156: Test suite/group nodes overall status now only shows as Skipped if the whole group is skipped (if a group has a mix of pass/skip the overall status will show as Passed).
- #3146: Viewing test output from the last run of a test has been moved to the context menu rather than automatically opening when clicking on a test in the tree (this caused some confusion due to switching from the Debug Console to a pseudo terminal).
- #3119: Newlines in test/group names are now removed to show more of the name in the test tree node.
- #3154: Test output is now cleared on each new run, so only output from the last is shown.
Flutter
#3110/#3122: The hot-reload-on-save setting now has an additional option to reload on all saves (including auto-saves) as well as just manual saves.
- #3118/#3123: The
hotReloadProgress
no longer (incorrectly) applies to build progress. Build progress will once again show as notifications regardless of this setting. - #3149: When Flutter needs initializing at project load (for example after an SDK update), a different Dart SDK version (for example from
PATH
) will no longer be selected instead of the one provided by the Flutter SDK.
Editor
Items here marked “(requires SDK update)” rely on changes in the Dart/Flutter SDKs so may not be immediately visible depending on your Dart/Flutter SDK channel.
- #3141: The Create file quick-fix on
import
s no longer fails to create files when using LSP (requires SDK update). - #3104: New
import
s inserted by fixes or code completion will no longer be inserted above file-wide annotations such as @TestOn()
(requires SDK update). - #3103: The Extract Method and Extract Widget refactors now prompt for names when using LSP.
- #3074: Changes made to generated Flutter localizations (in the synthetic
l10n_gen
package) are now detected by the analyzer without a restart (requires SDK update). - #2998: Code completion now supports “insert mode” (
Shift
+Enter
) when using LSP (requires SDK update). - #2854: The warning “Code actions of kind ‘quickfix ‘requested but returned code action is of kind ‘refactor.extract’.” is no longer shown in the console when key-binding specific fixes.
- #584: Refactors/fixes that insert multiline code generate correct indentation when using LSP.
- #2816: Renaming a named constructor no longer adds an additional dot in Dartdoc comments, breaking the reference to the constructor (requires SDK update).
- #3161: When using LSP with semantic tokens, the
@
of annotations are now coloured the same as variables by default. - #3173: LSP Support is now enabled by default for some users. This will be extended over coming releases to include all users though can be opted-out by explicitly setting the
dart.previewLsp
setting to false
.
Debugger
- #3167: Launching non-Flutter web apps no longer fails with an error about “devtools-server-address” if DevTools has been started for the current session.
Commands
- #3162: The current DevTools version is now shown in a tooltip when hovering over DevTools in the status bar.
- #3158: The Dart: Reanalyze Project and Open Diagnostic Server commands no longer fail when using LSP.
- #3145: The Flutter: Run Flutter Doctor command no longer reports a spurious error if Flutter failed to initialize at startup.
- #3138: Activating global Pub packages like
devtools
and webdev
will no longer report failures if the latest published stable version is not compatible with your current SDK.
Other
- #3142: DevTools is no longer eagerly/background-activated for non-Flutter workspaces.
- #3120: New releases of DevTools are now detected and installed even when DevTools is eagerly/background activated.
- #3135: Failing to send analytics no longer reports an error and disables sending analytics for that whole session.