Commit Graph

3866 Commits

Author SHA1 Message Date
Jonah Williams
b15465fc92
[flutter_tools] simplify fake imports for FakeProcessManager (#77748) 2021-03-09 15:55:02 -08:00
Sam Rawlins
dc1bdcc757
Remove "unnecessary" imports. (#77559) 2021-03-09 13:09:30 -08:00
Jonah Williams
233015572c
[flutter_tools] simplify platform null safety (#77727) 2021-03-09 12:52:57 -08:00
Jenn Magder
7b1aec70ae
Move iOS codesigning into assemble build target (#77664) 2021-03-09 11:45:16 -08:00
Jonah Williams
d39d450594
[flutter_tools] remove most globals from resident web runner (#77432) 2021-03-08 14:38:26 -08:00
Jonah Williams
acda272cf2
[flutter_tools] add tool feature/scaffold for UWP (#77399) 2021-03-08 08:09:04 -08:00
Michael Goderbauer
cb867bbedc
Enable unnecessary_await_in_return lint (#77434) 2021-03-05 18:38:15 -08:00
Michael Goderbauer
807bb29888
enable prefer_function_declarations_over_variables lint (#77398) 2021-03-05 18:29:04 -08:00
Jonah Williams
721702717d
[flutter_tools] replace MockFlutterVersion usage with fake where possible, move from context (#77390) 2021-03-05 14:04:03 -08:00
Jenn Magder
7e02cc34f9
Bitcode strip Flutter.framework in assemble build target (#77329) 2021-03-05 10:38:57 -08:00
Jenn Magder
a7f7687a2e
Delete unzipped FlutterMacOS.framework before replacing artifact (#77316) 2021-03-04 19:36:21 -08:00
Gary Qian
ee41782732
[flutter_tools] Deferred components build system (#76192) 2021-03-04 18:09:02 -08:00
Jonah Williams
945e0df104
[flutter_tools] remove several AndroidSdk Mocks (#77264) 2021-03-04 12:24:03 -08:00
Jonah Williams
90f353f9b1
[flutter_tools] dont crash when looking for AS4.1 on windows with no LOCALAPPDATA (#77261) 2021-03-04 11:29:20 -08:00
Michael Goderbauer
7b251f5f37
Enable use_function_type_syntax_for_parameters lint (#77163) 2021-03-04 08:59:17 -08:00
Jenn Magder
42c9e276d8
Increase dart migrate integration test timeout (#77192) 2021-03-03 18:58:52 -08:00
Jenn Magder
eee0dc8441
Exclude arm64 from valid iOS simulators (#73828) 2021-03-03 18:58:37 -08:00
Jonah Williams
dd6097806d
[flutter_tools] remove mocks from build_aar_test (#77170) 2021-03-03 14:04:04 -08:00
Jonah Williams
05ce6ce511
[flutter_tools] remove mock from android studio test (#77158) 2021-03-03 11:04:02 -08:00
Jenn Magder
67b2ca893e
Update minimum required version to Xcode 12 (#77025) 2021-03-03 11:00:35 -08:00
William Oprandi
679b8c2982
Fix Android Studio detection and plugins on Linux (#75612) 2021-03-03 08:29:03 -08:00
Jonah Williams
d14a9eaa8d
[flutter_tools] remove chrome launcher, analytics mock from web unit tests (#77066) 2021-03-02 15:29:03 -08:00
Jonah Williams
fc35508a40
[flutter_tools] remove mock from logger tests (#77064) 2021-03-02 10:35:44 -08:00
Michael Goderbauer
fc99e7c0d7
Enable missing_whitespace_between_adjacent_strings (#77027) 2021-03-01 18:30:17 -08:00
Jenn Magder
3969e5b47b
Move iOS Flutter.framework thinning into copy assemble build target (#77007) 2021-03-01 15:45:02 -08:00
omerlevran46
f996033fcc
[fuchsia] - migrate devicer discovery workflows to use ffx (#76241) 2021-03-01 13:16:13 -08:00
Jonah Williams
72a835fa55
[flutter_tools] remove mocks from android SDK tests (#76887) 2021-02-27 11:56:01 -08:00
Jonah Williams
dda17485cf
[flutter_tools] remove all mock artifacts usage (#76884) 2021-02-26 13:28:31 -08:00
Jenn Magder
2a54bb02aa
Opt into CocoaPods parallel codesigning (#76833) 2021-02-26 13:16:03 -08:00
Jonah Williams
2951363dc8
[flutter_tools] switch FakeCache to cache.test and NoopUsage to TestUsage (#76802) 2021-02-26 11:13:32 -08:00
Jonah Williams
666c950989
[flutter_tools] replace most MockBuildSystem instances with TestBuildSystem (#76821) 2021-02-26 08:46:00 -08:00
Jonah Williams
2f1702f78e
[flutter_tools] remove mock from terminal test (#76812) 2021-02-26 08:38:55 -08:00
Jonah Williams
a49d677349
[flutter_tools] simplify packages pass-through testing (#76806) 2021-02-26 08:38:32 -08:00
Jenn Magder
023582db33
Stop trying to thin iOS App.framework (#76834) 2021-02-25 18:49:12 -08:00
Jenn Magder
d099ae60f0
Add ephemeral iOS directory to put future generated files (#76830) 2021-02-25 18:16:03 -08:00
Jenn Magder
f5903a91e0
Remove dead ensureDirectoryExists (#76829) 2021-02-25 18:11:01 -08:00
Jonah Williams
2d4f5a98e8
[flutter_tools] remove mock from cmake project migrator (#76813) 2021-02-25 14:59:10 -08:00
Jonah Williams
09b2f435a8
[flutter_tools] remove mockito from mdns client test (#76747) 2021-02-25 12:16:02 -08:00
Perqin
131f59f17e
[flutter_tools] Avoid duplicated calls to l10n generation (#76066) 2021-02-25 12:11:03 -08:00
Jenn Magder
5bc100da31
Move iOS framework thinning into the tool (#76665) 2021-02-24 18:02:43 -08:00
Gary Qian
9df362a73f
[flutter_tools] Refactor DeferredComponents validator and add build target (#76400) 2021-02-24 17:51:03 -08:00
Jonah Williams
a3b14c58ae
[flutter_tools] replace vm_service extension methods with wrapper class (#76721) 2021-02-24 15:40:33 -08:00
Jonah Williams
acdf4ba871
[flutter_tools] remove process manager mocks from error_handling_io tests (#76725) 2021-02-24 14:51:04 -08:00
Jonah Williams
114ba8cc3e
[flutter_tools] add unit test for error 32 in cache deletion (#76714) 2021-02-24 12:11:03 -08:00
Jia Hao
bc20f2ee88
[flutter_tools] Fail fast when test dependencies are missing (#76679) 2021-02-24 09:11:03 -08:00
Sam Rawlins
e43738824e
Remove unused imports of system libraries. (#76436) 2021-02-24 08:41:03 -08:00
Jonah Williams
bbaced6d12
[flutter_tools] cache adb path (#76650) 2021-02-23 17:26:02 -08:00
Jia Hao
a341da6e0e
[flutter_tools] Don't stringify null values in EventPrinter (#76579) 2021-02-23 17:06:04 -08:00
Daniel Gomez
739adf3d3e
Add sharding options to test command line (#76382) 2021-02-23 16:26:03 -08:00
Emmanuel Garcia
098ece522d
Disable warnings for the dart plugin registrant (#76561) 2021-02-23 11:45:33 -08:00
Jonah Williams
b678d0adec
[flutter_tools] remove globals and mocks from android gradle builder and test (#76416) 2021-02-19 21:07:43 -08:00
Jenn Magder
841f2e082e
Do not show plugin embedding warning with missing example app (#76406) 2021-02-19 17:41:02 -08:00
Jonah Williams
75470a0051
[flutter_tools] unify gradle/android sdk reinitialize checks in cache.dart (#76342) 2021-02-19 13:47:12 -08:00
Emmanuel Garcia
b7d4806243
Implement dartPluginClass support for plugins (#74469) 2021-02-19 09:22:45 -08:00
Jenn Magder
62d8969203
Adopt Artifacts.test(localEngine:) in a few tests (#76354) 2021-02-18 19:31:03 -08:00
Jenn Magder
6fec8b3679
Remove mockito from windows_device_test (#76355) 2021-02-18 19:26:02 -08:00
Jonah Williams
6b14558a68
[flutter_tools] remove global usage of flutterUsage from gradle (#76330) 2021-02-18 15:52:00 -08:00
Sam Rawlins
ba58ad0385
Remove "unnecessary" imports in test/general.shard (#75954) 2021-02-18 13:38:24 -08:00
Jenn Magder
4436334f8a
Adopt TestUsage in flutter_command_test (#76282) 2021-02-18 12:52:04 -08:00
Jonah Williams
04182572f7
[flutter_tools] allow bypassing context for FlutterProject creation, remove fromPath (#76258) 2021-02-18 12:36:04 -08:00
Gary Qian
ba5cc2cba4
[flutter_tools] Deferred components setup validator (#75739) 2021-02-18 12:01:03 -08:00
Jonah Williams
bfcb43d2fc
[flutter_tools] remove local engine from globals in gradle (#76277) 2021-02-18 11:30:44 -08:00
Jenn Magder
e5b5e1475c
Adopt FakeProcess, remove MockProcess (#76276) 2021-02-18 11:13:26 -08:00
Jenn Magder
23e41734e5
Swap Mocks to Fakes in config_test (#76274) 2021-02-18 00:46:02 -08:00
Jenn Magder
36203142df
Delete MockResidentCompiler (#76280) 2021-02-18 00:01:04 -08:00
Jenn Magder
5e61466794
Adopt FileExceptionHandler in a few tests (#76279) 2021-02-17 23:41:04 -08:00
Jenn Magder
90531179f5
MockProcessManager -> FakeProcessManager in os_test (#76264) 2021-02-17 23:21:02 -08:00
Jonah Williams
d65c98b4a2
[flutter_tools] replace some mock file/directories with new op handle (#76268) 2021-02-17 21:26:03 -08:00
Jenn Magder
d3c8a0bd25
Remove mocks from visual_studio_test (#76260) 2021-02-17 19:40:51 -08:00
Jenn Magder
805fffd11b
Swap Mocks to Fakes in build_fuchsia_test (#76266) 2021-02-17 19:37:31 -08:00
Jonah Williams
db1e9f053f
update all packages (#76254) 2021-02-17 17:33:56 -08:00
Jonah Williams
555721de24
[flutter_tools] remove mock process manager from gradle tests (#76252) 2021-02-17 17:00:12 -08:00
Jonah Williams
93e7d34dc4
[flutter_tools] Remove globals/mocks from GradleUtils (#76020) 2021-02-17 14:26:57 -08:00
Danny Tuppeny
74b6ce9abb
Pass --run-skipped through to package:test (#76133) 2021-02-17 12:51:02 -08:00
Jia Hao
9e55af5246
[flutter_tools] Decouple FlutterPlatform from Process (#74236) 2021-02-17 10:06:04 -08:00
omerlevran46
75c853c8e7
[fuchsia] - update getting local host address logic (#75981) 2021-02-16 16:36:03 -08:00
Jonah Williams
7088c5ba2a
Update all packages (#76143) 2021-02-16 15:29:12 -08:00
Jonah Williams
65599e2825
[flutter_tools] use less path manipulation in the Android SDK (#75930) 2021-02-16 13:54:44 -08:00
Jonah Williams
46b8ea8fe6
[flutter_tools] use temp dir for tester dill, use desktop log reader (#75922)
On windows, its not possible to run 2 integration tests using flutter-tester simultaneously. This is due to the flutter tester using a fixed location for its dill output. Use a temp dir instead.

Also replace the custom log reader in flutter-tester with the desktop log reader, and ensure stopApp waits for the process exit code.

Fixes #75534
2021-02-16 10:18:04 -08:00
stuartmorgan
13d051f2f4
Update link for missing desktop projects (#76123) 2021-02-16 09:51:03 -08:00
Ian Hickson
ce318b7b53
All arguments must be documented. (#75888) 2021-02-14 12:56:05 -08:00
Jonah Williams
dce8f71228
[flutter_tools] do not use context logger in gradle (#75940) 2021-02-12 17:38:52 -08:00
Jonah Williams
bf132435e2
[flutter_tools] delete exit immediately test (#75927) 2021-02-12 15:28:24 -08:00
Hidenori Matsubayashi
4cc0ab2d19
[flutter_tools] Add ARM64 Linux host and cross-building option support (#61221) 2021-02-12 14:25:30 -08:00
Jonah Williams
97a9f2ae93
[flutter_tools] move gradle helper methods into AndroidBuilder class body, split unit tests (#75931) 2021-02-12 14:24:13 -08:00
Jonah Williams
fb808b40f9
[flutter_tools] add package:http to forbidden imports test (#75925) 2021-02-12 14:23:08 -08:00
Jonah Williams
980880e2b6
[flutter_tools] remove package HTTP and add pub.dev head check tests (#75871) 2021-02-12 10:44:19 -08:00
Jenn Magder
ba5e237e24
Avoid duplicating Pods-Runner xcconfig #includes (#75822) 2021-02-11 14:11:15 -08:00
mx1up
cc95c972b7
properly pass on gradle exit code (#71484) (#71582) 2021-02-11 14:11:03 -08:00
Jonah Williams
7ab8517f7e
[flutter_tools] refactor devtools handler to expose single method for run/attach and restart (#75807) 2021-02-10 17:04:47 -08:00
Jenn Magder
5b823cded8
Remove dead mock classes (#75757) 2021-02-10 17:01:28 -08:00
Jenn Magder
9236eefdff
MockPub -> FakePub (#75759) 2021-02-10 17:01:20 -08:00
Ian Hickson
b1cc48748d
Only write the pid-file while listening to SIGUSR signals. (#74533) 2021-02-10 16:06:05 -08:00
Jenn Magder
88e6d46d5e
MockProcessManager -> FakeProcessManager (#75544) 2021-02-09 16:05:30 -08:00
Jonah Williams
8df58eb650
[flutter_tools] use a single fake implementation of HttpClient (#75471) 2021-02-09 15:32:03 -08:00
Jonah Williams
645cb64392
[flutter_tools] do not crash if shared profile restoration fails (#75718) 2021-02-09 15:31:48 -08:00
Jonah Williams
3aece33534
[flutter_tools] refactor devtools handler into its own class (#75444) 2021-02-09 15:31:39 -08:00
Jenn Magder
faa1a251f8
Move FakeBotDetector to fakes (#75543) 2021-02-09 12:43:53 -08:00
Jenn Magder
5a2c917dd8
Fix analyzer warning, remove import (#75717) 2021-02-09 10:50:05 -08:00
Jenn Magder
152d88a3df
Add exception to FakeCommand (#75545) 2021-02-09 10:07:46 -08:00
Gary Qian
81530744bf
flutter_tool: DeferredComponent and LoadingUnit classes, Manifest deferred-components parsing (#75394) 2021-02-09 10:02:13 -08:00
Sam Rawlins
e8d52be500
Remove "unnecessary" imports in flutter_tools tests (#75012) 2021-02-09 09:46:07 -08:00
Jonah Williams
021311ed8a
Revert "[flutter_tools] move process manager into tool (#75350)" (#75639)
This reverts commit 8b6baae44c.
2021-02-08 09:21:46 -08:00
godofredoc
da6528cda6
Point to a new artifacts location. (#70673)
This is in preparation to move the flutter artifacts to a more secure
location.

Bug:
  go/fxb/64576
2021-02-04 18:44:47 -08:00
Jonah Williams
8b6baae44c
[flutter_tools] move process manager into tool (#75350)
Our current top crasher is an unclear error when ProcessManager fails to resolve an executable path. To fix this, we'd like to being adjusting the process resolution logic and adding more instrumentation to track failures. In order to begin the process, the ProcessManager has been folded back into the flutter tool
2021-02-04 13:19:11 -08:00
Dan Field
bc1cf49458
roll packages (#75370) 2021-02-04 11:41:03 -08:00
Jenn Magder
86c21c5d8f
Replace MockPlistParser with FakePlistParser (#75276) 2021-02-04 10:39:58 -08:00
Jenn Magder
7a8bbbd807
Install prebuilt iOS app only once (#75387) 2021-02-04 10:19:37 -08:00
Jonah Williams
24d8dbb1e5
[flutter_tools] remove web defines workaround (#75361) 2021-02-03 15:14:59 -08:00
Jenn Magder
7711c1ef8f
Suggest precache instead of build when engine artifacts are missing (#75351) 2021-02-03 13:14:38 -08:00
Shi-Hao Hong
16913b07e8
Relands "[gen-l10n] Fixes named and positional parameter issue with NumberFormat when type is specified" (#75346)
*  Added a new template for [NumberFo
rmat] with positional parameter(s)

* 🔨 Renamed [numberFormatTemplate] to [numberFormatNamedTemplate]

* [gen-l10n] Fixed generation error for namedParameters and optionalParameters

* [gen-l10n] Fixed string value generation for optional parameter

* [gen-l10n-test] Added new tests for `decimalPattern`, `percentPattern`, `scientificPattern` and formats with optional parameters.

* 🔨 Removed trailing whitespaces

* 🔨 replaced [_generateStringParameterValue] with [generateString]

* 🔨 Specified variable types in NumberFormat templates.

*  Added a new template for [NumberFo
rmat] with positional parameter(s)

* 🔨 Renamed [numberFormatTemplate] to [numberFormatNamedTemplate]

* [gen-l10n] Fixed generation error for namedParameters and optionalParameters

* [gen-l10n] Fixed string value generation for optional parameter

* [gen-l10n-test] Added new tests for `decimalPattern`, `percentPattern`, `scientificPattern` and formats with optional parameters.

* 🔨 Removed trailing whitespaces

* 🔨 replaced [_generateStringParameterValue] with [generateString]

* 🔨 Specified variable types in NumberFormat templates.

* [gen-l10n]  added test for parameter having special characters in string value.

* Accidental tab added to integration test

Co-authored-by: arish <arishsultan104@gmail.com>
2021-02-04 03:31:22 +08:00
Jenn Magder
3f163d29a4
Return an empty FlutterViews list when the service disappears (#75301) 2021-02-03 11:01:03 -08:00
Jonah Williams
dcd061c70b
[flutter_tools] experiment with skipping process resolution (#74447) 2021-02-03 10:56:22 -08:00
Jonah Williams
deb5e40f53
[flutter_tools] handle null package (#75336) 2021-02-03 10:53:30 -08:00
Jonah Williams
3b884aa613
Catch VM Service disappearance from run/attach handler code (#75298) 2021-02-03 10:53:15 -08:00
Jia Hao
efd487922d
[flutter_tools] Merge some test options into DebuggingOptions (#75213) 2021-02-02 19:31:03 -08:00
Shi-Hao Hong
c12b53e073
Revert "[gen-l10n] Fixes named and positional parameter issue with NumberFormat when type is specified (#75209)" (#75306)
This reverts commit 917577b808.
2021-02-03 10:32:01 +08:00
Shi-Hao Hong
917577b808
[gen-l10n] Fixes named and positional parameter issue with NumberFormat when type is specified (#75209) 2021-02-02 17:06:05 -08:00
Jonah Williams
7a066564f7
[flutter_tools] add build system test for concurrent failures (#75251) 2021-02-02 16:00:17 -08:00
Jonah Williams
2dfc86ea0b
[flutter_tools] remove mockito from flutter symbolize test (#75263) 2021-02-02 12:27:41 -08:00
Jonah Williams
bad5df55cb
[flutter_tools] remove MockFeatureFlags (#75259) 2021-02-02 12:10:30 -08:00
Vyacheslav Egorov
4ba26191ea
Add support for producing unstripped AOT snapshots. (#75243) 2021-02-02 09:16:04 -08:00
Jonah Williams
44d5950d27
[flutter_tools] switch dart defines to base64 to avoid windows control characters (#75027)
= gets escaped into %3D which seems to be tripping up cmake on windows since % is a control character. Switch to base64 encoding, since this does not have % nor , in the output character set.

This change is not trivially cherry pickable, and isn't tested on windows aside from my local, manual tests due to the planned CI work not being complete yet.

Fixes #75017
Fixes #74705
2021-02-02 09:10:48 -08:00
Jonah Williams
aebf548436
[flutter_tools] skip web renderer defines unless web target is picked (#75160) 2021-02-02 09:05:44 -08:00
Jenn Magder
73506f36f7
Replace MockConfig with TestConfig (#75044) 2021-02-01 18:16:05 -08:00
Ian Hickson
8acac060bf
Remove the timeout when launching DevTools (#74859) 2021-02-01 16:06:02 -08:00
Jenn Magder
43d604e131
Replace context FakeUsage with TestUsage (#75170) 2021-02-01 15:02:25 -08:00
Jenn Magder
dc30327a4d
Replace MockProcessManager with FakeProcessManager in cocoapods_test (#74956) 2021-01-29 14:32:33 -08:00
Jonah Williams
18b1e23e89
[flutter_tools] move some fakes out of mocks.dart (#74992) 2021-01-29 14:28:18 -08:00
Jonah Williams
e53c48968f
[flutter_tools] remove mock SystemClock (#74994) 2021-01-29 14:28:08 -08:00
Jonah Williams
8db51f665d
[flutter_tools] remove mock android device from log reader test (#74995) 2021-01-29 14:27:58 -08:00
Jonah Williams
6efe8e91a7
[flutter_tools] remove most usage of MockDevice (#74999) 2021-01-29 14:27:42 -08:00
Jenn Magder
dbb1958c5e
Add canRun override to FakeProcessManager (#74865) 2021-01-28 19:06:56 -08:00
Jenn Magder
6ecb8cbcfa
Replace MockUsage with TestUsage (#74946) 2021-01-28 18:49:04 -08:00
Jonah Williams
38d928b1ba
[flutter_tools] remove mock from analyze_size_test.dart (#74817) 2021-01-28 18:19:04 -08:00
Jenn Magder
bf248fade2
Allow 'flutter create' in dev and example directories (#74932) 2021-01-28 15:24:09 -08:00
Darshan Rander
7c22f0d214
Added warning when not enabled platform is selected (#73205) 2021-01-28 13:54:04 -08:00
Jonah Williams
b926c7b696
[flutter_tools] rewrite Usage.test to capture objects instead of print logs (#74829) 2021-01-28 12:41:14 -08:00
Jonah Williams
cf54d6a2f0
[flutter_tools] remove mocks from file system test (#74919) 2021-01-28 12:40:20 -08:00
Jenn Magder
ff87150ba9
Revert "Swap MockStdio to FakeStdio in tests (#74838)" (#74867)
This reverts commit 547ed88ab3.
2021-01-27 19:35:16 -08:00
Jenn Magder
547ed88ab3
Swap MockStdio to FakeStdio in tests (#74838) 2021-01-27 17:33:47 -08:00
Jenn Magder
3f380ca544
Swap mockito import for test/fake (#74847) 2021-01-27 16:02:44 -08:00
Jonah Williams
74bd7b6f6d
[flutter_tools] opt all flutter tool libraries and tests out of null safety. (#74832)
* opt out the flutter tool

* oops EOF

* fix import

* Update tool_backend.dart

* Update daemon_client.dart

* fix more
2021-01-27 15:17:53 -08:00
Michael Goderbauer
63267e9016
Make flutter create --smaple null-safe (#74844) 2021-01-27 14:44:03 -08:00
Jenn Magder
2bf560b481
Replace MockProcessManager with FakeProcessManager in process_test where possible (#74834) 2021-01-27 13:25:30 -08:00
Jenn Magder
fe921211df
Replace MockXcode with Xcode.test in more unit tests (#74827) 2021-01-27 13:07:07 -08:00
Jonah Williams
91437a0641
[flutter_tools] delete old directories when unzipping ontop of them (#74818)
Fixes #74772

stale files from previous SDKs were getting left in the cache, confusing the analyzer.
2021-01-27 12:56:21 -08:00
Alexandre Ardhuin
d546e1d311
fix for upcoming lint use_named_constants (#74788) 2021-01-27 20:20:44 +01:00
Jenn Magder
1ad6edb8d5
Remove MockProcessManager from channel_test and other tests (#74780) 2021-01-27 11:17:29 -08:00
Jenn Magder
675fd5540e
Replace MockXcode with Xcode.test in unit tests (#74777) 2021-01-27 11:04:03 -08:00
Jenn Magder
bf37a3964b
Rename setUpMockXcodeBuildHandler -> setUpFakeXcodeBuildHandler in tests (#74778) 2021-01-26 21:19:02 -08:00
Jonah Williams
fa8bf67cb6
[flutter_tools] catch errors when getting cwd (#74744) 2021-01-26 12:49:03 -08:00
Dan Field
d1538320d2
Roll packages to null safe (vm_service, test, etc.) (#74671) 2021-01-26 09:15:54 -08:00
Jia Hao
22f1700427
[flutter_tools] Make setting of CWD consistent for flutter test (#74622) 2021-01-25 22:34:03 -08:00
Jenn Magder
754bc4a594
Move android_plugin_example_app_build_test from devicelab to tool integration tests (#74685) 2021-01-25 19:23:53 -08:00
Jonah Williams
efcf2c664e
[flutter_tools] check if process manager can find adb (#74672) 2021-01-25 14:15:23 -08:00
Jenn Magder
35000147e6
Re-add tool test general per-test timeout (#74531) 2021-01-25 12:47:01 -08:00
Ben Konyi
92427f260a
Handle 'Existing VM service clients' error from old VM service instances (#74665) 2021-01-25 12:29:05 -08:00
Jonah Williams
9ba06b4d3b
[flutter_tools] handle waitForExtension having no isolates (#74664) 2021-01-25 11:54:03 -08:00
Ian Hickson
5d8dfa44b6
Don't crash on narrow window widths (#74365) 2021-01-25 11:39:45 -08:00
Jenn Magder
c8e8d55365
Allow tests to override _DevFSHttpWriter._startWrite throttle time (#74545) 2021-01-25 10:58:26 -08:00
Kenzie Schmoll
c89d649847
Add connectedVmServiceUri service extension and set from flutter_tools (#74534)
* Add connectedVmServiceUri service extension and set from flutter_tools
2021-01-25 10:40:14 -08:00
Zachary Anderson
2007186d2e
Reland: Handle more cases where the tool receives RPCError 112 (#74602)
* Reland: Handle more cases where the tool receives RPCError 112

* Add null-aware access
2021-01-24 12:54:00 -08:00
Zachary Anderson
6be4d1c8bf
Revert "Handle more cases where the tool receives RPCError 112 (#74574)" (#74601)
This reverts commit c87f15fe09.
2021-01-24 09:52:27 -08:00
Zachary Anderson
c87f15fe09
Handle more cases where the tool receives RPCError 112 (#74574) 2021-01-23 23:11:15 -08:00
Jonah Williams
fa0880c309
[flutter_tools] test toggle debugPaintsize (#74464) 2021-01-22 18:11:37 -08:00
Ben Konyi
35b9288e13
Handle RPCError when VM service disappears while invoking VmService.getIsolate (#74528)
* Handle RPCError when VM service disappears while invoking `VmService.getIsolate`

* Add test
2021-01-22 17:21:39 -08:00
Jonah Williams
e599cdd414
[flutter_tools] fix web messaging (#74513) 2021-01-22 11:07:08 -08:00
Jonah Williams
1d3f697160
[flutter_tools] flag flip (#74444) 2021-01-22 09:29:57 -08:00
Jonah Williams
32db0fe791
[flutter_tools] provide correct sources and metadata for different base hrefs (#74452) 2021-01-21 23:04:03 -08:00
Ben Konyi
08068fd94c
Handle service disappeared RPCError when VM service connection disappears (#74424)
* Handle service disappeared RPCError when VM service connection
disappears while invoking a service extension registered by the
framework

* Add unit test, handle non-trivial cases
2021-01-21 22:51:03 -08:00
Kenzie Schmoll
b45088c0cf
Print DevTools inspector links in RenderFlex Overflow errors (#74251) 2021-01-21 02:59:04 -08:00
stuartmorgan
5aa6cba31d
Adjust desktop feature flag (#74348)
Prep to make https://github.com/flutter/flutter/issues/73857 easier in the future.
2021-01-20 19:22:08 -08:00
Jonah Williams
851ff68788
[flutter_tools] throwToolExit from archive failure (#74259) 2021-01-20 15:17:58 -08:00
Jenn Magder
57d695a5df
Skip flutter_immediately_exit_test (#74359) 2021-01-20 15:07:37 -08:00
Michael Thomsen
914c9aa304
Rephrase null safety mode (#74306) 2021-01-20 19:42:16 +01:00
Kenzie Schmoll
118f61230a
Return the existing DevTools server from DevToolsLauncher.serve if one is already running. (#74271)
* Return the existing DevTools server from DevToolsLauncher.serve if one is already running.
2021-01-20 10:38:49 -08:00
Sigurd Meldgaard
178c87cc27
Avoid relative paths in .dart_tool/package_config.json when generate:true (#73944)
Instead of using package:package_config to write the .dart_tool/package_config the original json is modified and rewritten.

The .dart_tool/package_config.json file is read twice to simplify control flow.

This also avoids the issue of package:package_config writing directly to local filesystem.
2021-01-20 14:53:49 +01:00
Ben Konyi
913d5933c1
Check VM service URI is valid before attempting to start DDS (Re-upload #73998) (#74280) 2021-01-19 22:34:03 -08:00
Jonah Williams
d325705332
[flutter_tools] pub get skips example dir if there is no pubspec.yaml (#74264) 2021-01-19 15:02:36 -08:00
Michael Goderbauer
2f7804f41b
Add null safety note to flutter create (#74265) 2021-01-19 14:52:43 -08:00
Michael Goderbauer
cd57af1458
Tests that module/plugin/package templates can be migrated to null-safety (#74090) 2021-01-19 14:24:03 -08:00
Jonah Williams
a0be98020e
[flutter_tools] ensure pub get can run from partially valid state (#74249) 2021-01-19 12:29:07 -08:00
Jonah Williams
fc59f01ea8
[flutter_tools] ensure allowExistingDdsInstance param is always non-null (#74091) 2021-01-15 18:04:40 -08:00
Jonas Finnemann Jensen
bf89943d94
Fix pub upgrade to work with new arguments (#74060) 2021-01-15 17:39:56 -08:00
Jonah Williams
97e82d791b
[flutter_tools] verify successful dart migrate (#74079) 2021-01-15 17:09:04 -08:00
Jonah Williams
32e1e00e2e
[flutter_tools] handle NPE in language analytics (#74075) 2021-01-15 14:54:04 -08:00
Jenn Magder
17edb9aa8c
Build x86_64 iOS apps with simulator local engines (#74003) 2021-01-15 14:47:14 -08:00
Niklas Schulze
afe790775b
[flutter_tools] copy flutter_texture_registrar.h header on Windows (#61098) 2021-01-15 16:20:57 -05:00
Dan Field
6a32859eb9
Revert integration_test in flutter create template (#74068)
* Revert "Add integration_test template to create template (#70240)"

This reverts commit d047d108eb.

* test
2021-01-15 13:13:46 -08:00
Jenn Magder
5830121106
Skip flaky flutter_immediately_exit test (#74055) 2021-01-15 11:12:24 -08:00
Jonah Williams
8d72307c47
[flutter_tools] allow applications to specify additional license files to be bundled into the application NOTICES automatically (#73430) 2021-01-14 16:59:04 -08:00
J-P Nurmi
e1ff62a78c
[flutter_tools] propagate build errors from the backend (#72196) 2021-01-14 13:39:05 -08:00
Jonah Williams
68d8c4b3bb
[flutter_tools] open chrome to correct base URL (#73962) 2021-01-14 12:16:32 -08:00
Jonah Williams
bf4a5484aa
[flutter_tools] no-op maven artifacts if Android SDK is absent (#73957) 2021-01-14 12:09:06 -08:00
Jenn Magder
912c3ab171
Revert "Revert "[flutter_tools] Serve DevTools at app start (#73366)" (#73896)" (#73903)
This reverts commit 388dcd2478.
2021-01-13 15:36:43 -08:00
Jonah Williams
abb48f495b
[flutter_tools] add error handling wrapping for File.createSync (#73890) 2021-01-13 14:25:37 -08:00
Jonah Williams
1eb0bb52e1
[flutter_tools] dont crash on invalid utf8 in pubspec (#73891) 2021-01-13 14:25:16 -08:00
Jonah Williams
d4f0c08261
[flutter_tools] do not crash if target file cannot be read for language version (#73879) 2021-01-13 14:24:04 -08:00
Jenn Magder
388dcd2478
Revert "[flutter_tools] Serve DevTools at app start (#73366)" (#73896)
This reverts commit 1cb0a24a46.
2021-01-13 13:57:09 -08:00
Claire Davis
546b521f33
[flutter_tools] Sort plugins alphabetically when refreshed (#73803) 2021-01-13 09:41:16 -08:00
Kenzie Schmoll
1cb0a24a46
[flutter_tools] Serve DevTools at app start (#73366)
* [flutter_tools] Serve DevTools at app start
2021-01-12 21:39:27 -08:00
Jenn Magder
7c75c01fc3
Add recommended Xcode version to doctor (#73808) 2021-01-12 19:01:18 -08:00
Jenn Magder
f63055a895
Revert "Exclude arm64 from valid iOS simulators (#73755)" (#73807)
This reverts commit 201e5e4ecb.
2021-01-12 13:02:46 -08:00
Jenn Magder
201e5e4ecb
Exclude arm64 from valid iOS simulators (#73755) 2021-01-12 10:35:24 -08:00
Jonah Williams
907bed6982
[flutter_tools] daemon does not report platforms that are not enabled (#73736) 2021-01-12 09:38:23 -08:00
Jonah Williams
f7dc19eb23
[flutter_tools] flutter precache downloads all enabled platforms if no flags are provided (#73733) 2021-01-11 14:29:02 -08:00
Jenn Magder
9a83314cfe
Generate dSYM files during iOS archive (#73630) 2021-01-11 12:42:31 -08:00
Jenn Magder
062022b950
Move ios_content_validation_test to pre-submit tools test (#73577) 2021-01-11 10:29:06 -08:00
Ferhat
0c80a31256
[web] Reland - Switch flutter tool web-renderer default for web to auto (#73595) 2021-01-08 15:44:13 -08:00
Jonah Williams
25dd8684b1
[flutter_tools] add 483 to non-recoverable errors (#73579) 2021-01-08 11:56:13 -08:00
Jonah Williams
df98145548
[flutter_tools] add API for passing arbitrary flags to tester binary (#73576) 2021-01-08 11:46:15 -08:00
Jenn Magder
1fdf60a2ed
Revert "[web] Switch flutter tool web-renderer default for web to auto (#73502)" (#73529)
This reverts commit d4c77f31ef.
2021-01-07 18:08:03 -08:00
Michael Goderbauer
5d1306e7ab
Update outdated links (#73514) 2021-01-07 16:28:12 -08:00
Jenn Magder
45d71e25ab
Build iOS apps using Swift Packages (#73508) 2021-01-07 15:59:09 -08:00
Ian Hickson
544a41eb55
Remove an obsolete comment from pubspec.yaml (#73505) 2021-01-07 15:59:04 -08:00
Ferhat
d4c77f31ef
[web] Switch flutter tool web-renderer default for web to auto (#73502) 2021-01-07 15:54:04 -08:00
Jenn Magder
f596fdc008
Revert "Exclude arm64 from valid iOS simulators (#73458)" (#73511)
This reverts commit 273630c09d.
2021-01-07 14:06:32 -08:00
Jenn Magder
bc7286f118
Use simctl exit code instead of stderr (#73070) 2021-01-07 13:13:56 -08:00
Jenn Magder
273630c09d
Exclude arm64 from valid iOS simulators (#73458) 2021-01-07 13:03:52 -08:00
xster
e0dcb787dc
groovy escaping was wrong for aar (#72554) 2021-01-07 11:43:27 -08:00
Jonah Williams
ed66037f51
[flutter_tools] describe current null safety build mode (#73426) 2021-01-07 10:26:51 -08:00
Jonah Williams
50dfd137ef
[flutter_tools] prevent hot reload/restart if device has not finished devFS initialization (#73420) 2021-01-06 15:54:04 -08:00
Jenn Magder
74d58105d1
Revert "Build iOS apps using Swift Packages (#72761)" (#73437)
This reverts commit 28db5a0fae.
2021-01-06 15:04:16 -08:00
Jenn Magder
6891928a1f
Optionally include CocoaPods xcconfig (#73112) 2021-01-06 13:55:23 -08:00
Jenn Magder
28db5a0fae
Build iOS apps using Swift Packages (#72761) 2021-01-06 13:54:53 -08:00
Jonah Williams
66175760be
[flutter_tools] delete .packages during flutter clean (#73364) 2021-01-05 18:54:03 -08:00
Jonah Williams
7c618758bb
[flutter_tools] delegate first run message re-display to new class, only if changed (#73353) 2021-01-05 18:44:04 -08:00
Jia Hao
47bad77287
Support flutter_test_config for flutter test on web platforms (#72488) 2021-01-05 15:49:02 -08:00
Shi-Hao Hong
a912030982
[gen_l10n] Use l10n.yaml file instead of command line arguments if it exists (#72950)
* Reorganize files

* Use l10n.yaml instead of command line args
2021-01-05 11:50:32 +08:00
Shi-Hao Hong
4d663472e2
[gen_l10n] Improve status message when untranslated messages are still present (#72944) 2021-01-04 01:54:02 -08:00
Jenn Magder
f08b1ae637
Avoid broken symlinks in embedded Flutter frameworks (#73052) 2020-12-28 14:39:02 -08:00
Jenn Magder
6118eaa0de
Check for iOS simulator SDK during AOT validation instead of assuming x86 (#72834) 2020-12-23 15:36:20 -08:00
Ben Konyi
620a8284f8
Catch StateError and output more useful error message when DDS fails to start (#72736) 2020-12-22 10:24:04 -08:00
Jenn Magder
7aacff2216
Exclude ARM from macOS builds (#72748) 2020-12-21 16:05:24 -08:00
J-P Nurmi
f2536da16f
[flutter_tools] Let CMake handle escaping (#70026) 2020-12-21 16:04:04 -08:00
J-P Nurmi
bd08997474
[flutter_tools] catch fatal build output errors on Linux (#72559) 2020-12-21 10:24:03 -08:00
J-P Nurmi
612ef20955
[flutter_tools] use 1-based index for device selection (#72189) 2020-12-21 09:29:05 -08:00
Kenzie Schmoll
b793285329
Add --no-launch-browser flag to DevTools pub run command (#72519) 2020-12-18 10:14:36 -08:00
Jenn Magder
ff8203dcdc
Migrate usage value plugin count off .flutter-plugins (#72538) 2020-12-17 14:56:05 -08:00
Jenn Magder
d6857bc026
Build/copy macOS frameworks to built products instead of ephemeral directory (#72378) 2020-12-17 14:47:05 -08:00
Jenn Magder
1c18cf3da8
Move macOS Podfile logic into the tool (#72020) 2020-12-17 11:48:16 -08:00
Jenn Magder
23f5fbc69d
Update CocoaPods minimum version to 1.9 (#71170) 2020-12-17 10:22:50 -08:00
creativecreatorormaybenot
9ff4326e1f
Test generated_plugin_registrant analysis & suppress long lines in web plugin registrant (#71981) 2020-12-16 22:19:05 -08:00
Jenn Magder
cdacae89e1
Revert "Launch named iOS simulators (#72323)" (#72447)
This reverts commit 84a7a611b0.
2020-12-16 11:52:59 -08:00
xster
ca82c572b7
Revert "let NOTICES be double gzip wrapped to reduce on-disk installed space (#71899)" (#72438) 2020-12-16 10:58:19 -08:00
Sam Rawlins
0dc80621eb
Return null instead of empty in Future.catchError callbacks (#72409) 2020-12-16 10:38:04 -08:00
Jenn Magder
84a7a611b0
Launch named iOS simulators (#72323) 2020-12-15 15:06:47 -08:00
xster
4ed3432e8f
let NOTICES be double gzip wrapped to reduce on-disk installed space (#71899) 2020-12-15 13:29:14 -08:00
Jenn Magder
1129e6f86c
Move embedding and linking macOS Flutter frameworks into the tool (#72372) 2020-12-15 12:05:44 -08:00
Kenzie Schmoll
94a30ddcbb
Add text to --analyze-size command output to launch DevTools with size data (#72295)
* Add text to --analyze-size command output to launch DevTools with size data.
2020-12-15 11:06:10 -08:00
Jenn Magder
617c57bc95
Flutter clean Flutter.podspec (#72306) 2020-12-14 19:13:03 -08:00
hy
cd294666bf
Add --dart-define option support to build aar command (#71829) 2020-12-14 10:21:01 -08:00
Kenzie Schmoll
cd452286ab
Launch DevTools from pub instead of devtools_server (#71737)
* Launch DevTools from pub instead of devtools_server
2020-12-14 10:12:42 -08:00
Jenn Magder
a48a57d369
macos_content_validation_test integration test (#72114) 2020-12-11 13:52:02 -08:00
Chris Yang
d447141bac
[flutter_tools] update message for flutter create -t plugin when no --platforms specified (#71962) 2020-12-10 15:15:55 -08:00
Jenn Magder
d553aa06c7
Revert "Reland Move embedding and linking macOS Flutter frameworks into the tool (#71965)" (#72012)
This reverts commit 0b6b3eecfe.
2020-12-09 11:19:49 -08:00
Jenn Magder
0b6b3eecfe
Reland Move embedding and linking macOS Flutter frameworks into the tool (#71965) 2020-12-09 09:46:53 -08:00
Zachary Anderson
52ea6c2a31
[flutter_tool] Fix crash in update-packages (#71950) 2020-12-09 08:51:10 -08:00
Jenn Magder
c88ab79bd2
Revert "Move embedding and linking macOS Flutter frameworks into the tool (#71764)" (#71951)
This reverts commit 70f8fdeeed.
2020-12-08 15:28:30 -08:00
Jenn Magder
70f8fdeeed
Move embedding and linking macOS Flutter frameworks into the tool (#71764) 2020-12-08 11:59:17 -08:00
Jenn Magder
03013ce42a
Remove manual Flutter linking for iOS projects (#71862) 2020-12-07 13:49:11 -08:00
Dan Field
02eab12fd3
Reland "Add integration_test template to create template (#70240)" (#71660)" (#71740) 2020-12-07 13:38:03 -08:00
Jenn Magder
aa7be00d4b
Rename IOSMigrator -> ProjectMigrator (#71757) 2020-12-04 18:34:59 -08:00
Ben Konyi
89ef88c64f
Ensure attaching to an application with an existing DDS instance is not treated as a fatal error (#70847) 2020-12-04 17:16:30 -08:00
Jenn Magder
d4150d3f6d
Adopt Flutter.xcframework in tool (#71495) 2020-12-04 13:57:11 -08:00
Zachary Anderson
cd3aec3660
[flutter_tool] Report analytics as disabled when suppressed (#71728) 2020-12-04 11:52:32 -08:00
Jonah Williams
afb6b95593
[flutter_tool] fix incorrect coverage file generation (#71726) 2020-12-04 11:15:11 -08:00
Shi-Hao Hong
95e444ce9a
[gen-l10n] Fix forwarding of output-dir in l10n.yaml file (#71128) 2020-12-03 16:18:04 -08:00
Ian Hickson
bb29c88ae7
Simplify the flutter_web_plugins plugin registration API. (#70337) (#70722)
In principle this is backwards compatible; I just merged all the classes into one and deprecated everything that became redundant as a result.
2020-12-03 15:35:41 -08:00
Jason Simmons
2c3ba5b635
Create symlinks for local engine Maven metadata files required by the Android Gradle plugin (#71600) 2020-12-03 15:28:06 -08:00
Jonah Williams
c92cc25830
[flutter_tools] report basic analytics for null-safety (#71487) 2020-12-03 15:14:20 -08:00
J-P Nurmi
b358854172
[flutter_tools] Set basic error matcher for Linux builds (#71003) 2020-12-03 13:41:37 -08:00
Martin Kustermann
625ecda083
Remove left-overs from causal async stacks. (#71663) 2020-12-03 11:03:07 -08:00
Jonah Williams
9e5c8771d4
[flutter_tools] wire up native-null-assertions for flutter web (#71618) 2020-12-03 08:59:31 -08:00
Jenn Magder
a8bed5e405
Add sysctl file fallbacks (#71623) 2020-12-03 08:53:07 -08:00
Kate Lovett
8e05e59c29
Revert "Add integration_test template to create template (#70240)" (#71660)
This reverts commit d047d108eb.
2020-12-03 09:54:28 -06:00
Jonah Williams
81e1f7d1ed
[flutter_tools] mode code size output to ~/.flutter-devtools (#71601) 2020-12-02 17:19:57 -08:00
Dan Field
d047d108eb
Add integration_test template to create template (#70240) 2020-12-02 17:08:03 -08:00
Jonah Williams
e8b87f7cd2
[flutter_tools] enable CK restart tests (#71598) 2020-12-02 13:10:54 -08:00
Emmanuel Garcia
8dd0de7f58
Relands: Migrate template to Gradle 6.7 and AGP 4.1.0 (#71446) 2020-12-01 19:01:09 -08:00
Jonah Williams
f8883445ca
Revert "[flutter_tools] post process the gradle log output (#71499)" (#71527)
This reverts commit d688b52a93.
2020-12-01 17:53:14 -08:00
Jonah Williams
d688b52a93
[flutter_tools] post process the gradle log output (#71499) 2020-12-01 17:13:33 -08:00
Jonah Williams
70e70ebb62
[flutter_tools] Catch all exception subtypes when unzipping a file (#70967) 2020-12-01 12:00:24 -08:00
Jenn Magder
8522ec7e11
Validate empty observatory URI for screenshot (#71451) 2020-12-01 10:00:30 -08:00
Jenn Magder
a5ee7f7cfc
Add XCFramework artifacts (#71113) 2020-12-01 10:00:16 -08:00
Jonah Williams
ffbca11f1b
[flutter_tools] delete BuildRunnerWebCompilationProxy and WebCompilationProxy (#70914) 2020-12-01 09:54:43 -08:00
Jonah Williams
1816778529
[flutter_tools] wire up alternative invalidation strategy to features (#71439) 2020-12-01 09:54:23 -08:00
Jonah Williams
7ab0442868
Add testing shard for release mode guard (#71411) 2020-12-01 09:53:50 -08:00
Jonah Williams
5d201a35aa
[flutter_tools] allow hiding web server device, provide flags to re-enable (#71434) 2020-12-01 09:53:27 -08:00
Chris Yang
0a08f8afff
[flutter_tools] Display "no platforms" message based on results when creating plugins project (#70215) 2020-12-01 09:53:07 -08:00
Jia Hao
8de72126e9
[flutter_tools] Don't fail copying files if the destination is not writable (#71215) 2020-11-25 15:48:03 -08:00
Jenn Magder
9bbc2177ec
Move Flutter.podspec to add-to-app project template (#71103) 2020-11-24 10:16:09 -08:00
Jenn Magder
3379435185
iOS aot assembly requires SDK root (#71094) 2020-11-23 14:10:10 -08:00
Jenn Magder
3a479e7efd
Rename SdkType -> EnvironmentType (#71095) 2020-11-23 14:03:03 -08:00
Amir Hardon
7df04fdbd3
Revert "Migrate template to Gradle 6.7 and AGP 4.1.0 (#70808)" (#71096)
This reverts commit 8e73bab94c.
2020-11-23 12:27:36 -08:00
Masaaki Kakimoto(柿本匡章)
accedc6794
Add current version to the upgrade message of the Flutter tool (#68421) 2020-11-23 12:08:53 -08:00
Jonah Williams
cf6c33e58a
[flutter_tools] fix port leak in flutter_driver (#70999) 2020-11-21 14:04:01 -08:00
Jonah Williams
613a959878
only use code single path for verification of target file existence (#70962) 2020-11-20 14:17:11 -08:00
Emmanuel Garcia
8e73bab94c
Migrate template to Gradle 6.7 and AGP 4.1.0 (#70808) 2020-11-20 13:05:35 -08:00
Jonah Williams
c07661cbc5
[flutter_tools] share bootstrap module between run and test (#70903) 2020-11-20 12:11:24 -08:00
Jonah Williams
1efb36035e
[flutter_tools] display message for current null safety mode (#70718) 2020-11-20 11:53:02 -08:00
Chris Yang
4e88f6a103
flutter_tools: refactor CreateCommand. (#70874) 2020-11-20 10:58:03 -08:00
Jenn Magder
c2d1203f26
Remove deprecated 'flutter build aot' (#70898) 2020-11-20 10:46:12 -08:00
J-P Nurmi
e51183763b
[flutter_tools] deploy version.json asset on Linux (#69920) 2020-11-20 10:23:04 -08:00
Anurag Roy
05dadb0120
[flutter_tools] Make flutter upgrade --verify-only display framework version differences instead of commit hashes (#69420) 2020-11-19 18:03:05 -08:00
Jonah Williams
a76289bb1b
[flutter_tools] run web unit tests in sound null safety (#70799) 2020-11-19 16:49:05 -08:00
Jonah Williams
7086a2f43b
Revert "[flutter_tools] wire up alternative invalidation strategy to features (#70865)" (#70884)
This reverts commit ef4741540b.
2020-11-19 14:01:39 -08:00
Jenn Magder
37f4f1f281
Detect ARM ffi CocoaPods error, suggest gem install (#70801) 2020-11-19 13:17:57 -08:00
Jonah Williams
ef4741540b
[flutter_tools] wire up alternative invalidation strategy to features (#70865) 2020-11-19 13:13:51 -08:00
Jonah Williams
4832e64cad
[flutter_tools] remove globals from flutter web platform (#70863) 2020-11-19 13:06:30 -08:00
Jonah Williams
085ff127ae
[flutter_tools] skip ck restart on all platforms (#70853) 2020-11-19 12:24:22 -08:00
Jonah Williams
f8940709b2
[flutter_tools] refactor shared memory filesystem logic (#70795) 2020-11-18 17:29:13 -08:00
Jonah Williams
f4e79e6828
[flutter_tools] add support for dart defines to flutter test (#70791) 2020-11-18 14:52:49 -08:00
Jenn Magder
e26c7f98ff
Force regeneration of old Podfile (#70735) 2020-11-18 13:33:04 -08:00
Shi-Hao Hong
94ca7b4ad2
[gen-l10n] NNBD generated code (#70415)
* NNBD gen-l10n generated code
2020-11-18 10:14:38 +08:00
Ben Konyi
4cbafda853
Roll package:dds to 1.5.1 and add isCompleted guards around completers in base/dds.dart (#70712) 2020-11-17 16:03:18 -08:00
Ben Konyi
f6bedddd9f
Support legacy behavior for --host-vmservice-port and --observatory-port with DDS (#70336)
Implements the following:
  - If both --host-vmservice-port and --dds-port are specified, use the current behavior
  - If only --host-vmservice-port is specified and dds is enabled, use that for the dds port
  - If only --dds-port is specified, use that for the dds port

Fixes https://github.com/flutter/flutter/issues/70332
2020-11-17 16:03:02 -08:00
Jonah Williams
fa41afa82e
[flutter_tools] reduce build bundle API (#70514) 2020-11-17 11:55:20 -08:00
Jonah Williams
8d15fa3936
[flutter_tools] remove unused/deprecated asset flags (#70509) 2020-11-17 11:02:14 -08:00
Jenn Magder
2529e358b6
Move Flutter.framework to build directory instead of ios/Flutter (#70224) 2020-11-17 10:09:29 -08:00
Jonah Williams
9618788e28
[flutter_tools] remove globals from features (#70515) 2020-11-16 15:00:37 -08:00
Jenn Magder
148ae7bf71
Always build x86 mac apps (#70649) 2020-11-16 14:53:04 -08:00
Marcus Tomlinson
343577afb6
Add liblzma as an explicit dependancy on Linux (#70617) 2020-11-16 14:48:02 -08:00
Jonah Williams
836efaecf0
[flutter_tools] stop unit test from writing real file (#70511) 2020-11-13 21:51:04 -08:00
Jonah Williams
6e84a14294
Revert "Simplify the flutter_web_plugins plugin registration API. (#70337)" (#70505)
This reverts commit 8749d95521.
2020-11-13 16:04:53 -08:00
Anna Gringauze
d5b1cc5b9f
Disable failing test due to SDK issue (#70485)
* Disable failing test due to SDK issue

* Disable failing debugger and hot reload windows tests
2020-11-13 14:15:31 -08:00
Ian Hickson
8749d95521
Simplify the flutter_web_plugins plugin registration API. (#70337)
In principle this is backwards compatible; I just merged all the classes into one and deprecated everything that became redundant as a result.
2020-11-13 14:05:34 -08:00
Jonah Williams
8436c6ab7e
remove testUsingContext (#70482) 2020-11-13 13:23:03 -08:00
Jonah Williams
f98c468317
[flutter_tools] remove unused JSON schema (#70480) 2020-11-13 13:02:40 -08:00
Jonah Williams
0a73ecf6df
[flutter_tools] use initially parsed package config for language version, sound mode determination (#70323) 2020-11-13 09:41:11 -08:00
Jonah Williams
0b88269807
[flutter_tools] remove branch migration and standardize constructor style for version interface (#70058) 2020-11-12 15:29:03 -08:00
Jenn Magder
d11859fee7
Add -miphoneos-version-min=8.0 to App framework stub (#70405) 2020-11-12 15:14:53 -08:00
Jonah Williams
5fedad9173
[flutter_tools] allow using flutter test for testing the tool too (#69911) 2020-11-12 13:52:09 -08:00
Jonah Williams
0c79659900
[flutter_tools] make most integration tests null safe (#70334) 2020-11-12 10:23:03 -08:00
Anna Gringauze
edf26e756d
Move web integration tool tests to web.shard (#70226)
* Move web integration tool tests to web.shard

Web integration tool tests depend on DDC changes in SDK. This change
moves them to a separate shard and subshard so CI bot configurations
can run them separately.

In particular, with will allow running those tests on dart CI flutter
HHH web bot instead of a non-web one, allowing early detection and easy
classification of issues caused by SDK changes as VM- or Web related.

* Enabled verbose mode for flaky web_tool_tests

* Split out the test changes to be commited first
2020-11-11 15:42:15 -08:00
Jonah Williams
22ec357bc4
[flutter_tools] make getBuildInfo async (#70320) 2020-11-11 15:33:23 -08:00
Jonah Williams
0f80116a63
[flutter_tools] improve hash performance in build_system (#70065) 2020-11-11 15:31:07 -08:00
Jonah Williams
a40ee8a3fb
[flutter_tools] migrate .packages to package_config, partial (#70200) 2020-11-11 13:50:41 -08:00
Jonah Williams
fb28ee2860
[flutter_tools] reland: cache pub invocations (#70180)
Disabled caching of pub invocations on flutter drive.
2020-11-10 13:56:36 -08:00
Jonah Williams
0bbd9020ed
[flutter_tools] remove experiment tracking analytics for null safety (#70183) 2020-11-10 12:49:50 -08:00
Jonah Williams
39bc68b6a2
[flutter_tools] dont use autodetect enum for web (#70189) 2020-11-10 12:49:38 -08:00
Jonah Williams
84a8bd3f5a
Revert "[flutter_tools] always use dart to run test script. (#70146)" (#70175)
This reverts commit a90880a8c3.
2020-11-10 05:21:14 -08:00
Jonah Williams
a90880a8c3
[flutter_tools] always use dart to run test script. (#70146) 2020-11-10 05:02:56 -08:00
Jonah Williams
dbcd7868a4
[flutter_tools] remove most globals from asset system and remove Cache manipulation in unit tests (#70011) 2020-11-09 18:01:04 -08:00
Jonah Williams
1c4b50ecf1
Revert "[flutter_tools] restore pub caching functionality (#70133)" (#70144)
This reverts commit ff953e4f83.
2020-11-09 16:38:07 -08:00
Jonah Williams
3fb389c75a
[null-safety] implement null-safe autodetection for the web (#70126)
Fixes #69416
Fixes #70121
2020-11-09 16:13:38 -08:00
Jonah Williams
ff953e4f83
[flutter_tools] restore pub caching functionality (#70133)
Necessary to work around #70013 (this looks like it will be fixed, but should protect us in the future)

Restores some notion of skipping pub, with differences from the prior implementation:

Off by default, and only used by the flutter command automatic pub get
A single check parameter. Uses the framework version cached per-project instead of a timestamp of the tool, to avoid cases where downloading a prebuilt framework would cause this check to no longer work.
2020-11-09 16:11:55 -08:00
Yegor
879466eac2
default to unsound nullability for web (#70120) 2020-11-09 13:49:02 -08:00
Jonah Williams
f1cdf2e6f3
Revert "[flutter_tools] restore pub caching functionality on run/test (#70056)" (#70132)
This reverts commit 6e5845f025.
2020-11-09 13:31:01 -08:00
Jonah Williams
6e5845f025
[flutter_tools] restore pub caching functionality on run/test (#70056) 2020-11-09 12:52:22 -08:00
Emmanuel Garcia
21e802746b
Migrate Flutter Gallery test to null safety (#70116) 2020-11-09 12:29:14 -08:00
Jonah Williams
4c511fbde2
[flutter_tools] remove workaround for caching sound dill (#70014) 2020-11-09 11:53:56 -08:00
Michael Thomsen
168ad5dc4d
Roll engine and fix pubspecs that do not have a Dart SDK constraint (#70078) 2020-11-09 19:02:10 +01:00
Michael Thomsen
e4d94f7ccd
Revert "Migrate Flutter gallery test to null safety (#69048)" (#70023)
This reverts commit 7ba775a994.
2020-11-07 12:15:22 +01:00
Emmanuel Garcia
7ba775a994
Migrate Flutter gallery test to null safety (#69048) 2020-11-06 20:38:12 -08:00
George Wright
2b512781a0
Add a --dart-entrypoint-args flag to flutter run to pass through Dart entrypoint arguments on Flutter Desktop (#69607) 2020-11-06 15:34:02 -08:00
Jonah Williams
2fb53d83f2
[flutter_tools] remove all globals from cache and cache_test (#69505) 2020-11-06 15:26:45 -08:00
Mokusesei
6269abb75b
Reland: fix android studio 4.1 plugin path for mac (#69954) 2020-11-06 10:57:04 -08:00
Devon Carew
5ba2d79ad2
remove the use of the analysis server --enable-experiments flag from flutter analyze (#69966) 2020-11-06 10:56:34 -08:00
Jonah Williams
e18533e7ab
[flutter_tools] remove globals from android_workflow (#69548) 2020-11-06 10:55:52 -08:00
Gary Roumanis
16daed86c3
Persist Chrome Default Directory (#69921) 2020-11-06 10:54:04 -08:00
Jonah Williams
a3f6ea6f38
[flutter_tools] split web integration tests into new shard (#69914) 2020-11-05 17:21:44 -08:00
Shi-Hao Hong
a1a096e35a
[gen-l10n] Fix untranslated messages (#68553) 2020-11-05 16:24:02 -08:00
Jonah Williams
dd8820bcc1
[flutter_tool] initialize flutter root in executable (#69549)
initialize the flutter root as early as possible. This allows all interfaces to be normally injected into commands, even if those objects might read from the flutter root.
2020-11-05 15:21:05 -08:00
Jenn Magder
bc2a4a6498
Update CocoaPods recommended version to 1.9 (#69809) 2020-11-05 15:13:22 -08:00
Jenn Magder
1be922c353
Build either iphoneos or iphonesimulator App.framework, not both (#69840) 2020-11-05 14:22:24 -08:00
Dan Field
cfcb9887c9
Do not use --first-parent when determining version on master (#69726) 2020-11-05 10:11:32 -08:00
Vyacheslav Egorov
4c24eb10b8
Revert "Fix: fix android studio 4.1 plugin path for macOS" (#69870)
This reverts commit 422a97d1e5 due to https://github.com/flutter/flutter/issues/69863
2020-11-05 11:18:00 +01:00
Jenn Magder
2f3cccc4f5
Run more xcodebuild commands in native arm on Apple Silicon (#69837) 2020-11-04 19:54:02 -08:00
Mokusesei
422a97d1e5
Fix: fix android studio 4.1 plugin path for macOS (#69364) 2020-11-04 17:25:53 -08:00
Shi-Hao Hong
0963d72582
Make resource attributes optional for simple cases (#68774) 2020-11-05 08:11:53 +08:00
Jonah Williams
7ceb20417c
disable hot reload web tests on CI due to flakes (#69802) 2020-11-04 12:36:33 -08:00
Jonah Williams
6cec03c7c1
[flutter_tools] do not reload sources if no sources changed (#69450)
If no source files were changed by a hot reload, do not send the reload sources RPC. This slightly speeds up the no-op reloads and gives users a faster way to force a re-render.
2020-11-04 11:15:30 -08:00
Jenn Magder
53410c4bb9
Compile snapshot_assembly with sdk root set in Xcode (#69731) 2020-11-04 10:32:01 -08:00
Anna Gringauze
5034d57546
Disable web expression evaluation tests (#69728)
Temporarily disable web expression evaluation tests,
until we figure out how to disable the only on non-web bot.
2020-11-03 23:36:54 -08:00
Jenn Magder
91b82347af
Build App.framework directly to build directory (#69699) 2020-11-03 12:48:25 -08:00
Jonah Williams
9ec5d7131b
Remove usage of --enable-experiment to analysis server (#69614) 2020-11-03 08:02:19 -08:00
Jonah Williams
a2a4e9eda4
Revert "Build App.framework directly to build directory (#69612)" (#69641)
This reverts commit b77088319a.
2020-11-02 20:12:47 -08:00
Jenn Magder
b77088319a
Build App.framework directly to build directory (#69612) 2020-11-02 18:48:03 -08:00
Jonah Williams
9383ec793b
mark flaky tests as flaky (#69633) 2020-11-02 18:15:20 -08:00
Jonah Williams
8291f4810f
[flutter_tools] add canvaskit hot reload integration test (#69550) 2020-11-02 10:40:46 -08:00
Andy Weiss
c4ceea397a
[flutter_tools] Support zipped application bundles for macOS (#68854)
* [flutter_tools] Support zipped application bundles for macOS

It is not possible to directly produce a directory (.app) in some build systems
but rather it must be zip'ed before being passed to the tool for
running. This adds support for attempting to extract an application
bundle from a zip file if the bundle is not already a directory. This
uses very similar code from lib/src/application_package.dart which is
used for extracting an ipa for iOS.

This introduces tests for the macos/application_package.dart behavior which did not exist before. These tests cover the changes in the PR and some of the existing behavior, but do not cover everything in that file.
2020-11-02 08:58:33 -08:00
Shi-Hao Hong
4996f60b20
[gen_l10n] Fix unintended use of raw string in generateString (#69382)
* Fix failing tests from introducing raw string generation in gen_l10n tool
2020-10-31 19:24:53 +08:00
Jonah Williams
324b78eb12
[null-safety] enable null safety (#69440)
* [null-safety] enable null safety

* opt expression evaluation web test out of null safety
2020-10-30 15:26:22 -07:00
Jenn Magder
de5bf09e7a
Show macOS arm64 architecture in doctor and devices list (#69245) 2020-10-30 13:48:04 -07:00
Jonah Williams
3e41962dff
[null-safety] update tests and tool auto-detection for null safe dart (#69405)
Disable null safety auto-detection for the web
2020-10-30 13:42:54 -07:00
Jonah Williams
a0860f6e87
[flutter_tools] retry sever socket setup (and port selection if port is unspecified) (#69351)
Fixes #69348

If the web development server fails to bind, then retry up to 5 times. If a port was not provided, select a new free port each time.
2020-10-29 20:07:34 -07:00
Jonah Williams
44d0e52d20
[flutter_tools] remove fallback discovery and observatory timeout (#68756)
The flutter run failures are cause by the application occasionally taking a long time to start up. This caused the ios fallback discovery to kick in, which will always fail if the application hasn't started. Solution: remove the iOS fallback discovery and wait up to 30 seconds.

This has not proven to reduce the flakes, but it does at least remove one error case and removes code that will no longer work without the mDNS fallback.
2020-10-29 18:43:47 -07:00
Jonah Williams
ca47b4e12c
[flutter_tools] disable failing gen l10n test (#69340) 2020-10-29 15:04:46 -07:00
Angjie Li
3056f4194a
Fix issue with --web-renderer. (#69319) 2020-10-29 14:43:06 -07:00
Yegor
2fa03438de
add web_long_running_tests shard containing long-running web tests (#67324) 2020-10-29 14:23:02 -07:00
Shi-Hao Hong
7b0f38b117
Remove intl_translation from tool integration test (#69155) 2020-10-29 14:05:39 -07:00
Shi-Hao Hong
a2b93b86f6
[gen_l10n] Add base method code comments for improved discoverability (#69016) 2020-10-29 14:03:05 -07:00
Jonah Williams
470346f775
[flutter_tools] Reland: Stage web tests (#69264)
Enable web tool integration tests: expression evaluation, stepping, and basic hot restart
2020-10-29 09:56:28 -07:00
Jonah Williams
2ceb34e6fb
Revert "[flutter_tools] enable web integration tests (#69114)" (#69261)
This reverts commit d0cdfa4176.
2020-10-28 18:22:41 -07:00
Angjie Li
2bbd004682
Support --web-renderer options which would allow user to specify which rendering backend to use. (#68848) 2020-10-28 17:32:09 -07:00
Jonah Williams
ed5d8718c4
[flutter_tools] conditionally invoke pub run test for drive scripts based on presence of dependency (#69246)
* [flutter_tools] conditionally invoke pub run test for drive scripts based on presence of dependency
2020-10-28 17:32:05 -07:00
Jonah Williams
d0cdfa4176
[flutter_tools] enable web integration tests (#69114)
* [flutter_tools] stage web integration tests
2020-10-28 17:31:44 -07:00
Jonah Williams
735f6eec2c
[flutter_tools] support ws scheme in use-existing-app (#69244) 2020-10-28 15:09:46 -07:00
Jonah Williams
d306c37bc4
[flutter_tools] fix --use-existing-app (#69237) 2020-10-28 13:55:29 -07:00
Danny Tuppeny
e71655b7e9
Include VS Code + Android Studio URLs in the No IDE message (#69194) 2020-10-28 11:17:06 -07:00
Konstantin Scheglov
7b86be228e
Use runZonedGuarded() instead of deprecated onError. (#69160) 2020-10-28 08:43:31 -07:00
Jonah Williams
9e5e763ebe
[flutter_tools] document flutter root initialization (#67884)
Moves the flutter root initialization to a static method on the cache. This is a small step towards making this functionality non-static and instead injected like normal members - however, completely removing all of the static-ness at once was too large of a change.

Instead document and add unit tests and change existing code as little as possible.

#47161
2020-10-27 15:20:07 -07:00
Anurag Roy
cd690f9559
[flutter_tools] Add --verify-only flag to flutter upgrade (#68866)
* Add --verify-only flag for flutter upgrade
2020-10-27 14:06:39 -07:00
Jonah Williams
18f0a2288e
[flutter_tools] update to vm_service 5.2.0, update to dwds 7.0.0 (#69067)
Rolls in several fixes to web tooling, including better handling of absolute file imports. Updates to latest vm service to unblock null safety mode query

Co-authored-by: Gary Roumanis <grouma@google.com>
Co-authored-by: Anna Gringauze <annagrin@google.com>
2020-10-27 13:55:32 -07:00
Dan Field
36f9af3f55
reland driver vm_service migration (#69126)
* One more reland of "Driver vm service (#68654)" (#69074)" (#69077)" (#69089)"

This reverts commit e5814756a2.

* pub run test
2020-10-27 11:30:24 -07:00
Jonah Williams
8c3d564ded
[flutter_tools] fix test expectation in resident_runner.dart (#69121) 2020-10-27 10:11:02 -07:00
Jonah Williams
3300a1bd68
[flutter_tools] eagerly set asset directory path, cache flutter views, simplify error handling (#68978)
Performs some small cleanup on the hot reload code path.

- Combines nested try/catch into single try catch, update on clause now that package:vm_service is used and Map does not need to be caught.
- Cache FlutterViews for the lifetime of the hot reload method handler
- Set asset directory path once during startup and remove conditional set during hot reload
2020-10-27 09:20:05 -07:00
Jonah Williams
6cd847c767
[flutter_tools] update test platform to use buildInfo instead of mode + additional params (#69033) 2020-10-26 18:50:17 -07:00
Jonah Williams
e0ec9a06dc
[flutter_tools] Make ApplicationPackageFactory inject dependencies for Android Builds (#67827)
* [flutter_tools] simplication of application store logic

* maybe return null

* fix install tests

* Clean up imports

* revert windows test

* remove unused import
2020-10-26 16:51:32 -07:00
Jonah Williams
e7b66ac7ad
[flutter_tools] do not include AS validator if android is not enabled (#69047) 2020-10-26 15:59:00 -07:00
Jonah Williams
2e54c4a8ea
[flutter_tools] implement safe file copy with multiple fallbacks (#69000)
The tool observes a large number of unhandled exceptions during the file copy portion of flutter create. it is difficult to tell whether the permission issue is caused by the source/destination, or whether it is due to a bug in dart:io.

To work around this, implement a permission check for both the source and dest files. If either fails, the tool can exit with a more specific message.

If these checks pass, then perform the actual copy. If the copy fails, fallback to manually copying the bytes
2020-10-26 15:49:07 -07:00
Jonah Williams
8b973f01c4
[flutter_tools] add package_config.json to analyze_once_test.dart (#69059)
* [flutter_tools] add package_config.json to analyze_once_test.dart
2020-10-26 15:46:51 -07:00
Alexandre Ardhuin
17cdf5559d
enable unnecessary_string_escapes and use_raw_strings (#68302) (#69025) 2020-10-26 12:42:05 -07:00
Jonah Williams
183fe75d58
[flutter_tools] reland: drive service (#68887)
Overhaul of flutter drive in order to deliver a better experience, namely:

* flutter run and flutter drive now share more flags, so code paths that were previously only testable on run are now testable on drive.
* Removes web-initialize-platform as this is no longer used
* flutter drive correctly sets up a logger that shows native exceptions, by connecting to the vm service.
* VM service connection now provides access to memory info without launching devtools (only for debug/profile mode)

Web changes

* Passes on the one test in the repo, otherwise the webdriver code has been isolated as much as possible

Additional NNBD related bug fixes:

No longer passes --enable-experiment to the test script. (FYI @blasten ). earlier we might have assumed that the flutter gallery benchmarks would be migrated along side the app and flutter driver, but only the app under test needs to be migrated. The test scripts should never be run with the experiment.
2020-10-26 10:11:30 -07:00
Jonah Williams
0f28edac65
[flutter_tools] null safety mode is used for dill naming (#68898)
* [flutter_tools] null safety mode is used for dill naming

* add bad test case
2020-10-23 15:39:58 -07:00
Jenn Magder
832d776b15
Stop debugger when iOS app crashes (#68844) 2020-10-23 14:12:04 -07:00
Jenn Magder
59544e377d
Apple silicon arch -arm64 -> -arm64e (#68855) 2020-10-23 13:48:38 -07:00
Jonah Williams
cb67513f29
[flutter_tools] Reland: simplify pub cache logic (#67589)
There have been some more additional reports of a missing 'package:characters' import after upgrading flutter. This has me concerned that our pub caching logic is incorrect. Instead of the tool attempting to guess when pub should be run, always delegate to pub.

Also takes an opportunity to fix the kernel snapshot depending on the .packages or package_config. Due to the generated: date field this causes extra rebuilds. Instead when pub get is run, write out an additional file with just the package contents and version.

Fixes #66777
Fixes #65723
2020-10-23 10:00:56 -07:00
Jonah Williams
1edec6fc20
Revert "[flutter_tools] refactor drive launch into separate service, split by mobile+desktop and web (#68451)" (#68845)
This reverts commit 2e75f52ae4.
2020-10-22 19:39:33 -07:00
Jonah Williams
2e75f52ae4
[flutter_tools] refactor drive launch into separate service, split by mobile+desktop and web (#68451)
Overhaul of flutter drive in order to deliver a better experience, namely:

flutter run and flutter drive now share more flags, so code paths that were previously only testable on run are now testable on drive.
Removes web-initialize-platform as this is no longer used
flutter drive correctly sets up a logger that shows native exceptions, by connecting to the vm service.
VM service connection now provides access to memory info without launching devtools (only for debug/profile mode)
Web changes

Passes on the one test in the repo, otherwise the webdriver code has been isolated as much as possible

Additional NNBD related bug fixes:

No longer passes --enable-experiment to the test script. (FYI @blasten ). earlier we might have assumed that the flutter gallery benchmarks would be migrated along side the app and flutter driver, but only the app under test needs to be migrated. The test scripts should never be run with the experiment.
2020-10-22 15:07:02 -07:00
Jenn Magder
f63d56e455
App.framework must support iOS 8 for older Flutter projects (#68729)
* App.framework must support iOS 8 for older Flutter projects

* Fix test
2020-10-22 13:50:54 -07:00
Jonah Williams
21ca1f9ba5
[flutter_tools] use --no-print-incremental-dependencies for non-resident and test compiles (#68678) 2020-10-22 13:34:59 -07:00
Jenn Magder
04657354f5
Build IPA command (#67781)
* Build IPA command

* xcarchive -> ipa
2020-10-22 13:32:51 -07:00
Zachary Anderson
cbcd1321ed
Revert "enable unnecessary_string_escapes and use_raw_strings (#68302)" (#68714)
This reverts commit ae06c19a37.
2020-10-21 08:16:13 -07:00
Alexandre Ardhuin
ae06c19a37
enable unnecessary_string_escapes and use_raw_strings (#68302) 2020-10-21 16:34:24 +02:00
Jenn Magder
d29cd9beb6
Clean up device logger and port forwarding on drive completion (#68655) 2020-10-20 16:01:51 -07:00
Jenn Magder
d81691d0f4
Revert "Build iOS apps using Swift Packages (#68361)" (#68546)
This reverts commit dd9323bdfb.
2020-10-19 17:57:32 -07:00
Yegor
ea3b08f333
Respond to HTTP POST requests with 404 in WebAssetServer (#68492)
* Respond to POST with 404 in WebAssetServer
2020-10-19 16:21:39 -07:00
Jenn Magder
dd9323bdfb
Build iOS apps using Swift Packages (#68361) 2020-10-19 15:47:04 -07:00
Jenn Magder
5e17a240bd
Generate only requested platform directories on create (#68376) 2020-10-19 14:17:43 -07:00
Jonah Williams
e422d5c724
[flutter_tools] reland: --no-android-gradle-daemon in devicelab (#68491)
Remove devicelab specific code for shutting down gradle daemon, add --android-gradle-daemon option to build/run/drive`. Avoids need for un-tested devicelab specific handler. There are also some feature requests for this, so 2 birds one stone.

Example:

flutter build apk --no-android-gradle-daemon will pass --no-daemon on to gradle
2020-10-19 10:27:58 -07:00
Jonah Williams
19f363029e
[flutter_tools] increase devFS sync timeout to 60 seconds (#68488)
The current timeout is too short for some remote workflows. The existing unit test require hitting a real timeout so I've removed it.

See b/171005910
2020-10-19 10:14:37 -07:00
Jonah Williams
ed5482de19
Revert "[flutter_tools] add --android-gradle-daemon option, use in devicelab (#68409)" (#68489)
This reverts commit ddab72e79f.
2020-10-19 09:33:52 -07:00
Jonah Williams
ddab72e79f
[flutter_tools] add --android-gradle-daemon option, use in devicelab (#68409)
Remove devicelab specific code for shutting down gradle daemon, add --android-gradle-daemon option to build/run/drive`. Avoids need for un-tested devicelab specific handler. There are also some feature requests for this, so 2 birds one stone.

Example:

flutter build apk --no-android-gradle-daemon will pass --no-daemon on to gradle
2020-10-19 09:12:21 -07:00
Nobuhiro Tabuki
4e2f82cf93
[flutter_tools] change the IntelliJ plugin detection logic. (#68020)
This PR suggests improving the IntelliJ plugin "jar" detection logic.

Previously:
The IntelliJ Flutter plugin was contained flutter-intellij.jar.
Currently:
It is named flutter-intellij-X.Y.Z.jar and does not contain META-INF/plugin.xml.
META-INF/plugin.xml is included in flutter-idea-X.Y.Z.jar.

So this PR changes the rules for searching the plugin's jar file.
Concretely, it looks for the jar file containing META-INF/plugin.xml in the plugin's package directory and reads the package version from its META-INF/plugin.xml.

Co-authored-by: Jonah Williams <jonahwilliams@google.com>
2020-10-19 08:19:48 -07:00
Lau Ching Jun
583db83865
request.mainUri should be fileUri (#68329) 2020-10-16 15:23:54 -07:00
Jonah Williams
198e40c9eb
[flutter_tools] retry the driver launch of the application up to 3 times. (#68334)
We'd like to see how many of these flakes are transient and how many involve the device/machine getting temporarily wedged. Add a retry with no delay to see if it is possible to add sufficient error handling to startApp/installApp to handle this.
2020-10-16 15:07:23 -07:00
Lau Ching Jun
3393566b56
Use multiroot scheme for initial compilation in ResidentRunner recompile (#68280) 2020-10-16 10:54:19 -07:00
Jonah Williams
dd93ee301f
[flutter_tools] drive uses correct application package for prebuilt (#68309)
Both start and stop app create an application package, but only start app used the application binary. Create the application package once and pass it to both start and stop app.
2020-10-16 09:40:08 -07:00
Shi-Hao Hong
38ebc5588b
[gen_l10n] Create pubspec.yaml in ".dart_tool/flutter_gen" if it does not already exist (#68206)
* Generate pubspec.yaml for synthetic package if it did not exist prior
2020-10-16 11:34:27 +08:00
Jenn Magder
acde65d14a
Revert noninteractive lldb debugging, timeout warning (#68245) 2020-10-15 18:02:15 -07:00
Jonah Williams
4ce27ea0ac
[flutter_tools] update metadata detection to account for invalid yaml (#68243) 2020-10-15 16:51:52 -07:00
Alexandre Ardhuin
73301a35a2
Sync lints (#68136) 2020-10-15 15:37:04 -07:00
Jonah Williams
27936e9f22
Revert "[flutter_tools] ensure android log reader works in flutter drive (#68131)" (#68222)
This reverts commit d962c8f2a2.
2020-10-15 10:50:56 -07:00
Jonah Williams
2321b72dfb
[flutter_tools] move gradle download failure handling into tool (#68140)
This crash affects anyone using flutter, so move it into the tool where it can be tested and documented. Ensure it works on windows devicelab too.
2020-10-15 09:20:52 -07:00
Jenn Magder
1fb94fb894
Noninteractive iOS debugger session (#68145) 2020-10-14 15:38:07 -07:00
Jenn Magder
a82807d782
Run Xcode command lines tools in native ARM (#68050) 2020-10-14 15:24:32 -07:00
Jonah Williams
d962c8f2a2
[flutter_tools] ensure android log reader works in flutter drive (#68131) 2020-10-14 14:04:33 -07:00
Jenn Magder
431c599bec
Revert "[flutter_tools] If run fails to install the application on iOS, try uninstalling it and trying again. (#68078)" (#68118)
This reverts commit 61ba7dd218.
2020-10-14 10:07:30 -07:00
Jonah Williams
61ba7dd218
[flutter_tools] If run fails to install the application on iOS, try uninstalling it and trying again. (#68078) 2020-10-14 09:14:36 -07:00
Jonah Williams
4b351ac1b4
[flutter_tools] do not allow attaching in release mode (#68071)
Do not allow attach in release mode, as there is not VM Service to connect to. Observed in crash reporting as thrown string which is changed to exception below.
2020-10-13 21:29:23 -07:00
Jonah Williams
9e70180f63
[flutter_tools] do not measure progress timeout (#67959)
Remove "This is taking a long time" progress timeout and TimeoutConfiguration.
2020-10-13 13:05:47 -07:00
Jenn Magder
3e0d2741de
Detach debugger when VM connection fails on iOS (#68046) 2020-10-13 12:50:50 -07:00
Jenn Magder
4dffc851bc
Detect ARM macOS arch with sysctl hw.optional.arm64 (#67970) 2020-10-13 12:05:04 -07:00
Jonah Williams
d6d06ed9f0
[flutter_tools] delete applicationPackageStore (#68026)
This class is entirely superseded by the application package factory. Only drive and install use it, and removing it from drive will allow use-application-binary support.
2020-10-13 11:33:55 -07:00
Jonah Williams
1c976933f3
[flutter_tools] support Android Studio 4.1 on Windows (#67992)
Android Studio 4.1 moved the location of the .home file on Windows which is used to located the install directory. This functionality is important because it is how we locate and discover the Android SDK functionality, as well as the appropriate JRE.

fixes #67986
2020-10-13 11:33:26 -07:00
Nobuhiro Tabuki
1e180062aa
[flutter_tools] Support IntelliJ 2020.1 and later on Linux and Windows (#58853)
This PR will update IntelliJ IDEA/Community validation logic for 2020.1 and later on Linux and Windows.
2020-10-12 22:03:36 -07:00
Jonah Williams
ac751cc50c
[flutter_tools] verify checksum of downloaded artifacts (#67839)
All of the network requests from google cloud storage include an x-goog-hash header which contains an MD5 checksum. If present, use to validate that the downloaded binary is valid. This will rule out corrupt files as the cause of getting started crashers in the flutter_tool.

#38980

This does not fully resolve the above issue, because while we can check if the checksum matches what was expected from cloud storage, this A) may not necessarily be present and B) may not match up to what should be uploaded as part of the engine build process.

But when life gives you lemons you hash those lemons using an outdated hashing algorithm.
2020-10-12 17:44:23 -07:00
Jonah Williams
18bb4d7254
Revert "[flutter_tools] reland: fold process resolution logic into the flutter tool (#67957)" (#67968)
This reverts commit bd8138797e.
2020-10-12 15:53:16 -07:00
Jonah Williams
52f8b89c0e
[flutter_tools] dont allow creating package name that is invalid (#67786)
According to https://dart.dev/tools/pub/pubspec#name , uppercase is not permitted for package names.
2020-10-12 15:38:23 -07:00
Jonah Williams
bd8138797e
[flutter_tools] reland: fold process resolution logic into the flutter tool (#67957)
Reland of #67669

The flutter tool has a number of crashes on stable where an ArgumentError is thrown due to the process manager not being able to resolve an executable.

So that we can adjust/modify this logic, fold it into flutter and add some additional logging.
caches the resolved executable per target directory, to avoid repeated look ups.
Instead of throwing an argument error, attempts to run the executable as given if an exact path can't be found
Accept files or symlinks for the executable path.
user where/which to resolve path instead of package:process logic.
2020-10-12 15:37:02 -07:00
Jonah Williams
354e2a57b1
Revert "[flutter_tools] fold executable resolution into flutter (#67669)" (#67954)
This reverts commit 10c78c264a.
2020-10-12 13:15:39 -07:00
Jonah Williams
10c78c264a
[flutter_tools] fold executable resolution into flutter (#67669)
The flutter tool has a number of crashes on stable where an ArgumentError is thrown due to the process manager not being able to resolve an executable. Fold the resolution logic into the tool and use where/which instead of the package:process specific logic.
2020-10-12 12:51:37 -07:00
Jonah Williams
ac614de7ac
[flutter_tools] validate that SkSL bundle path exists (#67883)
Fixes #61772

tool exit if there is no file at the path provided when building/running with sksl
2020-10-12 12:49:51 -07:00
Jonah Williams
fd11d149f7
[flutter_tools] teach flutter drive to uninstall if install fails (#67936)
Work towards #39925

Currently flutter run will uninstall and reinstall if the initial install fails and the APK was previously installed. Allow drive to share this same logic by moving it into installApp and out of startApp.

This should reduce the occurrence of the error in the devicelab.
2020-10-12 12:49:36 -07:00
Jonah Williams
b4e4e8d965
[flutter_tools] do not crash validator if intellij JAR file is missing (#67931)
This failure has been happening for a while but was covered by the overly broad catch. Removing that revealed that newer intellij versions have a different plugins file. The tool still can't find the file, but it won't crash now

Fixes #67918
2020-10-12 10:34:05 -07:00
Jonah Williams
0afddf3578
[flutter_tools] use fixed entry for dill uploads (#67837)
For historical reasons, the flutter tool uploads dill files to paths based on the entrypoint URI. This isn't actually necessary, and the tool can use specific files : main.dart.incremental.dill for incremental dills, and main.dart.dill/main.dart.swap.dill for full dills. This allows hot restarting applications with an entrypoint outside of lib/ and simplifies the devFS code.

Fixes #63243
2020-10-12 09:47:41 -07:00
Jonah Williams
08576cb671
[flutter_tools] HACKTOBERFEST (#67882)
HACKTOBERFEST
2020-10-12 09:31:02 -07:00
Jonah Williams
1a9d635f64
[flutter_tools] remove --with-driver-test (#67783)
Remove flutter create --with-driver-test . Fixes #64095
2020-10-09 21:03:37 -07:00
Alexander Markov
1973cf2d6c
Remove uses of bytecode mode of Dart VM (#67755) 2020-10-09 16:33:06 -07:00
James D. Lin
e4206ac5dd
[flutter tools] Add a DelegatingLogger class (#67581)
[flutter tools] Add a DelegatingLogger class

Move most of `DelegateLogger` `from test/src/testbed.dart` to
`lib/src/base/logger.dart` to better formalize the common practice of
chaining `Logger`s together.  I renamed the class since it isn't
itself the delegate and to better match the `Delegating...` classes
from `package:collection`.

Additionally, add a freestanding `asLogger<T>` function to "cast" a
`Logger` into a matching delegate if possible.  This will allow
`Logger` chains to be ordered a *bit* more freely (e.g.
`NotifyingLogger` and `AppRunLogger` will no longer required to be
at the end of the chain, an unwritten rule that has led to breakage in
google3).  Chain order still matters since lack of virtual dispatch
means that parent `Logger`s can never invoke child methods, however.

I made `asLogger<T>` a freestanding function because I didn't want to
make it part of the `Logger` interface (and I thought that making it
an extension method might be weird).

Bonus cleanup:
There no longer appears to be a way to construct an `AppRunLogger`
with a null parent, so remove all of code paths for that case and
make the `parent` construction parameter required.
2020-10-09 15:55:24 -07:00
Jonah Williams
bdb830a833
[flutter_tools] pretty print hot reload rejection error (#66701)
If the vm of an attached device rejects a hot reload, pretty print the reason. Suggest a hot restart so that users are aware that they do not have to detach and rebuild. Also resets the last compilation time, so a subsequent restart would still apply the last change. Adds an integration test for the const field removal.

Fixes #64027
2020-10-09 15:44:52 -07:00
Jonah Williams
5fa801718f
[flutter_tools] remove train and inject-plugins command (#67766)
The train command does nothing and was originally added to provide a no-output default for generating app-jit snapshots. The inject-plugins command is only for a repo-only analysis check, which is not necessary since we regenerate during pub get.

#29805
2020-10-09 15:43:39 -07:00
Jonah Williams
cba84d5127
[flutter_tools] remove globals from IntelliJ validator, refactor tests to remove dependency on JAR (#67240)
Move the intellij validator to its own file, and split off the tests. Remove globals from each, and remove dependency on a real jar/filesystem by creating a minimal version of the manifest xml and setting it up in the memory file system.

#47161
2020-10-09 13:05:42 -07:00
Jonah Williams
9a3a0dc18f
[flutter_tools] hot reload/restart update for asset manager change (#66742)
Do not upload all assets on initial devFS sync. This should increase the reliability of the initial connection, even in the face of flaky devfs behavior, in addition to a moderate perf improvement.

Updates fast-start to build assets as part of the initial bundle

Requires flutter/engine#21436
Requires flutter/engine#21586
Requires flutter/engine#21611
2020-10-09 12:25:15 -07:00
Jenn Magder
98aeef2d98
Build xcarchive command (#67598) 2020-10-08 19:51:35 -07:00
Jenn Magder
f92ba2d2c5
Replace MockUsage with Usage.test in build tests (#67670) 2020-10-08 16:09:49 -07:00
Jonah Williams
973404a27f
[flutter_tools] support powershell style help request (#67493) 2020-10-08 14:06:58 -07:00
Jonah Williams
ddab09f553
[flutter_tools] enable LocalDevFSWriter for desktop devices, iOS simulator (#66678)
* [flutter_tools] enable LocalDevFSWriter for desktop devices, iOS simulator

* Update device.dart

* Update desktop_device_test.dart

* fix analysis errors
2020-10-08 13:40:19 -07:00
Christopher Fujino
ccdaa37043
Remove the .zip method from OSUtils, as it was not used (#67367)
We used to use zip to verify the integrity of downloaded zip archives, but we now use unzip. This removes the .zip method from OperatingSystemUtils.
2020-10-08 13:40:01 -07:00
Jonah Williams
30c0fc1bce
[flutter_tools] remove globals from compile and devices (#67485)
Remove global variables from compile.dart and devices.dart (except for dds which needs more changes).

#47161
2020-10-08 12:28:58 -07:00
Yegor
0b78110b26
Work around the glibc bug that causes rare Chrome crashes (#67466)
Work around the glibc bug that causes rare Chrome crashes
2020-10-07 19:29:47 -07:00
Dan Field
8d9e0d4b95
Respect --enable-software-rendering flag on iOS simulators (#67576) 2020-10-07 18:07:10 -07:00
Jonah Williams
b3f9944f3c
[flutter_tools] remove deprecated flutter command (#67478) 2020-10-07 16:21:08 -07:00
Jonah Williams
a4e0e2a8ee
Revert "[flutter_tools] remove all pub caching logic (#66776)" (#67572)
This reverts commit 76cbc462d2.
2020-10-07 15:30:46 -07:00
Jonah Williams
76cbc462d2
[flutter_tools] remove all pub caching logic (#66776)
There have been some more additional reports of a missing 'package:characters' import after upgrading flutter, as well as problems with detecting the correct language version. This has me concerned that our pub caching logic is incorrect. Instead of the tool attempting to guess when pub should be run, always delegate to pub.
2020-10-07 13:11:07 -07:00
Jenn Magder
f8b1de3a63
Add publish-port flag to disable mDNS port discovery (#67452) 2020-10-07 08:52:05 -07:00
Jonah Williams
13bf341584
[flutter_tools] update build rules to depend on subset of package_config contents (#67165)
Split from #66776

Even if pub does not change the packge_config contents, it will still update a timestamp in one of the fields. This causes unnecessary rebuilds. To fix this, generate an additional file when running pub get that only contains the relevant fields and then update the KernelSnapshot rule to depend on it only.
2020-10-07 08:46:11 -07:00
stuartmorgan
be6a368801
Improve Windows symlink instructions (#67029)
When the developer doesn't have permission to create symlinks, we
display specific instructions, but they were only correct for recent
versions of Windows 10. This improves them by:
- Giving the correct instructions for older versions.
- For recent versions, adds a command that will deep-link into the
  settings application so that developers don't have to figure out
  where/how to enable developer mode.

Fixes https://github.com/flutter/flutter/issues/66973
2020-10-06 08:32:54 -07:00
Alexandre Ardhuin
f551178408
migrate material to nullsafety (#67166)
* migrate material to nullsafety

* address review comments

* address review comments

* fix build
2020-10-06 11:36:50 +02:00
Jonah Williams
1271447bbe
[flutter_tools] remove globals from FlutterValidator, add documentation and move tests to new file (#67234)
Remove globals from the flutter validator class, and refactor the tests into a separate file. Applies some other cleanup like adding doc comments, and making the doctor validator work like it is documented to work - removing the gen_snapshot check if the artifact is not downloaded instead of downloading all android artifacts.

#47161
2020-10-05 17:58:56 -07:00
Jonah Williams
c8466d0430
[flutter_tools] handle case where file is deleted by other program or running on read only volume (#66708)
* [flutter_tools] handle case where file is deleted by other program

* Add test cases

* Update file_system.dart

* Update file_system_test.dart

* fix import

* make a static on ErrorHandligFS

* add support for no exit on failure

* address comments

* update doc comment to file or directory
2020-10-05 17:00:07 -07:00
Jonah Williams
7f2ca5e532
[flutter_tools] refactor engine locator to its own class (#67274)
Make the logic for locating a local engine path part of its own class, add documentation, and update tests to cover engine source path locating too.

#47161
2020-10-05 16:25:47 -07:00
Jonah Williams
6180a4c179
[flutter_tools] fix documentation, globals, and todos in the android codebase (#66980)
Cleans up some undocumented classes and re-organizes the AndroidDevices class to avoid the need for the static testing only member. Adds a script for tracking globals.
2020-10-05 15:47:57 -07:00
Jonah Williams
186765b3a7
[flutter_tools] cleanups to plugin test cases (#67242)
Removes usage of global variables, expands documentation, and fixes some formatting inconsistencies. Increased test coverage for android plugin to prove it can determine the embedding version.
2020-10-05 14:45:39 -07:00
Jonah Williams
aa90dbe7f4
[flutter_tools] disable source maps by default for release builds, enable for run and with command line arg (#67331)
Disables source map production by default for build web. For web builds performed as a part of flutter run --release, enable the source maps, or allow force enabling with --source-maps command line flag.

fixes #67328
2020-10-05 13:24:51 -07:00
Jenn Magder
6e5f9ed94d
Replace MockProcessManager with FakeProcessManager (#67019) 2020-10-05 12:21:43 -07:00
Jonah Williams
3a51bcb5c0
[flutter_tools] delete code related to reload method (#67279)
This functionality ultimately became the single widget reload optimization, which did not require a separate service protocol.
2020-10-05 09:57:10 -07:00
Jonah Williams
21bb29cc68
[flutter_tools] support all engine debugging options with FLUTTER_ENGINE_SWITCH environment variables (#67150)
Allow providing all debugging options to the desktop engine via the FLUTTER_ENGINE_SWITCH_ environment variables.

Fixes #66532
Fixes #46005
Fixes #58882

The underling engine changes have already landed for Windows, macOS, but linux is still in progress
2020-10-05 09:56:48 -07:00
Jonah Williams
4ce2a7aa6d
[flutter_tools] do not use IOSink for writing cache responses (#67231)
Any File-derived IOSink may throw un-handleable async exceptions into the zone, see dart-lang/sdk#43663 . Instead, just write to a file with an append mode.
2020-10-05 09:05:41 -07:00
Danny Tuppeny
fdd1bf2944
Handle missing Android SDKs in getEmulators() (#67295) 2020-10-05 08:57:04 -07:00
Jesse
60d7bb2588
Use XDG_CONFIG_HOME dir by default for config files (#66645)
This PR changes the Config class in flutter_tools to use the XDG Base directory specification instead of putting files directly in the user's home directory. If those files are already present in the home directory, they are used instead.
2020-10-03 08:40:09 -07:00
Jonah Williams
ddb8177018
[flutter_tools] remove globals from desktop configuration (#67146)
Refactors the desktop devices and workflow to remove unnecessary usage of global variables. This should make it easier to test and continue enhancing the desktop functionality of the tooling

#47161
2020-10-02 21:52:53 -07:00
Jonah Williams
ddb01a0c81
[null-safety] add integration tests for sound null safety modes, add support for sound null safety in dart2js (#67171)
Add integration tests to verify that ddc and dart2js can be built and run in sound mode. Updates dart2js compilation to insert a language version comment into the generated entrypoint if necessary.

dart-lang/sdk#42253
2020-10-02 21:52:38 -07:00
Jonah Williams
1bea512a83
[flutter_tools] flutter logs no longer requires supported device (#66696)
Flutter logs should not attempt to filter the device list based on the current project, because it does not require a current project. Also fix disabled polling test

Fixes #47996
Fixes #63550
2020-10-02 21:12:50 -07:00
Mouad Debbar
b42e34690a
[web] Update index.html template to support new path strategy (#67081) 2020-10-02 15:12:04 -07:00
Mouad Debbar
5d6321b509
[web] Respond with 404 to non-found asset or package files (#67088) 2020-10-02 11:02:03 -07:00
includecmath
f1013e6873
[flutter_tools] According to AnalysisSeverity return exit code detailed proposal (#61589)
No matter what level(error, warning, info) issues flutter analyze always return fatal exit code(1). CI/CD environment receive 1(!0). This may leads to e.g. Jenkins Build step 'Execute shell' marked build as failure.
I propose according to AnalysisSeverity level return fatal(1) or success(0) exit code.
2020-10-01 18:50:33 -07:00
Jenn Magder
36fca52c0d
Replace MockArtifacts with Artifacts.test() (#67012) 2020-09-30 16:25:29 -07:00
stuartmorgan
b92bb62d4d
Fix Windows and Linux plugin template filenames (#66997) 2020-09-30 16:07:03 -07:00
Jonah Williams
b6768ec7a6
[flutter_tools] dont let crash reporter crash tool (#66755)
package:http can throw a ClientException, which the crash reporter must catch or the tool will crash in the crash reporter. 3/4 crash on dev.
2020-09-30 15:26:25 -07:00
Jenn Magder
becaf4913f
Replace MockCache with Cache.test() (#66946) 2020-09-30 14:53:57 -07:00
Jonah Williams
fe22d196fc
[flutter_tools] prevent running analyze-size with split-debug-info (#66983)
Running a build command with split debug info and analyze size causes a crash in the snapshot analysis library. Disable the combination of these two flags.

Fixes #66962
2020-09-30 11:15:49 -07:00
Helin Shiah
9ca15d0118
Set DDS port to requested observatory port for test (#66607)
* Set DDS port to requested observatory port for test

* Add test for DDS and observatory ports

* Use FakePlatform instead of mock, fix spacing

* Use FakeProcessManager instead of mock

* Fix analyze issue

* Make completer private and add fn for future
2020-09-30 10:14:13 -07:00
Jonah Williams
f8750b16bb
[flutter_tools] do not error doctor on missing vs code extension (#66780)
In cases where the VSCode plugins are not located, display links to where they can be downloaded but do not surface an error.
2020-09-30 08:41:31 -07:00
Jonah Williams
e819f292b3
[flutter_tools] do not require a dependency on devtools server (#66842)
Re-arrange the implementation of the devtools launcher so that google3 is not required to depend on any devtools packages. Also renames the build_runner folders to isolated to better clarify their intention.
2020-09-29 18:15:56 -07:00
Jenn Magder
e8fbb43aac
Replace MockFile with memory file system files (#66941) 2020-09-29 17:50:33 -07:00
Jonah Williams
9bc533c9e5
[flutter_tools] do not error flutter doctor on missing AS/intellij plugins (#66782)
In cases where the Intellij/AS plugins are not located, display links to where they can be downloaded but do not surface an error. This should generally reduce confusion about whether the plugins are required for every installed IDE. For example, frequently users may only install AS so that they can install the Android SDK - or they may have multiple copies of Intellij installed.

For example: #66762
2020-09-29 16:51:28 -07:00
Jonah Williams
0e9c6a3d5f
[flutter_tools] do not crash if chrome preference save fails (#66705)
Crash reporting shows at least one occurrence of this due to a windows file lock. That could happen if there is another running chrome instance, or perhaps a virus scanner is running. Print out the error and do not crash.
2020-09-29 13:00:11 -07:00
Marcus Tomlinson
5f76bfb4af
Add the ability to inject a bootstrap script (#66897) 2020-09-29 19:24:21 +01:00
Ben Konyi
65a81c7cd3
Roll package:dds to 1.4.0 and update error handling (#66836) 2020-09-29 10:28:17 -07:00
Jonah Williams
6f20c8a83f
[flutter_tools] handle missing zip/unzip argument errors (#66685)
it is possible for users that download the prebuilt SDKs to run the tool without unzip installed. Rather than crashing with an unclear argument error, exit the tool with a message on how to install that mirrors the message in the update_dart_sdk.sh script.

Also applied to zip for completeness
2020-09-29 07:58:09 -07:00
Jonah Williams
549de844ed
[flutter_tools] add a mechanism to turn off immediate tool exit (#66787)
Instead of always exiting the tool, provide a mechanism to turn off this behavior for non-critical functionality like configuration and analytics settings.

Fixes #66786 Fixes #4674
2020-09-28 13:04:38 -07:00
Jonah Williams
19fbe98df3
[flutter_tools] pass existsSync through error handling io (#66704)
Crash reporting shows at least one instance of EACCES during an existsSync cache call. Add this to the list of error handling io methods. Did not add the async exists method since we lint against its usage.
2020-09-25 20:17:39 -07:00
knaeckeKami
8e9e13449b
Teach the flutter tool how to find android output files if the flavor contains uppercase letters (#66687)
This changes the name of the generated output files on android in case a flavor with uppercase letters is used.
Previously, the lowercased flavor name would be used for the apk/aab file. Now, the flavor name is used as-is.
2020-09-25 15:54:55 -07:00
Mouad Debbar
31254fbe03
[web] Change the web server to support path url strategy (#66606) 2020-09-25 15:42:03 -07:00
Jonah Williams
99d0954857
[flutter_tools] ensure ErrorHandlingFileSystem wraps current directory (#66680)
The lack of current directory wrapping was letting some of the already handled errors through

Fixes #66675
2020-09-25 14:29:22 -07:00
Jenn Magder
934e05f86d
Remove Try accepting the local network permissions popup warning (#66621) 2020-09-25 11:05:47 -07:00
gaaclarke
76ad864727
Added timeout for closing devfs sync http connections. (#66152) 2020-09-25 10:52:33 -07:00
Jonah Williams
90bc7c64dd
[flutter_tools] fix calling debugToggleBrightness on release mode (#66401)
ensure that the terminal handler checks if the service protocol is enabled before calling debug toggle brightness. Also removes globals from TerminalHander and test cases.

Fixes #65477
2020-09-24 18:56:07 -07:00
includecmath
71c42c9c54
[flutter_tools] Add channel order aware version_test (#62417) 2020-09-24 13:07:03 -07:00
Jonah Williams
b9274c7c60
[flutter_tools] bypass pubspec yaml content check when running pubdependencies (#66559)
Otherwise the heuristics we have may decide to skip running pub. We should consider reducing the number of dimensions of caching here to a single check optimized for the run/test case.
2020-09-24 12:51:18 -07:00
Jonah Williams
faa4b6635a
[flutter_tools] try deleting the web cache directory before copying new web sdk (#66461)
Delete the destination directory for the web sdk before copying the new contents. This might fix an error where the OS refuses to overwrite the files on dev
2020-09-23 16:45:20 -07:00
Jenn Magder
f654346777
Check git commands in Flutter version check test (#66406) 2020-09-23 13:27:24 -07:00
Jonah Williams
1d4e7cd52d
[flutter_tools] do not add events to closed sink in throttle transform (#66468)
The throttle duration could delay past the point where the destination sink was closed. Check if it is closed before adding an event. Fixes a crash on dev: StateError: Bad State: Stream is already closed.
2020-09-23 10:40:39 -07:00
Emmanuel Garcia
fc1e764264
Expose enable-experiment in Flutter drive (#66311) 2020-09-23 10:38:02 -07:00
Jonah Williams
51ededb92f
[flutter_tools] reland: map file URIs to a multiroot scheme (#66405)
If a file scheme and one or more roots is provided, fall back to this mapping before the direct file path if the file path cannot be turned into a package URI.

Use URI representation so that the transformation is resilient to the org-dartlang-app scheme used by the web builds.

Fixes #66095
Fixes #66404
2020-09-23 07:03:59 -07:00
Jenn Magder
78e54dd46b
Revert "[flutter_tools] map file Uri to multi-root scheme if provided (#66151)" (#66403)
This reverts commit af6ba86728.
2020-09-22 17:50:27 -07:00
Jenn Magder
d5b715d7cb
Stream logging from attached debugger on iOS 13+ (#66399) 2020-09-22 17:16:45 -07:00
Jenn Magder
658e6c8a8d
Listen to Debug VM stream to get Stdout logs from VMService (#66310) 2020-09-22 17:12:02 -07:00
Jonah Williams
943b41bd61
[flutter_tools] allow device classes to provide platform-specific interface for devFS Sync (#66266) 2020-09-22 16:57:04 -07:00
Jonah Williams
af6ba86728
[flutter_tools] map file Uri to multi-root scheme if provided (#66151)
If a file scheme and one or more roots is provided, fall back to this mapping before the direct file path if the file path cannot be turned into a package URI.

Fixes #66095
2020-09-22 16:51:18 -07:00
Jenn Magder
4881b4b07c
Revert "Stream logging from attached debugger on iOS (#66092) (#66390)" (#66397)
This reverts commit 2be4570d3a.
2020-09-22 15:15:56 -07:00
Jenn Magder
2be4570d3a
Stream logging from attached debugger on iOS (#66092) (#66390) 2020-09-22 14:59:14 -07:00
Jonah Williams
76698a5026
[flutter_tools] dont crash if attach is given a bad debug uri (#66358) 2020-09-22 12:03:21 -07:00
Jenn Magder
8d2e257633
Revert "Stream logging from attached debugger on iOS (#66092)" (#66368)
This reverts commit 5c8580360a.
2020-09-22 11:30:50 -07:00
Dan Field
4299dd7843
Revert "Revert "Stream logging from attached debugger on iOS (#66092)" (#66359)" (#66360)
This reverts commit 53fee1be38.
2020-09-22 09:23:57 -07:00
Dan Field
53fee1be38
Revert "Stream logging from attached debugger on iOS (#66092)" (#66359)
This reverts commit 5c8580360a.
2020-09-22 09:22:55 -07:00
Jonah Williams
511367aa5a
[flutter_tools] remove k toggle for canvaskit from web runner (#66273)
The k toggle allows switching between canvaskit and html backend at runtime. unfortunately this causes hot restart to break, since the dart_sdk modules stores state at runtime. The recommendation will be to use cavaskit via dart-defines.
2020-09-21 15:33:32 -07:00
Jonah Williams
2c6f862bf8
[flutter_tools] add EPERM to set of immediate exit errors (#66159) 2020-09-21 11:32:07 -07:00
Jonah Williams
a029e172fe
[flutter_tools] fix bug where last build id parent folder is missing (#66156) 2020-09-21 11:17:13 -07:00
Jonah Williams
a19f5baccc
[flutter_tools] connect widget cache from frontend_server (#65951) 2020-09-19 11:02:04 -07:00
Jenn Magder
5c8580360a
Stream logging from attached debugger on iOS (#66092) 2020-09-18 15:26:28 -07:00
Jonah Williams
84aae22c3e
[flutter_tools] optimize fetch requests and remove main.dart.js bypass (#66069)
The main.dart.js bypass is not needed now that we have skipWaiting. Additionally optimize the fetch handler so that resources not in the cache skip the service worker altogether.

Fixes #66068
2020-09-17 17:05:46 -07:00
Daniel Edrisian
3a5e45404d
Updated androidMissingSdkInstructions error message (#65964) 2020-09-17 15:57:06 -07:00
Jonah Williams
bc11c2a8c4
[flutter_tools] update windows config feature (#65867) 2020-09-17 15:24:52 -07:00
stuartmorgan
50fd10fc6f
Consider the Windows app template stable (#66022)
Removes the template version from the Windows template; the API and
tooling boundary will now be considered stable, so there will no longer
be frequent breaking changes.

Also updates the link for adding desktop support to a project for all
three platforms to reflect the current location.

Fixes https://github.com/flutter/flutter/issues/52748
2020-09-17 15:24:28 -07:00
stuartmorgan
eaf3f8b4f7
Add VERSIONINFO to the Windows template (#66025)
Adds a VERSIONINFO to Runner.rc in the Windows app template, populated
from the project creation metadata.

Currently the version itself is hard-coded, but it is future-proofed to
allow plumbing the actual version through at build time via preprocessor
defines.
2020-09-17 15:23:38 -07:00
Jonah Williams
3e838da96a
[flutter_tools] use flutter tool handler for dwds resources and precache tool pub dependencies (#65814)
If the tool is downloaded from a precompiled snapshot, or if the backing source files in the pub cache are deleted, the dwds debugging functionality will break as the client.js file cannot be located. Instead use the PackageConfig to verify that package location, downloading if it is missing.

Override the dwds middleware to avoid Isolate.resolvePackageUri

Fixes #53644
Fixes #65475
2020-09-17 15:22:06 -07:00
Michael Arndt
fbc34def01
Fixed typo (subetting -> subsetting) (#62502) 2020-09-17 15:17:08 -07:00
Jenn Magder
4fee00798a
Inform user how to fix permissions when the observatory URL isn't found on iOS 14 (#65977) 2020-09-17 15:16:55 -07:00
gaaclarke
fa646339d6
Added the machine's architecture to macos doctor results. (#65978) 2020-09-16 17:47:04 -07:00
Ben Konyi
a17b330980
Reland "Re-enable the Dart Development Service (DDS) (#64671)" (#65873)
This reverts commit 66b01c1f29.

* Add DDS ipv6 support

* Use --dds-port for DDS instead of hijacking --host-vmservice-port
2020-09-16 16:27:42 -07:00
Michael R Fairhurst
7f3c9b6bda
Remove unused 'dart:async' imports. (#65568) 2020-09-16 14:14:06 -07:00
Jonah Williams
b02cb6e4c9
[flutter_tools] make local engine integration testing easier (#65802) 2020-09-15 13:32:02 -07:00
Devon Carew
04e4b117f6
fix an issue where raw json output is written to IDE clients (#65508)
fix an issues where raw json output was written to IDE clients
2020-09-15 12:44:05 -07:00
Balvinder Singh Gambhir
3dde3e034c
[flutter_tools] generates version.json for web using flutter tool (#64644)
Generates version.json in web directory of project. version.json can be used in the future version of package_info which will support web. version.json has the following keys : app_name, version and build_number. This file is generated every time a user runs or builds the project.

Co-authored-by: Jonah Williams <jonahwilliams@google.com>
2020-09-15 11:21:54 -07:00
Yuqian Li
e3c6979d1b
Save startup timeline (#65118)
This would help us investigate issues like
https://github.com/flutter/flutter/issues/64781
2020-09-15 11:17:30 -07:00
Jonah Williams
4188085596
[flutter_tools] handle archive exception from invalid zip signature (#65869)
Like the ProcessException thrown from zip running on a bad file, the tool should catch the ArchiveException thrown from windows implementation using package:archive.
2020-09-15 10:55:41 -07:00
Jonah Williams
b88f308af7
[flutter_tools] port deprecated settings test to flutter integration shard (#65806)
Port the deprecated settings devicelab test to tool integration shard. Tests that apps can be built using the deprecated android/settings.gradle file.

Part of #65790
2020-09-15 10:55:07 -07:00
stuartmorgan
bcd0959ac3
Sort generated plugin file content by plugin name (#65509) 2020-09-14 17:57:11 -07:00
Jonah Williams
039f1cf853
[flutter_tools] handle terminals that do not support single char mode in Terminal.promptForCharInput (#65418)
Some terminals stdin do not support single char mode (like an emacs terminal buffer apparently). If this is the case, then the presented choice values would always have an appended newline \n which would prevent us from finding the value in the listed index (or using it as a signal for the default choice). To fix, treat '' as the default choice and always trim the choice value.

While this has seemingly always been broken, it wasn't noticeable until the multi-device selection prompt was added a few months ago.

Fixes #65267
2020-09-14 17:57:04 -07:00
Jonah Williams
6acea15f22
[flutter_tools] fix failure to create ansi spinner if download needs to be retried (#65797)
Because the Status spinner was only created on setup, the second stop would asset/crash.

Fixes #65449
2020-09-14 17:55:11 -07:00
Herbert Poul
8dfd42f6b7
[gen_l10n] Support string list as preferred-supported-locales (#63649)
* [gen_l10n] Support string list as preferred-supported-locales, as documented.

* [gen_l10n] Convert preferredSupportedLocale to a list of strings. 

* [gen_l10n] Accept a multi option instead of a json string in the command line.
2020-09-10 07:32:40 +08:00
stuartmorgan
6d1c244b79
Always use POSIX paths for generated CMake files (#65493)
The Windows plugin CMake generation had code to ensure that the paths
written to it used POSIX separators, but the Linux version didn't; that
meant that plugin updates run on Windows machines would corrupt the
generated (but checked in) Linux CMake file.

This change shares that code so that both will use POSIX paths
regardless of what OS they are generated on.

Fixes https://github.com/flutter/flutter/issues/64591
2020-09-09 16:08:19 -07:00
Jonah Williams
6d360562e3
[flutter_tools] alternate the name of the dill file used for hot restart (#65435)
* [flutter_tools] alternate the name of the dill file used for hot restart

* switch alternative name to .swap
2020-09-09 15:56:25 -07:00
Jonah Williams
b4551e31fc
[flutter_tools] remove globals from tracing and add unit tests (#65490)
Removes global variables and adds unit tests that can be copied for #65118
2020-09-09 15:55:52 -07:00
Jonah Williams
6b444c4dd7
[flutter_tools] standardize patterns for integration.shard (#64980)
Integration tests must only go through the real file system/process manager/platform. The global indirection makes this code harder to understand than if it directly referred to the concrete instances that are being used.

Update the integration shard to use a const instance of a LocalFIleSystem, LocalProcessManager, and LocalPlatform. Remove global usage and apply testWithoutContext.
2020-09-08 15:56:00 -07:00
Ian Hickson
e10bdbbd9d
Fix RangeMaintainingScrollPhysics (#65135) 2020-09-07 11:40:03 -07:00
Jonah Williams
9248fda410
[flutter_tools] add EACCES to list of immediate exit tool conditions (#65125)
Similar to the permission denied error on Windows, this is not resolvable by the tool.
2020-09-03 16:08:01 -07:00
Jonah Williams
30a0b5a50c
Revert "[flutter_tools] split project parsing/validation into separate function (#64814)" (#65202)
This reverts commit 8eed690442.
2020-09-03 14:25:29 -07:00
Jonah Williams
8eed690442
[flutter_tools] split project parsing/validation into separate function (#64814)
In order to share logic across build/archive/ipa commands, move the project parsing/validation into a different function. #64683
2020-09-03 14:14:52 -07:00
Jonah Williams
418681d6f1
[flutter_tools] allow disabling pwa from build command, fix run release build caching (#64587)
Fix run release/profile modes generating a full service worker.
2020-09-03 13:42:47 -07:00
Jaime Blasco
0699c18e99
[flutter_tool] [web] Remove x-frame-options header during debug (#62115)
Currently flutter run -d web creates a server with the x-frame-options: SAMEORIGIN added by default (shelf add it's by default). This doesn't allow you to use it inside a frame.

I am trying to build an embedded simulator in vscode and it requires using an iframe.

With this PR I remove the header for debug and profile mode.
2020-09-03 13:33:39 -07:00
Jonah Williams
bd3eee75f3
[flutter_tools] rethrow process exceptions as tool exit from gradle build (#64745)
The flutter tool is currently unable to detect missing permissions in gradle/gradle.bat that would cause a gradle build to fail via process exception. Rather than crashing and exiting, we can display the exception as an error message and tool exit.

While linux/macOS are able to add the +x bit, this is not possible on windows with our current file system/OS API. These crashes represent a substantial amount of crash reporting, but are otherwise not actionable on our end.
2020-09-03 11:55:55 -07:00
Jonah Williams
08e3ed9e2d
[flutter_tools] prevent creation of android devices if adb is not located (#65184)
More work to prevent current #2 crash issue on stable. If adb is not located do not list/create android devices.
2020-09-03 11:01:43 -07:00
Shi-Hao Hong
b80b432555
Move gen_l10n into flutter_tools (#65025) 2020-09-03 09:26:58 -07:00
Jenn Magder
ace54425e0
Add observatory Bonjour service to built iOS Info.plist bundle (#65138) 2020-09-02 18:47:56 -07:00
Jenn Magder
259deec221
Revert "Add observatory Bonjour service to built iOS Info.plist bundle (#65138)" (#65141)
This reverts commit 5e0aa8b9fc.
2020-09-02 18:31:45 -07:00
Jenn Magder
5e0aa8b9fc
Add observatory Bonjour service to built iOS Info.plist bundle (#65138) 2020-09-02 17:57:43 -07:00
Jonah Williams
c034f1a1cc
[flutter_tools] fix screenshot command in release mode and help documentation (#65114)
Currently taking a screenshot in release mode crashes and is also not documented as a supported command. Fix both of these and add test cases.
2020-09-02 17:33:41 -07:00
includecmath
6d46ff7e9b
[flutter_tools] flutter run should allow exit when make choose for devices. (#64403) 2020-09-02 17:30:04 -07:00
Jonah Williams
d3fd62c843
[flutter_tools] exit with helpful message if where is missing on windows (#65112) 2020-09-02 16:50:04 -07:00
Jenn Magder
6175183545
Add --device-timeout flag to device-related commands (#64834) 2020-09-02 15:38:52 -07:00
Jenn Magder
cb819504f3
Revert "Add observatory Bonjour service to built iOS Info.plist bundle (#64988)" (#65109)
This reverts commit 4fde217dea.
2020-09-02 12:31:17 -07:00
Jenn Magder
4fde217dea
Add observatory Bonjour service to built iOS Info.plist bundle (#64988) 2020-09-02 11:11:07 -07:00
stuartmorgan
6eef5f2c5f
Share build command flag configuration on desktop (#64983)
Almost all of the flag setup on Linux, macOS, and Windows should be
identical; this pulls that common setup to a shared method.

This adds support for several flags on macOS that have all the necessary
plumbing already in place due to shared backend code, but were never
enabled.

Fixes https://github.com/flutter/flutter/issues/64944
2020-09-01 10:21:51 -07:00
Jonah Williams
216da410a8
[flutter_tools] add --config-only option to flutter build ios (#64848) 2020-08-31 17:23:03 -07:00
Jonah Williams
183a653e37
[flutter_tools] adjust index.html caching and insert cache busting URL in to main.dart.js/sw request (#64976)
Attempt to bypass aggressive CDN by requesting main.dart.js/sw.js with a query param and defaulting index.html to online first. This will not stop aggressive CDN caching of the index.html

#64968
2020-08-31 17:22:42 -07:00
Mehmet Fidanboylu
66b01c1f29
Revert "Reland "Re-enable the Dart Development Service (DDS) (#64671)" (#64847)" (#64981)
This reverts commit c8f234d365.
2020-08-31 16:09:02 -07:00
Jonah Williams
15d18b9e42
[flutter_tools] remove unused zip verification (#64970)
This is no longer used, in favor of just attempting to unzip and handling the exception.
2020-08-31 13:26:38 -07:00
Jonah Williams
68b39da346
[flutter_tools] tool exit after repeated network failure (#64878)
Exit the tool after a repeated network error to download. previously we were returning null and continuing on, leading to a ProcessException when we unzipped a missing file.
2020-08-31 12:15:05 -07:00
Ben Konyi
c8f234d365
Reland "Re-enable the Dart Development Service (DDS) (#64671)" (#64847)
This reverts commit 2436de1391.
2020-08-31 12:14:32 -07:00
ekibun
719268b43a
add different workload & add -products * to vswhere calls to check both Visual Studio IDE and standalone Build Tools. (#64251) 2020-08-31 09:33:04 -07:00
Shi-Hao Hong
fd22fc3e35
[gen_l10n] Synthetic package generation by default (#62395)
* synthetic packages by default in gen_l10n tool

* Refactor default path for synthetic package

* Remove unused import

* Code cleanup

* Further improvements to help text

* Refactor synthetic package path

* Remove newlines

* Test cleanup

* clean up logic in inputs and outputs list function

* Update l10n.yaml usage

* only add option if value is non-null

* Update stocks app as proof of concept for synthetic package usage

* Address nits

* print pubspec contents

* add print statements

* Do not allow null value for useSyntheticPackage

* +

* +

* +

* +

* Cleanup

* Add test

* Fix text

* Dont parse pubspec directly

* Test using context

* WIP: generate synthetic packages on pub get -- needs tests

* Allow null value

* Update null handling

* Refactor to properly handle null case

* Fix yamlMap condition

* Fix yaml node for real

* WIP: struggling to write tests

* WIP - take absolute path as an option

* Add tests

* Use environment project directory for synthetic package generation pathway

* Fix typo

* Improve help text

* Update defaults

* Remove unauthorized path import

* Fix pathing issues at synthetic package generation

* Fix typo in test

* Use path.join so projectDir matches up based on OS

* Fix Windows pathing in test

* Remove unnecessary replaceApp code for projectDir.path

* Use globals.fs.currentDirectory.path in resident_runner_test.dart

* Fix merge conflict

* Add test to ensure that synthetic package is generated on pub get

* Fix resident_runner_test.dart tests

* Fix tests

* Use package:file instead of dart:io

* WIP - exploration

* Remove synthetic package use from stocks example

* Update integration test to not use synthetic packages

* Remove trailing whitespace

* flutter pub get runs synth package generation

* Remove more print statements

* Add license header

* WIP - minimally working pub.get

* Use own MockBuildSystem

* Modify test and implementation to be a little cleaner

* Fix flutter pub get invocation

* Use synthetic packages in stocks app

* Revert "Use synthetic packages in stocks app"

This reverts commit 45bf24903c.

* Add environment and buildSystem params to flutter test

* Address code review feedback

* +

* Isolate codegen into its own API

* Fix imports

* Slight refactor

* Add one more test for no l10n.yaml file

* Remove unneeded mock class and import in pub_get_test.dart

* More code review feedback

* Remove unnecessary imports

* Remove `return await`s that I missed

* use arrow functions instead
2020-08-31 13:19:41 +08:00
Jonah Williams
2436de1391
Revert "Reland "Re-enable the Dart Development Service (DDS) (#64671)" (#64802)" (#64845)
This reverts commit eef0050d08.
2020-08-28 18:02:15 -07:00
Ben Konyi
eef0050d08
Reland "Re-enable the Dart Development Service (DDS) (#64671)" (#64802)
* Reland "Re-enable the Dart Development Service (DDS) (#64671)"

This reverts commit 2ae25cc2d7.

* Fix MDNS building Observatory URI with port 0 instead of forwarding the device port

* Added MDNS test
2020-08-28 16:18:35 -07:00
Ben Konyi
2ae25cc2d7
Revert "Re-enable the Dart Development Service (DDS) (#64671)" (#64797)
This reverts commit d7d12412e5.
2020-08-28 09:00:53 -07:00
Jonah Williams
5a4fa220e2
[flutter_tools] handle OsError thrown during azure detector (#64749) 2020-08-27 17:13:04 -07:00
Ben Konyi
d7d12412e5
Re-enable the Dart Development Service (DDS) (#64671)
This change re-enables DDS and outputs the DDS URI in place of the VM
service URI on the console. If --disable-dds is not provided,
--host-vmservice-port will be used to determine the port for DDS rather
than the host port for the VM service, which will instead be randomly
chosen.
2020-08-27 16:35:00 -07:00
Jonah Williams
d3515f5fb6
[flutter_tools] add analytics to code size, add more testing (#64578)
* [flutter_tools] add analytics to code size, add more testing

* add gradle case

* Update build_macos_test.dart

* move analytics to code size tooling

* Update analyze_size.dart

* fix analysis
2020-08-27 09:45:10 -07:00
Jonah Williams
401d401c59
[flutter_tools] reland: avoid creating Android Devices if AndroidSDK cannot be found (#64665)
Avoid creating AndroidDevice discovery if the SDK cannot be located. Previously the tool would use which/where adb, however this required us to handle the AndroidSdk class being potentially null - which required an additional layer of indirection around all access. Sometimes these were forgotten leading to NPEs.

In general, not much can be done with an Android Device if the actual SDK is not installed.

Reland with fixed code + tests for null SDK + adb in AndroidDeviceDiscovery
2020-08-27 09:44:31 -07:00
Jenn Magder
f5187535d5
Revert "[flutter_tools] avoid creating Android Devices if AndroidSDK cannot be found (#64524)" (#64602)
This reverts commit 47596c6203.
2020-08-25 17:55:58 -07:00
Jonah Williams
47596c6203
[flutter_tools] avoid creating Android Devices if AndroidSDK cannot be found (#64524)
Avoid creating AndroidDevice discovery if the SDK cannot be located. Previously the tool would use which/where adb, however this required us to handle the AndroidSdk class being potentially null - which required an additional layer of indirection around all access. Sometimes these were forgotten leading to NPEs.

In general, not much can be done with an Android Device if the actual SDK is not installed.
2020-08-25 11:08:27 -07:00
Jonah Williams
f0a3cbace3
[flutter_tools] handle FileSystemException thrown when attempting to decode stamp file (#64559)
Fixes #64246

If decoding the string contents of a stamp file fails, treat it as if the stamp file is missing. This is always safe to do, since at worst it downloads more artifacts. The files could end up corrupted if they were edited by another program, for example
2020-08-25 10:58:21 -07:00
Jonah Williams
23032d772d
[flutter_tools] refactor artifact downloading to retry zip exceptions. (#64512) 2020-08-25 10:06:04 -07:00
Jonah Williams
059de1537e
[flutter_tools] support code size tooling on iOS, linux, windows, macOS, and Android on Windows (#63610)
Adds support for size analysis on iOS, macOS, linux, and Windows - using an uncompressed directory based approach. The output format is not currently specified.

Adds support for size analysis on android on windows, switching to package:archive

Updates the console format to display as a tree, allowing longer paths. Increases the number of dart libraries shown (to avoid only ever printing the flutter/dart:ui libraries, which dominate the size)
2020-08-25 10:00:24 -07:00
Jonah Williams
302f9f751b
[flutter_tools] remove globals from utils (#63831) 2020-08-24 15:26:03 -07:00
Jonah Williams
ed4a8e8d05
Revert "Pass --verbose-logging to flutter_tester (#64440)" (#64517)
This reverts commit 8b52e6a8b2.
2020-08-24 14:50:38 -07:00
Todd Volkert
8b52e6a8b2
Pass --verbose-logging to flutter_tester (#64440) 2020-08-24 13:33:56 -07:00
Jonah Williams
ee12d7c3fc
[flutter_tools] check for permission issues when copying file (#63540) 2020-08-21 11:11:04 -07:00
xster
a2e5e074ab
Move Android doctor SDK check to 29 and Cirrus images to 30 (#63517) 2020-08-20 11:06:32 -07:00
xster
e1ae4dfcae
Move v1 embedding migration warning from plugin consumers to all apps (#64181) 2020-08-19 22:32:08 -07:00
Jonah Williams
69fd5c50a2
[flutter_tools] null assertions off by default for web (#64186)
Like Android/iOS, only enable --null-assertions if asked. Previously this was enabled by default for web, but in general this has proved to be too breaking to enable by default.

#61042
2020-08-19 14:52:47 -07:00
Jonah Williams
4954a46ff0
[flutter_tools] shrink API surface of Android SDK (#63867)
Attempt to simplify the Android SDK interface ahead of refactoring it. The locateAndroidSdk static method is called at startup to locate the android SDK, returning null if it cannot be found. These helper methods attempted to first look up the AndroidSDK if it was already null - which could only cover the case where someone installed the Android SDK while flutter was running (possibly through an IDE)
2020-08-19 14:44:56 -07:00
Zachary Anderson
6f78131474
WIP: [flutter_tool] Fix amberctl host address (#64020) 2020-08-19 14:41:05 -07:00
Jenn Magder
6ca9cd7b8f
Use real flutter root for finding pub in command integration test (#64021) 2020-08-18 17:09:02 -07:00
Jonah Williams
a42c56791b
[flutter_tools] shrink fingerprinter API to currently used subset (#63840) 2020-08-18 17:01:06 -07:00
Jonah Williams
39c735f408
[flutter_tools] correctly forward error only stdout in non-verbose modes (#63815) 2020-08-18 16:56:05 -07:00
Albert Viilik
654022aecb
Make deprecation notice link to website downloads (#63829) 2020-08-17 17:01:02 -07:00
Jonah Williams
042fa8cf66
[flutter_tools] trim trailing newline from vm service logging events (#63976) 2020-08-17 12:26:03 -07:00
Zachary Anderson
1884920e30
[flutter_tool] Handle Windows line endings in packages_test.dart (#63806) 2020-08-17 11:41:08 -07:00
stuartmorgan
70bd819c52
Separate blkid in the Linux library checks (#63810) 2020-08-17 10:51:03 -07:00
Helin Shiah
3d3b5349a7
Return host and port from devtools launcher (#63795) 2020-08-17 10:46:05 -07:00
Jonah Williams
08254b2156
Revert "Remove TODOs added for HTTP abort() change in dart sdk (#63924)" (#63972)
This reverts commit b1c17313f6.
2020-08-17 10:25:01 -07:00
zichangg
b1c17313f6
Remove TODOs added for HTTP abort() change in dart sdk (#63924) 2020-08-17 09:46:08 -07:00
Zachary Anderson
f360d8b8e8
[flutter_tool] Fix some create_test.dart tests on Windows (#63796) 2020-08-14 15:26:29 -07:00
stuartmorgan
6f0cfc9524
Surface Windows build errors in non-verbose mode (#63707) 2020-08-13 19:46:02 -07:00
Jonah Williams
06c3de3285
[flutter_tools] remove most globals from build system and tests (#63697)
Remove globals and testbed to simplify test cases, using the existing environment configuration. This is some pre-factoring work to make landing #63610 easier
2020-08-13 15:00:27 -07:00
Shi-Hao Hong
0a7c6243fa
[gen_l10n] Absolute project path parameter (#63368) 2020-08-13 05:11:05 -07:00
Jonah Williams
9225d8d5b7
[flutter_tools] move to fake_async, skip failing tests (#63536) 2020-08-11 19:36:05 -07:00
Jonah Williams
16df32b1eb
[flutter_tools] handle invalid yaml in plugin dependency (#63526) 2020-08-11 19:31:03 -07:00
Christopher Fujino
8dcb4c338a
Fix version parsing to use git tag --points-at (#63505) 2020-08-11 17:29:35 -07:00
xster
df8e537f96
move compile/target sdk versions to 29 (#62799) (#63008) 2020-08-11 14:51:02 -07:00
Jonah Williams
c86d090e6f
[flutter_tools] add --null-assertions flag for debugging with null safety (#63416) 2020-08-11 11:36:03 -07:00
James D. Lin
ec58182b3b
[flutter tools] Make SizeAnalyzer support .apk files that don't use libapp.so (#63250) 2020-08-10 21:06:05 -07:00
Michael Klimushyn
cb69bbb4d5
Remove unused l and --isolate-filter tools (#63336) 2020-08-10 10:51:04 -07:00
Nolan Scobie
43c1b34cf5
Add punctuation for unterminated sentences in doc comments (#62755)
* Add punctuation for unterminated sentences in doc comments

* Addressing review nit
2020-08-06 19:18:52 -04:00
Jenn Magder
0aafdf9aa9
Change minimum iOS version from 8.0 to 9.0 (#62902) 2020-08-06 13:46:15 -07:00
Chris Yang
c9cd825fca
[flutter_tools] flutter version reports picks up release versions (#63019) 2020-08-05 15:20:27 -07:00
Jonah Williams
762d9f7f4e
[flutter_tools] warn when main library is relocated (#62930) 2020-08-05 15:11:15 -07:00
Ian Hickson
ef62463e9c
Update link to bug (#62893) 2020-08-05 15:06:24 -07:00
Ian Hickson
8ad4da4a4e
There's a bug filed about this now, so update comment. (#62892) 2020-08-05 15:01:21 -07:00
Marcus Tomlinson
145df39953
Explicitly find and link blkid using pkg-config (#62979) 2020-08-05 14:56:19 -07:00
Chris Yang
2459f5c513
plugin template min flutter sdk version to 1.20 (#62605) 2020-08-04 12:31:05 -07:00
Jonah Williams
e8ad863a08
Revert "move compile/target sdk versions to 29 (#62799)" (#62884)
This reverts commit 5b3dc5251b.
2020-08-04 11:20:16 -07:00
xster
5b3dc5251b
move compile/target sdk versions to 29 (#62799) 2020-08-04 08:26:08 -07:00
Jonah Williams
a0745e23bf
[flutter_tools] add --analyze-size flag (#62697) 2020-08-03 14:21:05 -07:00
Helin Shiah
5ce7282a36
Return devtools serve response instead of printing (#62702) 2020-08-03 10:26:12 -07:00
Helin Shiah
7cbec567de
Add daemon handler to start devtools (#62608) 2020-07-31 11:06:05 -07:00
Peter Lee
8b39af2ea7
Implement size analyzer to unzip & parse APK and AOT size snapshot to generate analysis json (#62495)
* Implement size analyzer to unzip & parse APK and AOT size snapshot to generate analysis json
2020-07-31 13:25:29 -04:00
Chris Yang
48fab86c6e
[flutter_tools] update pubspec .yaml message should not be displayed when creating a new plugin (#62599)
* update pubspec message should not be displayed when creating a new plugin

* formatting

* revikew

* review

* cleanup
2020-07-30 13:49:15 -07:00
Jonah Williams
fbd29b8880
[flutter_tools] fix formatting regression in analyze and add full coverage (#62593) 2020-07-30 13:41:02 -07:00
Jonah Williams
b880dad4ab
[flutter_tools] delete test that will start failing (#62580) 2020-07-30 10:06:02 -07:00
Robert Ancell
392e25c8f2
Set the application-id in the Linux shell (#60053) 2020-07-30 08:46:29 +12:00
Ben Konyi
d6a25ae699
Temporarily disable Dart Development Service in flutter_tools (#62508)
Devtools doesn't currently support connections to DDS. Disable DDS
temporarily while a solution is worked on. See https://github.com/flutter/flutter/issues/62507
2020-07-29 12:32:10 -07:00
Yuqian Li
22bf19cece
Add purge-persistent-cache option to run and drive (#62221)
Fixes https://github.com/flutter/flutter/issues/39526

Needs https://github.com/flutter/engine/pull/20013 to land and roll first.
2020-07-29 12:24:39 -07:00
Ben Konyi
3a5a3eaf68
Reland "Add support for Dart Development Service (DDS) in Flutter Tools (#61276)" (#62147)
This reverts commit adc9dde3ba.

- Fixed issue where `FallbackDiscovery` would hold on to a `VmService` when launching on iOS devices, causing DDS to fail to start
- Fixed `flutter drive` case where DDS is already running in another flutter_tools instance
2020-07-29 10:05:40 -07:00
Jonah Williams
f707f6f6ea
[flutter_tools] add flutterRoot field to JSON machine output (#62053) 2020-07-29 08:16:04 -07:00
Lau Ching Jun
a317c2c06a
Wrap launching devtools in DevtoolsLauncher (#62364) 2020-07-28 19:46:05 -07:00
Jonah Williams
78efd3eb46
[flutter_tools] ensure desktop builds can run without flutter_tools' package_config (#62426) 2020-07-28 18:36:05 -07:00
Chris Yang
004f90f8fd
remove iOS folder (#61561) 2020-07-28 10:33:52 -07:00
Jenn Magder
5abe2d3364
Allow hyphens in iOS UDIDs (#62225) 2020-07-28 10:29:34 -07:00
includecmath
3215a0130b
[flutter_tools] Unified analyze error log format (#61146)
* Unified analyze error log format

* Fix review issues
2020-07-28 10:21:57 -07:00
Jonah Williams
59e0a2ec28
[flutter_tools] update device discovery constructors (#61640)
google3 callsites are updated, remove global lookup from constructor parameters.
2020-07-28 10:20:01 -07:00
雷宇辰
7779a14794
[flutter_tools] Make flutter git upstream configurable (#61513) 2020-07-24 16:16:31 -07:00
Jenn Magder
f9499f44f7
Detect exact device ID matches quickly (#62070) 2020-07-24 16:15:44 -07:00
Will Larche
7782845edd
[Material] Updated icons and fonts (#61778) 2020-07-24 15:41:13 -07:00
Jonah Williams
c6dce2318b
[flutter_tools] remove breakpoints from paused isolate on hot restart (#62069)
The embedder requires that the isolate is unpaused, because the runInView method requires interaction with dart engine APIs that are not thread-safe. These APIs must be run on the same thread that would be blocked by the pause. Simply unpausing is not sufficient, because this does not prevent the isolate from immediately hitting a breakpoint, for example if the breakpoint was placed in a loop or in a frequently called method. Instead, all breakpoints are first disabled and then the isolate resumed.
2020-07-24 15:34:55 -07:00
Zachary Anderson
523afbe58b
Ensure analytics are sent before disabling (#62094) 2020-07-24 15:31:18 -07:00
Jonah Williams
a7db3591cb
[flutter_tools] deflake fastReassemble test (#62152) 2020-07-24 15:17:39 -07:00
Zachary Anderson
5e0ba2290f
Pass --disable-dart-dev in more places (#62217) 2020-07-24 13:37:08 -07:00
Jonah Williams
a19fd72db5
[flutter_tools] check in script for generating per library unit coverage (#61996)
Allows generating a per-library coverage summary like https://gist.github.com/jonahwilliams/f298381c3fb9f472b2dfe54b82a20a88
2020-07-22 18:40:12 -07:00
Jonah Williams
3a976feb58
[flutter_tools] clean plugin dependencies file (#62061)
Clean even more, in case the plugin dependency update logic is wrong-o.
2020-07-22 18:39:33 -07:00
huangchaoyang
9da74f66ca
Show correct errors when plugins yaml forgot the 'flutter.plugins.pla… (#61338) 2020-07-22 18:24:03 -07:00
Jonah Williams
9f040865c9
[flutter_tools] macOS cleanups, attach to log reader in release mode (#61913) 2020-07-22 18:23:20 -07:00
Jenn Magder
fe670c04cc
Only try to get build settings if the Xcode project exists (#61979) 2020-07-22 18:22:38 -07:00
Ben Konyi
adc9dde3ba
Revert "Reland "Add support for Dart Development Service (DDS) in Flutter Tools (#61276)" (#61975)" (#61993)
This reverts commit f7a1c87ffd.
2020-07-21 16:17:23 -07:00
Ben Konyi
f7a1c87ffd
Reland "Add support for Dart Development Service (DDS) in Flutter Tools (#61276)" (#61975)
This reverts commit 4867f5931f.
2020-07-21 15:44:38 -07:00
includecmath
aa9119e53b
[flutter_tools] Concise dart2js commands outputKernel & outputJavaScript (#61881) 2020-07-21 02:31:03 -07:00
Jonah Williams
8be1c9ef25
[flutter_tools] turn off fuchsia support by default (#61634) 2020-07-21 02:26:04 -07:00
Jason Simmons
b3f0f092ec
Disable the deferred loading variant of gen_l10n_test (#61912) 2020-07-21 02:18:29 -07:00
Ben Konyi
4867f5931f
Revert "Reland "Add support for Dart Development Service (DDS) in Flutter Tools (#61276)" (#61882)" (#61909)
This reverts commit 895b7ef6fa.
2020-07-20 16:41:01 -07:00
Ben Konyi
895b7ef6fa
Reland "Add support for Dart Development Service (DDS) in Flutter Tools (#61276)" (#61882)
This reverts commit 38fe887342.
2020-07-20 16:01:58 -07:00
Jonah Williams
07caa0fbfe
[flutter_tools] Add plumbing for widget cache (#61766)
To support #61407 , the tool needs to check if a single widget reload is feasible, and then conditionally perform a fast reassemble.

To accomplish this, the FlutterDevice class will have a WidgetCache injected. This will eventually contain the logic for parsing the invalidated dart script. Concurrent with the devFS update, the widget cache will be updated/checked if a single widget reload is feasible. If so, an expression evaluation with the target type is performed and the success is communicated through the devFS result. An integration test which demonstrates that this works is already present in https://github.com/flutter/flutter/blob/master/packages/flutter_tools/test/integration.shard/hot_reload_test.dart#L86

Finally, when actually performing the reassemble the tool simply checks if this flag has been set and calls the alternative reassemble method.

Cleanups:

Remove modules, as this is unused now.
2020-07-20 14:03:44 -07:00
Helin Shiah
5b9ce492f3
Skip printing rendered error text in machine mode (#61684) 2020-07-20 09:41:03 -07:00
Jenn Magder
c4bfa4c7ab
Inject iproxy into context (#61762) 2020-07-20 07:46:05 -07:00
Jonah Williams
78a975444a
[flutter_tools] revert dart format changes (#61760) 2020-07-20 07:41:05 -07:00