Commit Graph

1426 Commits

Author SHA1 Message Date
Matt Carroll
a7387b127d
Added demo projects for splash screen support on Android. (#35728) 2019-07-24 13:44:13 -07:00
Jonah Williams
40884af28e
check for directory instead of path separator (#36787) 2019-07-24 13:20:08 -07:00
Jonah Williams
15e322c0e5
Expose build-dir config option (#36773) 2019-07-24 12:13:51 -07:00
Jiahao
4de9b4461b
Parameterize CoverageCollector with a library name predicate (#36774)
An optimization to the coverage collection speed was added in #30811. This commit further expands on it to parameterize the CoverageCollector with a custom predicate, allowing internal use cases to filter the RPC calls to the Dart VM based on scripts of interest to coverage collection.
2019-07-24 10:58:37 -07:00
Ian Hickson
e8d7306828
Some minor cleanup for flutter_tools (#36569) 2019-07-24 10:58:09 -07:00
Zachary Anderson
6fe45fb1ac
[flutter_tool] Improve Windows flutter clean error message (#36784) 2019-07-24 10:56:06 -07:00
Jonah Williams
694d54ccac
Place build outputs under dart tool (#36585) 2019-07-23 15:36:55 -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
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
Jonah Williams
6830edd0be
Clean up flutter driver device detection. (#36434) 2019-07-19 14:48:17 -07:00
Dan Field
c953cd19d2
Enable bitcode compilation for AOT (#36471) 2019-07-18 22:42:47 -07:00
Todd Volkert
e6128a0c14
Fix flutter pub -v (#36513)
When we were running `pub` within `flutter pub`, we were
unconditionally including the `--verbosity=warning` argument.
Then we were conditionally including `--verbose` if we were
running in verbose mode.  However, the former argument
supersedes the latter, and we were never able to run `pub`
in verbose mode.
2019-07-18 22:22:22 -07:00
Zachary Anderson
82a4ba40bb
[flutter_tool] Send analytics command before the command runs (#36490) 2019-07-18 18:05:44 -07:00
Emmanuel Garcia
5a34e7981e
Catch exceptions thrown by runChecked* when possible (#36109) 2019-07-18 10:45:37 -07:00
Jonah Williams
7b0cc5051b
release lock in flutter pub context (#36218) 2019-07-18 10:41:39 -07:00
Tim Sneath
07735578af
Fix spelling error and clarify universal flag (#36331) 2019-07-17 10:46:48 -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
Jonah Williams
0a97553e5e
Revert "Merge branches 'master' and 'master' of github.com:flutter/flutter into timsneath-precache2" (#36096) 2019-07-12 13:42:32 -07:00
Tim Sneath
67ab890b60 Merge branches 'master' and 'master' of github.com:flutter/flutter into timsneath-precache2 2019-07-12 12:59:08 -07:00
Tim Sneath
b322fdd518 Update precache help 2019-07-12 12:57:28 -07:00
Jonah Williams
e91b98a41f
Add initial implementation of flutter assemble (#32816) 2019-07-11 16:53:17 -07:00
Jonah Williams
adf45d1e40
Refactor signal and command line handler from resident runner (#35406) 2019-07-09 13:10:26 -07:00
Lau Ching Jun
d3eee57c0b
Update the help message on precache command for less confusion (#35480) 2019-07-08 11:04:24 -07:00
Todd Volkert
4cd12fc8b7
Mark update-packages as non-experimental (#35467)
Marking it as experimental was breaking tests and packaging
scripts on stable branches.
2019-07-02 18:24:25 -07:00
Jonah Williams
556e374e02
fix default artifacts to exclude ios and android (#35303) 2019-07-02 17:40:55 -07:00
Alexandre Ardhuin
758009ba70
more ui-as-code (#35393)
* more ui-as-code

* address review comments
2019-07-02 21:11:56 +02:00
stuartmorgan
d6bd1c0584
Add --target support for Windows and Linux (#34660)
- Adds desktop projects to ApplicationPackageStore
- Plumbs target overrides through the desktop builds
2019-07-01 14:49:34 -07:00
Jonah Williams
a1d3edc446
Twiggle bit to exclude dev and beta from desktop and web (#35221) 2019-06-27 19:04:02 -07:00
Alexandre Ardhuin
919dcf53f3
enable lints prefer_spread_collections and prefer_inlined_adds (#35189) 2019-06-27 21:23:16 +02:00
Danny Tuppeny
f3be1d9d95
Add emulatorID field to devices in daemon (#34794)
* Add emulatorId to Android and iOS emulator devices

* Update docs

* Review tweaks

* Add tests for AndroidConsole for getting avd names

* Remove unused import

* Remove duplicated header

* Fix imports
2019-06-26 16:39:23 +01:00
Todd Volkert
bb6c3f8131
Remove flutter_tools support for old AOT snapshotting (#34895)
Android now exclusively uses ELF shared libraries, and
iOS uses assembly.
2019-06-22 19:30:24 -07:00
Jason Simmons
300e8f842b
Remove flags related to dynamic patching (#34736) 2019-06-20 12:06:30 -07:00
Jonah Williams
d7e53d4816
move hack flag to common (#34754) 2019-06-19 16:29:11 -07:00
Jonah Williams
0d9a1b201e
Remove environment variable guards for command line desktop and web (#33867) 2019-06-19 13:39:27 -07:00
Jonah Williams
5d3efbde80
unpin build daemon (#34686) 2019-06-19 11:43:38 -07:00
Danny Tuppeny
d9983e1be7
Add category/platformType to emulators (#34721) 2019-06-19 17:10:39 +01:00
Devon Carew
2b0c351880
fix a typo (#34584) 2019-06-19 07:26:10 -07:00
Jonah Williams
5c52498d4e
Add device category, ephemeral, platformType for daemon (#33990) 2019-06-18 15:23:14 -07:00
Jonah Williams
73330e1241
Remove compilation trace and dynamic support code (#34529) 2019-06-18 15:22:04 -07:00
stuartmorgan
cc541e6724
Add missing pieces for 'driver' support on macOS (#34376)
- Adds desktop projects to ApplicationPackageStore
- Plumbs target overrides through the macOS build
2019-06-18 11:14:46 -07:00
Jonah Williams
f68bc1beb2
Dont depend on web SDK unless running tests on chrome (#34457) 2019-06-13 17:51:36 -07:00
Emmanuel Garcia
2488c38931
Remove unused flag --target-platform from flutter run (#34369) 2019-06-13 11:47:42 -07:00
Emmanuel Garcia
afdc783ce5
Report commands that resulted in success or failure (#34288)
This is added as a dimension cd26
2019-06-13 10:27:23 -07:00
Emmanuel Garcia
d9c1962973
Instrument usage of include_flutter.groovy and xcode_backend.sh (#34189)
This is done via `flutter build bundle`.   As a consequence, this PR introduces a new way to disable analytics via the `FLUTTER_SUPPRESS_ANALYTICS` env flag.
2019-06-11 14:46:00 -07:00
Ben Konyi
e59d9a815d
Reland "Added --dart-flags option to flutter run (#33924)" (#34181)
Reland "Added --dart-flags option to flutter run (#33924)"

This reverts commit 587687eedf.
2019-06-11 11:37:47 -07:00