Flutter Integration Testing
#3009/#3133: Flutter tests inside an integration_test
folder are now recognised as tests and run on the selected device. See flutter.dev/docs/testing/integration-tests for more information on using the Flutter SDK’s package:integration_test
.
New Refactors
#547/#545: New refactors have been added for Inline Method and Inline Local Variable (requires SDK update).
Editor
Items here marked “(requires SDK update)” also rely on changes in the Dart/Flutter SDKs so may not be immediately visible depending on your Dart/Flutter SDK channel.
- #3303: When using LSP and the
completeFunctionCalls
setting, code completion will no longer insert additional parenthesis/argument placeholders when they already exist in the document (requires SDK update). - #3289: Brackets around references in dartdoc comments are no longer colored inconsistently when using LSP with Semantic Tokens (requires SDK update).
- #3281: Code completion no longer incorrectly returns results when invoked in a comment right at the end of a file.
- #3253/#3250: Renaming files that do not need to update any
import
statements will no longer trigger the VS Code refactor prompt (requires SDK update for LSP, not for non-LSP). - #3227: Code completion no longer shows duplicate classes when multple libraries are imported that re-export the same symbols (requires SDK update).
- #3225: Code folding now works for Enum bodies (requires SDK update).
- #3211: Code completion now intelligently triggers automatically for LSP when typing imports/slashes/interpolation(requires SDK update).
- #3248: A new setting
dart.automaticCommentSlashes
has been added to control the new automatic comment marker behaviour added in the previous release. - #3174: Code completion now includes
?
in the display of nullable types in signatures and descriptions.
Flutter
- #3302: Custom emulators (using
flutterCustomEmulators
) now show error messages if they fail to launch. - #3267: Custom emulators (using
flutterCustomEmulators
) can now define additional environment variables using the env
key. - #3258: Automatic Flutter initialization now works even if you have no other Dart SDKs on
PATH
. - #3246: When using embedded DevTools,
dart.openDevTools
will now open the embedded Inspector page for Flutter apps instead of opening a separate browser. For non-Flutter apps, DevTools will still be launched in a browser.
Debugger
- #3294: Custom CodeLens templates can now use exact file paths in their
path
filter instead of only folders.
Commands
- #3275: Embedded DevTools is now disabled for IDEs like Theia that do not support iframed webviews.
- #3274: Embedded DevTools are now supported for Remote VS Code sessions where the necessary ports can be forwarded.
- #3261: VS Code shortcut keys (like the command palette) now work even when embedded DevTools has focus (requires DevTools update).
Other
- #3301: The experimental
flutterDisableVmServiceExperimental
setting has been removed. - #2853/#3292: Snap support has been simplified and should now work more reliably if you have never run
flutter
since installing the Snap package. - #3257: The New Project commands now spawn in the current window instead of opening new windows.
- #3256: LSP will no longer be enabled by default for editor versions that do not meet the minimum required version for the LSP client.
- #3183: Settings that are considered experimental (and may have significant issues) are now more clearly marked in their descriptions.
- #3300: Enum settings now have improved descriptions for their values when using the VS Code settings UI.