Hi all,
v3.10.0 of the Dart & Flutter VS Code extensions are live. Release notes below (and online). If you find any issues, please file them on GitHub.
#2356/#2359/#2373 CodeLens links are now available on main() methods for both applications and test scripts. This allows running the current file even if the current launch configuration specifies another script. These links can be toggled using the dart.showMainCodeLens setting.

The template field in a launch config (see below for an example) has been extended to support templating these CodeLens.
run-test applies to test() and group() CodeLens, runs without debuggingdebug-test applies to test() and group() CodeLens, runs with debuggingrun-test-file applies to main() CodeLens in test files, runs without debuggingdebug-test-file applies to main() CodeLens in test files, runs with debuggingrun-file applies to main() CodeLens in non-test files, runs without debuggingdebug-file applies to main() CodeLens in non-test files, runs with debugging#2363/#2374: A new launch config flag runTestsOnDevice has been added that allows you to create launch configurations that will run tests with flutter run on the select device instead of using flutter test.
Using the two features above together, you can add CodeLens links to easily run test scripts on a device:
{
"version": "0.2.0",
"configurations": [
{
"name": "Flutter App",
"request": "launch",
"type": "dart"
},
{
"name": "Debug Tests on Device",
"request": "launch",
"type": "dart",
"runTestsOnDevice": true,
// This adds this config to CodeLens for test files
"template": "debug-test-file"
}
]
}

#2322/#2350: A new Dart: List Outdated Packages command has been added that runs pub outdated. It’s also available on the context menu and editor toolbar for the pubspec.yaml file.
This command will only show up when using >= v2.8 of the Dart SDK.

#1553/#2360/#2319: It’s now possible to add third party emulators that don’t show up in flutter emulators to the device selector using the dart.flutterCustomEmulators setting. The emulator must still show up in flutter devices once it’s been launched for it to be used to launch an app:
"dart.flutterCustomEmulators": [
{
"id": "my-emu",
"name": "My Emulator",
"executable": "/path/to/emulator",
"args": ["--launch"]
}
]
This setting also allows the command/args used to launch existing Flutter emulators to be overriden by using the same ID. For example, to force an existing Android emulator with the ID Pixel_2_XL_API_29 to run with -gpu host you can override its command/args:
{
"id": "Pixel_2_XL_API_29",
"name": "Pixel 2",
"executable": "/Users/danny/Library/Android/sdk/emulator/emulator",
"args": ["-avd", "Pixel_2_XL_API_29", "-gpu", "host"]
}
<shift> when accepting code completions will now always insert completion text (rather than replacing text immediately to the right of the cursor). Which mode is default can be controlled by setting the editor.suggest.insertMode for [dart] in your user settings.dart.additionalAnalyzerFileExtensions includes .dart or duplicates.Maps with complex keys (such as DateTimes) are now shown correctly in debug views like Watch and Variables.Copy value action no longer adds " around string values.toString() on complex types. This can be controlled with the dart.evaluateToStringInDebugViews setting.cwd/program fields do not match the casing on the underlying file system.test()s and group()s with variables in the name are now runnable from CodeLens links with some caveats.flutter_test package is no longer incorrectly marked as user-code so will not be debuggable when in Debug my code mode.test for a non-web project will no longer show a spurious error about not being supported.TruongSinh Tran-Nguyen, PMI-ACP, PSM III, PSPO II Tech Visionary, Craftsman, Coach and Investor +1-6127-TR-SINH (+1-6127-87-7464) | truon...@smarpsocial.com | @truongsinhtn Find me on LinkedIn | Twitter | Github | StackOverflow IBAN: GB90 REVO 0099 7073 9238 05 | BIC: REVOGB21 |
--
You received this message because you are subscribed to a topic in the Google Groups "Flutter Development (flutter-dev)" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/flutter-dev/a0Xjpa60Zgg/unsubscribe.
To unsubscribe from this group and all its topics, send an email to flutter-dev...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/flutter-dev/53367802-a93d-433a-b3da-5c7767762cd7%40googlegroups.com.