Commit Graph

3022 Commits

Author SHA1 Message Date
Jonah Williams
5d3efbde80
unpin build daemon (#34686) 2019-06-19 11:43:38 -07:00
Jonah Williams
7851a75183
Fix NPE in flutter tools (#34725) 2019-06-19 11:43:06 -07:00
Jonah Williams
0d4f4bddb6
Don't crash on invalid .packages file in initial run(#34527) 2019-06-19 10:52:23 -07:00
Jonah Williams
49449505b6
Check whether FLUTTER_ROOT and FLUTTER_ROOT/bin are writable. (#34291) 2019-06-19 09:12:43 -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
Emmanuel Garcia
c50fa3d2bd Re-land config lib dependencies for flavors (#34668) 2019-06-18 22:37:42 -07:00
Jonah Williams
7472fad194
Remove most of the target logic for build web, cleanup rules (#34589) 2019-06-18 17:04:11 -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
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
Jenn Magder
8be46a0c4a
Kill compiler process when test does not exit cleanly (#34616) 2019-06-18 11:24:19 -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
Emmanuel Garcia
358b9bd381
Config lib dependencies when using flavors (#34592) 2019-06-17 15:05:16 -07:00
Jonah Williams
a772d4d314
retry on HttpException (#34526) 2019-06-17 10:48:01 -07:00
Josh Burton
07dc236237 Handles parsing APK manifests with additional namespaces or attributes (#34535) 2019-06-16 00:18:38 -07:00
Zachary Anderson
dfecafa4ab
[flutter_tool,fuchsia] Update the install flow for packaging migration. (#34447) 2019-06-14 09:46:23 -07:00
Michael Thomsen
264de26572
Change API doc link to api.dart.dev (#34388) 2019-06-14 14:19:36 +02: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
Zachary Anderson
3b42341aac
[flutter_tool,fuchsia] Prefetch tiles when starting an app (#34276) 2019-06-13 09:52:09 -07:00
Todd Volkert
8163c0aebb
Re-apply compressionState changes. (#34341)
This re-applies the changes that were made in #33697 and #33729,
but which were reverted in #33792 and #33790, respectively due to
the Dart SDK not having received the update within Google yet.
The SDK has now rolled, so these changes can be re-applied.

https://github.com/flutter/flutter/issues/32374
https://github.com/flutter/flutter/issues/33791
2019-06-12 13:47:47 -07:00
Zachary Anderson
22ca3f96ca
[flutter_tool] Don't truncate verbose logs from _flutter.listViews (#34255) 2019-06-12 11:18:53 -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
Jason Simmons
89d887f331
Strip debug symbols from ELF library snapshots (#34250)
AOT compiled code is now packaged as an ELF library for Android targets.
By default gen_snapshot's output contains debug symbols.  The symbols could
be stripped as a separate step, but that requires NDK tools that the user
may not have available.

This change passes a gen_snapshot flag that omits the symbols, and it filters
out a warning printed when that flag is used.
2019-06-11 13:34:24 -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
Jonah Williams
ca14af6b92
Compatibility pass on flutter/rendering tests for JavaScript compilation. (5) (#33355) 2019-06-10 17:29:46 -07:00
Todd Volkert
1b3fc53595
Consider all non-interactive terminals to be bots (#34179) 2019-06-10 16:32:08 -07:00
Jonah Williams
f530b809b6
Reland: More verification on flutter build web, add tests and cleanup (#34173) 2019-06-10 15:37:23 -07:00
Jenn Magder
c8bf7abeee
Disable CocoaPods input and output paths in Xcode build phase and adopt new Xcode build system (#34167)
Updates the Podfile template to use the CocoaPod disable_input_output_paths installation option which prevents the [CP] Embed Pods Frameworks build phase from outputting the Flutter.framework files.
2019-06-10 14:30:28 -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
71bfe3be9f
Revert "More verification on flutter build web, add tests and cleanup (#34090)" (#34166) 2019-06-10 12:01:14 -07:00
Jonah Williams
354ce1aa5a
More verification on flutter build web, add tests and cleanup (#34090) 2019-06-10 11:27:25 -07:00
Jonah Williams
392e825b24
Use product define for flutter web and remove extra asset server (#34159) 2019-06-10 09:54:02 -07:00
Jonah Williams
7f7c00a4e9
Enable web foundation tests (#34032) 2019-06-09 11:03:46 -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
587687eedf
Revert "Added --dart-flags option to flutter run (#33924)" (#34092) 2019-06-07 19:33:14 -07:00
Ben Konyi
67a529b895
Added --dart-flags option to flutter run (#33924) 2019-06-07 18:53:42 -07:00
Jonah Williams
8896f48c0f
make running on web spooky (#34084) 2019-06-07 18:17:04 -07:00
Jonah Williams
317e4cb013
don't warn on CHROME_EXECUTABLE missing if we've already located it. (#34079) 2019-06-07 18:16:54 -07:00
Christopher Fujino
10d8758b2f
add analytics fields for attached device os version & run mode (#34074)
Adds two new custom analytics dimensions: run_target_os_version and run_target_mode_name that are sent with each invocation of flutter run and show up in Google Analytics as "screens".
2019-06-07 16:03:53 -07:00
Zachary Anderson
b847ba5a63
[flutter_tool] Send build timing to analytics (#34049) 2019-06-07 13:50:45 -07:00
Jonah Williams
bd413bff1b
Add flutter create for the web (#34018) 2019-06-07 13:15:38 -07:00
Jonah Williams
ef5fc1ae65
limit open files on macOS when copying assets (#34050) 2019-06-07 12:59:33 -07:00
Danny Tuppeny
d2e6ab69a2
Increase daemon protocol version for getSupportedPlatforms (#33980) 2019-06-07 07:48:27 +01:00
Jonah Williams
c91b657116
Codegen an entrypoint for flutter web applications (#33956) 2019-06-06 21:05:55 -07:00
stuartmorgan
17d6f6a072
Make plugins Swift-first on macOS (#33997)
Instead of sharing the iOS codepath that uses an ObjC generated plugin
registrant and expecting plugins to have an ObjC interface layer, switch
to generating a Swift registrant and expecting plugins to have a Swift
interface.

This means plugins on macOS that use Swift won't need an ObjC wrapper,
and plugins that use ObjC will need a Swift wrapper (inverting the
structure relative to iOS).
2019-06-06 15:49:24 -07:00
stuartmorgan
fb8df82c06
Add 'doctor' support for Windows (#33872)
Moves the logic for finding vcvars64.bat to a new VisualStudio class
that encapsulates finding, and providing information about, VisualStudio
installations. Adds a validator for it, and runs it for Windows
workflows in doctor.
2019-06-06 14:02:27 -07:00
Alexander Aprelev
30dbc4c767
Whitelist adb.exe heap corruption exit code. (#33951)
* Whitelist adb.exe heap corruption exit code.

In android platform tools 29.0.0 adb.exe shell seems to be exiting with heap corruption exit code, otherwise producing results as expected. This PR whitelists this exit code on Windows.

Fixes https://github.com/flutter/flutter/issues/33938.

* Fix condition

* Fix 'shell am start' command

* Fix stop command

* Refactor into runAdbMostlyChecked(Sync/Async)

* runAdbMostlyChecked -> runAdbChecked
2019-06-06 12:01:03 -07:00
Zachary Anderson
5555725fe3
[flutter_tool] Fix 'q' for Fuchsia profile/debug mode (#33846) 2019-06-06 11:16:19 -07:00
Zachary Anderson
5180201fe1
[flutter_tool] Track APK sha calculation time (#33923) 2019-06-05 15:28:19 -07:00
Jonah Williams
b3382b9907
Reland support flutter test on platform chrome (#33859) 2019-06-05 15:27:49 -07:00
Jonah Williams
7548614350
Prevent windows web doctor from launching chrome (#33874) 2019-06-05 15:16:50 -07:00
Jonah Williams
50ea6f32d3
add benchmarks to track web size (#33892) 2019-06-05 12:40:21 -07:00
Jenn Magder
035e3d37d7
Revert "Disable CocoaPods input and output paths in Xcode build phase and adopt new Xcode build system (#33852)" (#33882)
This reverts commit d053fe5cb3.
2019-06-04 15:35:35 -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
Jenn Magder
d053fe5cb3
Disable CocoaPods input and output paths in Xcode build phase and adopt new Xcode build system (#33852)
Updates the Podfile template to use the CocoaPod disable_input_output_paths installation option which prevents the [CP] Embed Pods Frameworks build phase from outputting the Flutter.framework files.
2019-06-04 12:17:57 -07:00
Jonah Williams
83986acbdb
Add a real-er web restart, doctor, workflow (#33786) 2019-06-03 23:19:42 -07:00
Jenn Magder
9734f4ed43 Revert "Disable CocoaPods input and output paths in Xcode build phase and adopt new Xcode build system (#33684)"
This reverts commit ef792fc30d.
2019-06-03 17:19:53 -07:00
Jenn Magder
ef792fc30d
Disable CocoaPods input and output paths in Xcode build phase and adopt new Xcode build system (#33684)
Updates the Podfile template to use the CocoaPod disable_input_output_paths installation option which prevents the [CP] Embed Pods Frameworks build phase from outputting the Flutter.framework files.
2019-06-03 16:11:33 -07:00
Todd Volkert
52fc807dd2
Remove references to HttpClientResponseCompressionState (#33792)
https://github.com/flutter/flutter/issues/33791
2019-06-03 14:53:43 -07:00
Todd Volkert
b835b45a3c
Revert "Add capability to flutter test --platform=chrome" (#33800)
This reverts https://github.com/flutter/flutter/pull/33525
2019-06-03 14:53:01 -07:00
Dan Field
639c9935ae
wire in fuchsiaApp (#33781) 2019-06-03 14:31:56 -07:00
Zachary Anderson
590dbbd924
[flutter_tool] Log an Android X related failure to analytics (#33782) 2019-06-03 13:16:44 -07:00
Kate Lovett
89d4267299
Removing old golden checkout for integration test (#33676)
* Removing old golden checkout for integration test

* Removed unused import
2019-06-03 09:59:59 -07:00
Chris Bracken
264381a670
Default optional bool param to false (#33704)
In runTests, we previously now default the optional boolean `web`
parameter to false to ensure (or at least improve the odds) that the
conditional on line 70 evaluates to true or false.
2019-06-01 01:42:34 -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
Chris Bracken
2467c528f5
Roll engine 69ebe5fb28fc..a4b7d1c2895d (3 commits) (#33697)
69ebe5fb28..68a3ca46b4

git log 69ebe5fb28fca271b23010d43d4dc7f6e5286c4f..a4b7d1c2895d82228705a021cdb7fdb2f71ac2a5 --no-merges --oneline
4c6253cdd Copy the macOS podspec during builds (#9158)
68a3ca46b Roll src/third_party/dart 445a23a9bc..0e6b74543c (29 commits) (#9159)
1d1cff1fa Roll src/third_party/skia 3cd435eecf5e..09f5aedf2cc8 (3 commits) (#9160)

The AutoRoll server is located here: https://autoroll.skia.org/r/flutter-engine-flutter-autoroll

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

If the roll is causing failures, please contact the current sheriff (cbracken@google.com), and stop
the roller if necessary.
2019-05-31 21:17:43 -07:00
Josh Burton
d0e45a2369 Adds support for generating projects that use AndroidX support libraries (#31028) 2019-05-31 18:33:02 -07:00
Jonah Williams
5a6a00dc54
Add real-er restart for web using webkit inspection protocol (#33629) 2019-05-31 17:37:01 -07:00
Jonah Williams
4db845fb6a
Add capability to flutter test --platform=chrome (#33525) 2019-05-31 15:55:51 -07:00
stuartmorgan
3ebebebb8d
Implement plugin tooling support for macOS (#33636)
Enables the CocoaPods-based plugin workflow for macOS. This allows a
macOS project to automatically fetch and add native plugin
implementations via CocoaPods for anything in pubspec.yaml, as is done
on iOS.
2019-05-31 13:19:44 -07:00
Jonah Williams
27876e09be
Revert "Devfs cleanup and testing (#33374)" (#33673)
This reverts commit 445505d6f2.
2019-05-31 13:17:12 -07:00
Jason Simmons
b7bd5768c6
Change screenshot observatory port flag to a URI that can include the authentication code (#33666)
Fixes https://github.com/flutter/flutter/issues/32750
2019-05-31 13:15:49 -07:00
Jonah Williams
445505d6f2
Devfs cleanup and testing (#33374) 2019-05-30 16:13:46 -07:00
Jason Simmons
e810512b32
Use Dart's new direct ELF generator to package AOT blobs as shared libraries in Android APKs (#33611)
This is a replacement for the old implementation of --build-shared-library
that emits an AOT assembly snapshot and feeds it to the Android NDK toolchain.
2019-05-30 16:07:22 -07:00
stuartmorgan
932200caea
Restructure macOS project files (#33608)
Rather than macos/Flutter containing a mixture of files that should and
shouldn't be checked in, create clear locations for:
- Files that are "owned" by Flutter, but should be checked in
  (Flutter/). This will contain files like the top-level Flutter
  xcconfigs, generated plugin registrants, etc.
- Files that are generated by Flutter on the fly, and should not be
  checked in (Flutter/ephemeral/). This will contain Flutter SDK caches,
  the generated xcconfig, etc.

Also adds Flutter-owned Debug and Release xcconfig variants, in
preparation for PodSpec tooling.
2019-05-30 13:43:31 -07:00
stuartmorgan
5f6f70e677
Pass local engine variables to Windows build (#33540)
The props file used in the Windows build didn't include the local engine
build flags when applicable.
2019-05-30 12:45:33 -07:00
Jonah Williams
f38ee15286
add daemon command to enumerate supported platforms (#33472) 2019-05-30 10:14:23 -07:00
Jonah Williams
da600bacfe
Reland - Wire up hot restart and incremental rebuilds for web (#33533) 2019-05-29 22:46:28 -07:00
Emmanuel Garcia
3bbdf017c4
Add to app measurement (#33458) 2019-05-29 20:56: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
Zachary Anderson
b84ac50dfe
[flutter_tool] Misc. fixes for Fuchsia (#33466) 2019-05-29 15:37:07 -07:00
stuartmorgan
79ae04d4ed
Build the solution on Windows (#33528)
Switch from building Runner.vcxproj to Runner.sln on Windows, to allow
for multiple-project builds (e.g., separate plugin projects).
2019-05-29 13:17:23 -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
Zachary Anderson
8139a368ea
[flutter_tool] Use product runner in Fuchsia release build (#33282) 2019-05-29 10:08:58 -07:00
Jonah Williams
52ae99682e
Wire up hot restart and incremental rebuilds for web (#33197) 2019-05-29 09:49:16 -07:00
stuartmorgan
aecf053ee0
Use vswhere to find Visual Studio (#33448)
Rather than hard-coding a set of locations to check, use vswhere (which
is installed by VS 2017 and later), and construct the vcvars64.bat path
relative to that. This will allow Windows builds to work without special
configuration for people who have VS installed at a custom path.

Also adds error logging with different messages for each failure point,
so that rather than the not-very-informative 'failed to find
vcvars64.bat' message, the failure will provide feedback about what to
do.

This is an interim solution; later this will be replaced by a
VisualStudio class with associated validator to match the structure of
the other toolchains.

Fixes #33249
2019-05-29 09:17:17 -07:00
stuartmorgan
e1a784ae3f
Wrap Windows build invocation in a batch script (#33443)
Invoking msbuild with runInShell makes handling path escaping more
error-prone, and substantially increases the chances of running into
maximum path limits. This replaces the direct call with a .bat wrapper
that calls vsvars64.bat then msbuild, and uses relative paths within the
script to keep command lengths short.

Fixes https://github.com/flutter/flutter/issues/32792
2019-05-28 21:53:03 -07:00
Jonah Williams
c56b455180
ensure unpack declares required artifacts (#33454) 2019-05-28 17:35:05 -07:00
Jonah Williams
d729e70e0c
correctly pin build_daemon (#33463) 2019-05-28 15:28:24 -07:00
Jason Simmons
f9e28e7df7
Do not return null from IosProject.isSwift (#33450) 2019-05-28 14:27:38 -07:00
Jonah Williams
8e3e0a89f4
Revert "Instrument add to app flows (#33297)" (#33449)
This reverts commit faec4ca361.
2019-05-28 12:52:58 -07:00
Emmanuel Garcia
faec4ca361
Instrument add to app flows (#33297) 2019-05-28 11:11:20 -07:00
Jonah Williams
75d75bfaec
fix relative paths and snapshot logic in tool (#33283) 2019-05-25 19:47:17 -07:00
Jonah Williams
582c5587cd
make sure we build test targets too (#33284) 2019-05-25 19:46:44 -07:00
stuartmorgan
81c38b22cb
Implement macOS support in flutter doctor (#33277)
Splits Xcode validation out of the iOS validator and into a stand-alone
validator, and groups the CocoaPods validator with that top-level
validator instead of the iOS validator. iOS now validates only the
iOS-specific tools (e.g., ideviceinstaller).

Reorganizes many of the associated clases so that those that are used by
both macOS and iOS live in macos/ rather than ios/. Moves some
validators to their own files as part of the restructuring.

This is the macOS portion of #31368
2019-05-24 22:51:02 -04: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