Commit graph

1835 commits

Author SHA1 Message Date
Jonah Williams 2dbf0106d8
Create dart tool directory if it is missing (#39543) 2019-08-29 21:31:57 -07:00
Dan Field eefe9d9527
keep symbols for profile (#39530) 2019-08-29 20:54:30 -07:00
Jonah Williams 359b532570
Remove run in shell and add unit test for chrome launching (#39462) 2019-08-29 19:35:06 -07:00
Dan Field 632526aab9
Update validation to support Xcode11 version (#39463) 2019-08-29 15:28:05 -07:00
Dan Field cb965495d7
Reland "Relax arguments around local engine, build hello_world with bitcode" (#39434) 2019-08-28 15:19:04 -07:00
Emmanuel Garcia 4a1c62c28b
Add missing files in the Gradle wrapper directory (#39145) 2019-08-28 14:52:08 -07:00
Jonah Williams f362419601
make sure profile is forwarded through build web command (#39414) 2019-08-28 14:05:01 -07:00
Jonah Williams 393106fbf5
Revert "Relax requirements around local engine, build hello_world with bitcode (#39357)" (#39431)
This reverts commit 202c1b4224.
2019-08-28 13:12:45 -07:00
Dan Field 202c1b4224
Relax requirements around local engine, build hello_world with bitcode (#39357) 2019-08-28 10:27:01 -07:00
Zachary Anderson b7c714e84c
[flutter_tool] Use a timeout for xcode showBuildSettings (#39280) 2019-08-28 10:03:53 -07:00
xster 4640690d0f
let flutter build aar use a local engine (#39312) 2019-08-27 23:46:33 -07:00
Jonah Williams 55a1ba761d
Use output dir instead of specific paths in assemble rules (#39274) 2019-08-27 22:52:51 -07:00
Jonah Williams 23637844a3
fix source map loading and service protocol for flutter web (#39189) 2019-08-27 19:06:48 -07:00
Emmanuel Garcia 5353d5e877
Fid app bundle in Gradle 3.5 (#39126) 2019-08-27 17:08:02 -07:00
Zachary Anderson 91ae1409b9
[flutter_tool] Create a temp snapshot to run create_test.dart tests (#39338) 2019-08-27 14:28:03 -07:00
Jonah Williams 6f71ce26d6
Place terminalUi flag on terminal interface (#39214) 2019-08-27 14:20:51 -07:00
stuartmorgan 7407695816
Add profile support on macOS (#39264)
Fix some places where Debug/Release was treated as a binary switch.

Makes similar changes to Windows and Linux to simplify adding profile
support to those platforms in the future. This means `--profile` builds
will fail on Linux and Windows for now, but that's fine since they
aren't actually supported, and unlike `--release` don't provide useful
functionality at the native code level.

Also fixes 'stopApp' always using Debug on macOS, to avoid showing an
error when running Profile (or Release).

Fixes #33203
2019-08-26 16:30:30 -07:00
Jonah Williams 0f8b8c91a3
Kill resident runner on browser disconnect. (#39066) 2019-08-26 15:06:36 -07:00
Zachary Anderson e9bd2ef087
[flutter_tool] Some additional input validation for 'version' (#39136) 2019-08-26 12:12:50 -07:00
Christopher Fujino d1e0273ecb
refactor cocoapods validator to detect broken install (#38560) 2019-08-23 09:21:09 -07:00
Jonah Williams b2d19d2af5
Add support for macOS release/profile mode (3 of 3) (#38909) 2019-08-23 08:46:24 -07:00
Michael Thomsen 01a5d112d5
Make forward calls run interactively (#39052) 2019-08-23 11:16:30 +02:00
Mehmet Fidanboylu d921098dd4
Break dependency of tools/lib/src from lib/src/commands/ (#39072) 2019-08-22 21:14:03 -07:00
Jonah Williams 9818d2df3b
Add web workflow to default validators (#39006) 2019-08-22 09:30:19 -07:00
Zachary Anderson 663dc1d774
[flutter_tool] Teach crash reporter about HttpException (#39005) 2019-08-22 09:18:25 -07:00
Jonah Williams 33e7af728a
Dont throw StateError when calling assemble with bad target (#39000) 2019-08-21 23:44:39 -07:00
Jenn Magder 892d62f03a
Clean Xcode workspace during flutter clean (#38992) 2019-08-21 18:42:56 -07:00
∂ω∂ 4277f364ff flutter_tools/version: git log.showSignature=false (#38576) 2019-08-21 13:55:57 -07:00
Zachary Anderson 36e8b93d1c
[flutter_tool] Only send one crash report per run (#38925) 2019-08-21 13:07:52 -07:00
Zachary Anderson 3ceef86b9a
[flutter_tool] Handle crashes from doctor validators (#38920) 2019-08-21 11:15:02 -07:00
stuartmorgan 01530928f0
Add build warning for non-debug desktop builds (#38932)
When building in profile or release mode on desktop, add a prominent
warning that it's actually a debug build. This is to help address issues
with people being unaware of the current state of builds due to
following third-party guides rather than official documentation.

macOS is not included since PRs are in flight for macOS release support.
2019-08-20 20:16:29 -07:00
Jonah Williams 3b4ab4eb30
Throw error when hot reload enters bad state (#38907) 2019-08-20 14:30:03 -07:00
Zachary Anderson 398ac1f6c8
[flutter_tool] Remove some async file io (#38654) 2019-08-20 13:15:08 -07:00
Zachary Anderson 28bedb10da
[flutter_tool] Move http request close under try-catch (#38894) 2019-08-20 12:53:59 -07:00
Jonah Williams 2504a416bb
Create correctly structured framework for macOS (#38748) 2019-08-20 10:49:15 -07:00
Jonah Williams 700020fc6b
per file caching (#38869) 2019-08-20 10:40:02 -07:00
stuartmorgan 2daab305aa
Use GLFW-name artifacts on Windows and Linux (#38858)
Switch from the un-suffixed Windows and Linux libraries to the
_glfw-suffixed versions, in preparation for having non-GLFW versions
using the previous library/wrapper names.

Part of #38589
2019-08-20 06:29:49 -07:00
Jonah Williams ae29174560
Handle compilation failures from web application (#38723) 2019-08-19 17:33:46 -07:00
Jonah Williams 7ed27b51a3
print service url when connecting to web applications (#38823) 2019-08-19 17:32:43 -07:00
Michael Thomsen 79d8967500
Fix publish cmd (#38490) 2019-08-19 08:02:13 +01:00
Todd Volkert c22ce95e15
Change from using defaults to plutil for Plist parsing (#38662)
We were using the `defaults` command-line utility to parse
Plist files, but it was never supported by Apple, and it
appears that in an upcoming OS release, it will be less likely
to work:

> WARNING: The defaults command will be changed in an upcoming
> major release to only operate on preferences domains. General
> plist manipulation utilities will be folded into a different
> command-line program.

Fixes https://github.com/flutter/flutter/issues/37701
2019-08-16 17:10:07 -07:00
Dan Field a3221667de
Kill dead code (#38652) 2019-08-16 10:10:23 -07:00
Todd Volkert 1d8deb1bb8
Handle case of a connected unpaired iOS device (#38629)
Fixes https://github.com/flutter/flutter/issues/36789
Fixes https://github.com/flutter/flutter/issues/37000

https://github.com/flutter/flutter/issues/36524
https://github.com/flutter/flutter/issues/24600
2019-08-15 17:59:37 -07:00
Jonah Williams 1df165ea13
Rename iOS arch for macOS release mode (macOS release mode 2 of 3) (#38645) 2019-08-15 17:38:35 -07:00
Jonah Williams 01feddbece
Support for macOS release mode (1 of 3) (#37425) 2019-08-15 16:36:45 -07:00
Zachary Anderson 0566971d29
[flutter_tool] Throw tool exit on malformed storage url override (#38637) 2019-08-15 14:59:46 -07:00
Zachary Anderson e24a27d374
[flutter_tool] Flip create language defaults to swift and kotlin (#38339) 2019-08-15 12:13:28 -07:00
Zachary Anderson a40ab895cf
[flutter_tool] Observatory connection error handling cleanup (#38353) 2019-08-15 12:13:03 -07:00
Alexander Aprelev f5dcbdab3a Increase pattern that matches operation duration. (#36392)
On Flutter HHH buildbot some operations that over a second: 4 digits for milliseconds, rather than 3 that are currently allowed.
2019-08-15 10:16:30 -07:00
Ingo Reinhart ed88d28d52 use common emulator/device list (#38296) 2019-08-15 10:13:18 -07:00
Jonah Williams 5ec039dd45
Don't reload if compilation has errors (#38586) 2019-08-15 09:08:19 -07:00
Dan Field 07f079a932
Improve bitcode check (#38587) 2019-08-14 23:30:26 -07:00
Jonah Williams 64add554d7
handle unexpected exit from frontend server (#38497) 2019-08-14 19:00:31 -07:00
Jonah Williams 388d69eb9b
Catch errors thrown into the Zone by json_rpc (#38486) 2019-08-14 13:10:41 -07:00
Zachary Anderson d220631eca
[flutter_tool] Fix bug in manifest yaml validation (#38472) 2019-08-14 07:57:30 -07:00
Christopher Fujino cd1e55b58a
refactor flutter upgrade to be 2 part, with the second part re-entrant (#38325) 2019-08-13 15:53:54 -07:00
David Shuckerow 9615eb99aa
Tests for flutter test [some_directory] (#36866)
* Add a test for a directory instead of a single test.

* Add test data to a child directory to test the command.

* Add test data to a child directory to test the command.

* Add test data to a child directory to test the command.

* Correct test.
2019-08-13 14:57:43 -07:00
Jonah Williams ca5411e3aa
Fix type error hidden by implicit downcasts (#38102) 2019-08-12 15:21:28 -07:00
Jonah Williams 2185825338
Catch FormatException caused by bad simctl output (#37958) 2019-08-10 00:57:23 -07:00
jmagman 0a58610ce7
Clean ephemeral directories (#37966) 2019-08-09 17:26:51 -07:00
Jonah Williams 77e15103da
Catch failure to create directory in cache (#37871) 2019-08-09 16:21:32 -07:00
David Martos 526339b63a Avoid killing Flutter tool process (#37471) (#37500) 2019-08-09 11:25:12 -07:00
Yegor 9bc298deb6
update dependencies; add a Web smoke test (#37816)
update dependencies; add a Web smoke test
2019-08-09 09:58:49 -07:00
Jonah Williams f98df595f3
Restructure resident web runner usage to avoid SDK users that don't support dwds (#37815) 2019-08-08 16:36:27 -07:00
jmagman 5ed3b418a1
Add COMPILER_INDEX_STORE_ENABLE=NO to macOS build and tests (#37806) 2019-08-07 18:02:06 -07:00
Jonah Williams 8e6205fe1d
Handle thrown maps and rejects from fe server (#37743) 2019-08-07 17:00:36 -07:00
Jason Simmons 4f302dc18c
Remove unused no-build flag from the flutter run command (#37735)
The use-application-binary flag can be used to run a previously built
app package.
2019-08-07 12:44:02 -07:00
Christopher Fujino 39a04dcd7f
Support macOS Catalina-style signing certificate names (#37733) 2019-08-07 09:18:11 -07:00
Jonah Williams fef69b2044
Partial macOS assemble revert (#37664) 2019-08-06 09:15:50 -07:00
Zachary Anderson 0bba472858
[flutter_tool] Remove unintended analytics screen send (#37514) 2019-08-06 09:08:43 -07:00
Jonah Williams caa56d6ac4
enable track widget creation on debug builds (#37512) 2019-08-05 22:07:35 -07:00
Jonah Williams a785db78fb
Reland "Integrate dwds into flutter tool for web support (#34252)" (#37649)" (#37650) 2019-08-05 16:51:57 -07:00
Jonah Williams 433436e1ee
Revert "Integrate dwds into flutter tool for web support (#34252)" (#37649) 2019-08-05 15:58:04 -07:00
Zachary Anderson 500d7c50df
[flutter_tool] Additional flutter manifest yaml validation (#37422) 2019-08-05 13:14:57 -07:00
Jonah Williams 4ccd81199f
Integrate dwds into flutter tool for web support (#34252) 2019-08-05 12:41:58 -07:00
Christopher Fujino 5fb2d2aeea
have xcodeSelectPath also catch ArgumentError (#37521) 2019-08-02 16:08:49 -07:00
Emmanuel Garcia 40c5cc9708
Find the app bundle when the flavor contains underscores (#37457) 2019-08-02 16:02:46 -07:00
Emmanuel Garcia 80ee3dd04c
Print message when HttpException is thrown after running flutter run (#37440) 2019-08-02 16:02:02 -07:00
stevemessick 93dd90fc1a
Add .android/Flutter/flutter.iml to module template. (#37405) 2019-08-01 15:47:00 -07:00
Majid Hajian 7244cbb9b2 add line-length to flutter format commandline (#36679) 2019-08-01 10:27:41 -07:00
Jonah Williams cf6613583d
only build macOS kernel in debug mode (#37365) 2019-08-01 09:23:40 -07:00
Zachary Anderson 2e183b6233
[flutter_tool] Include the local timezone in analytics timestamp (#37345) 2019-07-31 23:28:18 -07:00
Jonah Williams 602f76ca00
fix errors caught by roll of macOS assemble (#37351) 2019-07-31 21:14:40 -07:00
Jonah Williams 2ab469952b
Flutter assemble for macos take 2! (#36987) 2019-07-31 16:19:22 -07:00
Jenn Magder dd1fb3bcb7
Build number (part after +) is documented as optional, use entire app version if not present (#37036) 2019-07-31 16:18:09 -07:00
Zachary Anderson c7596da5a4
[flutter_tool] Re-try sending the first crash report (#37198) 2019-07-31 13:51:19 -07:00
Dan Field a8fbe02a9d hide symbols from spotlight (#37217) 2019-07-30 14:24:58 -07:00
Zachary Anderson d208ce2dff
[flutter_tool] Usage refactor cleanup (#37186) 2019-07-30 12:18:15 -07:00
Zachary Anderson a9aea962ab
[flutter_tool] Catch ProcessException from 'adb devices' (#37196) 2019-07-30 12:17:10 -07:00
Zachary Anderson 99d66f2709
[flutter_tool] Make a couple file operations synchronous (#37044) 2019-07-30 12:16:32 -07:00
Jenn Magder bd47a31e32
Vend Flutter module App.framework as a local CocoaPod pod to be installed by a host app (#36793) 2019-07-30 09:58:39 -07:00
Zachary Anderson a5d23d2a25
[flutter_tool] More gracefully handle Android sdkmanager failure (#37194) 2019-07-30 08:19:58 -07:00
Jonah Williams c9a5f94372
Include flutter_runner in precache artifacts. (#36318) 2019-07-29 16:13:47 -07:00
Zachary Anderson ef146f63bb
[flutter_tool] Clean up usage events and custom dimensions (#36785) 2019-07-29 07:24:02 -07:00
Jonah Williams 51d2d3511c
Expose functionality to compile dart to kernel for the VM (#36598) 2019-07-26 19:50:57 -07:00
Michael Klimushyn 30eec11e7d Roll back the AAR build experiment (#36966)
* Roll back the AAR build experiment

This has been breaking flutter/plugins CI for the past day.

* Remove integration tests that rely on the AAR flag
2019-07-25 20:54:10 -07:00
Jonah Williams 188093c912
Rearrange flutter assemble implementation (#36240) 2019-07-25 08:50:03 -07:00
Jonah Williams 76d058163b
Adjust phrasing of features (#36874)
* adjust phrasing of features

* word smithing

* more wordsmithing
2019-07-25 08:48:01 -07:00
Jonah Williams 16e484b179
Remove Chain terse parsing (#36860) 2019-07-25 08:47:39 -07:00
Siva c15cfdd6af
flutter/engine@ef99738...72341ed (#36885)
flutter/engine@72341ed03 Roll fuchsia/sdk/core/linux-amd64 from gQ3ztEQmdEh3iE6n9EO6iGRdmDSX-edmP5WyE-Ui4BEC to gTG1jp04GzBudVJqRxulXYOEQgbYTUQgnqLDYAq7z3sC (#10115)
flutter/engine@d66031f2a Roll src/third_party/dart 82f657d7cb..0c97c31b6e (7 commits) (#10114)
flutter/engine@f742514a5 Cache font family lookups that fail to obtain a font collection (#10109)
flutter/engine@7c177724c Roll fuchsia/sdk/core/mac-amd64 from A21rwGAUjpjVTX8HgpT9Iyx6J_QZBRDhu-5GAclrf00C to UCAnzi4k9pA30l_iZ2Ru51Tc3Ke6iacIdjFMgVUVdRMC (#10107)
flutter/engine@c3165da09 Roll src/third_party/skia fdf4bfe6d389..b3956dc6ba6a (1 commits) (#10101)
flutter/engine@71702b3f8 Roll fuchsia/sdk/core/linux-amd64 from gPDgr6u-BPJTgV2Nf0tlg9MTY3JwGW0cETtsQcx365AC to gQ3ztEQmdEh3iE6n9EO6iGRdmDSX-edmP5WyE-Ui4BEC (#10103)
flutter/engine@f393da22d [fuchsia] copy over the cmx file (#10087)
flutter/engine@8ebd15d26 Roll src/third_party/skia f564f1515bde..fdf4bfe6d389 (1 commits) (#10100)
flutter/engine@f529a251b Roll fuchsia/sdk/core/mac-amd64 from lvLKs8Q4CKm_XLoZCQ72RO0RHI6yvJXnA9M_M8r4-aAC to A21rwGAUjpjVTX8HgpT9Iyx6J_QZBRDhu-5GAclrf00C (#10099)
flutter/engine@d409df823 Roll src/third_party/dart 9c148623c5..82f657d7cb (25 commits)
flutter/engine@acd139ce6 Roll src/third_party/skia 1cd1ed8976c4..f564f1515bde (1 commits) (#10097)
flutter/engine@f2c9da4a0 Roll src/third_party/skia 3ae30cc2e6e0..1cd1ed8976c4 (1 commits) (#10096)
flutter/engine@d2f0b9ef1 Roll fuchsia/sdk/core/linux-amd64 from MCDItwEzechMpZAiI0QOzuiTtNUGArUa4TprH0Er-7QC to gPDgr6u-BPJTgV2Nf0tlg9MTY3JwGW0cETtsQcx365AC (#10095)
flutter/engine@0f4db494a Roll fuchsia/sdk/core/mac-amd64 from EH_61w2lpSn0UmpJkynWM6tiT0nnKk1GhTRRKK2cGMwC to lvLKs8Q4CKm_XLoZCQ72RO0RHI6yvJXnA9M_M8r4-aAC (#10094)
flutter/engine@298799991 Roll src/third_party/skia 0f9c660aa939..3ae30cc2e6e0 (1 commits) (#10093)
flutter/engine@a4d2d3648 Roll fuchsia/sdk/core/linux-amd64 from tCzkXNr7cb5OAbS5NcJ4F_g0DgVj3w8rfbT14AcaTHoC to MCDItwEzechMpZAiI0QOzuiTtNUGArUa4TprH0Er-7QC (#10090)
flutter/engine@d27a6373d Roll fuchsia/sdk/core/mac-amd64 from xNAaLqZJk8Bkz00BaHGzE8hCpiohggO7KabM3g2wdsQC to EH_61w2lpSn0UmpJkynWM6tiT0nnKk1GhTRRKK2cGMwC (#10089)
flutter/engine@20dc17282 Roll src/third_party/skia d15571af2e1b..0f9c660aa939 (1 commits) (#10088)
flutter/engine@9e7260b9d Roll fuchsia/sdk/core/linux-amd64 from kU0OwJYlceN477ejdh9RXrl7Mp-wUTNvQozlaV96xmQC to tCzkXNr7cb5OAbS5NcJ4F_g0DgVj3w8rfbT14AcaTHoC (#10086)
flutter/engine@0e621d902 [fuchsia] Use the new far package model (#10085)
flutter/engine@bdc713695 [fuchsia] Add sysroot and clang libs to package (#10082)
flutter/engine@72f747ae4 Roll fuchsia/clang/linux-amd64 from apsjZJ9ZIwlS08divc0QwxuNgIFeN4X-52mKR9d8qacC to zHiuOGMDwdWPUkV1B2fHKyRy2fGWGcUgfa2z6dyGAZQC (#10084)
flutter/engine@bfe689ee8 Roll fuchsia/clang/mac-amd64 from USm3Qt9wen4bXoFF0T9Xt8NX-pyEfte2cTYi7geLAhQC to UYD9C8IEkWVi83ef4zwO1Ump2B8cP9Nd5WECjU8l3AUC (#10083)
flutter/engine@cf5d76c17 [fuchsia] Add support for libs in packages (#10081)
flutter/engine@c4c64896a Roll src/third_party/skia 829144cc76fe..d15571af2e1b (2 commits) (#10080)
flutter/engine@25e5d597e Roll fuchsia/sdk/core/linux-amd64 from S_24mhItBb7pfUof8zsJPPSctC7xdlfjDEXEtyO25GYC to kU0OwJYlceN477ejdh9RXrl7Mp-wUTNvQozlaV96xmQC (#10079)
flutter/engine@f7e0614b8 Change ParagraphBuilder to replace the parent style's font families with the child style's font families (#10074)
flutter/engine@eb74f2ce7 One more luci fix (#10078)
flutter/engine@6e732c7f1 Change flutter runner target for LUCI (#10075)
flutter/engine@44ec59b70 Roll src/third_party/dart fedd74669a..9c148623c5 (70 commits) (#10066)
flutter/engine@abf93699f Basic structure for flutter_jit_runner far (#10073)
flutter/engine@3c76b90b2 Track clusters and return cluster boundaries in getGlyphPositionForCoordinates (emoji fix) (#10063)
flutter/engine@e8fb641f6 Enable consts from environment in DDK for flutter_web (#10069)
flutter/engine@bd3870219 [macos] Revert check on FlutterCodecs and refactor message function] (#10009)
flutter/engine@d6e1a93e2 Roll src/third_party/skia e11dfd3da4d7..829144cc76fe (4 commits) (#10072)
flutter/engine@d595af681 Roll fuchsia/sdk/core/linux-amd64 from XqtWTBni4xpYCTr7gqU7rFTuXNY1TZ_zOqBJrZM8c_kC to S_24mhItBb7pfUof8zsJPPSctC7xdlfjDEXEtyO25GYC (#10071)
2019-07-24 22:44:12 -07:00
Jonah Williams 15e322c0e5
Expose build-dir config option (#36773) 2019-07-24 12:13:51 -07:00
sjindel-google 6e963b9985
Remove flaky check for analyzer message. (#36832) 2019-07-24 20:21:31 +02:00
Zachary Anderson 6fe45fb1ac
[flutter_tool] Improve Windows flutter clean error message (#36784) 2019-07-24 10:56:06 -07:00
Jonah Williams 3b4d9f6780
more resident runner verification tests (#36595) 2019-07-23 15:38:52 -07:00
Jonah Williams 694d54ccac
Place build outputs under dart tool (#36585) 2019-07-23 15:36:55 -07:00
Jonah Williams 14aa4d0a45
fix analytics reporting test (#36556) 2019-07-23 11:02:02 -07:00
Emmanuel Garcia 242a4225a1
Flutter build aar (#36732)
`flutter build aar`

This new build command works just like `flutter build apk` or `flutter build appbundle`, but for plugin and module projects.

This PR also refactors how plugins are included in app or module projects. By building the plugins as AARs, the Android Gradle plugin is able to use Jetifier to translate support libraries into AndroidX libraries for all the plugin's native code. Thus, reducing the error rate when using AndroidX in apps.

This change also allows to build modules as AARs, so developers can take these artifacts and distribute them along with the native host app without the need of the Flutter tool. This is a requirement for add to app.

`flutter build aar` generates POM artifacts (XML files) which contain metadata about the native dependencies used by the plugin. This allows Gradle to resolve dependencies at the app level. The result of this new build command is a single build/outputs/repo, the local repository that contains all the generated AARs and POM files.

In a Flutter app project, this local repo is used by the Flutter Gradle plugin to resolve the plugin dependencies. In add to app case, the developer needs to configure the local repo and the dependency manually in `build.gradle`:


repositories {
    maven {
        url "<path-to-flutter-module>build/host/outputs/repo"
    }
}

dependencies {
    implementation("<package-name>:flutter_<build-mode>:1.0@aar") {
       transitive = true
    }
}
2019-07-23 09:27:42 -07:00
Emmanuel Garcia c9b466f9e2
Revert "Add flutter build aar (#35217)" (#36731)
This reverts commit 11460b8378.
2019-07-22 22:07:59 -07:00
Emmanuel Garcia 11460b8378
Add flutter build aar (#35217)
`flutter build aar`

This new build command works just like `flutter build apk` or `flutter build appbundle`, but for plugin and module projects.

This PR also refactors how plugins are included in app or module projects. By building the plugins as AARs, the Android Gradle plugin is able to use Jetifier to translate support libraries into AndroidX libraries for all the plugin's native code. Thus, reducing the error rate when using AndroidX in apps.

This change also allows to build modules as AARs, so developers can take these artifacts and distribute them along with the native host app without the need of the Flutter tool. This is a requirement for add to app.

`flutter build aar` generates POM artifacts (XML files) which contain metadata about the native dependencies used by the plugin. This allows Gradle to resolve dependencies at the app level. The result of this new build command is a single build/outputs/repo, the local repository that contains all the generated AARs and POM files.

In a Flutter app project, this local repo is used by the Flutter Gradle plugin to resolve the plugin dependencies. In add to app case, the developer needs to configure the local repo and the dependency manually in `build.gradle`:


repositories {
    maven {
        url "<path-to-flutter-module>build/host/outputs/repo"
    }
}

dependencies {
    implementation("<package-name>:flutter_<build-mode>:1.0@aar") {
       transitive = true
    }
}
2019-07-22 20:46:01 -07:00
Jonah Williams e5ea996a1f
disable flaky windows test (#36722) 2019-07-22 18:14:43 -07:00
Jonah Williams 3fedb8cb5a
Reland: use flutter features for web and desktop (#36699) 2019-07-22 15:34:03 -07:00
Jonah Williams 8eae2dfb92
Revert "Use FlutterFeatures to configure web and desktop devices (#36465)" (#36654)
This reverts commit bd52a78c71.
2019-07-21 21:47:43 -07:00
Jonah Williams bd52a78c71
Use FlutterFeatures to configure web and desktop devices (#36465) 2019-07-21 18:21:15 -07:00
Zachary Anderson 76cbbeb627
[flutter_tool] Send the local time to analytics with screens and events (#36545) 2019-07-19 14:54:18 -07:00
Jonah Williams 6830edd0be
Clean up flutter driver device detection. (#36434) 2019-07-19 14:48:17 -07:00
Christopher Fujino 9bd2e4000b
Throw exception if instantiating IOSDevice on non-mac os platform (#36288) 2019-07-19 12:20:45 -07:00
Dan Field c953cd19d2
Enable bitcode compilation for AOT (#36471) 2019-07-18 22:42:47 -07:00
Zachary Anderson 82a4ba40bb
[flutter_tool] Send analytics command before the command runs (#36490) 2019-07-18 18:05:44 -07:00
Todd Volkert adb2aeebe3
Ensure that cache dirs and files have appropriate permissions (#28090)
This is a partial re-application of #24669, which was
reverted due to Fuchsia breakages.

https://github.com/flutter/flutter/issues/24413
2019-07-18 15:29:06 -07:00
Emmanuel Garcia 5a34e7981e
Catch exceptions thrown by runChecked* when possible (#36109) 2019-07-18 10:45:37 -07:00
Jonah Williams 757b5365fa
Add missing test case for Usage (#36379) 2019-07-18 10:41:13 -07:00
Jonah Williams 1957c66300
add testing to screenshot and printDetails method (#36418) 2019-07-18 10:40:40 -07:00
Christopher Fujino 42a9c031e5
Fix invocations of ideviceinstaller not passing DYLD_LIBRARY_PATH (#36327)
* add failing tests

* fix tests

* be more specific with try-catch

* add further mocking to get tests to pass again

* fix analyzer failure
2019-07-17 13:44:49 -07:00
xster 03220cacd1
Make sure add-to-app build bundle from outer xcodebuild/gradlew sends analytics (#36122) 2019-07-17 11:17:04 -07:00
Jonah Williams 36c37ccab5
Implement feature flag system for flutter tools (#36138) 2019-07-16 17:33:28 -07:00
Todd Volkert aa9a115181
Move reporting files to reporting/ (#36017)
Slight cleanup of file locations in flutter_tools
to make it easier to see which files are responsible
for data reporting.
2019-07-16 13:21:06 -07:00
Christopher Fujino 540c747656
Revert "Keep LLDB connection to iOS device alive while running from CLI. (#36194)" (#36293)
This reverts commit 5501a1c1e7.
2019-07-16 12:34:49 -07:00
sjindel-google 5501a1c1e7
Keep LLDB connection to iOS device alive while running from CLI. (#36194)
## Description

Instead of detaching from the spawned App process on the device immediately, keep the LLDB client connection open (in autopilot mode) until the App quits or the server connection is lost.

This replicates the behavior of Xcode, which also keeps a debugger attached to the App after launching it.

## Tests

This change will be covered by all running benchmarks (which are launched via "flutter run"/"flutter drive"), and probably be covered by all tests as well.

I also tested the workflow locally -- including cases where the App or Flutter CLI is terminated first.

## Breaking Change

I don't believe this should introduce any breaking changes. The LLDB client automatically exits when the app dies or the device is disconnected, so there shouldn't even be any user-visible changes to the behavior of the tool (besides the output of "-v").
2019-07-16 19:15:15 +02:00
Zachary Anderson fa65ddf51d
[flutter_tool] Allow analytics without a terminal attached (#36208) 2019-07-16 09:48:49 -07:00
chunhtai 1166015931
Enable widget load assets in its own package in test (#35991) 2019-07-16 09:47:42 -07:00
Jonah Williams b257c33b69
Use DeviceManager instead of device to determine if device supports project (#36213) 2019-07-15 16:10:39 -07:00
Jonah Williams 6b17840cbf
Don't try to flutterExit if isolate is still paused (#36199) 2019-07-15 15:44:58 -07:00
Christopher Fujino 102ab1e6d9
Reland bundle ios deps (#36093)
This updates the flutter tool cache to download binary files for ideviceinstaller, ios-deploy, libimobiledevice, and dynamically linked dependencies from Flutter's GCP bucket.
2019-07-15 09:22:29 -07:00
Jonah Williams e3ee5c6bbb
Add better handling of JSON-RPC exception (#36082) 2019-07-13 16:02:09 -07:00
Ian Hickson d919e694b8
Move tools tests into a general.shard directory in preparation to changing how we shard tools tests (#36108) 2019-07-13 11:51:44 -07:00