Commit Graph

1043 Commits

Author SHA1 Message Date
Jenn Magder
f41f795640
Clean up PollingDeviceDiscovery dispose (#59709) 2020-06-18 16:38:02 -07:00
James D. Lin
bdbe6774a3
[flutter tools] Change the desktop device names and IDs (#58812)
In google3, the Linux device is always available, and it has confused
people who run the Flutter doctor and see
"• Linux • Linux • linux-x64 • Linux" listed.

Rename the Linux device name to "Linux desktop" and the device ID to
be "linux". Make similar changes to the Windows and macOS
devices for consistency.  This is also  consistent with the web
devices.

The device ID change shouldn't be break -d usage since that does a
case-insensitive prefix match.
2020-06-18 15:30:00 -07:00
stuartmorgan
e85655c48e
Specify encoding for vswhere output (#59607)
On Windows, Process.run assumes the output uses the system codepage by default. This allows specifying it in our wrapper, and sets the encoding for vswhere to UTF-8 since we're passing a flag that forces it to use UTF-8 output.

Fixes #53515
2020-06-18 14:00:46 -07:00
Jonah Williams
01e09ea8af
[flutter_tools] add missing null-safety flags (#59773)
Some of the null-safety commands were missing - plumb them through. Ensure that verbose mode shows their output, and clean up the messaging around sound-null-safety.

Fixes #59769

Adds a test that validate each of the null safety supporting build commands has everything plumbed through.
2020-06-18 12:34:35 -07:00
Jonah Williams
447e3d3f38
[flutter_tools] remove globals from compilers (#59184)
Refactors KernelCompiler and ResidentCompiler to no longer use globals (except as a fallback for g3 migration). Improves the compilation error when running flutter test on a package without a flutter_test dependency.

Updates machine mode to output trace text to stderr
2020-06-18 10:33:17 -07:00
Jonah Williams
e1f4cfb4f4
[flutter_tools] add toggle b and service extension to change platform brightness (#59571)
A frequent request from the last Flutter developer survey was for an easier method of testing light/dark mode changes. Currently, a user needs to manually change the theme settings or adjust phone settings to see the difference. Instead we should add a toggle from the CLI, and eventually devtools/Intellij/Vscode that allows developers to override the current setting.

Fixes #59495

Adds flutter.ext.brightnessOverride service protocol which either queries the current platform brightness, or overrides it to a new value. This accepts either Brightness.light or Brightness.dark as a value.

Adds a CLI toggle b which allows the setting to be toggled manually.

Requires an update to the MediaQuery, to conditionally use a debug override when not in release mode
2020-06-18 10:32:43 -07:00
Jonah Williams
719ea5a8c0
[flutter_tools] make expando on vm service null safe to handle web stuff (#59624) 2020-06-18 08:18:04 -07:00
Jonah Williams
802c4b0f12
[flutter_tools] handle NPE in list views method(#59626)
Fixes #59608

The VmService getter can be null, handle that in the listViews method. NNBD when
2020-06-17 10:53:54 -07:00
Jenn Magder
b8c64d7014
Don't crash when pubspec isn't a map (#59632) 2020-06-17 10:33:02 -07:00
stuartmorgan
61c198e766
Switch Linux to the GTK embedding (#59287)
Updates the tooling to use the GTK embedding, rather than the GLFW embedding:
- Adds new requirements to `doctor`
- Updates the app and plugin templates to make GTK-based runners and plugins
- Stops downloading and installing the GLFW artifacts

Final part of #54860, other than cleanup.
2020-06-16 13:31:24 -07:00
Christopher Fujino
807b60250a
[flutter_tools] Update roll_dev.dart (#59215) 2020-06-16 09:30:04 -07:00
Jonah Williams
958f7c5b55
[flutter_tools] ensure generated entrypoint matches test and web entrypoint language version (#59291)
Ensure that the language version of the test/web generated entrypoint matches the language version of the test file to run, or the overall package language version if no annotation is provided.
2020-06-16 09:17:12 -07:00
Michael Goderbauer
584fd5f913
Word substitutions (#59484)
* Word substitutions

* ++
2020-06-16 09:15:43 -07:00
duzenko
c79de78237
LG debugging/logcat fixed (#58670) 2020-06-15 09:35:07 -07:00
James D. Lin
c21b3233e4
[flutter tools] Don't return success if we trigger runZoned's error callback (#58474) 2020-06-15 09:35:04 -07:00
Ian Hickson
6202476691
Remove license statements in template files. (#57268) 2020-06-15 09:30:05 -07:00
Jenn Magder
0093c6a4c6
Add Podfile migration warning to support federated plugins (#59201) 2020-06-12 12:44:14 -07:00
Danny Tuppeny
96711b00ce
Don't crash on requests for invalid package URLs (#59250) 2020-06-12 09:25:04 -07:00
Jonah Williams
bf94520644
[versions] Update all the versions (#59283) 2020-06-11 16:40:22 -07:00
Marcus Tomlinson
1fe0f22645
Remove use of BundleUtilities in Linux build (#59080)
* Explicitly install the Flutter library

* Publish ${FLUTTER_LIBRARY} to parent scope

* Bundle plugin libraries

* Bundle <plugin_name>_bundled_libraries too

* BUNDLED_LIBRARIES -> PLUGIN_BUNDLED_LIBRARIES

* Update Linux plugin test

* Address review comments
2020-06-11 22:00:28 +01:00
Jenn Magder
222c2cb0cc
Deprecate make-host-app-editable (#59217) 2020-06-11 11:37:15 -07:00
Jenn Magder
75fd73d818
Revert "[flutter_tools] inject output preferences at the top level (#58875)" (#59197)
This reverts commit dca6320fe4.
2020-06-10 13:49:35 -07:00
Jonah Williams
dca6320fe4
[flutter_tools] inject output preferences at the top level (#58875)
The tool was setting the output preferences in a sub-context. Originally these were not injected before the arg parsers were created, though that was fixed by the lazy command creation. Once local engine is removed, the inner flutter_command Zone can be removed.
2020-06-10 12:13:06 -07:00
Jonah Williams
6067571fab
[flutter_tools] support flutter run -d edge (#56173)
Support Microsoft Edge as a device for flutter run when web is enabled. Currently this only works on Windows, and does not include a validator for edge.

Fixes #55322
2020-06-09 12:03:51 -07:00
Jonah Williams
e54f8f523f
[flutter_tools] include dart-defines in cached kernel name (#59083)
This prevents using a cached kernel file with different defines, since --initialize-from-dill does not handle this correctly.

Fixes #58976
2020-06-09 12:03:28 -07:00
Christopher Fujino
cf7e4a0b90
[flutter_tools] Fix slow ios_device_start_prebuilt_test (#59026) 2020-06-09 11:22:31 -07:00
Helin Shiah
e62c1f6954
Send text error in JSON and print in tools (#59018) 2020-06-09 11:18:03 -07:00
Jonah Williams
ec4049e781
[flutter_tools] support bundle-sksl-path on all desktop and mobile targets (#58879)
Adds support for --bundle-sksl-path to windows, linux, macOS, and iOS.

Fixes #53115
2020-06-09 11:15:52 -07:00
Jenn Magder
5eb4917d73
Release cache lock for commands after required artifacts are downloaded (#59012) 2020-06-08 17:18:02 -07:00
Jenn Magder
023532d991
Revert "Build iOS apps using Swift Packages (#59009)" (#59025)
This reverts commit 43e28084fc.
2020-06-08 15:45:10 -07:00
Jenn Magder
43e28084fc
Build iOS apps using Swift Packages (#59009) 2020-06-08 13:53:01 -07:00
Jonah Williams
80ea454288
[flutter_tools] change service worker load to NOTICES (#58890)
update flutter_service_worker.js to NOTICES
2020-06-08 12:33:31 -07:00
Jonah Williams
0620cfa770
Revert "Send text error in JSON and print in tools (#58994)" (#59002)
This reverts commit f0174b176a.
2020-06-08 11:56:23 -07:00
Jenn Magder
886313393f
Support work profiles and multiple Android users for run, install, attach, drive (#58815) 2020-06-08 11:28:02 -07:00
Helin Shiah
f0174b176a
Send text error in JSON and print in tools (#58994)
* Revert "Revert "Send text error in JSON and print in tools (#58284)" (#58872)"

This reverts commit c2d5e18cb2.

* Put streamListen in try/catch if extension events already listened for
2020-06-08 11:24:23 -07:00
Jonah Williams
4f88ed1d3c
[flutter_tools] only restrict devices based on arch + buildMode, not emulator status (#58887)
instead of restricting profile/release mode based on whether the tool thinks the device is an emulator, restrict based on the device target architecture and the requested build mode. Notably, this enables release mode on x86_64 Android emulators, but not x86 emulators since we do not support that as an AOT target.

This does not add release mode support for simulators, since this requires us to build and upload artifacts for simulator/x86_64
2020-06-08 11:20:15 -07:00
Jonah Williams
206ccc3632
[flutter_tools] rename library to be less absurd (#58891)
Instead of targets/dart.dart -> targets/common.dart
2020-06-08 11:19:53 -07:00
Jonah Williams
64538f4d78
[flutter_tools] disable dartdev when calling snapshots directly (#58830) 2020-06-06 14:48:03 -07:00
Jonah Williams
c2d5e18cb2
Revert "Send text error in JSON and print in tools (#58284)" (#58872)
This reverts commit cce6b3c5ae.
2020-06-06 10:35:58 -07:00
Helin Shiah
cce6b3c5ae
Send text error in JSON and print in tools (#58284)
* Send text error in JSON and print in tools

* Add test for error text

* Fix analysis issues

* Move streamListen to try/catch and use global.printStatus

* Extract print error fn and listen for events in web runner

* Add extension listen request to test

* Update packages/flutter_tools/lib/src/resident_runner.dart

Co-authored-by: Jonah Williams <jonahwilliams@google.com>

* Rename error parsing method

* Allow crash if listen for extension stream fails

* Add test for error and non-error extension events

* Fix formatting for TextTreeRenderer

* Use shorter message for second exceptions

* Specify types for map

* Add empty JSON for resident_web_runner test

* Move stream listen to vmservice and add vmservice test

* Fix stream type

* Move structured error log definition to vmservice

* Use correct test matcher isNot

Co-authored-by: Jonah Williams <jonahwilliams@google.com>
2020-06-05 19:07:37 -07:00
Jonah Williams
5722adf11d
[flutter_tools] remove deprecation warning on flutter format (#58817)
So that we have a release where both are available without a deprecation warning.
2020-06-05 12:40:02 -07:00
stuartmorgan
94b7ff241e
Don't require a specific Windows 10 SDK (#58713)
Current versions of the Windows desktop build files don't require a specific Windows 10 SDK version, but doctor still checks for one since vswhere doesn't allow for flexible queries. This has been a common source of issues for people setting up on Windows for the first time, because the current VS installer by default only includes a newer version of the SDK than what doctor is looking for.

This removes the vswhere SDK check, and instead uses a manual check for SDKs. Since this uses undocumented (although fairly widely used, so relatively unlikely to change) registry information, the check is non-fatal, so that builds can progress even if the SDK isn't found by doctor; in practice, it's very unlikely that someone would install the C++ Windows development workload but remove the selected-by-default SDK from the install.

Now that all requirements are default, the instructions when missing VS have been simplified so that they no longer list individual components, and instead just say to include default items.

Fixes #50487
2020-06-04 18:53:00 -07:00
Jonah Williams
f5de6aadd4
[flutter_tools] remove zone level overrides of verbose and daemon logging (#57448)
Make it possible for all FlutterCommands to be global free, by moving instantiation to inside the Zone context. Additionally, provide VerboseLogger and NotifyLogger (daemon) at the top level and remove from command-specific overrides.

This allows removing a work around where web devices needed to look up directly from the context in non-test code.

Technically the output preferences are still zone injected, but these will be moved soon as they were not being used correctly by the top level command (the injection comes after ArgParser reads the overflow values, causing numerous wrap issues)
2020-06-04 16:35:36 -07:00
Jonah Williams
3b0c84b906
Revert "use Expand-Archive and Compress-Archive in windows os utils (#58390)" (#58719)
This reverts commit bbe18f7580.
2020-06-04 14:22:10 -07:00
Jonah Williams
bbe18f7580
use Expand-Archive and Compress-Archive in windows os utils (#58390)
Work towards removal of package:archive and ideally more stable unzipping of artifacts. These commands are available in Powershell 5+, which we already require for windows.
2020-06-04 14:00:33 -07:00
Jonah Williams
eae77804fe
[flutter_tools] use -f when fetching tags (#58703)
use -f to overwrite local tags on master branch
2020-06-04 13:54:32 -07:00
Jonah Williams
3bc4a82605
[flutter_tools] avoid serving files outside of expected paths (#58653) 2020-06-04 11:53:04 -07:00
Jonah Williams
e934c2fc0a
[flutter_tools] reland: copy dill after startup (#58455)
* [flutter_tools] only copy cached dill after startup

* shared code

* cleanup artifact directory

* do not copy if dillOutputPath is given
2020-06-04 10:17:43 -07:00
Jenn Magder
2eca1d303c
Use fake command in analytics test (#58544) 2020-06-03 21:23:01 -07:00
Jonah Williams
b1d75fc99d
[flutter_tools] add flag for sound-null-safety, unify with experiments (#58533)
Also combines experiments into extraGenSnapshot/ExtraFrontEndOptions. Allows providing --no-sound-null-safety to allow out of order migration and running.
2020-06-03 21:02:07 -07:00