Commit Graph

4421 Commits

Author SHA1 Message Date
Jonah Williams
77310c152f
[flutter_tools] deprecate flutter version (#60998) 2020-07-07 18:04:02 -07:00
Dan Field
33aa457604
Roll packages (#61034)
Roll packages, update XML deprecations.
2020-07-07 16:40:33 -07:00
Jonah Williams
f111a823ec
[flutter_tools] remove some globals from flutter_tester device (#60787)
Remove globals from flutter_tester device and cleanup test case. Not completely gone since the Kernel Builder will still use them, but a good incremental improvement.
2020-07-07 10:24:52 -07:00
Jonah Williams
846418b60b
[flutter_tools] fix crash if the platform section was a list (#60927)
Missed validation to go with cast. Added test case to reproduce.
2020-07-07 10:24:42 -07:00
stuartmorgan
4b12050112
Switch Windows to CMake (#60629)
* First pass at CMake files; untested

* First pass of adding CMake generation logic on Windows

* Misc fixes

* Get bundling working, start incoprorating CMake build into tool

* Fix debug, exe name.

* Add resources

* Move cmake.dart

* Rip out all the vcxproj/solution plumbing

* Fix plugin cmake generation

* Build with cmake rather than calling VS directly

* Adjust Windows plugin template to match standard header directory structure

* Pass config selection when building

* Partially fix multi-config handling

* Rev template version

* Share the CMake generation instead of splitting it out

* VS build/run cycle works, with slightly awkward requirement to always build all

* Update manifest

* Plugin template fixes

* Minor adjustments

* Build install as part of build command, instead of separately

* Test cleanup

* Update Linux test for adjusted generated CMake approach

* Plugin test typo fix

* Add missing stub file for project test

* Add a constant for VS generator
2020-07-06 12:59:16 -07:00
Jenn Magder
11bf7f0687
Take screenshots of wirelessly paired iOS devices (#60623) 2020-07-06 12:28:29 -07:00
Pierre-Louis
0bc4368233
Typo sweep (#60693) 2020-07-02 13:08:02 -07:00
Jonah Williams
ae9ac9f211
[flutter_tools] support starting in canvaskit with FLUTTER_WEB_USE_SKIA=true (#60708) 2020-07-01 22:53:03 -07:00
Jonah Williams
2f43aeaf54
[flutter_tools] fix crash if grouped doctor validator crashes (#60658) 2020-07-01 22:48:02 -07:00
Jonah Williams
c543db70dc
[flutter_tools] add null-safety flags to dill cache location (#60633)
initialize from dill does not handle changing null-safety flags and will incorrectly use the nullability mode of the last compile. Add all extra frontend options to the unique name prefix for the flutter run dill cache to avoid this situation.
2020-06-30 15:49:31 -07:00
Chris Yang
07e24f6dad
[flutter_tool] fix ide-config crash because of no android key (#60617) 2020-06-30 13:01:47 -07:00
Jonah Williams
7ca324ac01
[flutter_tools] support sound null-safety mode for the web (#60570)
In web debug mode, infer sound null safety by default. When sound null safety is enabled, provide a separate dill and precompiled Dart SDK. Release builds do not need this setting since we run dart2js from source.

Fixes #59873
2020-06-30 12:29:42 -07:00
Jonah Williams
2188196125
[flutter_tools] ensure flutter daemon can exit correctly when app fails to start (#60615)
The flutter daemon unconditionally waits for the appFinished signal, even if startup failed. Ensure this future is correctly completed if there is a failure in ResidentRunner.run and not just ResidentRunner.attach. Adds regression tests for run release, debug, debug web, and release web. Adds missing try catch in cold runner startup.

Manually tested with release/debug on Android and release/debug on web.

Fixes #60613
2020-06-30 12:26:18 -07:00
James D. Lin
cf8fbc363a
[flutter tools] Revert desktop device name changes and print the category instead (#60395) 2020-06-30 11:28:02 -07:00
Christopher Fujino
b15798fa98
Revert "Revert "[flutter_tools] update libimobiledevice (#59512)" (#60551)" (#60569)
This reverts commit 09cca73aee.
2020-06-29 18:29:58 -07:00
Jenn Magder
d5225a560d
Fix daemon device discovery crash when Xcode isn't installed (#60546) 2020-06-29 14:54:19 -07:00
Christopher Fujino
09cca73aee
Revert "[flutter_tools] update libimobiledevice (#59512)" (#60551)
This reverts commit 32000db52e.
2020-06-29 13:44:38 -07:00
Christopher Fujino
32000db52e
[flutter_tools] update libimobiledevice (#59512) 2020-06-29 13:17:04 -07:00
Jenn Magder
a4fa61b4f1
Use ephemeral ports for iOS port forwarding (#60381) 2020-06-26 15:02:05 -07:00
Jonah Williams
e1538d1b88
[flutter_tools] last pass on general.shard unit tests (#60263)
Last batch of test fixes for general shard.
2020-06-26 13:36:06 -07:00
Jonah Williams
4bb6096086
[flutter_tools] surface null safety/experiment flags in attach (#60317)
Missed this one. Needed for google3 and add2app workflows
2020-06-25 15:44:57 -07:00
Jonah Williams
82a6f9bf0b
[flutter_tools] remove most use of global packages path (#60231)
The global packages path could cause tests to fail when it would be overriden to unexpected (in test setup) values. Remove most usage and make it a configuration on buildInfo, along with most other build information. Cleanup the asset builder to require the .packages path and the resident runners to no longer require it, since they already have the information in build_info.

It needs to stick around for the fuchsia deps we do not control.

Filled #60232 for remaining work.
2020-06-25 12:52:14 -07:00
Jonah Williams
a0334fb500
[flutter_tools] maintain file manifest for create (#59706)
First pass at fixing #57985 and implementing #59602

This doesn't have enough metadata to be useful for IDEs yet, but it prevents the issue from getting worse while we iterate on it.
2020-06-24 16:20:21 -07:00
Jonah Williams
2a7ee930c3
[flutter_tools] Update WebAssetServer to avoid context, fix tests (#60224)
WebAssetServer could fail if some of the global statics it depended on were initialized in a different order. Fix this by removing globals.

Delete dwds startup test that needs to spawn a real server.
2020-06-24 16:19:49 -07:00
stuartmorgan
d9902a5474
Consider the Linux template stable (#60163)
Remove the version checking and associated warnings. The Linux template
and build process will now be subject to more typical Flutter breaking
change policy, and should no longer require regularly deleting and
recreating the platform directory.
2020-06-24 12:23:57 -07:00
Chris Yang
95b98dc2c2
flutter create . on plugins also regenerates files for platforms supported in pubspec.yaml (#60159) 2020-06-24 10:38:03 -07:00
Jonah Williams
dd49e57be2
[flutter_tools] more test fixes (#60144)
Fixes additional bugs uncovered by tester, style fixes to prevent suggested imports.
2020-06-23 17:53:00 -07:00
Chris Yang
2e63b7d4f8
Add --platforms to flutter create -t plugin command (#59507) 2020-06-23 17:38:03 -07:00
Jonah Williams
14992c5951
Revert "[flutter_tools] separate target platform, host platform, and architecutre (#60119)" (#60147)
This reverts commit 30d97d89e0.
2020-06-23 17:19:29 -07:00
Christopher Fujino
ca32668b0b
port devicelab from idevice_id -> xcdevices (#59907) 2020-06-23 14:37:14 -07:00
Jenn Magder
c8e53b3859
Add null safety options to build ios-framework (#60111) 2020-06-23 14:35:45 -07:00
Jonah Williams
30d97d89e0
[flutter_tools] separate target platform, host platform, and architecutre (#60119)
separate target platform, host platform, and architecture
2020-06-23 13:51:17 -07:00
Jonah Williams
2a1c078b76
[flutter_tools] add null safety argument to unbreak frob (#60102) 2020-06-23 11:20:49 -07:00
Jenn Magder
d82ef3517c
Use assemble build system directly for build ios-framework (#60041) 2020-06-22 18:44:27 -07:00
Jenn Magder
6a2bc2617e
Replace ANDROID_HOME user messages with ANDROID_SDK_ROOT (#59867) 2020-06-22 18:43:04 -07:00
Jenn Magder
2c538be421
Parse build ios framework build mode from params (#59874) 2020-06-22 17:13:03 -07:00
Jonah Williams
55abbb6be6
[flutter_tools] track null safety usage (#59822)
* [flutter_tools] track null safety usage

* Update flutter_command_test.dart

* cleanups
2020-06-22 17:05:01 -07:00
Jonah Williams
8e9b78728f
[flutter_tools] switch linux desktop feature on (#60018)
Enable linux desktop feature on dev channel
2020-06-22 17:04:01 -07:00
Anna Gringauze
aac836c6ad
Enabled expression evaluation by default (#59826) 2020-06-19 15:23:03 -07:00
Jonah Williams
fbdc79e448
[versions] update all versions (#59832)
Fixes #59718

Update all versions, specifically dwds which has a hot restart fix
2020-06-19 14:48:57 -07:00
Michael Goderbauer
e48b7e99cd
More word substiturions (#59497) 2020-06-19 13:43:02 -07:00
Jonah Williams
dec7423b44
Revert "Add the ability to ignore lines depending on comments (#58656)" (#59813)
This reverts commit df02518dc9.
2020-06-18 17:15:50 -07:00
Jenn Magder
f41f795640
Clean up PollingDeviceDiscovery dispose (#59709) 2020-06-18 16:38:02 -07:00
Chris Bracken
e0f60918d4
Roll the engine from 965fbbe to b5f5e63 (#59804)
This rolls the engine from:
965fbbed1776545ee681cb57f3fb1d0c2000bbcb to
b5f5e6332cb4987e9e38ffaa267733ec0a8705ba. A Dart SDK roll in this range
changed the format of the compileExpression RPC VMService endpoint,
necessitating a tool patch.
2020-06-18 16:12:54 -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
5e77083b8d
[flutter_tools] make parent logger optional (#59786)
The addition of the non-optional parent logger broke the google3 roll. Make it optional so we can roll
2020-06-18 11:44:29 -07:00
Pasindu De Silva
df02518dc9
Add the ability to ignore lines depending on comments (#58656)
https://github.com/dart-lang/coverage - 0.14.0 added the ability to be able to ignore coverage depending on comments.

// coverage:ignore-line to ignore one line.
// coverage:ignore-start and // coverage:ignore-end to ignore range of lines inclusive.
// coverage:ignore-file to ignore the whole file.
2020-06-18 10:34:42 -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
Chris Bracken
f39ab52221
Revert "Manual engine roll to update format of compileExpression RPC response (#59717)" (#59774)
Failing dev/integration_tests/ui/test_driver/keyboard_resize_test.dart
Also timing out on new_gallery_ios__transition_perf

This reverts commit c7a37c72c2.
2020-06-18 09:52:44 -07:00
Ben Konyi
c7a37c72c2
Manual engine roll to update format of compileExpression RPC response (#59717) 2020-06-18 09:18:03 -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
Jonah Williams
15154b115f
[flutter_tools] deprecate build aot (#59487)
This command was previously used by the re-entrant build scripts in xcode_backend.sh and build.gradle. These have since been refactored to use flutter assemble.

Deprecation the command in preparation for removal in a future release of flutter. The only current use is a test on HHH
2020-06-16 13:00:11 -07:00
Diego Henrique Domingues
95ee633f66
[flutter_tools] fix the event attribute used to skip waiting (#59568) 2020-06-16 11:15:02 -07:00
Jenn Magder
5a4bb5050d
Remove last references to ideviceinstaller (#59508) 2020-06-16 10:25:10 -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
Gary Roumanis
d25b9c80a4
Do not depend on embedded (#59210) 2020-06-11 09:31:05 -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
e7b4d2b80e
[flutter_tools] remove globals from proxy validator (#59175)
Remove global Platfrom from proxy validator. move tests to new file, and update asserts to cover message contents.
2020-06-10 12:12:35 -07:00
Jonah Williams
d911eadf95
[flutter_tools] create NotifyingLogger at the top level when running flutter run --machine or flutter attach --machine (#59087)
Removes dependency on injecting additional logger with zones
2020-06-09 15:39:27 -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
Jonah Williams
01e60a1ca4
[flutter_tools] Reland: use correct sdk path for analysis (#59081)
flutter analyze was unconditionally using the cached dart-sdk for analysis, and was not running with the built SDK during local engine. This broke when trying to update the analyzer for null safety, since it required us to wait for the dart change to roll into the framework first.
2020-06-09 10:47:21 -07:00
Jonah Williams
5e3e5a2a1a
Revert "[flutter_tools] use correct sdk path for analysis (#58871)" (#59035)
This reverts commit 9ed3e5bea6.
2020-06-08 17:38:23 -07:00
Jonah Williams
9ed3e5bea6
[flutter_tools] use correct sdk path for analysis (#58871)
flutter analyze was unconditionally using the cached dart-sdk for analysis, and was not running with the built SDK during local engine. This broke when trying to update the analyzer for null safety, since it required us to wait for the dart change to roll into the framework first.
2020-06-08 17:21:33 -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
70a88c3b83
[flutter_tools] fix capitalization in build commands (#58842) 2020-06-08 11:20:28 -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
Jonah Williams
72f81f4167
remove unused completer (#58804) 2020-06-05 11:53:01 -07:00
Jonah Williams
1e4d9f8502
[flutter_tools] add --write-sksl-on-exit to flutter drive (#58743)
Allow dumping sksl files on driver exit when a file path is provided to drive's --write-sksl-on-exit
2020-06-05 11:01:23 -07:00
Jonah Williams
d0abf7f90f
[flutter_tools] don't use verbose when in doctor or help command (#58798) 2020-06-05 10:12:11 -07:00