Commit Graph

3462 Commits

Author SHA1 Message Date
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