Commit Graph

682 Commits

Author SHA1 Message Date
liyuqian
68fc7231b3
Fix the first frame logic in tracing and driver (#35297)
This should fix https://github.com/flutter/flutter/issues/31442 and https://github.com/flutter/flutter/issues/34867
2019-07-26 09:38:12 -07:00
Emmanuel Garcia
a37921f107
Remove stdout related to settings_aar.gradle (#36949)
Fixes #36923
2019-07-25 08:52:08 -07:00
Emmanuel Garcia
c469b1fea9
Add annotation dependency to plugins (#36886)
Fixes #36817
2019-07-25 08:49:24 -07:00
Matt Carroll
9edce4f9a4
Mark splash test flaky until proved stable. (#36895) 2019-07-24 17:25:12 -07:00
Matt Carroll
a7387b127d
Added demo projects for splash screen support on Android. (#35728) 2019-07-24 13:44:13 -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
c4cab5dc92
add missing config to create (#36727) 2019-07-22 19:48:55 -07:00
Jonah Williams
819538704a
fix devicelab tests (#36717) 2019-07-22 17:08:42 -07:00
Ian Hickson
295530dcaf
Some minor cleanup in devicelab (#36571) 2019-07-22 14:13:33 -07:00
Todd Volkert
1170105eae
flutter update-packages --force-upgrade (#36510) 2019-07-18 22:21:58 -07:00
Todd Volkert
0f625196cc
Add plumbing for hello world startup test in devicelab (#36410)
This is the first step in getting esoteric devices wired
up to device lab to ensure that we can at least start Flutter
apps in profile mode on such devices.

https://github.com/flutter/flutter/issues/35838
2019-07-18 11:13:14 -07:00
Jonah Williams
f711308376
Add sync star benchmark cases (#36303) 2019-07-17 16:19:49 -07:00
Jim Graham
6372250995
add the transformPoint and transformRect benchmarks (#36026) 2019-07-17 13:39:13 -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
xster
2d08fec368
Move buildable module test to a module test (#36102) 2019-07-15 18:31:44 -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
Christopher Fujino
e91822da24
Revert "Bundle ios dependencies (#34669)" (#36071)
This reverts commit 14d489adc5.
2019-07-12 09:03:34 -07:00
Christopher Fujino
14d489adc5
Bundle ios dependencies (#34669)
This updates the flutter tool to cache binary files for ideviceinstaller, ios-deploy, libimobiledevice, and dynamically linked dependencies from Flutter's GCP bucket.
2019-07-12 08:36:18 -07:00
Anoop B
90326b6184 [ImgBot] Optimize images (#35971) 2019-07-11 21:16:48 -07:00
Jenn Magder
b5c1b61c73
Add platform_interaction_test_swift to devicelab (#35775) 2019-07-10 14:13:01 -07:00
Ian Hickson
176ebfd53e
flutter/tests support (#33140)
This introduces a script that implements the conventions described in https://github.com/flutter/tests/pull/1.
2019-07-10 12:10:28 -07:00
Jonah Williams
91e3b2d671
add iOS build benchmarks (#35749) 2019-07-08 18:09:00 -07:00
liyuqian
34e18d38ce
ios (iPhone6) and iPhone XS tiles_scroll_perf tests (#35556)
For https://github.com/flutter/flutter/issues/31086.

Also test if our mac8 with iPhone XS is working
(https://github.com/flutter/flutter/issues/34590).
2019-07-08 14:13:33 -07:00
Alexander Aprelev
9f285aa9d9
Introduce image_list performance benchmark that runs on jit(debug) build. (#35424)
* Introduce image_list performance benchmark that runs on jit(debug) build.

We want to track performance of debug build because ongoing work on reducing the cost of spanwing new isolate will impact jit(debug) more than it will aot(release) configurations.

* Newlines and spaces
2019-07-08 08:23:06 -07:00
Jonah Williams
93edc014ae
update packages (#35573) 2019-07-04 11:26:19 -07:00
Jonah Williams
05b4c67550
add APK build time benchmarks (#35481) 2019-07-03 10:54:04 -07:00
Jonah Williams
6e705ea6a6
mark windows and macos chrome dev mode as flaky (#35495) 2019-07-02 16:43:41 -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
Alexander Aprelev
3badcf51a4
Introduce image loading performance test. (#34823)
* Introduce image loading performance test.

This example reports how long it takes to load images over the network(locally spawned server).
2019-06-28 15:14:03 -07:00
Tong Mu
03ed06f44d
New benchmark: Gesture semantics (#35232)
* Add semanticsEnabled to widgetBenchmark
* Add button_matrix_app and gesture benchmark
2019-06-28 00:37:01 -07:00
Todd Volkert
04e2f22650
Force-upgrade package deps (#35206) 2019-06-27 14:02:23 -07:00
Alexandre Ardhuin
919dcf53f3
enable lints prefer_spread_collections and prefer_inlined_adds (#35189) 2019-06-27 21:23:16 +02:00
Josh Burton
577c2fc48c Ensures flutter jar is added to all build types on plugin projects (#34573) 2019-06-25 10:40:55 -07:00
Jim Graham
f83fd9d467
Add test case for Flutter Issue #27677 as a benchmark. (#34870)
* Add test case for Flutter Issue #27677 as a benchmark.

See https://github.com/flutter/flutter/issues/27677

I got the following results running the test on a Moto E2 which
will help us determine how much we can gain by analyzing the
operations and eliminating unnecessary repaints based on
dirty rectangles/regions.

no blurs       - avg 216.0 fps over 3 samples
blur the group - avg  22.9 fps over 3 samples
blur each txt  - avg   3.4 fps over 3 samples

* Added the new benchmark to be tracked on the dashboard.
2019-06-24 20:53:22 -07:00
Jonah Williams
25b5656969
Reland: rename web device (#34885) 2019-06-24 11:09:07 -07:00
Jonah Williams
5d3efbde80
unpin build daemon (#34686) 2019-06-19 11:43:38 -07:00
Emmanuel Garcia
c50fa3d2bd Re-land config lib dependencies for flavors (#34668) 2019-06-18 22:37:42 -07:00
Emmanuel Garcia
9dbc66979a
Revert "Config lib dependencies when using flavors (#34592)" (#34655)
This reverts commit 358b9bd381.
2019-06-18 15:30:59 -07:00
Emmanuel Garcia
358b9bd381
Config lib dependencies when using flavors (#34592) 2019-06-17 15:05:16 -07:00
Devon Carew
5f521eea22
add route information to Flutter.Navigation events (#34508)
* add route information to Flutter.Navigation events

* route can be null; re-work how we send route info to accomidate that
2019-06-15 20:40:34 -07:00
Dan Field
3d58400e76
Revert "Revert "redux of a change to use new engine APIs for Flutter.Frame events (#34365)" (#34514)" (#34530)
This reverts commit 8f75d53735.
2019-06-15 00:01:35 -07:00
Keerti Parthasarathy
8f75d53735
Revert "redux of a change to use new engine APIs for Flutter.Frame events (#34365)" (#34514)
This reverts commit ceb09b8bad.
2019-06-14 13:08:14 -07:00
Devon Carew
ceb09b8bad
redux of a change to use new engine APIs for Flutter.Frame events (#34365) 2019-06-14 11:16:54 -07:00
Ian Hickson
d310d31de3
Roll pub dependencies (#33677) 2019-06-13 18:07:16 -07:00
Todd Volkert
704009541f
Update flakiness of tests (#34374) 2019-06-12 23:06:20 -07:00
Todd Volkert
fb2f18e7e8
Prepare for Uint8List SDK breaking changes (#34295)
https://github.com/dart-lang/sdk/issues/36900
2019-06-12 10:22:50 -07:00
Emmanuel Garcia
21a532698f
Split gradle_plugin_test.dart (#34282)
Fixes timeout when running gradle_plugin_test
2019-06-11 16:24:03 -07:00
Emmanuel Garcia
8627ff433b
Allow multi-abi shared libraries in APKs and App bundles (#34123)
* Gradle generates ELF shared libraries instead of AOT snapshots.
* `flutter build apk/appbundle` supports multiple `--target-platform` and defaults to `android-arm` and `android-arm64`.
* `flutter build apk` now has a flag called `--split-per-abi`.
2019-06-10 13:16:09 -07:00
Jonah Williams
f8f7b89976
Revert "Generate ELF shared libraries and allow multi-abi libs in APKs and App bundles (#33696)" (#34121) 2019-06-08 18:43:25 -07:00
Emmanuel Garcia
966b15b4a4
Generate ELF shared libraries and allow multi-abi libs in APKs and App bundles (#33696)
* Gradle generates ELF shared libraries instead of AOT snapshots.
* `flutter build apk/appbundle` supports multiple `--target-platform` and defaults to `android-arm` and `android-arm64`.
*  `flutter build apk` now has a flag called `--split-per-abi`.
2019-06-08 18:02:32 -07:00
Jonah Williams
4c0145d97b
Fix web size test for new world (#34063) 2019-06-07 13:52:04 -07:00
Dan Field
bc3ca10e71
Make it easier to pass local engine flags when running devicelab tests (#34054) 2019-06-07 12:49:09 -07:00
Jonah Williams
227ffb58d7
fix devicelab test for chrome reload worklow (#34056) 2019-06-07 12:44:17 -07:00
Jonah Williams
50ea6f32d3
add benchmarks to track web size (#33892) 2019-06-05 12:40:21 -07:00
Kaushik Iska
92bfc99132
Added a benchmark for ImageCache (#33814)
* Add an image cache benchmark for a monochrome image
2019-06-04 12:32:52 -07:00
Gary Qian
e0cb468865
Unmark flutter_gallery__back_button_memory as flaky (#33861) 2019-06-04 12:27:08 -07:00
Jonah Williams
83986acbdb
Add a real-er web restart, doctor, workflow (#33786) 2019-06-03 23:19:42 -07:00
Chris Bracken
98ea501995
Revert "Add real-er restart for web using webkit inspection protocol (#33629)" (#33703)
Revert "fix devicelab manfiest (#33698)"

This reverts commit 5a6a00dc54.
This reverts commit 0d79f0fc79.
2019-05-31 21:53:30 -07:00
Jonah Williams
0d79f0fc79
fix devicelab manfiest (#33698) 2019-05-31 17:44:19 -07:00
Jonah Williams
5a6a00dc54
Add real-er restart for web using webkit inspection protocol (#33629) 2019-05-31 17:37:01 -07:00
Gary Qian
8d658d4fa2
uncaught_image_error_linux is no longer particularly flaky (#33596) 2019-05-30 12:23:51 -07:00
Dan Field
0df3ec6bcb
Remove obsolete TOODs (#33554) 2019-05-30 08:09:15 -07:00
Todd Volkert
986d036fab
Mark flutter_gallery__back_button_memory as flaky (#33549) 2019-05-29 23:29:18 -07:00
Jonah Williams
da600bacfe
Reland - Wire up hot restart and incremental rebuilds for web (#33533) 2019-05-29 22:46:28 -07:00
Jason Simmons
311cde98a6
Reland "Clean up some flutter_tools tests and roll dependencies" (#33225)
This relands flutter/flutter#33163 with a fix to the integration_ui test.
2019-05-29 19:04:35 -07:00
Jonah Williams
925f5f1c53
Revert "Wire up hot restart and incremental rebuilds for web (#33197)" (#33529)
This reverts commit 52ae99682e.
2019-05-29 12:09:01 -07:00
Jonah Williams
52ae99682e
Wire up hot restart and incremental rebuilds for web (#33197) 2019-05-29 09:49:16 -07:00
Chris Bracken
156b4220b4
Americanise spellings (#33323)
Updates documentation and non-public API to use American spellings for
consistency with the rest of the codebase.

No changes to behaviour... other than how it's spelt.
2019-05-24 19:13:02 -07:00
Chris Bracken
4d9923201b
Correct typos (#33322)
Corects a bnuch of typeos throuhgout teh Fluter codebsae.

Made use of the `misspell` tool:
https://github.com/client9/misspell
2019-05-24 19:12:45 -07:00
liyuqian
552e74770d
Mark non-flaky test as such (#33269) 2019-05-23 12:39:55 -07:00
Jonah Williams
a30ffb60ad
Revert "Clean up some flutter_tools tests and roll dependencies (#33163)" (#33206) 2019-05-22 12:20:02 -07:00
Ian Hickson
e5f81e1048
Clean up some flutter_tools tests and roll dependencies (#33163)
* Clean up some flutter_tools tests

* Remove arbitrary retry that happens even for fundamental errors, and generally clean up _DevFSHttpWriter.

* Update dependencies (requires fixes; see next commit)

* Fixes for new dependencies.
2019-05-22 09:31:37 -07:00
Michael Thomsen
7ae3caf309
Rename flutter packages to flutter pub (#33041) 2019-05-21 16:38:58 +02:00
Emmanuel Garcia
90f38907d7
Support ARM 32 and 64 bits in app bundles 2019-05-20 13:09:20 -07:00
Alexandre Ardhuin
4fa32df141
use null aware operators (#32711)
* use null aware operators

* rollback changes about null-aware operator

* disable lint prefer_is_not_empty
2019-05-16 22:25:51 +02:00
Emmanuel Garcia
cc7ec6d624
Bump multicast_dns version 2019-05-06 11:14:41 -07:00
Jonah Williams
6a250c8d65
update packages and unpin build (#32066) 2019-05-03 16:54:35 -07:00
Jonah Williams
c1c15dd702
Revert "update packages and unpin build (#31736)" (#31795) 2019-04-29 09:56:55 -07:00
Jonah Williams
41b18422df
update packages and unpin build (#31736) 2019-04-29 09:10:01 -07:00
Dan Field
1db5d66932
Capture JSON RPC errors that presently get swallowed (#31584)
* Update packages
* Capture JSON RPC errors that presently get swallowed
2019-04-25 08:27:00 -07:00
Ben Konyi
484f6e754a
Fixed flutter_attach_test not respecting authentication codes (#31321) 2019-04-19 13:55:34 -07:00
Ben Konyi
1459b1e91f
Fixed failing tests caused by introduction of authentication codes (#31315) 2019-04-19 11:45:53 -07:00
Ben Konyi
3764cb8515
Added support for authentication codes for the VM service. (#30857)
* Added support for authentication codes for the VM service.

Previously, a valid web socket connection would use the following URI:

`ws://127.0.0.1/ws`

Now, by default, the VM service requires a connection to be made with a
URI similar to the following:

`ws://127.0.0.1:8181/Ug_U0QVsqFs=/ws`

where `Ug_U0QVsqFs` is an authentication code generated and shared by
the
service.

This behavior can be disabled with the `--disable-service-auth-codes`
flag.
2019-04-18 21:01:50 -07:00
liyuqian
b0937a1e89
Fix the warning test by checking stderr (#30997)
Previously, I used the Android emulator for testing and everything
seemed to work fine with stdout (if I remember correctly). But our
devicelab uses real Android devices and the warnings are routed to
stderr. Hence change stdout to stderr in the test.
2019-04-15 10:19:36 -07:00
Dan Field
99bd2795b0 Add rrect contains microbenchmark (#30985) 2019-04-15 09:01:40 -07:00
Jonah Williams
b4edfb1511
Revert "Manual engine roll with disabled service authentication codes (#30919)" (#30930)
This reverts commit 19d6e7b613.
2019-04-11 12:18:39 -07:00
Ben Konyi
19d6e7b613
Manual engine roll with disabled service authentication codes (#30919) 2019-04-11 12:08:13 -07:00
liyuqian
eb30745faf
Print warning if flutter drive is run in debug (#30747)
## Description

Print actionable warnings if `flutter drive` (where most of our performance benchmarks come from) is run in debug mode and it tries to gather benchmarks using `traceAction`.

## Related Issues

https://github.com/flutter/flutter/issues/30625

## Tests

I added the following tests:
* drive_perf_debug_warning devicelab test
2019-04-09 18:55:42 -07:00
liyuqian
5f060ba1c2
Mark cubic_bezier_perf__timeline_summary nonflaky (#30767) 2019-04-09 10:01:19 -07:00
Tim Sneath
529189791c
Replace flutter.io with flutter.dev (#30562) 2019-04-05 11:39:30 -07:00
Jonah Williams
953a947130
add coverage benchmark (#30222) 2019-03-29 17:00:19 -07:00
Jonah Williams
1bfa2f2311
Intercept errors thrown by synchronous Completers in image resolution. (#30139) 2019-03-29 10:05:18 -07:00
Jonah Williams
3c93b65a9b
Update to latest matcher (#30019) 2019-03-27 17:21:10 -07:00
Dan Field
820b0e029e
Avoid overwriting task result for non-leak checkers (#29989) 2019-03-26 11:40:05 -07:00
Dan Field
ecfdd7e1ea
Detect and cleanup leaky processes (#29196)
* Detect and cleanup leaky processes
* Add flaky tests for detecting leaked processes
2019-03-22 14:32:36 -07:00
Jonah Williams
469a859c72
Enable code generation features in tool (#29399) 2019-03-21 13:12:10 -07:00
Dan Field
2a644f301e
Run non-perf sensitive tests on Cirrus (#27971)
* Run non-perf sensisitive tests on Cirrus
2019-03-10 07:52:44 -07:00
Jonah Williams
d4a441a0d9
Add integration to all targets (#29020) 2019-03-08 12:25:35 -08:00