Commit Graph

3108 Commits

Author SHA1 Message Date
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
Jenn Magder
55176c4d6f
Show device diagnostic messages in doctor (#61585) 2020-07-17 09:41:03 -07:00
Konstantin Scheglov
741e9675e7
Remote returns for function expression inferred return type void. (#61582) 2020-07-17 09:36:03 -07:00
Ben Konyi
38fe887342
Revert "Reland "Add support for Dart Development Service (DDS) in Flutter Tools (#61276)" (#61633)" (#61641)
This reverts commit 594c3541aa.
2020-07-16 11:43:54 -07:00
Ben Konyi
594c3541aa
Reland "Add support for Dart Development Service (DDS) in Flutter Tools (#61276)" (#61633)
This reverts commit a1a5a8f635.
2020-07-16 11:38:17 -07:00
Christopher Fujino
f796e047fd
Verbose process exceptions (#61552) 2020-07-16 11:31:03 -07:00
Jonah Williams
859fce9010
[flutter_tools] add feature for iOS, android, and fuchsia (#61481)
Add feature flags for android, ios, and fuchsia (on by default). After updating the g3 rollers, the fuchsia feature will be turned off by default. Creates a simpler base type of feature flags for g3 to extend.

Updates android, ios, fuchsia workflows to use feature flags check.
Removes concept of stable artifacts and checks on flutter version.

Fixes #58999
#52859
#12768
2020-07-16 09:51:59 -07:00
Jonah Williams
045f3a54f5
[flutter_tools] turn down flutter generate (#61475)
complete removal of all generate functionality

Fixes #61508
2020-07-16 09:51:22 -07:00
Danny Tuppeny
e8eb876489
Fix build (fix references to _flutter -> flutter) (#61568) 2020-07-15 12:45:55 -07:00
Danny Tuppeny
51fcf8fa7a
Add debounce support to daemon hot reload requests (#55376) 2020-07-15 11:56:05 -07:00
Jonah Williams
d8b6fa153a
[flutter_tools] generate a synthetic flutter_gen package on pub get (#61261)
Allow configuring the flutter_manifest to support a synthetic package, this is done through flutter: generate: true.

When running pub get, insert a flutter_gen entry into the packages if it does not already exist. This points to .dart_tool/flutter_gen, which can be updated to contain the generated intl sources (But doesn't currently)

Adds an integration test that verifies this code can be run and imported when enabled.

Part of #60914
2020-07-15 10:12:52 -07:00
zichangg
3631adc99a
Fixing patch for coming breaking change in HttpClientRequest (#61138)
* Fixing patch for coming breaking change in HttpClientRequest

* Add noSuchMethod() and comment out abort()

* Add ignore: override_on_non_overriding_member
2020-07-15 10:07:57 -07:00
Jonah Williams
cb7770b3a5
[flutter_tools] add support for enable null safety asserts (#61114)
Enable null safety asserts for web debug mode. This induces runtime asserts at the boundaries between null safe and non-null safe libraries. Adds integration test that validates assertion error is thrown.

#61042
2020-07-15 09:54:39 -07:00
Jonah Williams
b010f78e3a
[flutter_tools] fix typo in test code (#61548) 2020-07-15 09:21:24 -07:00
Jenn Magder
4fba77476d
Support Xcode patch version comparison (#61484) 2020-07-14 17:16:02 -07:00
Ben Konyi
a1a5a8f635
Revert "Reland "Add support for Dart Development Service (DDS) in Flutter Tools (#61276)" (#61395)" (#61498)
This reverts commit f98184e487.
2020-07-14 16:32:49 -07:00
Ben Konyi
f98184e487
Reland "Add support for Dart Development Service (DDS) in Flutter Tools (#61276)" (#61395)
This reverts commit 5b9c6e2b0e.
2020-07-14 15:57:36 -07:00
Jonah Williams
485034cab3
[flutter_tools] update fastReassemble method for single widget reloads (#61413)
For #61407 , we need to be able to find all widgets that of a given type. Previously I experimented with using the type name, but of course this does not handles subtypes. The actual check needs to be an is check.

Since there is no way to convert a String to a Type at runtime for use in this check, we can instead evaluate an expression which assigns a closure to a field. The idea for this was inspired by how the dart devtools adds debug functionality to older versions of flutter.

Since the reload feature is not complete yet, adds an integration test which simulates how it will eventually behave
2020-07-14 12:25:13 -07:00
Jonah Williams
d22d65c6e7
[flutter_tools] add the feature for single widget reloads (#61411)
Implements the flutter config feature for #61407 , but does not implement any of the functionality.
2020-07-14 12:24:58 -07:00
Jonah Williams
e666ea8de4
[flutter_tools] cleanups to web runner functionality (#61178)
Skip unnecessary parsing of chrome URI. Ensure stack traces are initialized in web server. Disclaimer on web server that it does not support debugging and remove help message. Fix generated entrypoint to check for main(List<String> args)

- Fixes #59643
- Fixes #55084
- Fixes #60417
2020-07-13 15:12:46 -07:00
Dan Field
eadc35f62b
Optionally invert oversized images (#61209)
* Optionally invert oversized images
2020-07-13 14:03:23 -07:00
Danny Tuppeny
f8135add8e
Add a flag for using WS for debug backend (#61359) 2020-07-13 13:31:04 -07:00
xster
8bd2e6585b
Remove v1 Android create templates (#61203) 2020-07-11 12:15:19 -07:00
Anna Gringauze
9cbe1dccf3
Added web compiler debug metadata (#61265)
Made flutter tools serve metadata produced by the frontend server:

pass --experimental-emit-metadata flag to flutter engine
store and serve metadata from web asset server
store and serve merged metadata from web asset server
add tests to verify that metadata is served from memory
update dwds version so it can read metadata
configure dwds to read metadata from file
Prerequisite changes (landed):

sdk: https://dart-review.googlesource.com/c/sdk/+/150181
flutter engine: flutter/engine#19168
webdev:dart-lang/webdev#1064
2020-07-10 16:36:43 -07:00
Dan Field
cd80ed3009
Fix bold not getting cleared on new line (#61256)
* Fix bold not getting cleared on new line
2020-07-10 16:09:49 -07:00
Dan Field
5b9c6e2b0e
Revert "Add support for Dart Development Service (DDS) in Flutter Tools (#59114)" (#61276)
This reverts commit fe7bbf7226.
2020-07-10 15:53:35 -07:00
Ben Konyi
fe7bbf7226
Add support for Dart Development Service (DDS) in Flutter Tools (#59114) 2020-07-10 15:35:21 -07:00
Jonah Williams
66556faef7
[flutter_tools] deflake integration test with tryToDelete (#61253) 2020-07-10 13:29:49 -07:00
Jonah Williams
1c1ef133ee
[flutter_tools] remove globals from device manager, flutter tester (#61139)
Remove global variables from device manager, flutter tester devices and update tests
2020-07-10 11:52:09 -07:00
Jonah Williams
fbca40add2
[flutter_tools] abstract logger construction (why can't I hold all these loggers) (#61201)
We have too many loggers, and the logger construction rules are too complicated to be untested. Capture these in a LoggerFactory and test that construction is correct.
2020-07-10 11:51:47 -07:00
Jonah Williams
6eaaf1650e
[flutter_tools] switch order of injection (#61191)
Inject loggers in the right order, test WIP. Otherwise verbose machine would not get the AppRunLogger
2020-07-09 18:04:37 -07:00
Jenn Magder
20fe2f88c5
Prefer tear offs to lambdas in test expects (#61196) 2020-07-09 17:58:51 -07:00
Jonah Williams
ed9a705ec2
[flutter_tools] allow unmuting of command logging (#61198)
Running flutter doctor -v prints out extra details instead of running in verbose mode. Allow disabling this with -vv so it can be debugged.
2020-07-09 17:55:53 -07:00
Jenn Magder
e110ca7209
Case insensitive check flavor names against Xcode schemes (#61140) 2020-07-09 16:56:02 -07:00
includecmath
72258eac5f
[flutter_tools] Separate style and data from AnalysisError (#60591) 2020-07-09 13:51:02 -07:00
Dan Field
c6fd42499a
Test update_packages for git packages (#61127) 2020-07-08 19:31:02 -07:00
Jonah Williams
d4589e0c71
[flutter_tools] ensure AppRunLogger is injected for run/attach machine (#61103)
run/attach --machine requires a different logger than daemon, which uses the NotifyingLogger. We have too many loggers!

Fixes #59463
2020-07-08 18:21:46 -07:00
includecmath
93eac884eb
[flutter_tools] Clean code analyze command (#60200) 2020-07-08 18:11:03 -07:00
Jonah Williams
741608a261
[flutter_tools] fix recursive asset variant issue (#61129)
Fixes #45075
Fixes #57210

If an asset was included directly from the project root directory, then the same asset when copied to various output or ephemeral directories would also be picked up as an asset variant. This could cause assets to be recursively copied into asset/build/ephemeral directories, as each time it would run it would pick up all of the previous "variants".

The solution is to include project ephemeral directories, in addition to the build directory.
2020-07-08 18:07:27 -07:00
Natan Portilho
f567a0cc98
Device manager choose running device (#57349) 2020-07-08 09:41:02 -07:00
Jonah Williams
07e2d6f63b
[flutter_tools] make precache force blow away stamp files (#61003)
update flutter precache --force to delete all stamp files. In the event that a user is hitting a cache issue, this should be easier than re-downloading all artifacts or manually blowing away the cache.

This is probably how it should have worked in the first place
2020-07-07 19:33:25 -07:00
Jonah Williams
77310c152f
[flutter_tools] deprecate flutter version (#60998) 2020-07-07 18:04:02 -07:00
Jonah Williams
f111a823ec
[flutter_tools] remove some globals from flutter_tester device (#60787)
Remove globals from flutter_tester device and cleanup test case. Not completely gone since the Kernel Builder will still use them, but a good incremental improvement.
2020-07-07 10:24:52 -07:00
Jonah Williams
846418b60b
[flutter_tools] fix crash if the platform section was a list (#60927)
Missed validation to go with cast. Added test case to reproduce.
2020-07-07 10:24:42 -07:00
stuartmorgan
4b12050112
Switch Windows to CMake (#60629)
* First pass at CMake files; untested

* First pass of adding CMake generation logic on Windows

* Misc fixes

* Get bundling working, start incoprorating CMake build into tool

* Fix debug, exe name.

* Add resources

* Move cmake.dart

* Rip out all the vcxproj/solution plumbing

* Fix plugin cmake generation

* Build with cmake rather than calling VS directly

* Adjust Windows plugin template to match standard header directory structure

* Pass config selection when building

* Partially fix multi-config handling

* Rev template version

* Share the CMake generation instead of splitting it out

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

* Update manifest

* Plugin template fixes

* Minor adjustments

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

* Test cleanup

* Update Linux test for adjusted generated CMake approach

* Plugin test typo fix

* Add missing stub file for project test

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

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

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

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

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

Filled #60232 for remaining work.
2020-06-25 12:52:14 -07:00
Jonah Williams
5cfcae004a
[flutter_tools] fix tests that depend on correct cache existance (#60241)
These tests will hit the real Cache, failing if the flutter root has been modified
2020-06-24 16:45:46 -07:00
Jonah Williams
a0334fb500
[flutter_tools] maintain file manifest for create (#59706)
First pass at fixing #57985 and implementing #59602

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

Delete dwds startup test that needs to spawn a real server.
2020-06-24 16:19:49 -07:00
stuartmorgan
d9902a5474
Consider the Linux template stable (#60163)
Remove the version checking and associated warnings. The Linux template
and build process will now be subject to more typical Flutter breaking
change policy, and should no longer require regularly deleting and
recreating the platform directory.
2020-06-24 12:23:57 -07:00
Jonah Williams
f8c9e1bb67
[flutter_tools] de-flake integration tests (#60221)
The vm_service_integration test flake is caused by trying to call the method before the framework is initialized (and the extension added). The run errors failure is caused by the error taking some time to propagate to the harness
2020-06-24 12:14:58 -07:00
Jonah Williams
9e30d51ac6
[flutter_tools] start fixing command tests (#60172) 2020-06-24 11:26:36 -07:00
Chris Yang
95b98dc2c2
flutter create . on plugins also regenerates files for platforms supported in pubspec.yaml (#60159) 2020-06-24 10:38:03 -07:00
Jonah Williams
5d61bff294
[flutter_tools] even more test fixes (#60156)
Fix tests broken under tester
2020-06-24 10:23:59 -07:00
Jonah Williams
dd49e57be2
[flutter_tools] more test fixes (#60144)
Fixes additional bugs uncovered by tester, style fixes to prevent suggested imports.
2020-06-23 17:53:00 -07:00
Chris Yang
2e63b7d4f8
Add --platforms to flutter create -t plugin command (#59507) 2020-06-23 17:38:03 -07:00
Jonah Williams
14992c5951
Revert "[flutter_tools] separate target platform, host platform, and architecutre (#60119)" (#60147)
This reverts commit 30d97d89e0.
2020-06-23 17:19:29 -07:00
Jonah Williams
37db92beeb
[versions] update all versions and fix tool tests (#60127)
Update all versions, specifically file which fixes some bugs that caused tests to fail if run in different orders:

- systemTemp directories created by MemoryFileSystem will allot names based on the file system instance instead of globally.
- MemoryFile.readAsLines()/readAsLinesSync() no longer treat a final newline in the file as the start of a new, empty line.
- RecordingFile.readAsLine()/readAsLinesSync() now always record a final newline.
2020-06-23 15:48:37 -07:00
Jenn Magder
c8e53b3859
Add null safety options to build ios-framework (#60111) 2020-06-23 14:35:45 -07:00
David Iglesias
8fce4ce974
[flutter_tools] Add web support through MethodChannels. (#60116) 2020-06-23 13:53:01 -07:00
Jonah Williams
30d97d89e0
[flutter_tools] separate target platform, host platform, and architecutre (#60119)
separate target platform, host platform, and architecture
2020-06-23 13:51:17 -07:00
Jonah Williams
e34c591252
[flutter_tools] fix root directory tests (#60060)
* fix test compiler test
* fix project test
* fix flutter_platform_test
* fix cocoapods test
2020-06-23 11:14:38 -07:00
Jenn Magder
d82ef3517c
Use assemble build system directly for build ios-framework (#60041) 2020-06-22 18:44:27 -07:00
Jenn Magder
6a2bc2617e
Replace ANDROID_HOME user messages with ANDROID_SDK_ROOT (#59867) 2020-06-22 18:43:04 -07:00
Jonah Williams
55abbb6be6
[flutter_tools] track null safety usage (#59822)
* [flutter_tools] track null safety usage

* Update flutter_command_test.dart

* cleanups
2020-06-22 17:05:01 -07:00
Jonah Williams
09f1764d14
[flutter_tools] android test cleanups (#59996)
Fixes several tests that were failing under tester. Minor style cleanups otherwise
2020-06-22 17:04:39 -07:00
Jonah Williams
a734693ff5
[flutter_tools] cleanup iOS test (#59999)
The test needs to look up HOME, but one wasn't provided. This would end up using the real home directory, crashing on windows
2020-06-22 17:04:17 -07:00
Jonah Williams
8e9b78728f
[flutter_tools] switch linux desktop feature on (#60018)
Enable linux desktop feature on dev channel
2020-06-22 17:04:01 -07:00
Jonah Williams
2cd205bb5a
[flutter_tools] cleanup fuchsia tests (#59997)
Cleanup fuchsia tests that failed under tester.
2020-06-22 16:47:28 -07:00
Anna Gringauze
aac836c6ad
Enabled expression evaluation by default (#59826) 2020-06-19 15:23:03 -07:00
Helin Shiah
f7a09bd2df
Add integration tests for structured error (#59809) 2020-06-19 13:58:03 -07:00
Michael Goderbauer
e48b7e99cd
More word substiturions (#59497) 2020-06-19 13:43:02 -07:00
Jenn Magder
f41f795640
Clean up PollingDeviceDiscovery dispose (#59709) 2020-06-18 16:38:02 -07:00
James D. Lin
bdbe6774a3
[flutter tools] Change the desktop device names and IDs (#58812)
In google3, the Linux device is always available, and it has confused
people who run the Flutter doctor and see
"• Linux • Linux • linux-x64 • Linux" listed.

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

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

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

Fixes #59769

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

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

Fixes #59495

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

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

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

The VmService getter can be null, handle that in the listViews method. NNBD when
2020-06-17 10:53:54 -07:00
Jenn Magder
b8c64d7014
Don't crash when pubspec isn't a map (#59632) 2020-06-17 10:33:02 -07:00
Per Classon
56a7dacd46
[flutter_tools] For l10n with deferred loading, use loadLibrary for non-web too (#59539)
After Dart VM change we are now required to use loadLibrary on an import whenever it is imported as deferred.

See: https://dart-review.googlesource.com/c/sdk/+/149613
2020-06-16 13:36:28 -07:00
stuartmorgan
61c198e766
Switch Linux to the GTK embedding (#59287)
Updates the tooling to use the GTK embedding, rather than the GLFW embedding:
- Adds new requirements to `doctor`
- Updates the app and plugin templates to make GTK-based runners and plugins
- Stops downloading and installing the GLFW artifacts

Final part of #54860, other than cleanup.
2020-06-16 13:31:24 -07:00
Jonah Williams
15154b115f
[flutter_tools] deprecate build aot (#59487)
This command was previously used by the re-entrant build scripts in xcode_backend.sh and build.gradle. These have since been refactored to use flutter assemble.

Deprecation the command in preparation for removal in a future release of flutter. The only current use is a test on HHH
2020-06-16 13:00:11 -07:00
Christopher Fujino
807b60250a
[flutter_tools] Update roll_dev.dart (#59215) 2020-06-16 09:30:04 -07:00
Jonah Williams
958f7c5b55
[flutter_tools] ensure generated entrypoint matches test and web entrypoint language version (#59291)
Ensure that the language version of the test/web generated entrypoint matches the language version of the test file to run, or the overall package language version if no annotation is provided.
2020-06-16 09:17:12 -07:00
Michael Goderbauer
584fd5f913
Word substitutions (#59484)
* Word substitutions

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

* Publish ${FLUTTER_LIBRARY} to parent scope

* Bundle plugin libraries

* Bundle <plugin_name>_bundled_libraries too

* BUNDLED_LIBRARIES -> PLUGIN_BUNDLED_LIBRARIES

* Update Linux plugin test

* Address review comments
2020-06-11 22:00:28 +01:00
Jenn Magder
222c2cb0cc
Deprecate make-host-app-editable (#59217) 2020-06-11 11:37:15 -07:00
Jenn Magder
75fd73d818
Revert "[flutter_tools] inject output preferences at the top level (#58875)" (#59197)
This reverts commit dca6320fe4.
2020-06-10 13:49:35 -07:00
Jonah Williams
dca6320fe4
[flutter_tools] inject output preferences at the top level (#58875)
The tool was setting the output preferences in a sub-context. Originally these were not injected before the arg parsers were created, though that was fixed by the lazy command creation. Once local engine is removed, the inner flutter_command Zone can be removed.
2020-06-10 12:13:06 -07:00
Jonah Williams
e7b4d2b80e
[flutter_tools] remove globals from proxy validator (#59175)
Remove global Platfrom from proxy validator. move tests to new file, and update asserts to cover message contents.
2020-06-10 12:12:35 -07:00
Jonah Williams
d911eadf95
[flutter_tools] create NotifyingLogger at the top level when running flutter run --machine or flutter attach --machine (#59087)
Removes dependency on injecting additional logger with zones
2020-06-09 15:39:27 -07:00
Jonah Williams
6067571fab
[flutter_tools] support flutter run -d edge (#56173)
Support Microsoft Edge as a device for flutter run when web is enabled. Currently this only works on Windows, and does not include a validator for edge.

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

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

Fixes #53115
2020-06-09 11:15:52 -07:00
Jonah Williams
01e60a1ca4
[flutter_tools] Reland: use correct sdk path for analysis (#59081)
flutter analyze was unconditionally using the cached dart-sdk for analysis, and was not running with the built SDK during local engine. This broke when trying to update the analyzer for null safety, since it required us to wait for the dart change to roll into the framework first.
2020-06-09 10:47:21 -07:00
Jonah Williams
5e3e5a2a1a
Revert "[flutter_tools] use correct sdk path for analysis (#58871)" (#59035)
This reverts commit 9ed3e5bea6.
2020-06-08 17:38:23 -07:00
Jonah Williams
9ed3e5bea6
[flutter_tools] use correct sdk path for analysis (#58871)
flutter analyze was unconditionally using the cached dart-sdk for analysis, and was not running with the built SDK during local engine. This broke when trying to update the analyzer for null safety, since it required us to wait for the dart change to roll into the framework first.
2020-06-08 17:21:33 -07:00
Jenn Magder
5eb4917d73
Release cache lock for commands after required artifacts are downloaded (#59012) 2020-06-08 17:18:02 -07:00
Jenn Magder
023532d991
Revert "Build iOS apps using Swift Packages (#59009)" (#59025)
This reverts commit 43e28084fc.
2020-06-08 15:45:10 -07:00
Jenn Magder
43e28084fc
Build iOS apps using Swift Packages (#59009) 2020-06-08 13:53:01 -07:00
Jonah Williams
80ea454288
[flutter_tools] change service worker load to NOTICES (#58890)
update flutter_service_worker.js to NOTICES
2020-06-08 12:33:31 -07:00
Jonah Williams
0620cfa770
Revert "Send text error in JSON and print in tools (#58994)" (#59002)
This reverts commit f0174b176a.
2020-06-08 11:56:23 -07:00
Jonah Williams
ef9b77d99a
fix analysis on master (#59001) 2020-06-08 11:53:17 -07:00
Jenn Magder
886313393f
Support work profiles and multiple Android users for run, install, attach, drive (#58815) 2020-06-08 11:28:02 -07:00
Helin Shiah
f0174b176a
Send text error in JSON and print in tools (#58994)
* Revert "Revert "Send text error in JSON and print in tools (#58284)" (#58872)"

This reverts commit c2d5e18cb2.

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

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

* Add test for error text

* Fix analysis issues

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

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

* Add extension listen request to test

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

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

* Rename error parsing method

* Allow crash if listen for extension stream fails

* Add test for error and non-error extension events

* Fix formatting for TextTreeRenderer

* Use shorter message for second exceptions

* Specify types for map

* Add empty JSON for resident_web_runner test

* Move stream listen to vmservice and add vmservice test

* Fix stream type

* Move structured error log definition to vmservice

* Use correct test matcher isNot

Co-authored-by: Jonah Williams <jonahwilliams@google.com>
2020-06-05 19:07:37 -07:00
Jonah Williams
5722adf11d
[flutter_tools] remove deprecation warning on flutter format (#58817)
So that we have a release where both are available without a deprecation warning.
2020-06-05 12:40:02 -07:00
Jonah Williams
1e4d9f8502
[flutter_tools] add --write-sksl-on-exit to flutter drive (#58743)
Allow dumping sksl files on driver exit when a file path is provided to drive's --write-sksl-on-exit
2020-06-05 11:01:23 -07:00
Jonah Williams
d0abf7f90f
[flutter_tools] don't use verbose when in doctor or help command (#58798) 2020-06-05 10:12:11 -07:00
stuartmorgan
94b7ff241e
Don't require a specific Windows 10 SDK (#58713)
Current versions of the Windows desktop build files don't require a specific Windows 10 SDK version, but doctor still checks for one since vswhere doesn't allow for flexible queries. This has been a common source of issues for people setting up on Windows for the first time, because the current VS installer by default only includes a newer version of the SDK than what doctor is looking for.

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

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

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

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

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

* shared code

* cleanup artifact directory

* do not copy if dillOutputPath is given
2020-06-04 10:17:43 -07:00
Jenn Magder
2eca1d303c
Use fake command in analytics test (#58544) 2020-06-03 21:23:01 -07:00
Jonah Williams
b1d75fc99d
[flutter_tools] add flag for sound-null-safety, unify with experiments (#58533)
Also combines experiments into extraGenSnapshot/ExtraFrontEndOptions. Allows providing --no-sound-null-safety to allow out of order migration and running.
2020-06-03 21:02:07 -07:00
Jenn Magder
95edf28150
Move create project build tests to permeable subshard (#58645) 2020-06-03 17:41:15 -07:00
Jenn Magder
c130aa9574
Add FakeAsync to delay tests (#58644) 2020-06-03 17:16:37 -07:00
JustWe
6c8d7b00ff
Show unsupported devices when no supported devices are connected (#56531) 2020-06-03 16:14:38 -07:00
Jonah Williams
0734db62ca
[flutter_tools] remove handling of error that is fixed (#58557)
The linked error has been fixed, removed work around. Updates the test cases to only test for exit instead of error message

#33050
2020-06-03 13:27:47 -07:00
Jonah Williams
7e942b6229
[flutter_tools] iOS VM Service logs should include stderr (#58551) 2020-06-03 12:53:02 -07:00
Jenn Magder
e72e7f9fb0
Don't elapse real time during IOSDevice.startApp tests (#58538) (#58622) 2020-06-03 12:43:02 -07:00
Jonah Williams
e216eec7b4
[flutter_tools] Allow the tool to suppress compilation errors. (#58539)
Suppress compilation errors on startup so they are not duplicated from the native build step.
2020-06-03 12:00:03 -07:00
Jenn Magder
79e2409419
Fake out DeviceManager.getDevices in test (#58541) 2020-06-03 11:48:37 -07:00
Jenn Magder
37bc900860
Revert "Don't elapse real time during IOSDevice.startApp tests (#58538)" (#58618)
This reverts commit 27186c784f.
2020-06-03 11:26:29 -07:00
Jenn Magder
27186c784f
Don't elapse real time during IOSDevice.startApp tests (#58538) 2020-06-03 09:33:02 -07:00
Jonah Williams
01b9bf8ea6
[flutter_tools] deprecate flutter generate and codegen (#58328) 2020-06-03 09:28:02 -07:00
Jenn Magder
2ece1c3a17
Revert "Build iOS apps using Swift Packages (#58522)" (#58549)
This reverts commit 2054f37aaf.
2020-06-02 19:00:12 -07:00
Jenn Magder
2054f37aaf
Build iOS apps using Swift Packages (#58522) 2020-06-02 17:57:11 -07:00
Jonah Williams
37a86c483c
Revert "[flutter_tools] Put a heap size limit on the frontend_server" (#58525)
* Revert "[flutter_tools] Put a heap size limit on the frontend_server (#58039)"
2020-06-02 17:52:20 -07:00
Jonah Williams
6135091de9
Revert "[flutter_tools] only copy cached dill after startup (#58188)" (#58454)
This reverts commit 39d1e4b7e9.
2020-06-01 17:17:03 -07:00
Jonah Williams
39d1e4b7e9
[flutter_tools] only copy cached dill after startup (#58188)
Remove copying from the shutdown stage since that seems risky. If the tool copies the first compilation there will still be a decent dill for initialization.
2020-06-01 16:31:27 -07:00
Jonah Williams
4845df906a
[flutter_tools] do not include material icon incorrectly (#58335)
If a dependency specified uses-material-design: true and the main pubspec specifies uses-material-design: false, then the MaterialIcons font would be included in the font manifest, but not in the AssetManifest or final bundle. Remove it from the FontManifest if this occurs
2020-06-01 16:30:43 -07:00
Jonah Williams
584e4f2534
[flutter_tools] cleanup to devfs Operations (#58332)
removes globals from devFS operations and cleans up testing to be context free. Removes unused and unnecessarily temp directory in testing.
2020-06-01 15:28:38 -07:00
Jenn Magder
f4d26a3b85
Change iOS device discovery from polling to long-running observation (#58137) 2020-06-01 12:33:01 -07:00
stuartmorgan
a3b9e20a6b
Fix non-local-engine Linux release builds (#58372) 2020-06-01 11:03:02 -07:00
Jenn Magder
b0c98b6651
Detect USB/network interface from iOS devices (#58257) 2020-05-29 15:50:23 -07:00
Jonah Williams
6d8ec35014
Revert "Revert "[flutter_tools] always initialize the resident runner from di…" (#58208) 2020-05-29 15:43:03 -07:00
Marcus Tomlinson
5ee5490a63
[flutter_tools] Support profile and release builds on Linux (#57135) 2020-05-29 15:38:02 -07:00
Jonah Williams
d9144bf8fc
[flutter_tools] rename output LICENSE file to NOTICES and support loading either (#57871)
Work towards #16723

This is only safe to land after #58131 lands in google3. Only build NOTICES in asset manfiest, and load either LICENSE or NOTICES from pubspec dependencies.
2020-05-29 11:55:02 -07:00
Jonah Williams
a1636b6fef
Revert "[flutter_tools] always initialize the resident runner from dill (#52497)" (#58193) 2020-05-28 16:28:02 -07:00
stuartmorgan
9989c54cb1
Add release and profile support for Windows (#57749)
Builds and bundles an 'app.so' containing AOT data, and downloads and packages the release/profile artifacts for those builds, rather than always using the debug artifacts.

Fixes https://github.com/flutter/flutter/issues/38477
Fixes https://github.com/flutter/flutter/issues/39664
2020-05-28 12:17:56 -07:00
Jonah Williams
7cdf26d0dc
[flutter_tools] forward flutter format to dart format and deprecate (#57829) 2020-05-28 11:28:08 -07:00
Greg Spencer
379e11b641
Update the flutter script's locking mechanism and follow_links (#57590)
Update the flutter and dart scripts' locking mechanism and follow_links function to be more robust and support more platforms.

This adds support for using mkdir as a fallback if the system doesn't have flock instead of using shlock, since shlock doesn't work on shared filesystems.

It also fixes a problem in the follow_links function where it failed when the link resolved to the root directory.
2020-05-27 15:30:46 -07:00
Jonah Williams
8443f7cfd3
Revert "[flutter_tools] write test to convince self of lack of timing issue (#58011)" (#58123)
This reverts commit f77c669d68.
2020-05-27 14:16:12 -07:00
Jonah Williams
f77c669d68
[flutter_tools] write test to convince self of lack of timing issue (#58011)
In #55864 a race condition was described where a done event is received before we finish connecting. This cannot happen, since async functions begin synchronously and the flag isWaitingForVm is tripped immediately, keeping onDone from exiting.
2020-05-27 12:47:30 -07:00
Zachary Anderson
29736f6fea
[flutter_tools] Put a heap size limit on the frontend_server (#58039) 2020-05-27 10:12:24 -07:00
Jonah Williams
8432204194
[flutter_tools] throw if asked to build release for x86_64 (#57874) 2020-05-27 10:11:15 -07:00
Jonah Williams
a926715dac
[flutter_tools] URI encode dart-define values (#57873) 2020-05-27 10:11:04 -07:00
Jonah Williams
ba847d54f0
[flutter_tools] validate android arch and build number (#57830) 2020-05-27 10:10:51 -07:00
Jonah Williams
600338286f
[flutter_tools] add vm service method to pull SkSL (#57813) 2020-05-27 10:10:41 -07:00
Jonah Williams
f640ad6914
[flutter_tools] ensure emulator command does not crash with missing avdmanager (#57703) 2020-05-27 10:10:30 -07:00
Jonah Williams
ffc56ff735
[flutter_tools] hide all development tools (#57690) 2020-05-27 10:10:19 -07:00
Neevash Ramdial
428ce0815b
[flutter_tools] Support latest IntelliJ via Jetbrain toolbox (#57963) 2020-05-27 10:07:28 -07:00
James D. Lin
c6f7792311
[flutter tools] Improve messages when we fail to connect to the Observatory (#57355) 2020-05-21 17:47:02 -07:00
Jonah Williams
359daf4f73
[flutter_tools] reland: remove globals from android device/testing (#57614) 2020-05-20 13:21:22 -07:00
Jenn Magder
adead099a6
Always show diagnostics (#57532) 2020-05-19 18:17:03 -07:00
Jonah Williams
5e33ecee46
Revert "[flutter_tools] remove globals/context for android testing (#57445)" (#57611)
This reverts commit 602d8baf34.
2020-05-19 13:06:14 -07:00
Jonah Williams
602d8baf34
[flutter_tools] remove globals/context for android testing (#57445) 2020-05-19 12:37:07 -07:00
Jonah Williams
d0d9da832b
[flutter_tools] prevent wildcard assets from causing build invalidation issues (#56472) 2020-05-19 12:37:04 -07:00
Jonah Williams
91ec439348
[flutter_tools] handle missing null check in manifest parser (#57400) 2020-05-18 12:47:29 -07:00
Jonah Williams
70b889a9a3
[flutter_tools] reland: integrate l10n tool into hot reload/restart/build (#57510)
Reland: #56167
2020-05-18 12:47:18 -07:00
Jonah Williams
27a6705aa4
[flutter_tools] chunk the hashing of large files (#57506)
For files larger than 250 KB (roughly the size of framework.dart), chunk the conversion. This may be important for large assets like images.
2020-05-18 12:45:20 -07:00
Jonah Williams
49ad67ccf0
[flutter_tools] minor cleanups to try catch (#57446)
- OsError now implements exception, remove workaround.
- Prefer is check to catching TypeError
2020-05-18 09:38:22 -07:00
stuartmorgan
30d405c794
Temporarily allow pluginClass: none on desktop (#57498)
Treats 'pluginClass: none' as equivalent to having no 'pluginClass'
entry on the desktop platforms, to satisy stable channel plugin
validation of Dart-only desktop plugin implementations. See
issue for full details.

Part of https://github.com/flutter/flutter/issues/57497
2020-05-18 09:26:37 -07:00
stuartmorgan
25e9d0494b
Add Linux GTK artifacts to unpack list (#57452)
To simplify development of the in-progress GTK embedding, which will
replace the GLFW embedding on Linux, add the GTK artifacts to the unpack
list. This means that until the transition, both the GLFW and GTK
artifacts will be unpacked.

Part of #54860
2020-05-18 09:26:07 -07:00
stuartmorgan
f991308e3e
Fix CMake invocation for 3.10 compat (#57415)
The -S/-B format of specifying source and build directories wasn't added
until 3.13. For 3.10 compatibility, use the older form of having the
working directory as the build directory, and the last argument as the
source directory.

Fixes #57409
2020-05-18 09:25:28 -07:00
Jonah Williams
b19b744bb7
[flutter_tools] check for Runner.sln when parsing for plugins (#57392)
Throw a toolExit if the windows plugin logic runs on an invalid windows project. Update the supported project check to validate the existence of a Runner.sln file
2020-05-18 09:24:51 -07:00
stuartmorgan
8abf0a6d8c
Switch to CMake for Linux desktop (#57238)
Updates the Linux templates to use CMake+ninja, rather than Make, and updates the tooling to generate CMake support files rather than Make support files, and to drive the build using cmake and ninja.

Also updates doctor to check for cmake and ninja in place of make.

Note: While we could use CMake+Make rather than CMake+ninja, in testing ninja handled the tool_backend.sh call much better, calling it only once rather than once per dependent target. While it does add another dependency that people are less likely to already have, it's widely available in package managers, as well as being available as a direct download. Longer term, we could potentially switch from ninja to Make if it's an issue.

Fixes #52751
2020-05-16 15:07:34 -07:00
Jonah Williams
afdc440840
[flutter_tools] surface missing assets originating package (#55701) 2020-05-16 14:52:04 -07:00
Zachary Anderson
533cd7a6d1
[flutter_tools] Delete system temp entries on fatal signals (#55513) 2020-05-14 14:27:02 -07:00
Jonah Williams
bd47262183
[flutter_tools] fix period in URL for androidX incompat (#57182) 2020-05-14 12:32:03 -07:00
Jonah Williams
a801496701
[flutter_tools] allow adb to fail to unforward without crashing (#57173) 2020-05-14 12:27:01 -07:00
Jonah Williams
1000ae802d
[flutter_tools] ensure package_config is re-created if pub get is run (#57184) 2020-05-14 11:22:07 -07:00
Jonah Williams
a2cf9ecc46
[flutter_tools] expose track-widget-creation to build aar (#57117) 2020-05-14 11:17:06 -07:00
Jonah Williams
8a77381e58
[flutter_tools] do not set timestamp of package_config file (#57077) 2020-05-14 11:12:08 -07:00
Christopher Fujino
a2f5364dc0
throw more specific toolexit when git fails during upgrade (#57162) 2020-05-14 11:03:07 -07:00
Jenn Magder
bd430081e0
Make initial daemon devices population fast (#56959) 2020-05-14 11:00:51 -07:00
Jenn Magder
1eaa8c300c
Swap xcode_tests from MockProcessManager to FakeProcessManager (#56502) 2020-05-13 09:17:03 -07:00
Jonah Williams
9e9524977e
[flutter_tools] introduce a BuildSystem interface (#56946) 2020-05-13 09:12:08 -07:00
Anna Gringauze
e88ef6d554
Updated dwds (and other packages) (#56958) 2020-05-13 09:07:09 -07:00
Jonah Williams
7f400af35a
[flutter_tools] expand Regexp log match to include more AndroidRuntime failures (#56943) 2020-05-12 07:35:02 -07:00
Nate Bosch
59a8ef3a21
Remove direct uses of LocalPlatform (#56605)
When `const LocalPlatform` is used immediately and not passed as a
dependency it does not have utility over the static properties from
`dart:io`. Remove these uses to reduce the noise around how the
instantiable `Platform` class is used.
2020-05-11 12:59:29 -07:00
Jenn Magder
4ecb1bbe2d
Add mirror overrides to doctor output (#56928) 2020-05-11 11:57:02 -07:00
Jenn Magder
9c87b32477
Remove Runner target check, prefer schemes (#56620) 2020-05-11 11:56:44 -07:00
Luke Cheng
793e6a48a1
typo fix on the FLUTTER_STORAGE_BASE_URL usage (#56685) 2020-05-09 21:14:01 -07:00
Jonah Williams
d70d0913b2
Revert "[flutter_tools] integrate l10n tool into build/run (#56167)" (#56800)
This reverts commit f865ac7e25.
2020-05-09 17:50:46 -07:00
Zachary Anderson
04fe25e63e
[flutter_tools] Don't try to execute gradle wrapper out of /tmp (#56706) 2020-05-08 14:00:28 -07:00
Jonah Williams
f865ac7e25
[flutter_tools] integrate l10n tool into build/run (#56167)
* [flutter_tools] integration l10n tool

* add runtime skip to build system

* Update build_system.dart

* add links to issues, comments

* Update packages/flutter_tools/test/general.shard/build_system/build_system_test.dart

Co-authored-by: Shi-Hao Hong <shihaohong@google.com>

* Update packages/flutter_tools/lib/src/build_system/targets/localizations.dart

Co-authored-by: Shi-Hao Hong <shihaohong@google.com>

* Update localizations.dart

* switch to gen_l10n localizations

* fix tests

Co-authored-by: Shi-Hao Hong <shihaohong@google.com>
2020-05-08 12:06:15 -07:00
Jenn Magder
0dc7be3bb0
Always remove the workspace settings (#56703) 2020-05-08 12:05:52 -07:00
Jonah Williams
2304838a98
[flutter_tools] fix aar defaults test (#56694) 2020-05-08 10:04:04 -07:00
Jonah Williams
c57092511a
[flutter_tools] rename to .sksl.json (#56634) 2020-05-08 09:44:03 -07:00
Jonah Williams
717f9de662
[flutter_tools] enable tree-shake-icons by default for non-web targets (#56633)
Enable tree-shake-icons by default for non-web targets. Make missing fonts a status print
2020-05-08 09:42:43 -07:00
Bogdan Lukin
80a14af582
[flutter_tools] ensure track-widget-creation can be changed on devcompiler (#56564)
Workaround for cached web builds with --[no-]track-widget-creation flags.
Similar PR: #23299
2020-05-07 18:58:43 -07:00
Jenn Magder
0a4f6cdef0
Add split-debug and obfuscation to build aar (#56342) 2020-05-07 18:14:02 -07:00
Jonah Williams
2d26cbb2bf
[flutter_tools] reduce initial cache size on web (#56103) 2020-05-07 17:59:02 -07:00
Jenn Magder
4be791994f
Swap xcodeproj_tests from MockProcessManager to FakeProcessManager (#56505) 2020-05-07 15:18:27 -07:00
xster
f6b47a5f35
let the embedding maven engine dependency reference the storage proxy (#56164) 2020-05-07 11:36:02 -07:00
Jonah Williams
9bfe50cb81
[flutter_tools] fix windows vscode lookup (#56491) 2020-05-06 16:51:01 -07:00
Zachary Anderson
6f0ed5e142
[flutter_tools] Restore base/platform.dart (#56410) 2020-05-06 08:15:39 -07:00
Jonah Williams
0ecc7a4bee
[flutter_tools] support multiple fuchsia devices (#55780)
Fixes #55765

We are currently only returning the first device from dev-finder, instead we need to look at the whole list.
2020-05-05 13:40:38 -07:00
Jonah Williams
9b7b9d795e
[flutter_tools] reland remove flutter view cache (#56387)
Fixes #56194

Remove caching of FlutterView and poll forever if the list of flutter views is empty. Added test for missing release mode logic.
2020-05-05 12:09:51 -07:00
Jonah Williams
d98d3a973f
Revert "[flutter_tools] remove flutter view cache (#56223)" (#56385)
This reverts commit 209bdcb669.
2020-05-05 11:15:33 -07:00
Jonah Williams
209bdcb669
[flutter_tools] remove flutter view cache (#56223)
Remove caching of FlutterView. Perhaps the FlutterView RPC might return an empty list if the VM is not quite up yet? We had some old logic to poll the flutter views RPC for up to 200ms. That doesn't seem like a great approach, so instead we could forgo it entirely and trust that either the views come up before the developer tries to interact, or we crash.
2020-05-05 10:47:01 -07:00
Siva
a48a51b0ff
Trial PR to use an engine that has the null safety unfork CL in it. (#56309)
* Trial PR to use an engine that has the null safety unfork CL in it.

* Fix mack specification for test.
2020-05-05 09:54:21 -07:00
Jenn Magder
415401102c
Gradle artifacts and tasks tests without context (#56335) 2020-05-04 18:38:14 -07:00
Jenn Magder
06fcf5146b
Inject logger and fs into printHowToConsumeAar, test without context (#56331) 2020-05-04 18:38:00 -07:00
Jenn Magder
90233746b7
BuildInfo tests without context (#56329) 2020-05-04 18:37:44 -07:00
Jenn Magder
c587d73ec6
Use androidSdk globals variable everywhere (#56330) 2020-05-04 17:48:10 -07:00
Devon Carew
3f9ede1311
fix the reload and restart service extension methods (#56240) 2020-05-04 11:34:02 -07:00
Jonah Williams
6d1966efcc
[flutter_tools] make gallery hot reload 5x faster with one neat trick (#56224) 2020-05-04 11:32:30 -07:00
Jenn Magder
c8c55b4098
Check Xcode build setting FULL_PRODUCT_NAME for bundle name (#55799) 2020-05-04 11:31:08 -07:00
Peter Lauri
f6db8ccd20
[flutter_tools] fix version tag v stripping and support old "dev" and new "pre" tags (#55602) 2020-05-04 11:24:03 -07:00
Jonah Williams
ec93c51eaf
[flutter_tools] add support for faster incremental build (#56067)
Introduce BuildSystem.buildIncremental, which keeps an in-memory cache of timestamps instead of file hashes. This will be used to implement localization generation through the same build system API.
2020-05-01 17:30:26 -07:00
Jonah Williams
2a5690f097
[flutter_tools] fix iOS build inconsistencies and pipe through performance file (#56094)
Ensure iOS and android builds can be correctly cached. Use the performance-measurement-file to verify that all targets were skipped on the second invocation. This is only run on the flutter_gallery build.
2020-05-01 15:34:28 -07:00
Jonah Williams
ac2dfcf338
[version] update all versions (#56141) 2020-05-01 15:14:36 -07:00
Jonah Williams
d6cbf2591a
[flutter_tools] don't recreate license, manifest, asset if unchanged (#56107)
Avoid syncing unchanged versions of these files during hot restart/reload. This happens if the asset bundle needs to be built but produces identical manifests/licenses due to only asset contents changing
2020-05-01 12:03:31 -07:00
Jonah Williams
368da5bb59
[flutter_tools] support bundling SkSL shaders in flutter build apk/appbundle (#56059)
Support bundling SkSL shaders into an android APK or appbundle via the --bundle-sksl-path command line options. If provided, these are validated for platform engine revision and then placed in flutter_assets/io.flutter.shaders.json
2020-04-30 13:39:08 -07:00
Jonah Williams
bd6ccb606a
[flutter_tools] android device stopApp handles null apk (#55990)
The resident runner does not check if the ApplicationPackage is null when trying to stop the app. Update AndroidDevice.stopApp to handle this case by returning false.

The package will be null when flutter attach is used.
2020-04-29 16:31:42 -07:00
Jonah Williams
0889e14361
[flutter_tools] increase stopApp timeout for FlutterDevice.exitApps (#55984) 2020-04-29 15:08:34 -07:00
Jonah Williams
a58d50deb1
[flutter_tools] allow pulling performance data from assemble (#55699) 2020-04-29 13:04:59 -07:00
Jenn Magder
46a5c550db
Add iOS simulator log parse test (#55808) 2020-04-29 13:02:39 -07:00
Jonah Williams
534b0608ce
[flutter_tools] remove vm service (#55794)
Finishes the gradual vm service migration by deleting the flutter tooling's vm_service
2020-04-29 11:52:46 -07:00
Jonah Williams
c55b32204e
[flutter_tools] fix performance of tree-shake-icons (#55417)
Fixes the performance issue with tree-shake-icons and filters to ttf mime type. Does not change default or error behavior.
2020-04-29 11:43:47 -07:00
Jonah Williams
72397fd448
[flutter_tools] Lazily inject logger into web devices (#55961)
Constructing the WebDevices with the global logger too early will lead to them grabbing the StdoutLogger when running in daemon mode. This prevents IDEs from seeing the correct debug message.
2020-04-29 11:35:40 -07:00
michaellee8
9d770c1091
[flutter_tools] fix pm serve ipv6 linklocal addr issue (#55664) 2020-04-29 09:29:02 -07:00
Katarina Sheremet
3b067049ad
Support tags in testWidgets (#55141) 2020-04-28 15:49:01 -07:00
Jonah Williams
7b1d24216e
[flutter_tools] Make packages not required for local engine (#55882) 2020-04-28 14:53:53 -07:00
kwkr
1ac09088c3
Fix/use contains ignoring whitespace (#55887) 2020-04-28 13:12:12 -07:00
James D. Lin
b7fd24a7dc
[flutter tools] Move _informUserOfCrash into crash_reporting.dart (#55614) 2020-04-28 10:34:03 -07:00
Jonah Williams
ffcf1db3ca
[flutter_tools] reland migrate FlutterViews to package:vm_service (#55797)
Move FlutterView and related RPCs to the package:vm_service implementation. Update some getIsolate calls with catchError to match previous behavior.

- Updates tests that were previously mocking FlutterViews to use real views
- Moves the FlutterView cache from VM to FlutterDevice
- Catch SentinelException during Isolate.kill
2020-04-27 17:41:42 -07:00
Jenn Magder
958ab9336f
Revert "[flutter_tools] reland migrate FlutterView to new vmservice (#55774)" (#55788)
This reverts commit a18e6361cf.
2020-04-27 16:19:25 -07:00
Jonah Williams
a18e6361cf
[flutter_tools] reland migrate FlutterView to new vmservice (#55774) 2020-04-27 15:54:59 -07:00
Jenn Magder
d40699a3b8
Remove v prefix in doctor version (#55773) 2020-04-27 15:48:22 -07:00
Emmanuel Garcia
e524a303a4
Print stdout and stderr when the ssh command failed (#55762) 2020-04-27 15:44:01 -07:00
Christopher Fujino
069dc9c72d
[flutter_tools] catch ProcessException and throw ToolExit during upgrade (#55759) 2020-04-27 15:04:02 -07:00
Jonah Williams
2aa9016652
[flutter_tools] ensure etag headers are ascii (#55704) 2020-04-27 15:02:15 -07:00
michaellee8
34b8f830b8
[flutter_tools] add --dart-define option for fuchsia build (#55715) 2020-04-27 14:59:03 -07:00
Jonah Williams
1ab3878996
[flutter_tools] support --enable-experiment in flutter test (#55564)
Support --enable-experiment in flutter test (for flutter_tester). Required minor change for null safety.
2020-04-27 14:47:43 -07:00
Jonah Williams
07c451fea9
Revert "[flutter_tools] migrate FlutterView to new vm_service (#55341)" (#55772)
This reverts commit 2e50fd75eb.
2020-04-27 14:26:56 -07:00
Jonah Williams
2e50fd75eb
[flutter_tools] migrate FlutterView to new vm_service (#55341)
Move FlutterView and related RPCs to the package:vm_service implementation. Update some getIsolate calls with catchError to match previous behavior.

- Updates tests that were previously mocking FlutterViews to use real views
- Moves the FlutterView cache from VM to FlutterDevice
- Catch SentinelException during Isolate.kill
2020-04-27 14:16:28 -07:00
Jonah Williams
dd88b20435
[flutter_tools] quality pass on Linux build (#55556)
- Update the Linux build to support most of the build configuration, though like windows most only make sense for profile/release.
- Ensure VERBOSE_SCRIPT_LOGGING is set when the logger is verbose
- Automatically run pub get like other build commands
2020-04-25 19:02:03 -07:00
Jonah Williams
d72eea539e
[flutter_tools] precache and unpack updates for desktop release artifacts (#55510)
- Update windows precache to include placeholder profile/release artifacts
- Update Linux and windows unpack to account for the cpp_client_wrapper code to live separate from the engine binaries
- Cleanup testing in unpack_linux and remove test cases that are covered in build_system_test.dart
2020-04-25 14:27:55 -07:00
Jonah Williams
c5554cdf41
[flutter_tools] remove trailing eth info from fuchsia package server (#55617) 2020-04-24 21:35:23 -07:00
Christopher Fujino
4552af155c
[flutter_tools] enable flutter upgrade to support force pushed branches (#55594) 2020-04-24 17:55:16 -07:00
Jonah Williams
cf0fcd4536
[flutter_tools] detect ipv6 in fuchsia server url (#55605) 2020-04-24 17:03:04 -07:00
Jonah Williams
35edbe3d9d
Revert "[flutter_tools] fix version tag v stripping (#55385)" (#55577)
This reverts commit c91a3a74ec.
2020-04-24 09:38:49 -07:00
Peter Lauri
c91a3a74ec
[flutter_tools] fix version tag v stripping (#55385) 2020-04-24 09:11:54 -07:00
Jonah Williams
2f0d41b2a6
[flutter_tools] set test directory base as additional root, allow running without index.html (#55531) 2020-04-24 09:09:53 -07:00
Anna Gringauze
873b21ec04
fixed flutter pub get failure in tests (#55499) 2020-04-24 09:09:01 -07:00
Christopher Fujino
37ac9015ad
[flutter_tools] check first for stable tag, then dev tag (#55342) 2020-04-23 15:19:27 -07:00
Jonah Williams
543186f105
[flutter_tools] quality pass on windows build (#55436) 2020-04-23 12:29:48 -07:00
Jonah Williams
bb683c4cdb
[flutter_tools] fix package config invalidation (#55420) 2020-04-23 11:34:01 -07:00
Jonah Williams
8df0d68633
[flutter_tools] remove globals from pub (#55412) 2020-04-22 16:34:12 -07:00
Jonah Williams
27d11da88f
Revert "[flutter_tools] default tree-shake-icons to enabled and improve performance (#54923)" (#55413)
This reverts commit 0b93a9219b.
2020-04-22 15:43:09 -07:00
Jonah Williams
0b93a9219b
[flutter_tools] default tree-shake-icons to enabled and improve performance (#54923) 2020-04-22 13:17:46 -07:00
Jonah Williams
c8164dad80
[flutter_tools] migrate windows to assemble (#55187) 2020-04-22 12:26:49 -07:00
Jonah Williams
f2761b6b04
[flutter_tools] refactor Chrome launch logic to remove globals/statics (#55160) 2020-04-22 01:28:51 -07:00
James D. Lin
566c1d1124
flutter_tools: Prefer using .of() over .from() when possible (#55250)
Prefer using `.of()` (which is statically type-checked) over
`.from()` (which is dynamically type-checked) when possible.
2020-04-21 22:09:50 -07:00
Jonah Williams
0b3f5cfcc0
[flutter_tools] initial support for enable experiment, run, apk, ios, macos (#54617) 2020-04-21 20:39:36 -07:00
Jonah Williams
d46da3ae11
[flutter_tools] remove PackageMap and finish PackageConfig migration (#55244) 2020-04-21 19:55:15 -07:00
Katarina Sheremet
d8f353af5b
Support tags when running tests from command line (#55152) 2020-04-21 10:35:13 -07:00
Jenn Magder
8109dcc2b4
CrashReportSender dependency injection (#54924) 2020-04-20 15:23:09 -07:00
Jonah Williams
9202e54704
[flutter_tools] move service extensions off of deprecated vm service (#55012) 2020-04-20 15:15:54 -07:00
Jonah Williams
b7e30cfc26
[flutter_tools] update compilation to use package config (#54467) 2020-04-20 14:02:49 -07:00
Jonah Williams
6a390aa7dc
[flutter_tools] fix type error in symbolize (#55212) 2020-04-20 12:21:44 -07:00
Jonah Williams
9e72bf565e
[flutter_tools] don't compute hashes of well known artifacts (#53848) 2020-04-20 12:21:20 -07:00
kwkr
d21ab5184a
Fix/set mocks defaults (#54756) 2020-04-20 12:20:03 -07:00
Devon Carew
f050ee67e6
prettify the flutter web bootstrap file (#55125) 2020-04-20 08:24:50 -07:00
Jenn Magder
fc76fc2a96
Move GitHubTemplateCreator into reporting library (#55002) 2020-04-17 10:47:12 -07:00
Anna Gringauze
bc1c1b2ff8
Add flag to enable expression evaluation for web (#55003)
* Add flag to enable expression evaluation for web

Added flag --web-enable-expression-evaluation to flutter run commmand
that enables expression evaluation from IDEs for web target. Disabled
by default.

Helps https://github.com/flutter/flutter/issues/54520

* Update packages/flutter_tools/lib/src/build_runner/resident_web_runner.dart

Co-Authored-By: Jonah Williams <jonahwilliams@google.com>

Co-authored-by: Jonah Williams <jonahwilliams@google.com>
2020-04-17 10:42:02 -07:00
Anna Gringauze
b69b2a8c9e
Convert expression evaluation exceptions to errors (#54916) 2020-04-17 10:40:02 -07:00
Zachary Anderson
bec63a54bf
[flutter_tools] Provide global options with subcommand help text (#54884) 2020-04-17 08:54:48 -07:00
Jonah Williams
4ee618bb72
[flutter_tools] don't elapse real time during fallback test (#54717) 2020-04-16 15:49:08 -07:00
Jonah Williams
e6abda7f00
[flutter_tools] remove Isolate implementations of vm_service methods (#54920) 2020-04-16 15:48:21 -07:00
Jenn Magder
66d77ca048
Support armv7s architecture (#54989) 2020-04-16 15:18:33 -07:00
Jonah Williams
e092dcfa22
[flutter_tools] Reland: fix multiple dart defines (#54973) 2020-04-16 10:56:49 -07:00
Jonah Williams
11ab2fa35c
Revert "[flutter_tools] fix multiple defines in flutter tooling, web (#54909)" (#54967)
This reverts commit b8bd09db21.
2020-04-16 08:33:16 -07:00
Jonah Williams
b8bd09db21
[flutter_tools] fix multiple defines in flutter tooling, web (#54909) 2020-04-15 22:25:32 -07:00
Jonah Williams
ac20b614c5
[flutter_tools] ensure EventPrinter handles a null parent (#54918) 2020-04-15 20:10:16 -07:00
Jenn Magder
457972b757
Move doctor into globals (#54912)
* Move doctor into globals

* Fix tests
2020-04-15 19:44:42 -07:00
tauu
56b7c93584
[flutter_tools] fix build for projects with watchOS companion app (#51126)
Co-authored-by: Georg Wechslberger <wechslbe@ma.tum.de>
2020-04-15 12:13:06 -07:00
Jonah Williams
c141a53f9a
[flutter_tools] support any as a special web-hostname (#54715) 2020-04-15 10:55:01 -07:00
Jonah Williams
b6262e7c1c
[flutter_tools] remove runFromSource, move runInView to vm_service extension (#54700) 2020-04-15 10:35:01 -07:00
Jonah Williams
159710ecc5
[flutter_tools] fix response format of flutterVersion, flutterMemoryInfo (#54786) 2020-04-14 15:37:49 -07:00
Jenn Magder
a6b39a230f
Migrate Runner project base configuration (#54691) 2020-04-14 13:01:54 -07:00
Jenn Magder
ddf63a8b05
Remove Finder extended attributes from iOS project files (#54488) 2020-04-14 11:07:51 -07:00
Zachary Anderson
57dd045cef
[flutter_tools] Handle empty gzip file on Windows (#54679)
* [flutter_tools] Handle empty gzip file on Windows

* Update packages/flutter_tools/test/general.shard/base/os_test.dart

Co-Authored-By: Jonah Williams <jonahwilliams@google.com>

* Update packages/flutter_tools/test/general.shard/base/os_test.dart

Co-Authored-By: Jonah Williams <jonahwilliams@google.com>

* Update packages/flutter_tools/test/general.shard/base/os_test.dart

Co-Authored-By: Jonah Williams <jonahwilliams@google.com>

Co-authored-by: Jonah Williams <jonahwilliams@google.com>
2020-04-14 09:42:26 -07:00
Jonah Williams
9cc69d47a5
[flutter_tools] support machine and coverage together but for real (#54692) 2020-04-13 19:00:02 -07:00
Jonah Williams
8ed40ddd4b
[flutter_tools] refactor FlutterManifest to be context-free (#54555) 2020-04-13 18:55:01 -07:00
Jonah Williams
723bc76847
[flutter_tools] update coverage collector to use vmservice api (#54682) 2020-04-13 16:10:02 -07:00
Jonah Williams
ee43de0476
[flutter_tools] support enable-experiment in flutter analyze (#54613) 2020-04-13 16:00:03 -07:00
Jonah Williams
9cb9bfbd7c
[flutter_tools] use new output location for the apk (#54328) 2020-04-13 15:55:02 -07:00
Emmanuel Garcia
54dba4cd59
Don't import plugins that don't support android in settings.gradle (#54407) 2020-04-12 08:55:03 -07:00
Herbert Poul
3441743c5c
[macos] build: add build-number and buid-name arguments (#53928) 2020-04-11 13:20:01 -07:00
Christopher Fujino
03c566768b
[flutter_tools] Remove fromPlatform from tests (#54152) 2020-04-10 16:51:28 -07:00
Christopher Fujino
2adb1fc095
Fix environment leakage in doctor_test (#54478) 2020-04-10 13:35:38 -07:00
Jonah Williams
d081364d3c
[flutter_tools] remove indirection around App.framework production (#53853) 2020-04-10 13:34:45 -07:00
Jonah Williams
0700be79e5
[flutter_tools] disable cache in devices test (#54389) 2020-04-10 10:33:23 -07:00
Jonah Williams
5adfd38dde
[flutter_tools] Move service methods to VmService extension methods (#54337) 2020-04-10 10:33:07 -07:00
Shi-Hao Hong
c16c3b0443
[gen_l10n] Expand integration tests (#54314) 2020-04-10 10:25:03 -07:00
Jenn Magder
df63c82c9c
Convert iOS simulator log reader to simctl, use unified logging filters (#54154) 2020-04-09 14:35:01 -07:00
Kirill Pertsev
d6806392a8
Implements --machine flag for devices command (#50581) 2020-04-09 09:14:16 -07:00
Jonah Williams
74a1b9b33e
[flutter_tools] make verbose macOS builds actually verbose (#54320) 2020-04-09 09:00:44 -07:00
Per Classon
4451ffca23
Add option for deferred loading to gen_l10n (#53824) 2020-04-09 03:57:01 -07:00
Jonah Williams
cb8bafb38d
[flutter_tools] surgically remove outputs from shared directory (#53962) 2020-04-08 19:09:59 -07:00
Shi-Hao Hong
5d63637e43
[gen_l10n] Fallback feature for untranslated messages (#53374)
* Generate methods using template resources if they do not exist in other locales

* Added a flag to either output of messages that have not been translated with detail into a file, or display a summary on the terminal.

* Add integration test for fallback message usage
2020-04-08 18:55:50 -07:00
Jonah Williams
412e4dd50e
[flutter_tools] migrate devfs web to package_config (#54299) 2020-04-08 14:41:11 -07:00
Christopher Fujino
19c8948e61
Fix frameworkVersionFor for flutter doctor and usage (#54217) 2020-04-08 12:47:05 -07:00
Jonah Williams
4851888864
[flutter_tools] Migrate to package:vm_service 4: trigonometric boogaloo (#54132) 2020-04-08 12:33:33 -07:00
Zachary Anderson
090fc5cc53
[flutter_tools] Use gzip level 1 for devfs transfer compression (#54123) 2020-04-08 09:07:02 -07:00
Jonah Williams
fa35698ee3
[flutter_tools] allow passing non-config inputs (#54228) 2020-04-08 09:04:32 -07:00
Danny Tuppeny
589b14d841
Add a switch to use WebSockets for web debug proxy (#54083) 2020-04-08 09:02:03 -07:00
Jonah Williams
981afe39ae
[flutter_tools] ensure build fails if asset files are missing (#54233)
Ensure build fails if asset files are missing and that stderr messages are forwarded through Gradle
2020-04-07 19:42:57 -07:00
Jason Simmons
c663cd55a7
[flutter_tools] Refresh VM state before executing hot reload (#53960) 2020-04-07 15:41:02 -07:00
Per Classon
e8d2907595
[gen_l10n] Handle single, double quotes, and dollar signs in strings (#54185) 2020-04-07 12:21:02 -07:00
Jonah Williams
08fe78fff9
[flutter_tools] write SkSL file to local file (#53859) 2020-04-07 12:17:39 -07:00
Jonah Williams
98e43bc6ae
[flutter_tools] ensure the tool can find SDK manager on windows (#54133) 2020-04-06 13:41:14 -07:00
Alexandre Ardhuin
f5a9902577
enable avoid_equals_and_hash_code_on_mutable_classes (#52507) 2020-04-06 13:36:01 -07:00
Jonah Williams
4037e5069e
[flutter_tools] update asset manifest to use package_config instead of package_map (#53944) 2020-04-06 11:25:05 -07:00
Jenn Magder
602475e56f
Sanitize error message sent to GitHub crash reporter (#53936) 2020-04-06 11:00:22 -07:00
Jonah Williams
61b3361781
Revert "[flutter_tools] Migrate to vm service 3 (reland): electric boogaloo (#53957)" (#54114)
This reverts commit d6b09626f2.
2020-04-06 10:36:14 -07:00
Jonah Williams
d6b09626f2
[flutter_tools] Migrate to vm service 3 (reland): electric boogaloo (#53957) 2020-04-06 10:18:41 -07:00
Jonah Williams
f9c58bea49
[flutter_tools] also listen to web stderr stream (#53949) 2020-04-04 21:31:55 -07:00
Zachary Anderson
fef9d4d7cd
[flutter_tools] Launch DevTools with 'v' (#53902) 2020-04-04 19:51:01 -07:00
Shi-Hao Hong
4e811d2819
[gen_l10n] Fix plural parsing for translated messages (#53954) 2020-04-03 15:46:01 -07:00
Jonah Williams
58acf4e7b0
Revert "[flutter_tools] surgically remove outputs from shared directory (#53773)" (#53956)
This reverts commit 8a3bede1d3.
2020-04-03 14:22:37 -07:00