For instructions on installing the Dart or Flutter extensions, go here.
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
#547/#545: New refactors have been added for Inline Method and Inline Local Variable (requires SDK update).
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
completeFunctionCallssetting, 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
importstatements 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.automaticCommentSlasheshas 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.
- #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
- #3258: Automatic Flutter initialization now works even if you have no other Dart SDKs on
- #3246: When using embedded DevTools,
dart.openDevToolswill 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.
- #3294: Custom CodeLens templates can now use exact file paths in their
pathfilter instead of only folders.
- #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).
- #3301: The experimental
flutterDisableVmServiceExperimentalsetting has been removed.
- #2853/#3292: Snap support has been simplified and should now work more reliably if you have never run
fluttersince 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.