Commit Graph

3550 Commits

Author SHA1 Message Date
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
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
stuartmorgan
0f6e4e6190
Add macosPrefix to the pubspec schema for plugins (#33287)
Adds a new macosPrefix, which serves the same purpose as iosPrefix but
for macOS plugins.

It is not yet used by the tooling, but this allows for plugins to start
to be written using it in preparation for tooling support for plugins.

Part of #32718
2019-05-24 15:39:48 -04:00
Zachary Anderson
f5827f0f07
[flutter_tool] Improve Fuchsia 'run' tests (#33263) 2019-05-24 07:48:41 -07:00
Todd Volkert
c6129b4e85
Add cast to prepare for package:file update (#33268) 2019-05-23 12:33:24 -07:00
Devon Carew
0e8720e926
use the --disable-server-feature-completion cli arg to the analysis server (#33232) 2019-05-23 07:48:23 -07:00
stuartmorgan
ef9866bf27
Build macOS via workspace, rather than project (#33198)
This is necesasry to integrate CocoaPods, since CocoaPods operates
primarily on the workspace rather than the project.
2019-05-22 19:58:29 -04: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
Zachary Anderson
2eee3f3283
[flutter_tool] Don't look for Fuchsia artifacts on Windows (#33146) 2019-05-21 16:12:27 -07:00
Christopher Fujino
041755faad
don't send crash reports if on a user branch (#33078)
* don't send crash reports if on a user branch.
* add test to test/crash_reporting_test.dart
2019-05-21 11:58:41 -07:00
Zachary Anderson
94ce956f0a
[flutter_tool] Adds support for 'run' for Fuchsia devices (#32849) 2019-05-21 08:49:43 -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
Devon Carew
50a9c31f5e
reduce retry attempts for flutter creatte --list-samples (#32833) 2019-05-16 18:20:30 -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
stuartmorgan
f8b07e230a
Change the way macOS app names are located (#32706)
Instead of requiring a name_output.sh, expect a file called
.app_filename in the macos/Flutter directory containing just the name of
the application. The expectation is that the Xcode build will create
that file with a script.

This is not intended as a long-term solution, but it's a substantial
improvement over name_output.sh:
- name_output.sh required constructing the full build output path; this
  made sense when it was coupled with build.sh, but now that the
  decision for where build output goes lives in flutter_tool, that logic
  should as well.
- Changing the name of the application required also updating
  name_output.sh, which is error-prone. With .app_filename, it can be
  created using $PRODUCT_NAME, which means that the usual way of setting
  the application name will automatically update this flow as well.

Part of #30706
2019-05-16 11:00:05 -04:00
stuartmorgan
4e1bfca847
Streamline Windows build process (#32783)
Allows Windows builds to use the same structure and script as Linux
builds now use, calling into tool_backend to manage copying resources to
the project directory and building the bundle.

Also switches from expecting name_update.bat to expecting flutter\exe_filename
to be written during the build, as with the recent changes to the macOS build, to
reduce the amount of boilerplate needed in a windows\ project directory.
2019-05-15 19:32:47 -04:00
stuartmorgan
6722fb448c
Teach flutter msbuild for Windows (#32335)
Eliminates the need for a build.bat in the Windows build workflow, adding
preliminary support for building using msbuild. The handling of
vcvars64.bat may be refined in the future, but this serves as a starting point.
2019-05-14 19:24:40 -04:00
Zachary Anderson
8841afeb1f
[flutter_tool] Build a Fuchsia package (#32519) 2019-05-14 10:59:23 -07:00
Kate Lovett
054d9bb2f1
Updating dart.dev related links (#32641)
* Updating dart.dev related links

* Update packages/flutter_tools/lib/src/base/context.dart
2019-05-14 10:35:00 -07:00
Jason Simmons
f5cf209a66
Remove appbundle build steps that are required for APKs but not AABs (#32515)
Some parts of the appbundle build process were based on the logic for building
APK packages.  However, these steps (copying to a directory shared by all
build variants, and calculating a SHA) are not necessary for an appbundle.
2019-05-13 15:36:47 -07:00
stuartmorgan
710a0cb9a5
Adjust macOS build flow (#32538)
- Removes SYMROOT from the Generated.xcconfig. Having it causes current
  versions of Xcode to switch the project's build output to "Legacy",
  which causes anything not overridden to use a project-relative build
  directory instead of a shared directory in DerivedData, breaking
  anything with subprojects that it depends on.
  This means that `flutter run` and builds from Xcode will use
  completely different build directories, but that each should be
  internally consistent.
- Moves the FlutterMacOS.framework to $SRCROOT/Flutter. This is
  consistent with the approach we're moving to for all desktop
  platforms, and avoids issues finding it now that SYMROOT doesn't match
  for the two different build modes.

Fixes #32494
2019-05-11 21:12:42 -04:00
Jonah Williams
8b0243f413
Teach Linux to use local engine (#31631) 2019-05-11 00:08:29 -07:00
Kate Lovett
829bdeb426
Fixing accidental merge from WIP branch. (#32520)
Revert "Merge branch 'master' into master"

This reverts commit e3a03c04c4, reversing
changes made to 6474982649.
2019-05-10 15:53:41 -07:00
Kate Lovett
e3a03c04c4
Merge branch 'master' into master 2019-05-10 15:16:40 -07:00
Sam Rawlins
9c77e8e8a0 Fix missing return statements on function literals (#31825) 2019-05-09 12:43:51 -07:00
Jonah Williams
4d3b51e284
Allow flutter web to be compiled with flutter (#32360) 2019-05-09 08:57:26 -07:00
Jonah Williams
eb996afaa8
make hotfix use a plus instead of minus (#32060) 2019-05-07 10:11:00 -07:00
Zachary Anderson
61236c873e
[flutter_tool] In 'attach' use platform dill and patched sdk dir from the Fuchsia SDK (#32071) 2019-05-06 09:26:58 -07:00
Jonah Williams
99e7b0a0ff
dont NPE with empty pubspec (#32072) 2019-05-06 08:01:45 -07:00
Jonah Williams
6a250c8d65
update packages and unpin build (#32066) 2019-05-03 16:54:35 -07:00
Zachary Anderson
3d276cc6a8
[flutter_tool] Pull the right Fuchsia SDK for the platform (#31998) 2019-05-02 15:26:59 -07:00
Kate Lovett
4676c66b9a
Merge branch 'gold' into master 2019-05-02 15:01:35 -07:00
Jonah Williams
1d91bd2583
Revert "Start abstracting platform logic builds behind a shared interface (#31889)" (#32003)
This reverts commit e5459942c8.
2019-05-02 14:14:46 -07:00
Jonah Williams
e5459942c8
Start abstracting platform logic builds behind a shared interface (#31889) 2019-05-02 13:31:00 -07:00
Jonas Termansen
8b9eb3e2b2 Report CompileTime metric in flutter build aot --report-timings. (#31895)
This is the correct metric to report for compilation time benchmarks rather
than RunTime. Rename the 'gen_snapshot' value to merely 'snapshot' for
backwards compatibility and overall simplicity.

This change simplifies Dart's benchmarking of Flutter by making it easier to
adopt --report-timings (made for Dart to use), which makes the benchmarks
much more robust.
2019-05-02 15:22:43 +02:00
Jonah Williams
83aa065f6a
Add commands to swap dart imports for local development (#31925) 2019-05-02 01:14:15 -07:00
Dan Field
df669ab1ea
Avoid NPE for flutter attach mDNS (#31926) 2019-05-01 13:41:00 -07:00
Zachary Anderson
6a69f8c98c
[fuchsia] Add support for the 'device' command using the SDK (#31910) 2019-05-01 13:24:09 -07:00
Victor Maraccini
74c6237abc Fix bundle id on iOS launch using flutter run (#31039) 2019-05-01 10:21:43 -07:00
Emmanuel Garcia
3e65bb060f
Fix #31764: Show appropriate error message when fonts pubspec.yaml isn't iterable
Show appropriate error message when fonts isn't iterable
2019-05-01 09:49:39 -07:00
Dan Field
a8504405a8
Revert "Handle notification errors (#31868)" (#31886)
This reverts commit c0d5fd23ab.
2019-04-30 23:27:30 -07:00
Jonah Williams
c82fc132a8
add stderr to log processor for desktop (#31874) 2019-04-30 19:18:15 -07:00
chunhtai
e2dfd73c2e
only build asset when there is asset declared in pubspec (#31804) 2019-04-30 16:03:47 -07:00
Dan Field
c0d5fd23ab
Handle notification errors (#31868) 2019-04-30 15:42:22 -07:00
Jonah Williams
48936d9a95
Remove deprecated commands (#31759) 2019-04-30 14:43:03 -07:00
Keerti Parthasarathy
eae67f05df
Make const available for classes that override AssetBundle (#31807) 2019-04-30 09:10:04 -07:00
Dan Field
eac2104bc6
remove assert for Flutter Driver (#31815) 2019-04-29 17:03:25 -07:00
Jonah Williams
37e25238a8
Attempt to reduce usage of runtimeType (#31696) 2019-04-29 16:44:50 -07:00
Dan Field
fe9512fa72
Re-enable const (#31600)
* Re-enable const
2019-04-29 16:02:42 -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
Jonah Williams
4ff467191b
make FlutterProject synchronous (#31757) 2019-04-29 08:21:32 -07:00
Danny Tuppeny
fdcc8aafa7
Allow adb stdout to contain the port number without failing (#31491)
* Allow adb stdout to contain the port number without failing

* Add tests that port forwarder correctly responds to known ADB output
2019-04-26 21:03:25 +01:00
Jonah Williams
9d364043af
Refactor the test compiler into a separate library (#31642) 2019-04-26 12:33:41 -07:00
chunhtai
d121df9987
fix 31511: Test performance has regressed (#31582) 2019-04-26 09:02:38 -07:00
Jonah Williams
fdae7bb871
add check that xcode project configuration is not missing (#31621) 2019-04-25 15:51:25 -07:00
Jonah Williams
0acd3e6b04
refactor context to be implicit-downcast safe (#31622) 2019-04-25 15:51:08 -07:00
Jonah Williams
52415cb0a5
baby-steps to testing/refactoring flutter_platform (#31616) 2019-04-25 14:01:28 -07:00
Jonah Williams
6b191841f3
Allow filtering devices to only those supported by current project (#31446) 2019-04-25 12:25:12 -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
Jonah Williams
482078387e
make sure we exit early if the Runner.xcodeproj file is missing (#31591) 2019-04-25 00:12:17 -07:00
Jonah Williams
9e51e13e91
add printError messages and tool exit to android device (#31400) 2019-04-24 19:30:39 -07:00
Kate Lovett
1fcd1b02de Changes for uploading baseline images. 2019-04-24 13:38:49 -07:00
Jonah Williams
37c73e77f1
Remove need for build/name scripts on Linux desktop (#31567) 2019-04-24 13:34:56 -07:00
Jonah Williams
15ba39560a
replace no-op log reader with real implementation (#31526) 2019-04-23 17:19:47 -07:00
Jonah Williams
6a22f41239
add desktop artifacts to run/target_platform selectors (#31505) 2019-04-23 15:08:47 -07:00
Jonah Williams
661e0350fb
Disable all Dart fingerprinters (#31463) 2019-04-23 11:58:37 -07:00
Jonah Williams
15f271ef07
if there is no .ios or ios sub-project, don't attempt building for iOS (#31406) 2019-04-23 09:49:49 -07:00
Jonah Williams
be73969657
Add more context to flutter create sample (#31434) 2019-04-22 22:22:46 -07:00
Jonah Williams
abbb66ad79
Set SYMROOT as absolute in Generated.xcconfig for macOS (#31451) 2019-04-22 22:22:17 -07:00
Jonah Williams
096439b417
add ignorable track-widget-creation flag to build and remove --track-widget-creation from xcode backend aot build aot (#31399) 2019-04-22 16:21:17 -07:00
Jonah Williams
a476a08e62
check if project exists before regenerating platform specific tooling (#31342) 2019-04-22 15:18:15 -07:00
Jonah Williams
7f959d8b78
Add Xcode build script for macOS target (#31329) 2019-04-22 13:51:00 -07:00
Stanislav Baranov
e2a3c2ee45
Remove support for building dynamic patches on Android. (#31359) 2019-04-22 10:40:50 -07:00
Jonah Williams
18e294dbd7
throw toolExit instead of rethrowing on filesystem exceptions (#31404) 2019-04-22 09:56:14 -07:00
Stanislav Baranov
08445c8a01
Stop precaching the artifacts for dynamic mode. (#31282) 2019-04-22 09:05:38 -07:00
Keerti Parthasarathy
b593f5167b
Add track-widget-creation flag to attach command (#31262)
* Add track-widget-creation flag to attach command

* use the flag
2019-04-22 07:51:33 -07:00
Kate Lovett
beebd5c4a7 Progress. 2019-04-19 15:00:13 -07:00
Kate Lovett
7e542fc334 Committing progress. 2019-04-19 14:33:49 -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
stuartmorgan
d9718aa4b9
Add desktop workflows to doctor (#31283)
The 'doctor' check to determine if any devices can be listed for the
device should consider desktop workflows as well.

This has no effect unless the environment variable to enable desktop
device listing is set.
2019-04-18 18:24:31 -07:00
Jonah Williams
ac36e4423e
Add flutter run support for linux and windows (#31229) 2019-04-18 18:05:04 -07:00
Jonah Williams
65f45999a3
initial work on coverage generating script for tool (#29494) 2019-04-18 17:59:14 -07:00
Jonah Williams
f5672b9316
add --force flag to precache (#31278) 2019-04-18 16:04:21 -07:00
chunhtai
b275e11170
fix issue 12999: Make assets available during tests (#31207) 2019-04-18 15:31:47 -07:00
Jonah Williams
e69a8a15b3
pass track widget creation flag through to build script (#31277) 2019-04-18 15:03:34 -07:00
Devon Carew
d075d647c3
remove the unused hintMessage and hintId fields from the reload results (#31267) 2019-04-18 11:00:54 -07:00
Jonah Williams
da92fc1109
Add run capability for macOS target (#31218) 2019-04-17 22:40:26 -07:00
Jonah Williams
3c8c630f01
Allow disabling all fingerprint caches via environment variable (#31171) 2019-04-17 17:27:50 -07:00
Jonah Williams
86c938b5b3
Add desktop projects and build commands (experimental) (#31205) 2019-04-17 12:16:55 -07:00
Jonah Williams
5228a7851a
Fuchsia step 1: add SDK version file and artifact download (#31073) 2019-04-16 13:24:58 -07:00
Dima Rostopira
e6f33e92a9 Add sorting to flutter version command (#31064) 2019-04-16 10:23:56 -07:00
Alexander Aprelev
d775908c7e
Download and handle product version of flutter patched sdk (#31063)
* Support release/debug flavors of flutter_patched_sdk

* Use [anyNamed] instead of [any] for mocking named arguments

* Fix use of local engine in release mode
2019-04-15 21:02:20 -07:00
Jonah Williams
1c779442a0
Add null checks to coverage collection (#31092) 2019-04-15 17:33:28 -07:00
liyuqian
a8116e9ea3
Allow profile widget builds in profile mode (#30990)
## Description

Previously, such function is only available in the debug mode. But the
performance information is very noisy in debug mode with JIT. I feel
that such function is as important and useful as the performance overlay
and the `--trace-skia` option for the GPU thread.  So we should give it
the same ability to run in both profile and debug mode.

I've tested it using flutter_gallery in the profile mode. There's no
observable difference in the performance overlay between toggling widget
build profiling.

## Related Issues

https://github.com/flutter/flutter/issues/30984
2019-04-15 13:57:43 -07:00
Jonah Williams
28cb589cd3
make flutterProject option of CoverageCollector optional (#31074) 2019-04-15 12:26:43 -07:00
Christopher Fujino
be5f345f33
New flag to flutter drive to skip installing fresh app on device (#30818)
* add a --build/--no-build flag to flutter drive command
2019-04-15 09:31:51 -07:00
Jonah Williams
301eaa8c32
Make coverage, like, really fast (#30811) 2019-04-15 08:59:28 -07:00
Jonah Williams
cadde2459b
Add toggle for debugProfileWidgetBuilds (#30867) 2019-04-11 12:44:33 -07:00
Jonah Williams
259641c4b3
Allow downloading of desktop embedding artifacts (#30648) 2019-04-10 22:08:44 -07:00
Dan Field
d2790bd2bb
Check for invalid elevations (#30215)
* Check for invalid elevation usage in the layer tree
2019-04-10 14:57:46 -07:00
Jonah Williams
316d44989a
warn on uncomitted changes (#30235) 2019-04-10 12:24:53 -07:00
Michael Thomsen
811f1ad98f
Forward missing pub commands (#30115) 2019-04-09 17:03:09 +02:00
Jonah Williams
ed49122aa3
register gradle wrapper as universal artifact (#30755) 2019-04-08 20:22:34 -07:00
Jonah Williams
9baffb97ca
Reland: Ensure that flutter run/drive/test/update_packages only downloads required artifacts (#30254) 2019-04-08 13:49:09 -07:00
Jonah Williams
99b4459944
Allow disabling experimental commands, devices on stable branch (#30153) 2019-04-08 13:48:21 -07:00
Lau Ching Jun
294d7ea0cf
Mark ios-deploy version 2.0.0 as bad (#30578)
Mark ios-deploy version 2.0.0 as bad.

ios-deploy before version 1.9.4 declares itself as v2.0.0
https://github.com/ios-control/ios-deploy/commits/master/src/ios-deploy/version.h
2019-04-08 12:37:43 -07:00
Tim Sneath
529189791c
Replace flutter.io with flutter.dev (#30562) 2019-04-05 11:39:30 -07:00
Wai Hon Law
e8d968ed8d Update repair command for Arch Linux (#30428)
The current repair command for Arch Linux is no longer valid because
`lib32-libstdc++5` had been removed from multilib.

Actually, `lib32-gcc-libs` from core just work.
Also see https://github.com/flutter/flutter/issues/25035
2019-04-05 07:55:29 -07:00
Vyacheslav Egorov
01e3496ad9
Introduce --report-timings flag for flutter build aot command. (#30032)
This flag makes flutter build aot report timings for substeps (e.g.
frontend compilation and gen_snapshot) in a machine readable form.
2019-04-03 12:12:18 +02:00
Zachary Anderson
61b5caff9a
[fuchsia_tester] Plumb through the location of icudtl (#30218) 2019-04-01 07:48:50 -07:00
Jonah Williams
c10e7ba6e9
Revert "Ensure that flutter run/drive/test/update_packages only downloads required artifacts (#30075)" (#30232) 2019-03-29 20:41:07 -07:00
Jonah Williams
89807e68d0
Ensure that flutter run/drive/test/update_packages only downloads required artifacts (#30075) 2019-03-29 20:33:37 -07:00
Jonah Williams
b8bcfaa56f
make sure flutter test asks for cache upgrades (#30216) 2019-03-29 15:58:16 -07:00
Jonah Williams
8220f8f4e3
add missing test case and handle wildcard removal (#30205) 2019-03-29 14:26:56 -07:00
Jonah Williams
876b45f64e
skip .dart_tool folders when running update-packages (#30082) 2019-03-28 12:15:59 -07:00
Christopher Fujino
ec93c87c89
Move spinner _defaultSlowWarning message to a new line (#30071)
* write newline before adding slow restart message to spinner
* update existing test
2019-03-28 10:08:44 -07:00
Jonah Williams
99866f4a3d
Make timeout durations configurable (#30053) 2019-03-27 16:21:16 -07:00
Jonah Williams
50f1e1822a
ensure packages file is updated when using build_runner (#29885) 2019-03-27 14:40:52 -07:00
Jonah Williams
7d678f2adc
Lazy cache 5: The Empire Strikes Back (#29986) 2019-03-27 13:54:09 -07:00
Jonah Williams
bafe7cbbb4
Watch wildcard directories in addition to asset bundle (#29883) 2019-03-26 21:40:53 -07:00
Jonah Williams
164dae3bf1
Revert "Lazy cache 4 (#29785)" (#29985) 2019-03-26 10:01:22 -07:00
Jonah Williams
d71f324e48
Lazy cache 4 (#29785) 2019-03-26 08:45:29 -07:00
Jonah Williams
44b22c7b04
Fix cache location, artifacts, and re-enable dart2js test (#29783) 2019-03-25 18:47:37 -07:00
Jonah Williams
beaf7e28fa
Update upgrade to reset off of hotfix branches (#29786) 2019-03-25 09:42:28 -07:00
Jonah Williams
377dfbd90d
dont fail build if codegen fails (#29818) 2019-03-25 08:43:13 -07:00
Alexandre Ardhuin
bfa1d25bf9
some formatting of map, parameters and spaces (#29760) 2019-03-23 00:02:21 +01:00
Amir Hardon
e2cd5931a7 Revert "Update upgrade to rebase and stash local changes. (#29192)" (#29780)
This reverts commit e38be671a7.
2019-03-21 20:34:07 -07:00
Jonah Williams
40cbdd11cd
Use Dart version in script cache check (#29721) 2019-03-21 15:56:13 -07:00
Jonah Williams
e38be671a7
Update upgrade to rebase and stash local changes. (#29192) 2019-03-21 14:32:52 -07:00
Jonah Williams
fc9f7dea1a
Allowing adding/updating packages during hot reload (#29747) 2019-03-21 13:59:38 -07:00
Jonah Williams
469a859c72
Enable code generation features in tool (#29399) 2019-03-21 13:12:10 -07:00
Jonah Williams
377f4451ca
fix asset reloading (#29469) 2019-03-21 09:03:28 -07:00
Alexander Aprelev
12c4e050be
Use source list from the compiler to track invalidated files for hot reload. (#29693)
* Use source list from the compiler to track invalidated files.

* Revert accidental change

* Fix first-time-seen-the-file logic

* Fix/simplify invalidate logic now that we can rely on compiler to let us know what is the cut-off point for invalidation.

* Update devfs mock to accommodate for new fields

* Fix deleted files case

* Analyzer found missing final
2019-03-20 21:58:15 -07:00
Jonah Williams
5f727126ca
Download secondary SDK (#29633) 2019-03-20 15:41:45 -07:00
Jonah Williams
c72f18fcd5
Add builders and engine hash to fingerprint (#29434) 2019-03-20 15:40:37 -07:00
Alexandre Ardhuin
a6af422874
some spaces formatting (#29452)
* some space formattings

* always use blocks in if-else if a block is used

* format spaces in for and while

* allow multiline if conditions

* fix missing space
2019-03-20 23:23:31 +01:00
Lau Ching Jun
c33d263830
Fix typo (#29625) 2019-03-20 14:22:10 -07:00
Jonah Williams
b123846cb0
Improve flutter test startup time (#29404) 2019-03-20 13:58:57 -07:00
Ben Konyi
e8b98f9648
Manual engine roll for 2019-03-19 (#29627)
* Manual engine roll for 2019-03-19
* Applying patch for Dart SDK changes (see PR #29004)
2019-03-19 20:01:03 -07:00
Jonah Williams
edd4c6207a
prevent stream notifications from interfering with reload (#29467) 2019-03-19 16:19:45 -07:00
Shi-Hao Hong
dffbfebbf1
added friendlier error for invalid AndroidManifest.xml (#29604) 2019-03-19 14:44:22 -07:00
Jonah Williams
f8f2b043e1
remove explicit frame schedule (#29461) 2019-03-19 10:24:55 -07:00
Priit Lätt
cdbd0f9ddd Use async execution for xcodebuild commands (#29048) 2019-03-19 09:19:34 -07:00
Jonah Williams
75c50da5f6
Ensure that different formatting of ndk properties file does not crash tool (#29528) 2019-03-18 10:51:24 -07:00
Jonah Williams
72605d2406
Switch flutter_tools from script to app-jit snapshot. (#27749) 2019-03-15 19:33:24 -07:00
Jonah Williams
fa52f345d6
fix for sometimes packages file is an APK (#29456) 2019-03-15 15:52:40 -07:00
Jonah Williams
cd803ac7f2
Improve hot reload performance (#28152) 2019-03-15 15:02:45 -07:00
liyuqian
be5c83b9b8
Add dump-shader-skp flag to flutter tools (#29258)
This is the accompanying change for https://github.com/flutter/engine/pull/8148 and it needs the engine PR to land first.

For https://github.com/flutter/flutter/issues/813
2019-03-15 12:37:53 -07:00
Jason Simmons
e5696c2e7c
Use fs.identical to compare paths when finding the engine source path (#29386)
This will handle paths with symlinks that resolve to the same location.
2019-03-15 09:32:10 -07:00
liyuqian
3202d228b7
--verbose-logging to verbose-logging in android (#29383)
Sorry that I missed the typo during the review of https://github.com/flutter/flutter/pull/29321
2019-03-15 09:20:15 -07:00
Christian Wenz
428d104054 Properly escape Android SDK Manager path in error message (#29134) 2019-03-15 08:58:33 -07:00
Jonah Williams
7bed378e22
Only run codegen at start of flutter_test (#29171) 2019-03-14 17:12:40 -07:00
Jonah Williams
25820ab2a4
add option for --verbose-system-logs (#29321) 2019-03-13 22:42:12 -07:00
Danny Tuppeny
126c58ef7c
Add a flutter create --list-samples command (#28938)
* Add a `flutter create --list-samples` command

* Add some comments/docs

* Tweak text
2019-03-12 11:47:17 +00:00
Paul Berry
c78ccb0b5e
Cause flutter analyze to fail if the analysis server experienced an error. (#29126)
Substantially reduces the danger that a bug in the analysis server
might prevent errors from being detected by `flutter analyze`.
2019-03-11 09:47:20 -07:00
Alexandre Ardhuin
a0d1f93b07
fix block formatting (#29051) 2019-03-09 09:03:11 +01:00
Jonah Williams
ac6afa4d20
fix windows codegen (#29062) 2019-03-08 19:26:45 -08:00
Ian Hickson
a07c9a12bd Support hotfix version numbers (#28672) 2019-03-08 19:26:34 -08:00
Jonah Williams
8c0cf1ddf7
Revert "Lazily download artifacts (III) (#27903)" (#29064)
This reverts commit 3fd36200d9.
2019-03-08 13:31:51 -08:00
Jonah Williams
3fd36200d9
Lazily download artifacts (III) (#27903) 2019-03-08 13:15:50 -08:00
Jonah Williams
d4a441a0d9
Add integration to all targets (#29020) 2019-03-08 12:25:35 -08:00
Jonah Williams
77142b8257
Revert "re-enable dart2js test (#29010)" (#29030)
This reverts commit 6a7f231d89.
2019-03-07 22:18:15 -08:00
Jonah Williams
6a7f231d89
re-enable dart2js test (#29010) 2019-03-07 21:56:02 -08:00
Jonah Williams
f5c3579f30
Remove extra build_runner modes, remove flutter_build (#28873) 2019-03-07 14:52:29 -08:00
Alexandre Ardhuin
440ce8fde6
Fix indentations of statements in BlockFunctionBody (#28933)
* fix indentof statements in BlockFunctionBody

* fix indentof statements in BlockFunctionBody in tests
2019-03-07 21:09:28 +01:00
Jonah Williams
a2d349c4c1
select ResidentCompiler during FlutterDevice initialization (#28603) 2019-03-07 11:02:42 -08:00
Dan Field
df465c7718 Fall-back to platform tools in Android SDK detection logic. (#28863) 2019-03-07 10:45:29 -08:00
Jonah Williams
dd94499418
Add build script invalidation and snapshotting logic (#28866) 2019-03-06 15:16:16 -08:00
Phil Quitslund
802eca29d2
set literal conversions (#27811) 2019-03-06 11:05:16 -08:00
Chris Bracken
52e4214dbb
Fix crash on flutter update-packages (#28922)
When running git update-packages, if the goldens repo is dirty, the
flutter tool currently crashes and logs the failure from git pull.

This adds a check for a dirty git client and emits a friendlier error
message in the case where it's not clean, and avoid the crash by
catching the NonZeroExitCode exception and rethrowing as toolExit
instead.

Fixes: https://github.com/flutter/flutter/issues/28915
2019-03-06 09:14:39 -08:00
Alexandre Ardhuin
4c1f4d14e1
fix some formatting issues (#28809)
* fix some formatting issues

* address review comments

* fix indent
2019-03-06 09:37:32 +01:00
Alexander Markov
604e9dc683
Include git output into error message from channel command (#28658) 2019-03-01 10:22:59 -08:00
Alexandre Ardhuin
387f885481
Add missing trailing commas (#28673)
* add trailing commas on list/map/parameters

* add trailing commas on Invocation with nb of arg>1

* add commas for widget containing widgets

* add trailing commas if instantiation contains trailing comma

* revert bad change
2019-03-01 08:17:55 +01:00
liyuqian
dd5559a5b8
Add LICENSE test to presubmit checks (#28369)
## Description

Also update the existing dart files with missing licenses.

Without the fix, we'll emit the following error message
```
License headers cannot be found at the beginning of the following files.

/usr/local/google/home/liyuqian/flutter/flutter/packages/flutter/lib/src/animation/tween_sequence.dart
/usr/local/google/home/liyuqian/flutter/flutter/packages/flutter/test/material/raw_material_button_test.dart
/usr/local/google/home/liyuqian/flutter/flutter/packages/flutter/test/widgets/async_lifecycle_test.dart
/usr/local/google/home/liyuqian/flutter/flutter/packages/flutter/test/widgets/sliver_constraints_test.dart
/usr/local/google/home/liyuqian/flutter/flutter/packages/flutter/test/widgets/app_test.dart
/usr/local/google/home/liyuqian/flutter/flutter/packages/flutter/test/widgets/test_border.dart
/usr/local/google/home/liyuqian/flutter/flutter/packages/flutter/test/widgets/physical_model_test.dart
/usr/local/google/home/liyuqian/flutter/flutter/packages/flutter/test/widgets/inherited_model.dart
/usr/local/google/home/liyuqian/flutter/flutter/packages/flutter_tools/lib/src/base/user_messages.dart
/usr/local/google/home/liyuqian/flutter/flutter/packages/flutter_tools/test/src/pubspec_schema.dart
/usr/local/google/home/liyuqian/flutter/flutter/packages/flutter_tools/test/ios/simulators_test.dart
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
```

## Related Issues

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

## Checklist

Before you create this PR confirm that it meets all requirements listed below by checking the relevant checkboxes (`[x]`). This will ensure a smooth and quick review process.

- [x] I read the [Contributor Guide] and followed the process outlined there for submitting PRs.
- [x] My PR includes tests for *all* changed/updated/fixed behaviors (See [Test Coverage]).
- [x] All existing and new tests are passing.
- [x] I updated/added relevant documentation (doc comments with `///`).
- [x] The analyzer (`flutter analyze --flutter-repo`) does not report any problems on my PR.
- [x] I read and followed the [Flutter Style Guide], including [Features we expect every widget to implement].
- [x] I signed the [CLA].
- [x] I am willing to follow-up on review comments in a timely manner.

## Breaking Change

Does your PR require Flutter developers to manually update their apps to accommodate your change?

- [ ] Yes, this is a breaking change (Please read [Handling breaking changes]).
- [x] No, this is *not* a breaking change.

<!-- Links -->
[issue database]: https://github.com/flutter/flutter/issues
[Contributor Guide]: https://github.com/flutter/flutter/wiki/Tree-hygiene#overview
[Test Coverage]: https://github.com/flutter/flutter/wiki/Test-coverage-for-package%3Aflutter
[Flutter Style Guide]: https://github.com/flutter/flutter/wiki/Style-guide-for-Flutter-repo
[Features we expect every widget to implement]: https://github.com/flutter/flutter/wiki/Style-guide-for-Flutter-repo#features-we-expect-every-widget-to-implement
[CLA]: https://cla.developers.google.com/
[Handling breaking changes]: https://github.com/flutter/flutter/wiki/Tree-hygiene#handling-breaking-changes
2019-02-26 17:38:21 -08:00
liyuqian
6daad8d0eb
Fix backspace and clear length in AnsiStatus (#28477)
Fixes https://github.com/flutter/flutter/issues/26922

Without the fix, the newly added test failed with the following error:

```
00:07 +24 -4: Spinners AnsiStatus works for fuchsia [E]
  Expected: a non-negative value
    Actual: <-1>
     Which: is not a non-negative value
  The following line has overflow backtraces:
"Hello world                      \b\b\b\b\b\b\b\b       ⣽\b\b\b\b\b\b\b\b       ⣻\b\b\b\b\b\b\b\b       ⢿\b\b\b\b\b\b\b\b       ⡿\b\b\b\b\b\b\b\b       ⣟\b\b\b\b\b\b\b\b       ⣯\b\b\b\b\b\b\b\b       ⣷\b\b\b\b\b\b\b\b       ⣾\b\b\b\b\b\b\b\b       ⣽\b\b\b\b\b\b\b\b       ⣻\b\b\b\b\b\b\b\b       ⢿ (This is taking an unexpectedly long time.)\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b                                                                                                                                                                                                                                                                                                                           ⡿ (This is taking an unexpectedly long time.)\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b                                                                                                                                                                                                                                                                                                                           ⣟ (This is taking an unexpectedly long time.)\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b                                                                                                                                                                                                                                                                                                                           ⣯ (This is taking an unexpectedly long time.)\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b                                                                                                                                                                                                                                                                                                                           ⣷ (This is taking an unexpectedly long time.)\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b                                                                                                                                                                                                                                                                                                                           ⣾ (This is taking an unexpectedly long time.)\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b                                                                                                                                                                                                                                                                                                                           ⣽ (This is taking an unexpectedly long time.)\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b                                                                                                                                                                                                                                                                                                                           ⣻ (This is taking an unexpectedly long time.)\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b                                                                                                                                                                                                                                                                                                                           ⢿ (This is taking an unexpectedly long time.)\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b                                                                                                                                                                                                                                                                                                                           ⡿ (This is taking an unexpectedly long time.)\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b                                                                                                                                                                                                                                                                                                                           ⣟ (This is taking an unexpectedly long time.)\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b                                                                                                                                                                                                                                                                                                                           ⣯ (This is taking an unexpectedly long time.)\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b                                                                                                                                                                                                                                                                                                                           ⣷ (This is taking an unexpectedly long time.)\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b                                                                                                                                                                                                                                                                                                                           ⣾ (This is taking an unexpectedly long time.)\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b                                                                                                                                                                                                                                                                                                                           ⣽ (This is taking an unexpectedly long time.)\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b                                                                                                                                                                                                                                                                                                                           ⣻ (This is taking an unexpectedly long time.)\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b                                                                                                                                                                                                                                                                                                                           ⢿ (This is taking an unexpectedly long time.)\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b                                                                                                                                                                                                                                                                                                                           ⡿ (This is taking an unexpectedly long time.)\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b                                                                                                                                                                                                                                                                                                                           ⣟ (This is taking an unexpectedly long time.)\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b                                                                                                                                                                                                                                                                                                                           ⣯ (This is taking an unexpectedly long time.)"
```
2019-02-26 17:15:39 -08:00
Jonah Williams
6f5f037689
Add basic web device and run support (#28302) 2019-02-26 16:58:24 -08:00
liyuqian
8e6f468435
Fix type issue of the timelineEvents assignment (#28530)
This fixes https://github.com/flutter/flutter/issues/28374

The fact that json_rpc_2 is hiding exceptions like this might be a
bigger issue: https://github.com/flutter/flutter/issues/28531

Merge on red because add2app test is currently flaking out according to @dnfield
2019-02-26 16:38:59 -08:00
Jonah Williams
60730a979b
pass --skip-build-script-checks and remove module usage (#28343) 2019-02-26 13:13:20 -08:00
Jonah Williams
e9b935b00e
use deviceManager discovery in daemon protocol (#28341) 2019-02-26 12:02:27 -08:00
Jonah Williams
d2a76414f4
remove json_schema dep again (#28517) 2019-02-26 12:01:22 -08:00
Stevie Strickland
8709813ac6 Remove unused --packages argument to gen_snapshot. (#28334)
This command line argument has already been removed in the main
Dart repository, so building flutter with the latest dart fails.

This time, also update the tests to avoid the checks for a package
path on snapshot generation.
2019-02-26 10:37:08 +01:00
Will Larche
57a8b03c5e
[Gallery] Fortnightly demo moved from flutter/samples. (#28125)
* [Gallery] Fortnightly demo moved from flutter/samples.

* [Gallery] Fortnightly analysis corrections.

* [Gallery] Minor rename.

* [Gallery] Making floats ints.

* [Gallery] Fortnightly minor visual polish.

* [Gallery] Formatting.

* [Gallery] Upping package version for gallery to support fortnightly demo.

* [Gallery] Fortnightly copy correction.

* [Gallery] Fortnightly study polish.

* [Gallery] Fortnightly polish.

* [Gallery] Fortnightly copy correction.

* [Gallery] Fortnightly copy now held in '''.

* [Gallery] Fortnightly comment.

* [Gallery] Updates necessary when flutter_gallery_assets updates.

* [Gallery] Updating macrobenchmarks because we updated flutter_gallery_assets.

* [Gallery] Moving spaces to beginning of copy lines.

* [Gallery] Copy correction.

* [Gallery] Adding tooltip to satisfy smoke test.

* [Gallery] Minor pr feedback.

* [Gallery] Forced upgrade.
2019-02-24 11:53:43 +01:00
Dan Field
15f2119f2c
Reland "Allow for gradle downloading missing SDK assets" (#28097) (#28355)
* Allow for gradle downloading missing SDK assets if SDK licenses are present.

*  Improvements for windows testing
2019-02-23 09:56:57 -08:00
Jonah Williams
0d6bb6aee8
only perform multi-root mapping if there are multiple roots (#28352) 2019-02-22 19:25:24 -08:00
Stanislav Baranov
7baffa6e72
Dynamic patching support for native code libraries. (#28349) 2019-02-22 17:51:05 -08:00
Stanislav Baranov
3837ec9e96
Reland #27754, now that bsdiff has moved to flutter/packages. (#28291) 2019-02-21 21:59:41 -08:00
Dan Field
74a9086037
Revert "Allow for gradle downloading missing SDK assets (#28097)" (#28295)
This reverts commit 6f5e88a59f.
2019-02-21 16:53:45 -08:00
Dan Field
6f5e88a59f
Allow for gradle downloading missing SDK assets (#28097)
* Allow for gradle downloading missing SDK assets if SDK licenses are present.

* Fix license path for missing sdkmanager

* Cirrus re-run...

* Fix condition check

* rename props, add docs, rename method

* fix tests after param changes

* Fix weird path for flutter run and add tests

* remove print, fix tests
2019-02-21 15:57:20 -08:00
Greg Spencer
b316940051
Fix the length of the valueHelp on the --sample option for the create command, and turn on wrapping. (#28264)
The wrapping for some commands was never actually turned on, so this turns it on.

Also, it shortens the `valueHelp` for the `--sample` option to be just "id" instead of "the sample ID of the desired sample from the API documentation website (http://docs.flutter.io)", which was causing the line to get far too long.

Fixes #23074
2019-02-21 15:56:59 -08:00
Greg Spencer
b45a8f464d
Revert "Remove unused --packages argument to gen_snapshot. (#28101)" (#28265)
This reverts commit 1c021506df.

The pre-commit tests never actually ran, so it looked green when it wasn't. This breaks 16 tests that depend on the argument existing, even though it isn't actually used.
2019-02-21 08:47:24 -08:00
Alexandre Ardhuin
5169ab5974
format parameter list (#27261) 2019-02-21 09:27:07 +01:00
Stevie Strickland
1c021506df Remove unused --packages argument to gen_snapshot. (#28101)
This command line argument has already been removed in the main
Dart repository, so building flutter with the latest dart fails.
2019-02-21 09:03:59 +01:00
Jonah Williams
b594cf85fd
Remove extra slash from builder that is not handled on windows (#28027) 2019-02-20 19:56:02 -08:00
Jonah Williams
72b6ed35d0
Remove set literal syntax (#28238) 2019-02-20 19:55:10 -08:00
Dan Field
4ed096bd29
Remove json_schema and cli_util deps from flutter_tool (#28040)
* remove json_schema dep

* remove unnecessary pin

* removed unused dep

* remove unused impport

* Fix incorrect condition
2019-02-20 15:38:58 -08:00
Stanislav Baranov
20d9de58d0
Revert "Add support for binary compression of dynamic patches by the flutter tool. (#27754)" (#28031)
This reverts commit b47da6c2b7.
2019-02-15 18:43:36 -08:00
Dan Field
c90c3a18a2
Reland automatic discovery of observatory port for iOS (#27908)
* Discover port over mDNS 

* Update BUILD.gn for tools
2019-02-15 17:44:55 -08:00
KyleWong
f9a6090082 Refactor local engine logic (#27765)
* Refactor for iOS.

* For android_xxx_unopt_arm64&ios_xxx_unopt_arm, remove the _arm64/_arm suffix.
dart generated in host_xxx_unopt/host_xxx has an arch of x86_64 which supports arm64/arm.

* Remove suffixes for various archs.
2019-02-15 15:56:49 -08:00
Jonah Williams
67cf21577f
Add basic codegen app to be used for integration testing and benchmarks (#27257) 2019-02-14 23:17:16 -08:00
Jonah Williams
9bc5656637
Wire dart2js through flutter tool, add compilation test (#27668) 2019-02-14 22:42:30 -08:00
KyleWong
e99c881f8d
Don't cache result for homeDirPath. (#27873) 2019-02-14 16:08:26 +08:00
Jonah Williams
537b592ed5 fix multiroot scheme (#27914) 2019-02-13 23:17:28 -05:00
Dan Field
ed4e3da360
update packages and supress lint (#27902) 2019-02-13 15:45:20 -08:00
Alexander Aprelev
8de5a07c3f
Revert "Disable usage of bare instructions in AOT (#27410)" (#27789)
This reverts commit 965dc52e2e as performance gains seems to outweigh compressed apk size increase.
2019-02-13 15:29:50 -08:00
Jonah Williams
a5af29e83c
Revert "Lazily download artifacts (Part II) (#27735)" (#27895)
This reverts commit 76061c4fa9.
2019-02-13 11:59:51 -08:00
Jonah Williams
76061c4fa9
Lazily download artifacts (Part II) (#27735) 2019-02-13 11:04:28 -08:00
KyleWong
4b4a9400b7 Refactor build-number/build-name logic. (#27743)
This PR aims at several things:

1. Use pub_semver to check a version in pubspec.yaml meets the requirements specified in https://semver.org/.
2. Don't limit build-number/build-name as a fixed format. Instead, validate it according to the target(ios/android).
3. Make sure that build-number/build-name are always validated no matter it's specified by the `flutter command` or version in pubspec.yaml.

Fixes #27589
2019-02-13 07:48:03 -08:00
KyleWong
f2004b8f43
Add android studio process logic for JetBrainsToolbox (#27687)
* Make plugin path search logic use version check as a fallback.

* In JetBrainsToolbox, Info.plist would be just some kind of wrapper, we need a double check before get the real one.

* Use Regex to get content instead of `default command` to avoid error output as there could be no JetBrainsToolboxApp key/value for a normal Info.plist(Android Studio.)
2019-02-13 15:05:20 +08:00
KyleWong
199ebaa677 Refactor ios bundleid/android application process logic. (#27471)
When creating a flutter project,
Make sure: applicationid for android conforms to: https://developer.android.com/studio/build/application-id

Make sure: bundleid for ios conforms to:
https://developer.apple.com/library/archive/documentation/FileManagement/Conceptual/understanding_utis/understand_utis_conc/understand_utis_conc.html
(Not only the name,but also the organization, as it's a check for whole bundleid.)
2019-02-12 19:40:53 -08:00
Dan Field
fdcb861b05
Deflake AnsiSpinner tests (#27825) 2019-02-12 12:28:45 -08:00
KyleWong
52687c7910
Optimize flutter run logic for iOS by "ONLY_ACTIVE_ARCH=YES" if possible (#27817) 2019-02-12 12:24:57 +08:00
KyleWong
bf20fa7c9d
Refactor "no ios devices attached" logic. (#27717) 2019-02-12 10:14:01 +08:00
Jonah Williams
23d38901ef
Pass method used to start flutter application (#27812) 2019-02-11 18:05:23 -08:00
Stanislav Baranov
b47da6c2b7
Add support for binary compression of dynamic patches by the flutter tool. (#27754)
This reduces the typical dynamic patch size by more than 10x.

Also see https://github.com/flutter/engine/pull/7777 for decompression support in the runtime.
2019-02-11 16:57:26 -08:00
KyleWong
1c0a06f397 Make version documentation clearer. (#27278)
Currently, in pubspec.yaml, semver.org is referred to for more about versioning.
However, the versionCode/versionName could differ on different platforms (iOS, Android, Dart).

This adds more clear and complete information that could help users to understand it better.

See: #27251
2019-02-11 16:29:38 -08:00
Jonah Williams
4c3d15832d
add desktop devices to daemon behind flag (#27665) 2019-02-11 14:49:07 -08:00
Jonah Williams
216a65b669
remove build_runner_core import from flutter_tools (#27708) 2019-02-08 18:12:28 -08:00
Stanislav Baranov
63e6a7ad30
Support for building dynamic patches in AOT mode. (#27672) 2019-02-08 17:52:57 -08:00
Jonah Williams
7cdb30fba2
Revert "Lazily download artifacts (#27374)" (#27705)
This reverts commit 98971f3c64.
2019-02-08 15:50:18 -08:00
Jonah Williams
98971f3c64
Lazily download artifacts (#27374) 2019-02-08 15:24:09 -08:00
Michael Klimushyn
4a9e5bc11b
Warn when gradle builds fail because of AndroidX (#27566)
Try to detect Gradle error messages that hint at AndroidX problems, and
warn in the logs about the potential problem and point to documentation
on how to fix the issue.

Unfortunately the Gradle errors based on this root issue are varied and
project dependent. It's probably better to still leave the message
intact in case the problem is unrelated.

Also filters out the plugin warning message pending in
flutter/plugins#1138. It's still valuable to add that for people on
previous versions of Flutter, but this link should override that message
for anyone on an up to date version of Flutter.

#27106
2019-02-07 17:23:35 -08:00
KyleWong
99497dc2d9 Refactor android launchable activity extractor logic (#26819) 2019-02-07 13:24:03 -08:00
Jonah Williams
5b943257d7
fix list devices throwing on junk input (#27615) 2019-02-06 15:41:22 -08:00
Jonah Williams
c920cb7c57
Remove build runner from injection (#27607) 2019-02-06 14:38:50 -08:00
Greg Spencer
da27f62337
Make a kReleaseMode constant that is public. (#27502)
Before this, we had several places where an isReleaseMode was defined, all with the same definition. This just makes it more broadly visible to allow our users to use it, as well as creating debug and profile versions, and adding a device lab test for it.

Since this is a const value, this makes it possible for a developer to easily mark blocks that can be removed at AOT compile time.
2019-02-06 14:37:17 -08:00
Jonah Williams
b06a709305
Use flutter_tools to generate build_script (#27277) 2019-02-05 18:35:20 -08:00
KyleWong
7765dd4c3c Refactor logic to get plugins path for android studio in mac (#26964) 2019-02-05 16:48:14 -08:00
Dan Field
704814c67a
Use CP_REPOS_DIR if it's set (#27553)
* Allow CP_REPOS_DIR
2019-02-05 16:03:37 -08:00
xster
36c5e321a5
Print 50000$ monopoly money (#27531) 2019-02-05 15:00:51 -08:00
KyleWong
9abe4c6dfe Fix gradle verbose error. (#26938) 2019-02-05 15:00:18 -08:00
Ryan Macnak
965dc52e2e Disable usage of bare instructions in AOT (#27410)
Issue #27250
2019-02-05 13:52:59 -08:00
木士羽
9f7ab4c4a0 Support using flutter with specific version (#26840)
* Support using flutter with specific version

* Set min supported version to 1.2.1
2019-02-04 11:26:06 -08:00
Jonah Williams
8e2ea26301
Make the deviceDiscovery API overridable (#27378) 2019-01-31 18:42:30 -08:00
Alexander Aprelev
030dc3fade
Don't send accept/reject if compilation never started. (#27319)
* Don't send accept/reject if compilation never started.

Ensure that we wait for reject's response since that is async operation.

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

* Fix analysis errors

* Rename flag. Ensure we raise it on first compilation too.
2019-01-31 17:43:32 -08:00
Zachary Anderson
7634a0ecbe
[flutter_tool,doctor] Fix and test gen_snapshot failure message (#27253) 2019-01-30 13:01:19 -08:00
Michael Goderbauer
6d20ff2446
Remove all obsolete "// ignore:" (#27271) 2019-01-30 08:56:12 -08:00
Jonah Williams
c219e6f3b1
Inject KernelCompiler via KernelCompilerFactory (#27211) 2019-01-30 08:34:01 -08:00
jonnyandrew
59dc909d0f Include empty config in 'flutter config' output (#25094) 2019-01-30 07:36:03 -08:00
sjindel-google
95b34d7a07 Pass --verify-entry-points in debug mode. (#27032) 2019-01-30 07:33:55 -08:00
Todd Volkert
c8c935cd83 Allow bundle identifier to be surrounded with quotes. (#26300)
Picked up from #22498, originally by @jugyo
2019-01-30 07:32:05 -08:00
Jonah Williams
763a8d6d9b
add support to multiroot scheme to PackageUriMapper (#27207) 2019-01-30 07:31:16 -08:00
KyleWong
60aa49e064 Let injectPlugins integrate custom pods (#26970) 2019-01-29 20:33:16 -08:00
Siva
4e68b7c752
Add support for experimental flags during hot reload. (#27252)
* Add support for experimental flags during hot reload.
2019-01-29 17:19:06 -08:00
Alexandre Ardhuin
ef276ffea5
format initializer list of constructors (#27111) 2019-01-29 21:47:16 +01:00
Konstantin Scheglov
4fe41abfcc
Add default values for optional parameters. (#27197) 2019-01-29 11:49:57 -08:00
Chinmay Garde
e38efc890b
Add a flag to enable tracing to systrace. (#27208) 2019-01-28 19:55:01 -08:00
Dan Field
c082f8d8a3
Revert f9e6242db (#26944) (#27191)
* Revert f9e6242db

* fix pubspec

* finish pubspec upgrade
2019-01-28 15:35:59 -08:00
Danny Tuppeny
d5fd57cfbd
Improve unsupported text (#27186) 2019-01-28 17:51:23 +00:00
Danny Tuppeny
64a1ce011a
Change "Starting Xcode build" text to "Running xcode build" (#27181)
This status shows for the duration of the run, not just while starting. It looks kinda weird in the editors to show a progress bar for "Starting Xcode build" and then removing it once it completes.
2019-01-28 16:24:56 +00:00
Jonah Williams
91fd89e8b3
Wrap dart:convert to track utf8 decode failures (#26650) 2019-01-25 16:16:26 -08:00
Jonah Williams
2e8f173f7d
Add flutter_build package for codegen and version sync with tool (#26978) 2019-01-25 16:06:25 -08:00
Dan Field
f9e6242db9
Use mDNS to discover the device port (#26944)
* Discover port over mDNS

* opt in, only for iOS for now
2019-01-25 12:12:17 -08:00
Gary Qian
06b979c4d5
Revert "Warn when building on master channel (#25007)" (#27096)
This reverts commit dd65a54628.
2019-01-25 14:27:35 -05:00
tonyzhao1
e4df6b4efc Change the required version of adb, as older versions break hot reload. (#24746) 2019-01-25 10:37:46 -08:00
Jonah Williams
fa5f3da6f2
Update flutter clean to remove .dart_tool directory (#27054) 2019-01-25 09:30:11 -08:00
Chris Bracken
731221c3e8
Improve documentation on decodeSyslog (#27039)
It appears that the encoding Apple is using to ensure their syslog
conforms with the syslog requirement for seven-bit ASCII encoding (see:
RFC 5424) is `vis`.

Details: https://www.freebsd.org/cgi/man.cgi?query=vis&sektion=3
2019-01-25 06:34:30 -08:00
Gary Qian
b028ee142c Revert "Experimental flags for hot reloads, fixed" (#27059)
* Revert "Make UriMapper and StdoutHandler public and add test cases (#26932)"

This reverts commit 6cf554b0c4.

* Revert "Update packages (#27046)"

This reverts commit 496c57386b.

* Revert "roll engine for TODAY bug (#27049)"

This reverts commit 5ae6346f1d.

* Revert "Warn when building on master channel (#25007)"

This reverts commit dd65a54628.

* Revert "Add experimentalBuildEnabled flag and initial shim for build_runner (#26989)"

This reverts commit 1237ee8f63.

* Revert "Experimental flags for hot reloads, fixed (#27043)"

This reverts commit 2c05d08f0c.
2019-01-24 18:37:56 -08:00
Jonah Williams
6cf554b0c4
Make UriMapper and StdoutHandler public and add test cases (#26932) 2019-01-24 16:17:04 -08:00
Gary Qian
dd65a54628
Warn when building on master channel (#25007) 2019-01-24 19:01:07 -05:00
Jonah Williams
1237ee8f63
Add experimentalBuildEnabled flag and initial shim for build_runner (#26989) 2019-01-24 15:59:55 -08:00
Liam Appelbe
2c05d08f0c
Experimental flags for hot reloads, fixed (#27043)
* Revert "Revert "Experimental flags for hot reloads (#26988)" (#27037)"

This reverts commit cf7441983e.

* Fix analysis failures
2019-01-24 15:58:38 -08:00
Dan Field
cf7441983e
Revert "Experimental flags for hot reloads (#26988)" (#27037)
This reverts commit 763bf11460.
2019-01-24 10:02:38 -08:00
Liam Appelbe
763bf11460
Experimental flags for hot reloads (#26988)
* First pass at incremental exp flags

* adkfgjh
2019-01-24 09:48:10 -08:00
Jonah Williams
1b21d69de4
Support running macOS prebuilt application (#26593) 2019-01-23 16:32:50 -08:00
Dan Field
19b8d2e0a9
Detect Android SDK 28/28.0.3 (#26942)
* Detect Android SDK 28/28.0.3

* revert minimumAndroidSdkVersion const change
2019-01-23 15:56:48 -08:00
Alexandre Ardhuin
66f424f0f8
fix some bad indentations (#26921)
* fix some bad indentations

* remove suspicious line
2019-01-23 15:43:27 +01:00
Jonah Williams
c1fabb9860
make FDE opt-in via the environment variable (#26898) 2019-01-22 18:40:13 -08:00
Dan Field
543f8924b4
Avoid calling cancel on AnsiSpinner more than once when building for iOS (#26826)
* Avoid calling cancel more than once

* add some missing checks for ansispinner
2019-01-21 22:41:35 -08:00
Dan Field
386f3466b5
Roll engine to 05fee4eeee0ff6b219b1fcc394371e5f6963cc46 (#26713)
* move flutter_assets to App.framework

* Roll engine to 05fee4eeee0ff6b219b1fcc394371e5f6963cc46

05fee4eee Update default flutter_assets path for iOS embedding (flutter/engine#7518)
02205db01 Roll src/third_party/skia 5d052dac3ac1..02738a86e5fd (4 commits) (flutter/engine#7541)
af907c074 Roll src/third_party/skia 5c7a3ac0e214..5d052dac3ac1 (7 commits) (flutter/engine#7540)
dde286673 IWYU to get SkFontMetrics (flutter/engine#7539)
2019-01-21 21:23:04 -08:00
Ian Hickson
31a9626c48
[O] Removing all timeouts (mark II) (#26736)
These are essentially self-inflicted race conditions. Instead of timeouts we're going to try a more verbose logging mechanism that points out when things are taking a long time.
2019-01-19 00:31:05 -08:00
Alexander Aprelev
07c592d901
Report early error if appropriate host local engine is not found. (#26766) 2019-01-18 11:26:54 -08:00
Jonah Williams
830c0dfe83
Allow attaching to profile builds (#26720) 2019-01-18 10:09:44 -08:00
Liam Appelbe
9eada88b3e
Experimental flags in flutter (#26715)
* exp flags in flutter

* Fix test failures
2019-01-18 09:07:14 -08:00
Stanislav Baranov
eb8219edd5
Emulator support for dynamic mode on Intel architecture (#26565) 2019-01-17 14:21:35 -08:00
abykov2
3c0a74ef0f Adding a shutdown hook to HotRunnerConfig (#26604) 2019-01-17 08:49:02 -08:00
Kenzie Schmoll
33bfa6a7c5
Register hotRestart service in flutter_tools. (#26669)
* Register hot restart service in flutter_tools.
2019-01-17 08:28:54 -08:00
Jonah Williams
83b9497c69
do not exit tool if fuchsia workflow fails (#26589) 2019-01-16 17:43:01 -08:00
Dan Field
4c99958df6
Revert "Move flutter_assets to App.framework (#26630)" (#26675)
This reverts commit d8db70af1a.
2019-01-16 16:46:37 -08:00
Luca Zuccarini
36a493602c Create an injectable factory for application packages. (#26422) 2019-01-16 14:12:47 -08:00
Dan Field
d8db70af1a
Move flutter_assets to App.framework (#26630)
* move flutter_assets to App.framework

* remove flutter_assets references from all pbxproj files checked in
2019-01-16 14:02:54 -08:00
Vyacheslav Egorov
8f65ee9f53
Fix --build-shared-library on newer NDKs (#26642)
Newer NDKs switched to clang which by default uses system linker, instead
we need to force it to use appropriate toolchain linker by passing
-fuse-ld= command line flag.

Fixes #23458
2019-01-16 21:30:37 +01:00
tonyzhao1
3f3a829c88 Move runner directory messages to the user messages class (#25682) 2019-01-15 10:06:44 -08:00
Dan Field
774e8c18e3
remove ignore_for_file lints (#26545)
* remove ignore_for_file lints

* update comments

* remove example
2019-01-15 08:42:47 -08:00
Jonah Williams
3a694a6d5d
desktop workflow, devices, and test (#26511) 2019-01-15 07:45:04 -08:00
Alexander Aprelev
07e06171ba
Report overall and transfer timings as part of hot reload statistics, analytics. (#26537) 2019-01-14 12:23:09 -08:00
Stanislav Baranov
585e23173a
Friendlier flutter tool messages for dynamic mode (#26378) 2019-01-10 16:07:50 -08:00
Greg Spencer
dca8d36d62
Change flutter create to use master-docs.flutter.io instead of firebase URL. (#25516)
Now that we have our DNS mapping we should refer to the master docs site that way everywhere.
2019-01-10 12:55:57 -08:00
Danny Tuppeny
b16ef489e0
Add a validator to ensure NO_PROXY is set correctly if HTTP_PROXY is set (#25974)
* Add a validator to ensure NO_PROXY is set correctly if HTTP_PROXY is set

Fixes #24854.

* Fix typo

* Dummy edit to try and force update of PR desc on Cirrus
2019-01-10 07:47:29 +00:00
Stanislav Baranov
e2c0349157
Add logic for creating rollback dynamic patches. (#26312)
Before this change, rolling back a patch relied on deleting the patch
file from the server completely. This PR implements a more reliable
approach where developer needs to create a physical rollback patch file.
This is more robust to mistakenly taking down a patch from user devices.
2019-01-09 16:43:03 -08:00
Jonah Williams
a2fa98ebaf
Add polling module discovery for Fuchsia (#24994) 2019-01-09 09:28:31 -08:00
Jonah Williams
32041c0c9c
Reland: Switch to dev_finder (#26250) 2019-01-09 09:27:56 -08:00
KyleWong
6f1d10b71a Fix recursive link resulted flutter doctor stucking. See : #25885 and #25870 (#26017) 2019-01-09 09:04:45 -08:00
KyleWong
87d6e93c46 Improve the intergrity checking for "gradle wrapper". (#26069) 2019-01-08 18:34:58 -08:00
Jonah Williams
985ccb6d14
Revert "Replace netls and netaddr with dev_finder" (#26249)
* Revert "Replace netls and netaddr with dev_finder (#26090)"

This reverts commit eee154affb.
2019-01-08 13:45:55 -08:00
Jonah Williams
eee154affb
Replace netls and netaddr with dev_finder (#26090) 2019-01-08 12:07:12 -08:00
Jonah Williams
891036c9b9
Prevent calls to view.uiIsolate.flutterExit on devices which do not support it (#26201) 2019-01-07 21:58:15 -08:00
Stanislav Baranov
e54e53c13b
Better error messages for flutter tool --dynamic flag. (#26107) 2019-01-07 12:24:24 -08:00
Stanislav Baranov
4b474d61c6
Put correct VM snapshot in APK, and actually precache gen_snapshot on Mac. (#26104) 2019-01-07 12:22:55 -08:00
Alexander Aprelev
6502a1bed9
Report hot reload statistics. (#26039)
* Report hot reload statistic

* Lints

* Introduce custom dimensions identifiers to track hot reload stats
2019-01-05 07:34:02 -08:00
Stanislav Baranov
acdd9206aa
Improve message when saving compilation training data. (#26084) 2019-01-04 11:57:32 -08:00
Stanislav Baranov
b57499e704
Friendlier messages when using dynamic patching (#25863) 2019-01-03 16:18:36 -08:00
KyleWong
85ded44139 Optimize cocoapods logic in flutter doctor. (#25872) 2019-01-02 19:57:03 -08:00
Stanislav Baranov
bacaab9795
Allow dynamic patches without a patch number. (#25796)
Unique patch numbers are mainly useful for canary and A-B testing, but otherwise complicate things and can now be omitted.
2018-12-27 11:57:16 -08:00
Alexander Aprelev
52bd2ccb8b
Report devfs stats (#25586)
* Collect devfs stats for better analytics

* Fix fields initialization

* Fix lints
2018-12-27 09:53:24 -08:00
Stanislav Baranov
6d6ada14a0
Friendlier flags for Dart compilation training. (#25645)
* Renamed --save-compilation-trace to flutter run --train.
* Renamed --precompile=<file> to --compilation-trace-file=<file>.
* In dynamic mode, made JIT snapshot the default, instead of kernel file.
2018-12-21 12:27:59 -08:00
Ian Hickson
fb88a7bfd1
Update links for China help (#25238)
We have a page on the Web page now.
2018-12-21 10:12:49 -08:00
Pranay Airan
368cd7da8b
Adding support for android app bundle - Issue #17829 (#24440)
* adding support for android app bundle.

* removing the debug statement.

* fixing formatting and code review changes.

* Revert "fixing formatting and code review changes."

This reverts commit 2041d459f3.

* Fixing code formatting issues.

* updating review comments fixing comments and spacing.

* changing and to & to rerun the CI and tests.

* updating the comment to re-run the test

updating the comment to re-run the test

* fixing the formatting.

* updating comments to re-trigger build

updating comments to re-trigger build
2018-12-20 22:18:53 -08:00
Ian Hickson
8426910a19
Revert "[O] Remove many timeouts. (#23531)" (#25646)
This reverts commit 76f70810e4.
2018-12-20 18:46:36 -08:00
Ian Hickson
76f70810e4
[O] Remove many timeouts. (#23531)
* Remove many timeouts.

These are essentially self-inflicted race conditions. Instead of timeouts we're going to try a more verbose logging mechanism that points out when things are taking a long time.

* Get the attach tests to pass.

* Apply review comments from Todd

* More review comment fixes

* Put back the extended timeouts here now that I know why we have them...
2018-12-20 17:10:40 -08:00
Stanislav Baranov
eb7a59b6d7
Switch over to the new name for compilation trace native function (#25594)
* Switch over to the new name for compilation trace native function.

Also see: https://github.com/flutter/engine/pull/7256

* rename

* roll the engine
2018-12-20 16:07:36 -08:00
Dan Field
7a88fbc5fd
Default baseline build options (#25631)
* fix crash

* default baseline
2018-12-20 11:38:07 -08:00
Stanislav Baranov
41fd7a2b9d
Don't parse APK unless explicitly requested (#25595) 2018-12-20 10:08:05 -08:00
Stanislav Baranov
55f3da7afc
Flutter tool support for building dynamic updates (#25576) 2018-12-19 16:27:47 -08:00
xster
b17feefc9e
Remove code signing special casing for Googlers round 2 (#24580) 2018-12-19 14:41:21 -08:00
tonyzhao1
f8ab72657e Flutter doctor error message lookup (#23889) 2018-12-19 10:10:08 -08:00
Stanislav Baranov
693fb6560e
Fix flutter tool to actually honor --build-number/--build-name flags. (#25520) 2018-12-18 12:54:26 -08:00
Stanislav Baranov
0d4f279fb8
Read correct cached VM snapshot in dynamic mode (PRODUCT vs RELEASE) (#25472) 2018-12-18 12:53:30 -08:00
Stanislav Baranov
f6c1476fbb
Fix gradle local.properties tests that were never excersized. (#25484)
These tests were actually failing, but were silently ignored due overly broad exception catching logic.
2018-12-18 10:39:27 -08:00
Danny Tuppeny
cbb168e7b9
Fix (probably) bad assert when running flutter test with asserts and --start-paused (#25512)
Fixes #25201.
2018-12-18 16:03:56 +00:00
Devon Carew
ba71933f58
don't warn for non-matching device discoverers (#25440)
* don't warn for non-matching device discoverers

* remove an out of date test
2018-12-17 14:54:18 -08:00
Devon Carew
632e21b40b
fix the daemon device.getDevices call (#25443) 2018-12-17 12:38:14 -08:00
Zachary Anderson
b18a2b1794
[fuchsia] Get Dart VM service ports from The Hub (#25332) 2018-12-17 11:10:47 -08:00
Danny Tuppeny
c19142d8b7
Support ANDROID_SDK_ROOT in addition to ANDROID_HOME (#25221)
* Fall back to ANDROID_SDK_ROOT if ANDROID_HOME is not set

And update descriptions to use the non-deprecated ANDROID_SDK_ROOT.

Fixes #15114.

* Remove trailing whitespace

* Update dev/devicelab/lib/framework/adb.dart

Co-Authored-By: DanTup <danny@tuppeny.com>

* Reformat long line
2018-12-17 17:29:09 +00:00
Stanislav Baranov
c5251cdc02
Flutter tool support for automatic saving of JIT compilation trace (#25301) 2018-12-14 16:09:17 -08:00
Jonah Williams
b4f1d5a924
Add fuchsia devices to daemon command (#25344) 2018-12-14 14:37:55 -08:00
David Shuckerow
1a60b166f2
Add ipv6 and observatory port support to the attach command (#25303)
* Add ipv6 and observatory port support to the attach command.

* Remove whitespace

* Explain why a name change is useful here

* Refactor common flags out into the parent

* Add an additional test case for when observatory port is provided but debug port is not

* Remove whitespace

* Fix flag validation
2018-12-14 18:03:49 -04:00
David Shuckerow
e6292c8da1
Revert "Add ipv6 and observatory port support to the attach command." (#25288)
* Revert "e5195ee47 Remove unnecessary includes of Ganesh headers (flutter/engine#7189) (#25282)"

This reverts commit f198d66332.

* Revert "Validate style in TextField (#24587)"

This reverts commit 9a8e2f0c4b.

* Revert "Allow snippets tool to be run from arbitrary CWDs (#25243)"

This reverts commit 4a110b6227.

* Revert "Make doctor output consistent between VS Code/IntelliJ/Android Studio when plugins are missing (#25269)"

This reverts commit e29b023a6b.

* Revert "Add ipv6 and observatory port support to the attach command. (#24537)"

This reverts commit 9150b3f031.
2018-12-12 16:56:50 -04:00
Danny Tuppeny
e29b023a6b
Make doctor output consistent between VS Code/IntelliJ/Android Studio when plugins are missing (#25269)
* Update VS Code validator to match Android Studio

- Now shows a tick (instead of partial) if installed
- Now shows a cross (instead of dot) if extension is not installed

Fixes #22931.
2018-12-12 17:36:42 +00:00
David Shuckerow
9150b3f031 Add ipv6 and observatory port support to the attach command. (#24537) 2018-12-12 08:28:02 -08:00
Jonah Williams
c461e93363
Revert "Ensure that cache dirs and files have appropriate permissions" (#25240) 2018-12-11 15:33:57 -08:00
Danny Tuppeny
3f1c308e58
Don't require the AVD folder to exist in order to run flutter emulators (#25154)
Fixes #24750.
2018-12-11 15:27:25 +00:00
Jonah Williams
61291aeeaf
ensure lastBuildTimestamp is set before early return (#25058) 2018-12-10 15:57:52 -08:00
Todd Volkert
243222c00d
Include error message in crash reports (#24632)
This modifies our flutter_tools crash reports to include the error
message. This error message may contain personally identifying
information (PII), such as a file system path on the developer's
local machine that may contain user names, project code names,
etc. To disable crash reporting, the developer can run the
following command:

    flutter config --no-analytics

For more information on what gets reported during crashes of the
flutter tool, see:

https://github.com/flutter/flutter/wiki/Flutter-CLI-crash-reporting
2018-12-10 13:59:47 -08:00
Todd Volkert
74ab1bfbbd
Ensure that cache dirs and files have appropriate permissions (#24669)
Fixes https://github.com/flutter/flutter/issues/24413
2018-12-10 13:39:50 -08:00
Jonah Williams
a226c0f0d9
Add a flutter-attach entry point for fuchsia (#24878) 2018-11-30 16:18:18 -08:00
Jonah Williams
f5b02e3c05
Bump minimum ios_deploy version (#24550) 2018-11-20 07:49:29 -08:00
Victor Florintsev
16b9a80ccd added definition for hardware (#24502)
This is the hardware used in the Samsung Galaxy J7
2018-11-19 14:18:01 -08:00
Alexandre Ardhuin
79b5e5bc8a
Add missing lints (#24381)
* update lint list

* enable sort_pub_dependencies

* enable avoid_returning_null_for_void

* enable flutter_style_todos
2018-11-19 10:37:55 +01:00
Danny Tuppeny
08e7f26510
Remove timeout waiting for app to start (#24336) 2018-11-19 07:15:52 +00:00
Jonah Williams
938dd5a4aa
Revert "Update driver script to execute test through test_core" (#24401)
* Revert "Add dashing config file for generating docset from flutter docs (#24374)"

This reverts commit ec8ca8606c.

* Revert "Update driver script to execute test through test_core (#24168)"

This reverts commit 6c62cf337f.
2018-11-15 11:17:00 -08:00
Jonah Williams
6c62cf337f
Update driver script to execute test through test_core (#24168) 2018-11-15 10:50:25 -08:00
Greg Spencer
eb35f8923b
Reland: Make the 'time to update' message depend up on the channel. (#24173) (#24321)
Fixes #24158
Re-lands #24173
2018-11-14 16:51:12 -08:00
Alexander Aprelev
3b7942c444
Fix multi-step build handling process. (#24310)
* Fix multi-step build handling process.

Stop listening for new step updates after 'all done.' log message. Make sure that we don't delete file too soon, until listener had a chance to process the 'all done' message.

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

* Emit 'all output' explicitly when build process is done.
2018-11-14 08:54:13 -08:00
Greg Spencer
a2ed3ecb64
Revert "Make the 'time to update' message depend up on the channel. (#24173)" (#24320)
This reverts commit 97e03104a0.

Landing on red to hopefully make less red on the board.

TBR=@goderbauer
2018-11-13 17:18:06 -08:00
Greg Spencer
97e03104a0
Make the 'time to update' message depend up on the channel. (#24173)
Fixes #24158
2018-11-13 09:53:56 -08:00
Jonah Williams
aa65fa2fa1
Remove await for syntax from fuchsia log scanner (#24263) 2018-11-12 23:47:16 -08:00
Jonah Williams
2e33d08dae
communicate fuchsia error states to developers (#24191) 2018-11-12 23:46:14 -08:00
Jonah Williams
5839710859
Throw a better error when old test versions are loaded. (#24217) 2018-11-10 19:32:35 -08:00
Jonah Williams
a871d59164
Apply basic log filtering and formatting to fuchsia logs. (#24143) 2018-11-10 17:02:32 -08:00
Jonah Williams
c11633e84e
Separate hot reload and hot restart capabilities. (#24122) 2018-11-09 10:33:22 -08:00
Jonah Williams
ae2b215efe
make sure we dont use test (#24146) 2018-11-09 00:40:29 -08:00
Ian Hickson
6bfd9bb996 Fix a race condition in vmservice_test.dart (#23835)
Fixes https://github.com/flutter/flutter/issues/19273
2018-11-08 20:54:06 -08:00
Jonah Williams
d04fa1a670
only pass packages once (#24074) 2018-11-07 21:57:00 -08:00
Ian Hickson
f9374fe071
Update the URL to the recommend bug report (#23708)
We have templates now.
2018-11-07 17:12:35 -08:00
jslavitz
5dac7a2347
Removes check for Homebrew if all necessary packages are present. (#23844)
* Removes need for homebrew installation if all other packages are installed. Modifies test to work with this new functionality.
2018-11-07 15:21:05 -08:00
Ryan Macnak
d92d175bcb Opt into deterministic snapshots.
Also, remove old flags.
2018-11-07 14:44:20 -08:00
jslavitz
50fb729609
Includes frameworkVersion in JSON version output (#23891)
* Include framework version in JSON output and adds test
2018-11-07 12:28:22 -08:00
Jonah Williams
6c88b2e9fb
restore compileExpressionService (#24063) 2018-11-07 12:04:05 -08:00
jslavitz
34fa90b062
Improves SDK Search Error Messages (#23884)
* Improves error message and adds test.
2018-11-06 15:13:35 -08:00
Jonah Williams
81c7af342d
Add fuchsia specific entrypoint (#23916) 2018-11-06 14:36:35 -08:00
Jonah Williams
a43e3a4a2f
Retry remove package:test from flutter (#24007) 2018-11-06 10:48:34 -08:00
Jonah Williams
23a7535a39
Revert "Remove package:test dependency from flutter_test (#23755)" (#24004)
This reverts commit 71e9bd6f25.
2018-11-06 09:12:48 -08:00
Jonah Williams
71e9bd6f25
Remove package:test dependency from flutter_test (#23755) 2018-11-06 08:39:27 -08:00
Jonah Williams
9b66fea2ea
Follow up to https://github.com/flutter/flutter/pull/23436 (#23876) 2018-11-06 08:37:53 -08:00
Todd Volkert
07d1ba87e0
Update doctor instructions for libimobiledevice installation (#23946)
https://github.com/flutter/flutter/issues/22595
2018-11-05 15:10:13 -08:00
mattijsf
54becbf3bf Ignore unreachable iOS devices in IOSDevice.getAttachedDevices (#23776) 2018-11-05 15:09:39 -08:00
Alexandre Ardhuin
344ebe02ff
avoid returning null for Future (#23784) 2018-11-05 16:38:23 +01:00
Alexander Aprelev
34bc1e3c8c
Fix hanging of flutter run when running on more than one simulator. (#23932)
This stops reading from pipe-to-file log after the build is completed. Attempting to read from pipe-to-file keeps open blocked because nobody is going to write into that pipe.
2018-11-05 07:29:37 -08:00
Danny Tuppeny
8e7c8048de
Don't search in %LocalAppData% if it's not set (#23933)
It's not usual for this not to be set, but it affected at least one user (#23909) and there are a non-zero number of people online saying it's not set. It's better that we don't crash.

Fixes #23909.
2018-11-05 08:57:49 +00:00
Jonah Williams
d52f315c35
Add new benchmark to track cost of dependencies to a User (#23856) 2018-11-02 13:38:54 -07:00
Jonah Williams
d80999d6b8
Support attach on fuchsia devices (#23436) 2018-11-01 20:04:52 -07:00
Alexander Aprelev
47f62109d2
Specify UDID for idevicelistener. (#23854)
This is needed to run flutter app on multiple iOS devices at a time.
2018-11-01 20:04:42 -07:00
Dan Field
fd6b2e198c
Re-reland Xcode backend refactor (#23762)
* Use Xcode build configurations to drive Flutter build mode

* Proper check wrt local_engine, print error if profile mode misisng

* Remove unused code, update tests, fix template problem, update warning

* fix up warning

* add explanatory dev comment

* fix whitespace

* missing words, change lambda arrow to function body

* error indentation

* Test early exits for xcode_backend.sh

* only on macOS, use right test

* Update error messages

* case insensitive compare for build config

* Update gallery podfile

* update projects to add profile configuration

* make compatible with flavors

* add missing plist files

* add FLUTTER_FRAMEWORK_DIR back, set swift version for profile, tell Podfile about profile
2018-10-31 16:37:53 -07:00
Greg Spencer
1b9cba4b42
Make sure we refer to 'stable', and not 'release' branch. (#23745) 2018-10-30 16:57:54 -07:00
Greg Spencer
f9c6f30576
Allow users to create samples using flutter create. (#23584)
This adds flutter create --sample which allows users to execute a command which will create a working sample app from samples embedded in the API docs.

The command looks something like this:

flutter create --sample=chip.DeletableChipAttributes.onDeleted mysample
2018-10-30 16:01:14 -07:00
Greg Spencer
4559ae1a6b
Stop wrapping adb, gradle and ios logger output, and update terminal wrapping column dynamically. (#23592)
Subcommand output (gradle, adb, etc) is no longer wrapped, and wrapping notices when the terminal column width changes dynamically now.

Fixes #23267.
Fixes #23266.
2018-10-30 16:00:50 -07:00
Dan Field
7217999a9a
Revert "Reland Xcode backend refactor" (#23737)
* Revert "Update templates (#23698)"

This reverts commit 5b0de6d679.

* Revert "Verify that date/number translations exist for all supported languages (#23692)"

This reverts commit 3449edf256.

* Revert "Reland Xcode backend refactor (#23574)"

This reverts commit 7270f2845d.
2018-10-30 09:36:31 -07:00
Dan Field
7270f2845d
Reland Xcode backend refactor (#23574)
* Use Xcode build configurations to drive Flutter build mode

* Proper check wrt local_engine, print error if profile mode misisng

* Remove unused code, update tests, fix template problem, update warning

* fix up warning

* add explanatory dev comment

* fix whitespace

* missing words, change lambda arrow to function body

* error indentation

* Test early exits for xcode_backend.sh

* only on macOS, use right test

* Update error messages

* case insensitive compare for build config

* Update gallery podfile

* update projects to add profile configuration

* make compatible with flavors

* add missing plist files
2018-10-30 07:23:19 -07:00
Alexander Aprelev
5fc6b87174
Reland change that speeds up multiple devices hot-reload (#23695)
* Revert "Revert "Run reload asynchronously so that multiple devices can reload in parallel. (#22693)" (#23598)"

This reverts commit 0b68068d6a.

* Fix refreshViews so it sends app-wide(rather than per-isolate) service request.

Sending per-isolate request caused dead-lock in the engine in case of more-than-one ui isolate.
2018-10-29 18:51:57 -07:00
Ben Konyi
b1a23299e1
Added '--check-for-remote-artifacts' option for Flutter Doctor. (#23543)
* Added '--check-for-remote-artifacts' option for Flutter Doctor.

This option takes a Flutter engine revision and issues HEAD requests to
determine whether or not artifacts for the provided engine revision are
available from cloud storage. This functionality is needed for the Dart
SDK autoroller to avoid creating a PR to roll the engine into the
framework while artifacts haven't finished building, which would cause
Cirrus tests to fail.
2018-10-29 17:03:22 -07:00
Ian Hickson
5b4a5da78e
Revert "[O] Fix a race condition in vmservice_test.dart" (#23647)
* Revert "[H] Created a variant of InheritedWidget specifically for Listenables (#23393)"

This reverts commit 931328596a.

* Revert "Fix a race condition in vmservice_test.dart (#23529)"

This reverts commit 5e7b0a366b.
2018-10-28 13:43:15 -07:00
Ian Hickson
5e7b0a366b
Fix a race condition in vmservice_test.dart (#23529)
Fixes https://github.com/flutter/flutter/issues/19273
2018-10-27 16:50:53 -07:00
Alexander Aprelev
0b68068d6a
Revert "Run reload asynchronously so that multiple devices can reload in parallel. (#22693)" (#23598)
This reverts commit 709f54f4bb as it seems to have broken two tests: flutter_gallery__back_button_memory, named_isolates_test.
2018-10-26 18:56:49 -07:00
Greg Spencer
dc2cc6375c
Simplify the version string for customer consumption. (#23578)
Fixes #21825
2018-10-26 13:21:36 -07:00
Alexander Aprelev
709f54f4bb
Run reload asynchronously so that multiple devices can reload in parallel. (#22693)
* Run reload asynchronously so that multiple devices can reload in parallel.
2018-10-26 10:32:25 -07:00
Alexander Aprelev
558ee42b2e
Register expression compiler in flutter test setting. (#23511)
* Register expression compiler in flutter test setting so that debugger expression evaluation is functional there.

* Fix analyzer lints
2018-10-26 08:04:58 -07:00
Dan Field
628e8ec0b9
Revert "Xcode backend refactor (#23387)" (#23528)
This reverts commit def1d80566.
2018-10-25 13:25:09 -07:00
Dan Field
def1d80566
Xcode backend refactor (#23387)
* Use Xcode build configurations to drive Flutter build mode
2018-10-25 11:29:31 -07:00
Jason Simmons
549e8e07c6
Support launching flutter_tools from a package URI (#23476) 2018-10-24 14:41:16 -07:00
Danny Tuppeny
aa83f77a49
Fix --pid-file not working for --machine + add to attach command (#23242)
* Fix --pid-file not working for --machine + add to attach

Fixes #23201.

* Add tests for --pid-file in run+attach
2018-10-24 07:21:36 +01:00
Jonah Williams
b21d0de0d6
Revert "Add explicit completed status trace to hot reload and restart commands" (#23445)
* Revert "Remove duplicate code comment in flutter_gallery (#23422)"

This reverts commit 8039620bb4.

* Revert "Add explicit completed status trace to hot reload and restart commands (#23338)"

This reverts commit 245ef023b2.
2018-10-23 19:02:42 -07:00
Jonah Williams
245ef023b2
Add explicit completed status trace to hot reload and restart commands (#23338) 2018-10-23 18:12:34 -07:00
Jacob Richman
f5f70f0c99
Include .track in file names for cached dill files for builds with --track-widget-creation (#23299)
Ensure that cached dill files for builds with --track-widget-creation
always have .track. in the file name to avoid mixing transformed and
untransformed kernel files.
2018-10-23 10:09:18 -07:00
Michael Goderbauer
dc36195cb3
Reland "Remove all service extensions from release mode (#23038)" (#23291) 2018-10-23 03:53:29 +02:00
Jason Simmons
a6a1607888
Roll engine to 4c79e423dc6f89f98d8ceb263a5ca78e2f2da996 (#23384)
Also includes
  * Updates to affected tests
  * Change flutter_tools to pass package URIs to the Dart front end
    instead of filesystem paths
2018-10-22 18:03:50 -07:00
Jonah Williams
b7c9c96c6b
Support for fuchsia device discovery, workflow, and sdk wrapper (#23282) 2018-10-22 16:48:17 -07:00
Stanislav Baranov
323d1574c6
newly created apps / plugins should use latest gradle dependencies (#22790) (#23314) 2018-10-19 19:07:06 -07:00
Devon Carew
48fe65c236
allow todos in user code to show in IDEs (#23303) 2018-10-19 14:10:54 -07:00
Greg Spencer
2000583ed3
Revert "don't disable TODO issues in IDEs (#23274)" (#23297)
Devon asked me to revert commit c4d1b31b74.

Merging on red to fix the build.
2018-10-19 10:03:35 -07:00
Devon Carew
c4d1b31b74
don't disable TODO issues in IDEs (#23274)
* don't disable TODO issues in IDEs

* minor change to start cirrus
2018-10-19 08:01:05 -07:00
Siva
cf18d01e86
Disable unsafePackageSerialization as it causes issues when coverage is turned on (#23280)
* Disable unsafePackageSerialization as it causes issues when coverage is
used (see https://github.com/dart-lang/sdk/issues/34841)

* Restore Coverage.
2018-10-19 06:19:24 -07:00
Michael Goderbauer
bb0290a4dc
Revert "Remove all service extensions from release mode (#23038)" (#23290)
This reverts commit 8e2ca93f52.

Fixes https://github.com/flutter/flutter/issues/23172
2018-10-19 11:48:15 +02:00
Alexander Aprelev
be0dde4114
Remove optimization that was trying to bypass build process for iOS sim. (#23268)
This optimization resulted in app still running with old kernel file.
Fixes another source of https://github.com/flutter/flutter/issues/16604
2018-10-18 20:45:48 -07:00
Yegor
82d6589590
Revert "newly created apps / plugins should use latest gradle dependencies (#22790)" (#23263)
This reverts commit 751c083f7d.

Our buildbots need to be upgraded to a newer version of the Android SDK.
2018-10-18 14:17:47 -07:00
Sebastian Roth
751c083f7d newly created apps / plugins should use latest gradle dependencies (#22790) 2018-10-18 12:56:18 -07:00
Greg Spencer
36983508ad
Update wrapping message (#23104)
Updating the --wrap-column help message to reflect reality.
2018-10-18 10:56:52 -07:00
Yegor
3fbd140e77
Use new mixin syntax for super-mixins (#22870)
This re-lands 3c56e6c on top of a new Dart SDK that contains new mixin syntax fixes.
2018-10-17 13:10:05 -07:00
Sebastian Roth
b95b67a66b allow command line option "--project-name" in flutter create (#22022)
Simple convenience function if users create flutter projects in custom folder structures and but want to specify a custom project name.
2018-10-17 08:25:46 -07:00
Michael Klimushyn
4f8acd8462
Set FlutterDevice.viewFilter by CLI flag (#23026)
`FlutterDevice.views` is limited by a filter. Pipe this filter up as an
option for the commands that instantiate `FlutterDevice`s. This is the
first change necessary for the CLI tooling to target specific isolates
(#22009).

More work needs to be done after this patch.
* Isolate names are dynamically generated and change every restart.
* This just filters views, not background isolates (`VMService.isolates`).
2018-10-17 08:07:49 -07:00
Jacob Richman
f86bdf1aa2
Fix bug where gradle build rule would rerun on switching from (#23183)
--track-widget-creation=false to
--track-widget-creation=true
but not when switching from
--track-widget-creation=true
to
--track-widget-creation=false

due to the surprising behavior of Gradle @Optional inputs.
2018-10-17 07:39:20 -07:00
Alexandre Ardhuin
8b0de38ef8
fix upcoming lint avoid_returning_null_for_void (#23190) 2018-10-17 11:01:37 +02:00
Jonah Williams
c9ca7c4936
Add override frontend_server snapshot for fuchsia_reload command (#23162) 2018-10-16 14:27:22 -07:00
Alexandre Ardhuin
0fb84e96c7
Prefer void to null (#22977)
* Future<void> main

* Future<void>.delayed

* prefer_void_to_Null

* address review comments
2018-10-16 22:03:06 +02:00
Mehmet Fidanboylu
16f7d4016e
Remove unneeded flutter-assets-dir flag for the tester (#23125) 2018-10-15 20:12:14 -07:00
Michael Goderbauer
8e2ca93f52
Remove all service extensions from release mode (#23038)
Service extensions can only be activated in debug or profile mode, their code should never be included in release mode. This PR adds guards around all service extension registration calls that enable Dart's tree shaker to remove the extension's code in release mode, which reduces our binary size:

Android Snapshot (uncompressed): minus 127,384 Bytes (-124.40KB)
APK (compressed): minus 38,136 Bytes (-37.24KB)
iOS Snapshot (App.framework, uncompressed): 264,304 Bytes(-258.10KB)

For details: https://docs.google.com/document/d/13JlgvliCn5sWwT2K2SfDwD1NhEfxpJH9DCf22gZZru8/edit

**Benchmark Regressions:** This PR may cause benchmarks to regress because it may change the timing of GC. If you notice a benchmark regression **please note down the exact set of benchmarks that regressed on this PR** and then feel free to revert. I will follow-up with a PR that forces a GC before the effected benchmarks run to get a clean baseline before re-applying this PR.
2018-10-12 21:07:55 -07:00
Alexander Aprelev
e274ed866a [dart] Roll engine to dart roll 2018-10-10 20:45:22 -07:00
Greg Spencer
081d2a7a86
Re-land text wrapping/color PR (#22831)
This attempts to re-land #22656.

There are two changes from the original:

I turned off wrapping completely when not sending output to a terminal. Previously I had defaulted to wrapping at and arbitrary 100 chars in that case, just to keep long messages from being too long, but that turns out the be a bad idea because there are tests that are relying on the specific form of the output. It's also pretty arbitrary, and mostly people sending output to a non-terminal will want unwrapped text.

I found a better way to terminate ANSI color/bold sequences, so that they can be embedded within each other without needed quite as complex a dance with removing redundant sequences.

As part of these changes, I removed the Logger.supportsColor setter so that the one source of truth for color support is in AnsiTerminal.supportsColor.

*     Turn on line wrapping again in usage and status messages, adds ANSI color to doctor and analysis messages. (#22656)

    This turns on text wrapping for usage messages and status messages. When on a terminal, wraps to the width of the terminal. When writing to a non-terminal, wrap lines at a default column width (currently defined to be 100 chars). If --no-wrap is specified, then no wrapping occurs. If --wrap-column is specified, wraps to that column (if --wrap is on).

    Adds ANSI color to the doctor and analysis output on terminals. This is in this PR with the wrapping, since wrapping needs to know how to count visible characters in the presence of ANSI sequences. (This is just one more step towards re-implementing all of Curses for Flutter. :-)) Will not print ANSI sequences when sent to a non-terminal, or of --no-color is specified.

    Fixes ANSI color and bold sequences so that they can be combined (bold, colored text), and a small bug in indentation calculation for wrapping.

    Since wrapping is now turned on, also removed many redundant '\n's in the code.
2018-10-10 18:17:56 -07:00
Greg Spencer
0ff9e8a928
Rename 'application' back to 'module', and make 'app' the default again for templates. (#22888)
We decided that redefining the default for templates was premature. We're going to go back to having "module" in experimental land again, and we'll try again when we have the feature set fully baked.

This keeps the writing of the .metadata files, and writing the template type to them, because that was a good improvement, and there are still a bunch of added tests that improve our coverage.
2018-10-10 11:01:40 -07:00
Danny Tuppeny
a02f9d501b
Allow passing a restart reason through to analytics (#21983)
* Allow passing a restart reason through to analytics

* Update to avoid overlaps with other code

* Remove TODO as this is the real live value

* Improve formatting + constant name
2018-10-10 10:23:32 +01:00
Jorge Coca
422e56c29c Added support for Gradle productFlavors that are not only lowercase (#22767)
Fixes https://github.com/flutter/flutter/issues/19507
2018-10-09 20:04:29 -07:00
Greg Spencer
485ed2f655
Fix DevFS to understand missing files in _stat() (#22844)
Fixes #22451
2018-10-09 14:33:47 -07:00
Stanislav Baranov
570ae840f2
Remove unused deps and flags from flutter tool. (#22571) 2018-10-09 13:04:06 -07:00
Greg Spencer
c81f4c71a2
Have runAsyncChecked throw a ProcessException instead of a String. (#22710) 2018-10-08 19:11:31 -07:00
matthew-carroll
4f298e6776
Publish make-host-app-editable command with CLI docs. (#22635)
Publish make-host-app-editable command with CLI docs.
2018-10-08 16:02:13 -07:00
Greg Spencer
e0b182e61a
Fix gradle error in devicelab tests (#22814)
Fixes a gradle error where it was failing to find a plugin because of an absolute path in the .flutter-plugins file instead of a relative path.

I had originally removed this variable because I thought it was redundant with the projectDir, but apparently I was wrong about that (one resolves to a relative path, and one resolves to an absolute path).

This PR reverts that part of the change and reintroduces the (not really) redundant variable.
2018-10-08 09:38:37 -07:00
Greg Spencer
2d81adf74c
Revert "Turn on line wrapping in usage and status messages, adds ANSI color to doctor and analysis messages. (#22656)" (#22759)
This reverts commit e438632165
because it breaks 160 benchmarks, and several devicelab tests,
due to changing the format of the output.
2018-10-05 22:29:37 -07:00
Greg Spencer
e438632165
Turn on line wrapping in usage and status messages, adds ANSI color to doctor and analysis messages. (#22656)
This turns on text wrapping for usage messages and status messages. When on a terminal, wraps to the width of the terminal. When writing to a non-terminal, wrap lines at a default column width (currently defined to be 100 chars). If --no-wrap is specified, then no wrapping occurs. If --wrap-column is specified, wraps to that column (if --wrap is on).

Adds ANSI color to the doctor and analysis output on terminals. This is in this PR with the wrapping, since wrapping needs to know how to count visible characters in the presence of ANSI sequences. (This is just one more step towards re-implementing all of Curses for Flutter. :-)) Will not print ANSI sequences when sent to a non-terminal, or of --no-color is specified.

Fixes ANSI color and bold sequences so that they can be combined (bold, colored text), and a small bug in indentation calculation for wrapping.

Since wrapping is now turned on, also removed many redundant '\n's in the code.
2018-10-05 20:00:11 -07:00
Greg Spencer
21a32fdd0c
Fixes the project detection logic when creating new projects over existing directories. (#22744)
This all happened because I was trying to be a little too helpful...

Part of the job of the "create" command is to recreate missing pieces of existing projects, and now that the default has changed, I wanted to make it so that if someone had created a default flutter create project before, that they could run a default flutter create there again, and not have it trashed by using the new default template (application) over the old one (app).

This meant I had to detect what type of project it was. Unfortunately, in the past we didn't write anything in the .metadata file to identify the type of project, and since the goal was regenerating missing files, I can't count on anything existing, so it's just a heuristic match.

This simplifies the heuristics down to just detecting the difference between "app" and "application" projects, and only detect the other types if they're explicitly listed in the .metadata file (I changed the code in my original PR to add the project type to the .metadata file). People used to have to specify the type for those anyhow, so it shouldn't be a surprise to users.

So, the main difference in the new heuristics from my last attempt is that if you have a directory that has some other stuff it (like maybe a "plugin" project), then we'll recreate (pronounced "mess up") the project using the "application" template, but that was true before (except it would use the "app" template).

Fixes #22726
2018-10-05 15:49:53 -07:00
Yegor
3184b7cb66
Revert "Use mixin syntax for Flutter's super-mixins (#22435)" (#22748)
This reverts commit 3c56e6c77d.

It breaks the AOT build.
2018-10-05 15:09:38 -07:00
Yegor
3c56e6c77d
Use mixin syntax for Flutter's super-mixins (#22435)
* first pass

* revert WidgetsBindingObserver

* disable prefer_mixin

* docs and more mixins

* newer engine; binding fixes

* upgrade dependencies

* fix test binding

* remove whitespace

* remove the obsolete `enableSuperMixins: true`

* upgrade dartdoc to 0.22.0

* temporarily use git version of dartdoc

* fix pub global activate syntax

* use dartdoc 0.23.0
2018-10-05 14:54:41 -07:00
Jason Simmons
9588946365
Do not continue a hot restart if _restartFromSources fails (#22645) 2018-10-05 13:48:41 -07:00
Danny Tuppeny
3ea4b44374
Increase timeout waiting for app to start (#22504)
https://github.com/flutter/flutter/issues/22338#issuecomment-425794734 shows almost 1 minute being spent on the `Resolving Dependencies` step alone. Possibly this needs to go higher still, but this should be a good start.
2018-10-05 17:02:08 +01:00
tonyzhao1
b04447d51c Split Android license checks into their own subvalidator (#22446) 2018-10-05 08:45:16 -07:00
Alexandre Ardhuin
2d3ff10d62
apply lint prefer_void_to_null in packages/flutter_tools (#22686) 2018-10-05 07:54:56 +02:00
Greg Spencer
40a7a9cfc3
Fixes a common crash in getAdbDevices when adb executable isn't found. (#22676)
Apparently, this accounts for 13% of our crashes in Beta.
2018-10-04 15:57:15 -07:00
Greg Spencer
9f23866a0a
Rename module --> application in flutter create command. (#22565)
This renames the "module" template to the "application" template, and makes "application" the default. The existing "app" template is now deprecated.

flutter create also now recognizes the type of project in an existing directory, and is able to recreate it without having the template type explicitly specified (although you can still do that). It does this now by first looking in the .metadata file for the new project_type field, and if it doesn't find that, then it looks at the directory structure. Also, the .metadata file is now overwritten even on an existing directory so that 1) the project_type can be added to legacy projects, and 2) the version of Flutter that updated the project last is updated.

I also cleaned up a bunch of things in create_test.dart, added many more tests, and added an example test to the test/ directory in the generated output of the application template.

Fixes #22530
Fixes #22344
2018-10-04 13:03:20 -07:00
Jason Simmons
e031613a2a
Use "gradle tasks --all" to query build variants (#21761)
Previously flutter_tools had used "gradle properties" to find the build types
and flavors supported by the Gradle project.  Tasks should work more reliably
across different versions of the Android Gradle plugin.

Fixes https://github.com/flutter/flutter/issues/20781
2018-10-04 10:06:31 -07:00
Alexandre Ardhuin
2ea1d81cdc
sort_constructors_first (#22575) 2018-10-04 07:28:07 +02:00
Danny Tuppeny
d89604d85c
Change file paths to URIs to fix "Could not run configuration in engine" on Windows (#22507)
* Change file paths to URIs to fix "Could not run configuration in engine" on Windows

Plus unskip test that was failing due to this.

Fixes #21348.

* Remove unused import
2018-10-02 18:31:55 +01:00
Alexandre Ardhuin
5de96bb734
unnecessary this in field initializers (#22522) 2018-10-02 17:14:59 +02:00
jensjoha
4bd6ad7395
Use unsafePackageSerialization when running tests (#22407) 2018-10-02 08:36:21 +02:00
Jason Simmons
3581b3ae85
Make font manifest descriptors consistent with the paths used for font assets (#22375)
The asset subsystem uses URIs to represent asset locations.  The font manifest
should also use URI-encoded paths instead of unencoded paths taken directly
from the manifest YAML.

Fixes https://github.com/flutter/flutter/issues/19452
2018-10-01 14:14:48 -07:00
Alexandre Ardhuin
f62afdcf57
add missing type parameter on methods (#22096) 2018-10-01 21:29:08 +02:00
Jonah Williams
224f91e386
Revert "Eliminate snapshot, depfile opts from bundle cmd (#22495)" (#22519)
This reverts commit b07d986f66.
2018-10-01 10:49:39 -07:00
Chris Bracken
b07d986f66
Eliminate snapshot, depfile opts from bundle cmd (#22495)
Eliminates the --snapshot and --depfile parameters from the flutter
bundle command. The snapshot parameter is unused in Dart 2 -- code is
built to kernel .dill files and for profile/release builds, then AOT
compiled.

While depfiles are still used in Dart 2 (e.g. by the kernel compiler),
there are enough assumptions in the code that they lie in the default
location (e.g. in the Gradle build) and no reasons to support
user-cusomisation that it makes sense to eliminate the --depfile option
as well, and always use the default location.

This commit also renames 'depFilePath' to 'depfilePath' for consistency
across the codebase.
2018-10-01 10:19:37 -07:00
Tran Huy Phuc
481cb77a4c Fix flutter emaultors crash when ini file is not parsed (#22503)
Fixes #22247.
2018-10-01 18:02:43 +01:00
shrike69
c496751ae8
Change flutter tool to not require Fuchsia build args (#22382)
* Change flutter tool to not require Fuchsia build args

* Restore code that was commented out.

* Fix style nits.
2018-09-28 15:13:47 -07:00
Stanislav Baranov
54c10f44b2
Implement build flow for hot updates on Android (#22391)
This also involves switching from Core JIT to App JIT snapshot, and replacing per-isolate VM snapshot with the shared VM snapshot.

For now there is no separate update bundle file, as the generated update gets packaged directly into the APK for testing purposes.
2018-09-28 13:58:37 -07:00
shrike69
fd8a9603ac
Remove waitForViews() during hot reload (#22371) 2018-09-28 11:35:38 -07:00
xster
6cdf953241 Revert "remove code signing special casing for Googlers (#22287)" (#22376)
This reverts commit 1eb38abdb7.
2018-09-27 14:43:54 -07:00
xster
1eb38abdb7
remove code signing special casing for Googlers (#22287) 2018-09-27 14:03:52 -07:00
Derek Hannah
fafd615a81 updated Flutter Doctor grammar (#19676)
* updated Flutter Doctor grammar

* updated messaging based on a suggestion by Greg Spencer

* grammar update
2018-09-27 09:47:36 -07:00
Jonah Williams
63f2fb9f5d
Add coverage directory to fuchsia coverage script (#22236) 2018-09-26 13:17:20 -07:00
Greg Spencer
306bcbde8a Fixes terse doctor output when no devices available. (#22108) 2018-09-26 09:33:08 -07:00
Mikkel Nygaard Ravn
52697ef962 Fixes to support add2app on iOS (#22277)
* Fix xcode_backend.sh script to support add2app

* Fix ios deployment target. Too old for new Xcode.

* Fix ios host app

* Register plugins with Flutter view
2018-09-26 01:57:05 -04:00
Mikkel Nygaard Ravn
a600fe7f13 Support materializing Flutter module host app on iOS (#21276)
* Prototype

* Fix paths to Flutter library resources

* Invoke pod install as necessary for materialized modules

* Add devicelab test for module use on iOS

* Remove debug output

* Rebase, reame materialize editable

* Add devicelab test editable iOS host app

* Removed add2app test section
2018-09-25 15:21:13 -04:00
Greg Spencer
eadd59a9ec
Swap out the moon emoji used for progress spinner for a single-cell character. (#22243)
Swap out the moon emoji used for progress spinner for a single-cell character.

The moon emoji looked cool, but couldn't be used because of bugs in xterm.js, used for VSCode's terminal, among others. The moon emoji is two character cells wide, but xterm.js doesn't advance by two cells when it adds the emoji, but does go back by two when it backspaces.

This changes us to a different character animation (dots) that is only one cell wide, and so doesn't have this problem.
2018-09-25 10:55:41 -07:00
Ian Hickson
989cf18b0d
[H] Cleanup (#21542)
* Improve documentation and clean up code.

* Remove "Note that".

The phrase "note that" is basically meaningless as a prefix to an
otherwise fine sentence.
2018-09-22 02:02:56 -07:00
Greg Spencer
efcd9a8001
Simplify Gradle compiler output. (#21760)
This changes the compiler output for gradle to be less verbose and more easily read.

This only applies to compilation error messages: other gradle messages will continue to print as before.

It also fixes a small problem with the performance measurement printing (see that "7.1s" on it's own line in the original?) so that if something is expected to have multiple lines of output, it prints an initial line, and a "Done" line with the elapsed time, so that it's possible to know what the time applies to.

It also updates the spinner to be fancier, at least on platforms other than Windows (which is missing a lot of symbols in its console font).

Addresses #17307
2018-09-20 15:45:48 -07:00
Alexander Markov
83cdb5738e
Cleanup uses of entry points files (#22098) 2018-09-20 15:10:41 -07:00
Stanislav Baranov
c799c2fd80
Use "product" mode VM snapshot when running dynamic "release" mode flutter with cached engine. (#22043)
Dynamic "release" mode requires "product" (not "release") mode VM, so we must point it to the correct cached snapshot.

Generation and caching of this snapshot happens the following corresponding change: https://chromium-review.googlesource.com/c/chromium/tools/build/+/1232134
2018-09-20 13:12:38 -07:00
tonyzhao1
8b5af14f24 Use grouped validator instead of categories (#21577)
This is a cleanup PR.
2018-09-19 15:42:51 -07:00
Greg Spencer
7caa65943f
Added more extensive ANSI color printing support on terminals. (#20958)
This adds support to AnsiTerminal for colored output, and makes all tool output written to stderr (with the printError function) colored red.

No color codes are sent if the terminal doesn't support color (or isn't a terminal).

Also makes "progress" output print the elapsed time when not connected to a terminal, so that redirected output and terminal output match (redirected output doesn't print the spinner, however).

Addresses #17307
2018-09-19 15:22:43 -07:00
matthew-carroll
18d5b9dc45
Renamed 'flutter materialize' to 'flutter make-host-app-editable'. The iOS version is still incomplete and will therefore require additional renaming. (#21771) (#22006) 2018-09-18 17:58:20 -07:00
Chris Bracken
f8c50ea15f
Use Xcode legacy build system for iOS builds (#21901) (#21994)
Xcode 10 introduces a new build system which includes stricter checks on
duplicate build outputs.

When plugins are in use, there are two competing build actions that copy
Flutter.framework into the build application Frameworks directory:

  1. The Embed Frameworks build phase for the Runner project
  2. The [CP] Embed Pods Frameworks build phase that pod install creates
     in the project.

Item (1) is there to ensure the framework is copied into the built app
in the case where there are no plugins (and therefore no CocoaPods
integration in the Xcode project). Item (2) is there because Flutter's
podspec declares Flutter.framework as a vended_framework, and CocoaPods
automatically adds a copy step for each such vended_framework in the
transitive closure of CocoaPods dependencies.

As an immediate fix, we opt back into the build system used by Xcode 9
and earlier. Longer term, we need to update our templates and
flutter_tools to correctly handle this situation.

See: https://github.com/flutter/flutter/issues/20685
2018-09-18 10:05:46 -07:00
Danny Tuppeny
ff9dc22e44
Run logcat through shell (#21977)
This should fix #18889 which may be related to `adb logcat` not working correctly in non-terminals on some LG devices. See https://github.com/flutter/flutter/issues/18889#issuecomment-422217761.
2018-09-18 17:57:31 +01:00
Chris Bracken
4c045e79fb
Revert "Use Xcode legacy build system for iOS builds (#21901)" (#21966)
This caused issues for projects without an Xcode workspace. Almost all
Flutter projects in the wild will have a workspace, but this patch needs
to add a check to catch any that lack one.

This reverts commit 021f472efc.
2018-09-17 18:22:54 -07:00
Chris Bracken
021f472efc
Use Xcode legacy build system for iOS builds (#21901)
Xcode 10 introduces a new build system which includes stricter checks on
duplicate build outputs.

When plugins are in use, there are two competing build actions that copy
Flutter.framework into the build application Frameworks directory:

  1. The Embed Frameworks build phase for the Runner project
  2. The [CP] Embed Pods Frameworks build phase that pod install creates
     in the project.

Item (1) is there to ensure the framework is copied into the built app
in the case where there are no plugins (and therefore no CocoaPods
integration in the Xcode project). Item (2) is there because Flutter's
podspec declares Flutter.framework as a vended_framework, and CocoaPods
automatically adds a copy step for each such vended_framework in the
transitive closure of CocoaPods dependencies.

As an immediate fix, we opt back into the build system used by Xcode 9
and earlier. Longer term, we need to update our templates and
flutter_tools to correctly handle this situation.

See: https://github.com/flutter/flutter/issues/20685
2018-09-17 17:54:57 -07:00
Alexandre Ardhuin
a07d3719a1
enable lint prefer_generic_function_type_aliases (#21680) 2018-09-14 21:06:19 +02:00
Mehmet Fidanboylu
2895d71b79
Make Flutter repo Dart SDK 2.1-dev3.1 compatible (#21853)
This is a blocker for Google roll since we are not at dev4.0:
- Future is not yet part of dart:core.
- Future.sync().then<dynamic>... causes failure without the new keyword.
2018-09-13 18:50:21 -07:00
Alexander Aprelev
199422cd2d
Skip first time full dill transfer (#21133)
* Don't sync first full kernel file.

* Update the comment
2018-09-13 09:01:47 -07:00
Joao da Silva
66e5422375 Check for AndroidStudio plugins in the right .dot dir. (#20619)
This fixes issues 11940 and 18155.
2018-09-12 08:15:30 -07:00
Alexandre Ardhuin
d927c93310
Unnecessary new (#20138)
* enable lint unnecessary_new

* fix tests

* fix tests

* fix tests
2018-09-12 08:29:29 +02:00
Todd Volkert
d7a0dcaa4a
Fix race condition in resident_runner (#21696)
* Don't set the `vmServices` member variable until it's fully initialized.
* Add a timeout to the future that sends the 'started' event to the IDE

https://github.com/flutter/flutter/issues/16604
2018-09-11 20:58:47 -07:00
Alexandre Ardhuin
774ca2f197
enable lint avoid_void_async (#21652) 2018-09-11 07:14:04 +02:00
Alexander Aprelev
e2e241320b
Update fuchsia-tester so it takes map of kernel test files (#21573)
* Update fuchsia-tester so it takes map of kernel test files

* Set mainDart correctly. Cleanup nits.
2018-09-08 17:53:40 -07:00
Jason Simmons
6effa190b9
Return an error from flutter_tools if gen_snapshot fails in an AOT build (#21576)
Fixes https://github.com/flutter/flutter/issues/21215
2018-09-07 16:44:01 -07:00
Chris Bracken
05d557b9ef
Make FlutterDevice.generator final (#21555)
Now that Dart 1 support has been eliminated, generator should always be
populated to a kernel compiler instance.

Also moves the constructor to the top of the class, and orders final
fields before non-final fields, as dictated by the style guide.
2018-09-07 13:56:04 -07:00
Chris Bracken
5ab9e70727
Revert "Eliminate snapshot/depfile options to build bundle (#21507)" (#21563)
This tickled a bug in KernelCompiler.compile() where the fingerprinter
doesn't include the outputFilePath in its list of dependencies. As such,
if the output .dill file is missing or corrupted, the fingerprint still
matches and re-compile is skipped, even though it shouldn't be. I'll fix
that in a followup, then look at how this triggered that issue. My
hypothesis is that that it's due to the aot kernel compile and bundle
kernel compile have separate output directories for the .dill files
(build/ vs build/aot) but the same output directory for the associated
depfiles (due to this patch).

This reverts commit 43a106e95a.
2018-09-07 12:33:05 -07:00
Chris Bracken
43a106e95a
Eliminate snapshot/depfile options to build bundle (#21507)
The --snapshot argument was only necessary in Dart 1. The --depfile
argument was only used in Dart 2 mode to pass to the kernel compiler,
but was inconsistent with the 'build aot' command, where the depfile was
always set to build/kernel_compile.d.

This patch updates 'build bundle' to emit the depfile to a location
consistent with the 'build aot' command; since it's not intended to be
user-configurable and flutter.gradle hardcodes the location to
build/kernel_compile.d either way, this patch also eliminates the
ability to configure the filename altogether.
2018-09-07 10:21:55 -07:00
Chris Bracken
3519eabe8a
Do not pass --preview-dart-2 to Dart VM (#21455)
--preview-dart-2 is no longer necessary as it is now the default for the
standalone Dart VM.
2018-09-06 10:59:37 -07:00
Danny Tuppeny
7fc9165e4e
Add a detach command to detach without terminating (#21490)
* Add a detach command to detach without terminating (#21376)

* Add a detach command to detach without terminating

Fixes #21154.

* Bump protocol version for app.detach

* Tweak to detach/quit text

* Change logPrefix to named param

* Fix the text that the devicelab attach test looks for
2018-09-06 15:26:55 +01:00
Devon Carew
e55b0f5244
remove the --use-cfe flag from flutter analyze (#21463) 2018-09-06 07:18:59 -07:00
Jonah Williams
2c1d12d4f7
Revert "Add a detach command to detach without terminating" (#21464) 2018-09-05 18:03:43 -07:00
Danny Tuppeny
409baff3ac
Revert "Allow FlutterTester to be provided with the working directory for execution (#21119)" (#21453)
This reverts commit 857bdc7a9a.
2018-09-05 21:31:29 +01:00
Danny Tuppeny
857bdc7a9a
Allow FlutterTester to be provided with the working directory for execution (#21119)
* Allow FlutterTester to be provided with the working directory for execution

Previously this test set fs.currentDirectory which prevents running tests concurrently. This allows setting the working directory for a FlutterTester in the cosntructor (optionally) and passes it through from the test (without setting fs.currentDirectory).

* Remove trailing whitespace
2018-09-05 19:37:04 +01:00
Danny Tuppeny
eb9c975eb0
Add a detach command to detach without terminating (#21376)
* Add a detach command to detach without terminating

Fixes #21154.

* Bump protocol version for app.detach

* Tweak to detach/quit text

* Change logPrefix to named param
2018-09-05 19:31:21 +01:00
Chris Bracken
05edc00a6f
Eliminate Dart 1 support from Flutter test (#21408) 2018-09-05 10:41:44 -07:00
Matteo Crippa
5907a7264d Fix/ios run simulator (#20262) 2018-09-05 09:03:08 -07:00
Danny Tuppeny
6e64cb0ad8
Fix windows crash running flutter run which tries to find Xcode (#21423)
* Add a failing test for #21418

* Filter workflows to only those applicable to the current platform

Fixes #21418.
2018-09-05 16:22:12 +01:00
tonyzhao1
58d98ce31e Create categories for doctor validators (#20758)
* First step in Flutter Doctor refactor. Assigns categories to all validators.

* Revert "Roll engine e54bc4ea1832..a84b210b3d26 (6 commits) (#20453)"

This reverts commit 05c2880a17.

* Split iOS and Android workflows into workflow and validator classes.

* Change ValidatorCategory to handle standalone validators that share a
category (e.g. IntelliJ).

Also make Android Studio and Android toolchain use separate categories.

At this stage, flutter doctor output matches what it was previously.
(The summary() method itself has not yet been changed )

* Change doctor summary code to support validator categories.

Output is still unchanged.

* Handle small formatting issues.

* Flip Flutter category's isGroup field to false until it's actually
needed.

* Revert auto-generated formatting changes to keep those lines from
muddying the pull.

* Small fixes pointed out by analyzer.

* Properly fix analyzer issues around const constructors.

* Small changes to address comments.

* Add tests to verify grouped validator behavior and validationtype
merging.

* Update doctor.dart

* Add comments for clarification.
2018-09-04 19:36:47 -07:00
Chris Bracken
2ab4ed748e
Eliminate Dart 1 support from DevFS (#21404)
Dart 1 is no longer supported in Flutter. Hot reload now always occurs
via kernel file updates (plus any asset bundle changes).
2018-09-04 16:47:57 -07:00
Chris Bracken
70eefd1e9c
Eliminate Dart 1 support from FlutterDevice class (#21402) 2018-09-04 15:42:05 -07:00
Chris Bracken
63fde92adc
Eliminate Dart 1 support from Xcode xcconfig files (#21400) 2018-09-04 14:33:49 -07:00
Chris Bracken
d04a057efd
Eliminate BuildInfo.previewDart2 (now always true) (#21392)
Dart 1 is no longer supported in Flutter.
2018-09-04 13:38:17 -07:00
Chris Bracken
ac8b906cb4
Eliminate support for Dart 1 in AOT snapshotter (#21388) 2018-09-04 10:17:12 -07:00
Chris Bracken
ed0b8be041
Eliminate script snapshot support (#21387)
Script snapshots were only every used in Dart 1 mode, which is no longer
supported.
2018-09-04 10:05:26 -07:00
Chris Bracken
041ff621a7
Eliminate --preview-dart-2 flag (#21304)
This patch eliminates the --preview-dart-2/--no-preview-dart-2 flag,
hardcoding all uses to true. It also defaults all previewDart2 method
parameters to true, where they hadn't yet been.

A series of subsequent patches will eliminate all previewDart2
parameters and the associated code from within the codebase.
2018-09-04 08:50:05 -07:00
jensjoha
cd65903f56
Initialize from dill on tests (#20414) 2018-09-04 11:17:10 +02:00
Chris Bracken
4a0106658f
Migrate hot reload tests to Dart 2 (#21290) 2018-08-31 15:40:00 -07:00
Chris Bracken
251e82d211
Migrate devfs tests to Dart 2 (#21285)
DevFS.update only runs in Dart 2 mode when the generator parameter is
supplied. In Dart 2 mode, both mainPath and pathToReload are required
parameters; this patch marks them as such.

generator is required for running in Dart 2. All call sites other than tests already explicitly set this value.

Note the statements on line 510 and line 516 for why mainPath and pathToReload are required.
2018-08-31 13:31:56 -07:00
Chris Bracken
9d0084ff57
Restrict compilationQueue to library-visibility (#21280)
Its type uses a generic type which is limited to library-visibility.
Eliminating compilationQueue from ResidentCompiler's public interface
makes it possible to mock in tests.
2018-08-31 12:22:50 -07:00
Mikkel Nygaard Ravn
6cc8008283
Fix extraction of product bundle ID for iOS projects (#21252) 2018-08-31 11:07:15 +02:00
xster
cda2c223f5
Turn on unawaited_futures in flutter_tools (#21048) 2018-08-30 20:57:44 -07:00
Alexander Aprelev
e4b7e87bdd
Pass uri instead of filepaths when hot-reloading. (#21201)
* Pass uri instead of filepaths when hot-reloading.

Bug: https://github.com/flutter/flutter/issues/21168

* Remove imports. Enable another test

* Restore skipping of test on mac
2018-08-30 12:08:23 -07:00
Suvorov Daniil
7598050fff Add VS Code path to user install (#21070) 2018-08-30 18:42:25 +01:00
Jonah Williams
d1417c72a3
'fix' build (#21225) 2018-08-30 09:51:01 -07:00
Mikkel Nygaard Ravn
22832d3634
Support for flutter run/build module on iOS (#21216) 2018-08-30 16:18:44 +02:00
Greg Spencer
7cebaac985
Makes switching channels remove version freshness stamp. (#21182)
When switching between channels, we were leaving around the version freshness stamp file (bin/cache/flutter_version_check.stamp), which meant that the flutter tool would read from that file to see what the cached date of the most recent commit to the current channel (branch) was. The problem was that since the file was created while on the previous channel, the cached date was for the wrong channel, so if you switch from master to beta, flutter would think that the channel was out of date, and a new version was available, at least for three days after the first time it checked (after three days since the last time the freshness was checked, the cached date would get updated).

This PR modifies the channel command to remove that stamp file whenever the user switches channels, so that the cached date will be from the right channel when it is recreated.

Fixes #21134
2018-08-29 21:53:39 -07:00
Alexander Aprelev
1e5cb2d87f
Remove workaround for compiler dill-initialization. (#20541)
Workaround is not needed since real fix has landed in dart sdk: https://dart-review.googlesource.com/c/sdk/+/62729.
2018-08-29 08:56:19 -07:00
Alexander Aprelev
cf764e3012
Use differrent name for initial flutter tester kernel file. (#21137)
Bug: https://github.com/flutter/flutter/issues/17833
2018-08-28 22:16:38 -07:00
Ian Hickson
10aa41f00f
Fix coverage collection crash (#21015)
* Fix coverage collection crash

Based on Jason's patch in https://github.com/flutter/flutter/pull/19546/

This is more or less the same but I tried to avoid using `dynamic`.

* Improve argument and variable names in flutter_platform

* Don't bother with reduce, since the order is guaranteed.
2018-08-28 14:36:06 -07:00
David Shuckerow
77095356e9
Attach command: add Bazel filesystem support (#21082) 2018-08-28 14:50:03 -06:00
Danny Tuppeny
dc5a5c18a9
Start logger in startProgress to avoid assertion failure (#20814)
* Start logger in startProgress to avoid assertion failure

There are lots of places that create a Status() and all but two of them call ..start() immediately. This is one of the places that doesn't, which causes an assertion failure when running with --enable-asserts and the other is in the same file (I suspect it's also incorrect, but possibly it's never used - I'll look at that separately when I can trace some code that calls it).

Fixes #20812.

* Enable asserts for tools tests

* Fix lint

* Rename enableAsserts -> enableFlutterToolAsserts

To make it clearer that it only enables asserts for flutter_tools when set.
2018-08-23 20:49:59 +01:00
Ian Hickson
b7261586e5
Audit TODO syntax (#20837)
Fixes the pattern for some TODOs to match our style guide.

(Also, a couple of minor code order fixes.)
2018-08-21 14:02:11 -07:00
Devon Carew
392a178169
add a --use-cfe option to flutter analyze (#20742)
* add a --use-cfe option to flutter analyze

* useCFE ==> useCfe
2018-08-21 10:45:37 -07:00
JustWe
58b8460c45 release lock (#19671) 2018-08-21 10:19:11 -07:00
Amir Hardon
09fec4c51b Canonicalize path depdendencies in flutter update-packages
The tool was failing if we had 2 separate non-canonical paths to the
same canonical paths.
2018-08-20 14:29:26 -07:00
Amir Hardon
592731f220 Clone goldens as part of flutter update-packages.
flutter_tools cannot depend on flutter_goldens (as flutter_goldens
depdends on the Flutter sdk), so this commit splits client.dart from
flutter_goldens to a pure-dart flutter_goldens_client package.
2018-08-20 14:29:26 -07:00
Ian Hickson
ad1eaff45a
flutter analyze cleanup (#20490)
* `flutter analyze` cleanup

* Make `--dartdocs` work in all modes.
* Make `analyze-sample-code.dart` more resilient.
* Add a test for `analyze-sample-code.dart`.
* Minor cleanup in related code and files.

* Apply review comments

* Fix tests
2018-08-20 12:51:07 -07:00
Ian Hickson
f688b0d56b
Delete all temporary files in flutter test. (#20679)
Turns out we weren't deleting the dill directory or the fonts directory.
2018-08-18 16:45:41 -07:00
Ian Hickson
8c79f40d71
Fixes resulting from audit of issues links (#20772)
* Fixes resulting from audit of issues links

I looked at every link to GitHub in our repo. For cases where we had a TODO that was waiting for a bug to be fixed, and the bug has now been fixed, I applied the pending change. For cases where the link was out of date, I updated the link.

* Update run_test.dart

skip this test again since it failed on linux and macos bots
2018-08-18 16:44:39 -07:00
TL Lee
e2f3b3d6f2 Feature pesto new recipes (#19415)
<img width="273" alt="pesto_before" src="https://user-images.githubusercontent.com/13839358/43009716-64b6d726-8c0c-11e8-989a-13eaff72ccee.png">
<img width="273" alt="pesto_after" src="https://user-images.githubusercontent.com/13839358/43009717-66074a34-8c0c-11e8-92ae-f5fb4074f43a.png">
2018-08-17 17:58:25 -04:00
Ian Hickson
3dec6a6930
Clean up usage of temporary directories (#20682)
All temporary directory start with `flutter_` and have their random component separated from the name by a period, as in `flutter_test_bundle.YFYQMY`.

I've tried to find some of the places where we didn't cleanly delete temporary directories, too. This greatly reduces, though it does not entirely eliminate, the directories we leave behind when running tests, especially `flutter_tools` tests.

While I was at it I standardized on `tempDir` as the variable name for temporary directories, since it was the most common, removing occurrences of `temp` and `tmp`, among others.

Also I factored out some common code that used to catch exceptions that happen on Windows, and made more places use that pattern.
2018-08-17 13:17:23 -07:00
Ian Hickson
d581208557
Try to resolve an intermitted crash during coverage collection (#20506)
* Try to resolve an intermitted crash during coverage collection

The only theory I can come up with is that maybe the test completes
before we finish processing the standard input, so I made the test
harness wait for the observatory URL before considering whether the
test has finished or not.

Also, some code cleanup while I'm at it, e.g. avoiding using "onFoo"
for the names of methods, avoiding back-to-back switch statements with
the same values, avoiding `_` argument names, and using `?.` instead
of `if (foo != null) foo.`.

* Revert back the signature of _pipeStandardStreamsToConsole

* Also remove the other additions to this method.
2018-08-17 13:16:50 -07:00
Alexander Aprelev
e1534b8ecb
Add '-t' option to 'attach' command. (#20539)
* Add '-t' option to 'attach' command.

* Add test

* Make analyzer happy

* Fix tests so they use memory file system and can find lib/main.dart
2018-08-16 13:11:44 -07:00
Stanislav Baranov
b5b55447a4
Remove unused snapshot.d depfile parameter (#20584) 2018-08-16 08:47:20 -07:00
Stanislav Baranov
2c0329a103
Replace flutter --build-snapshot with --precompile that takes input (#20574) 2018-08-16 08:46:57 -07:00
Stanislav Baranov
393f9276ca
Reland Flutter tool support for dynamic code #20543 (#20646) 2018-08-16 08:43:41 -07:00
Mikkel Nygaard Ravn
d4e5e1e11e
Materialize Flutter module, Android (#20520) 2018-08-16 13:21:55 +02:00
Chinmay Garde
f62e6d9e43
Fix type mismatch while taking a screenshot using the resident runner. (#20555) 2018-08-15 17:27:57 -07:00
Martin Kustermann
9299c02cf7 Reland "Roll engine to version e3687f70c7ece72000b32ee1b3c02755ba5361ac (#20427)" (#20633)
* Reland "Roll engine to version b148e628ec86b3a9a0382e0bcfae73f0390a8232 (#20427)"

This is a re-land with downgraded `package:flutter_gallery_assets`
version.

* Downgrade package:flutter_gallery_assets to 0.1.4

* Change engine.version to 81baff97c29bb08cbf8453a3f9042c5813f84ad3 (which contains an additional fix)

* Change engine.version to e3687f70c7ece72000b32ee1b3c02755ba5361ac (since mac tarballs are corrupted on earlier commit)
2018-08-15 15:35:12 -07:00
Jonah Williams
58e52cc177
Revert "Flutter tool support for dynamic code" (#20644)
* Revert "iOS Dialog blur, brightness, and layout (#18381)"

This reverts commit 21bc9f1b02.

* Revert "Flutter tool support for dynamic code. (#20543)"

This reverts commit 25ba90aafa.
2018-08-15 13:32:22 -07:00
Stanislav Baranov
25ba90aafa
Flutter tool support for dynamic code. (#20543) 2018-08-15 12:27:35 -07:00
Ian Hickson
98c117bb38
Implement flutter test -j (#20493) 2018-08-15 12:22:30 -07:00
Martin Kustermann
515909ecb6
Revert "Roll engine to version b148e628ec86b3a9a0382e0bcfae73f0390a8232 (#20427)" (#20631)
Reason for revert: The package:flutter_gallery_assets has removed some images which are required for the examples/flutter_gallery, so the gallery build is failing (only discovered after landing, since gallery doesn't seem to get built during github PR presubmit checks)
2018-08-15 16:25:51 +02:00
Martin Kustermann
c7c493ea5d
Roll engine to version b148e628ec86b3a9a0382e0bcfae73f0390a8232 (#20427)
This CL

  * rolls `engine.version` to flutter/engine@b148e628 (which includes dart sdk 2.1.0-dev)
  * rolls `goldens.version` to flutter/goldens@6c45fafdf (which includes updates due to skia changes in engine)
  * changes `platform.dill` to `platform_strong.dill` in various places due to flutter/engine@a84b210b
  * adds explicit `environment: sdk: ">=2.0.0-dev.68 < 3.0.0"` constraints to `pubspec.yaml` and `pubspec.yaml.tmpl` files (since pub defaults to `<2.0.0` if omitted) 
  * upgrades to newer versions of various 3rd party packages (to ensure transitive dependencies have `<3.0.0` sdk constraint)
2018-08-15 15:22:05 +02:00
Ian Hickson
686d8f8a22 Shim package:test to avoid matcher issues (#20602)
* Upgrade everything except matcher.
* Roll matcher (and test)
* Adjust tests that depend on flutter:test directly to depend on a shim
* Require use of package:test shim and remove other references to package:test
2018-08-14 20:33:58 -07:00
Greg Spencer
7bdd31f7aa
Fix access of null compiler in flutter tests that fail before creating the compiler. (#20553)
In certain cases, the test would fail before creating the (lazily created) compiler object, and then we'd
try to call shutdown() on null in those cases.

Fixes #18610
2018-08-14 10:04:44 -07:00
Mikkel Nygaard Ravn
e69b434602
Fix broken Flutter module with plugins (#20496) 2018-08-13 10:35:59 +02:00
Todd Volkert
5d8771d18d
Update fuchsia_tester to work in (and require) Dart 2 mode (#20460) 2018-08-10 21:18:10 -07:00
Mikkel Nygaard Ravn
a737c86a19
Avoid null manifests in FlutterProject (#20332) 2018-08-10 21:49:24 +02:00
Mikkel Nygaard Ravn
3c83c52697
FlutterProject refactoring and test coverage (#20296) 2018-08-07 23:43:15 +02:00
Greg Spencer
e60087a1a7
Remove Travis configuration from flutter/flutter (#20288)
This removes the final traces of Travis and Appveyor from the Flutter tree.

I've updated the documentation and fixed a couple of places where scripts look for Travis, and eliminated the dart tools runningOnTravis function (which was unused anyhow).

There are places in the flutter script that used to look for the environment variable TRAVIS. We actually do want to continue to detect that we're running on Travis there, since in the plugins repo we still use Travis (for the moment). In any case, it's OK, because the CI environment variable is set on all of the CI bots (Cirrus, Travis, and Appveyor).

FastLane doesn't have a setup_cirrus equivalent to setup_travis, but it actually doesn't matter there either, since it doesn't do Travis-specific things, and it also looks for the CI environment variable.
2018-08-07 13:41:33 -07:00
Ian Hickson
872e88cec7
Reduce noise on the memory benchmarks (#19630) (#20163)
- Check memory usage in release builds, not profile.
- Use multiple runs and average the results.
2018-08-06 12:46:51 -07:00
Matteo Crippa
8c02b8f889 Fix issue for iOS to build any app and run on simulator #19618 (#19863)
A different approach to get the url from the string and avoid any interference by extra chars not allowed in url

Fixes #19618
2018-08-04 12:06:56 -07:00
Mikkel Nygaard Ravn
d1f446e559
Support flutter run/build of module on Android (#20197) 2018-08-04 13:52:09 +02:00
Mikkel Nygaard Ravn
8dd06a1190
Revert " Support flutter run on Android module project (#19600)" (#20182)
This reverts commit cacd291c5c.
2018-08-03 17:10:17 +02:00
Sarah Zakarias
cacd291c5c Support flutter run on Android module project (#19600) 2018-08-03 15:13:28 +02:00
Ian Hickson
a2ca14d71e
Revert "Reduce noise on the memory benchmarks" (#20158)
* Revert "Add pub cache, artifacts, pkgs to Cirrus cache (#20080)"

This reverts commit 07e93b385c.

* Revert "Reduce noise on the memory benchmarks (#19630)"

This reverts commit 8eb5cb7dc0.
2018-08-02 13:56:44 -07:00
Ian Hickson
8eb5cb7dc0
Reduce noise on the memory benchmarks (#19630)
- Check memory usage in release builds, not profile.
- Use multiple runs and average the results.
2018-08-02 12:22:15 -07:00
Mikkel Nygaard Ravn
651c5ab374
Fix latent type error in Flutter manifest (#20143) 2018-08-02 19:16:32 +02:00
asiva
35d50a0e16 Fix issues found running tests
//mobile/flutter/tests/app:basic_runner_test_*
during a google3 roll.

The following exception was being thrown

_TypeError: type 'String' is not a subtype of type 'File'

```
8)
<asynchronous suspension>
utter_command.dart:347:18)
<asynchronous suspension>
/flutter_command.dart:282:33)
<asynchronous suspension>
xt.dart:142:29)
<asynchronous suspension>
2018-08-02 08:03:03 -07:00
Mikkel Nygaard Ravn
b280074815
Move async from member access to construction (#20035) 2018-08-02 14:12:25 +02:00
Alexandre Ardhuin
eda03e2586
re-re-enable lint unnecessary_const (#20103) 2018-08-02 12:02:32 +02:00
Devon Carew
e816f64bf2
remove the option to pass in the --no-preview-dart-2 flag to analysis (#20041)
remove the option to pass in the --no-preview-dart-2 flag to analysis
2018-07-31 19:15:11 -07:00
Ian Hickson
acf4b6c1aa
Clean up startProgress logic. (#19695) (#20009)
Disallow calling stop() or cancel() multiple times. This means that
when you use startProgress you have to more carefully think about what
exactly is going on.

Properly cancel startProgress in non-ANSI situations, so that
back-to-back startProgress calls all render to the console.
2018-07-30 16:58:07 -07:00
Stanislav Baranov
51d3daadfb
Change 'flutter ide-config' to optionally create root Intellij module (#19920) 2018-07-30 10:15:26 -07:00
Todd Volkert
00aac68e2d
Revert flutter/flutter#19592 (#19861)
It was causing problems rolling Flutter into Fuchsia
2018-07-27 08:44:39 -07:00
Jonah Williams
9c159638bc
Revert "Clean up startProgress logic. (#19695)" (#19842)
This reverts commit 0636c6fe60.
2018-07-26 16:44:27 -07:00
Ian Hickson
0636c6fe60
Clean up startProgress logic. (#19695)
Disallow calling stop() or cancel() multiple times. This means that
when you use startProgress you have to more carefully think about what
exactly is going on.

Properly cancel startProgress in non-ANSI situations, so that
back-to-back startProgress calls all render to the console.
2018-07-26 14:02:25 -07:00
Leaf Petersen
70791c3087
Roll pubspec forward to new json_schema, matcher and vector_math (#19802)
Pull in new versions of packages with fixes for SCREAMING CAPS CONSTANTS.
2018-07-26 12:23:24 -07:00
Paweł Polański
da0e898da9 Added SM-G960F to the list of known physical devices (#18966)
Samsung Galaxy S9 is not an emulator and installation of
the release packages with 'flutter run --release' should be possible.
2018-07-24 16:39:23 -07:00
moznion
46da8536b6 Add some options to format subcommand (#18360)
* Add `--dry-run` option to `flutter format` sub command

* Add `--set-exit-if-changed` option to `format` sub command

* Add `--machine` option to `format` sub command

* Make variable names to be not shorthand: cmd -> command

Fix https://github.com/flutter/flutter/pull/18360#discussion_r199656120
2018-07-24 16:37:00 -07:00
Todd Volkert
6258f322d4
Make Fuchsia tools Dart 2 clean (#19727) 2018-07-24 16:33:49 -07:00
Ian Hickson
b4d3808a15
Fix the checksum verification to be more sensitive (#19290)
* Fix the checksum verification to be more sensitive

* update packages
2018-07-23 13:01:22 -07:00
Gary Miguel
a7b59b51b8 Remove redundant check for platform.isLinux. (#19441)
We don't actually care if we're on linux, we care only if the lcov
tool is available. We check for that explicitly just below.
Additionally there is code below which indicates that lcov is available
for macOS. Before this change that code would never execute.
2018-07-23 08:38:20 -07:00
Alexandre Ardhuin
27018359d2
re-enable lint unnecessary_const (#19592)
* re-enable lint unnecessary_const

* remove trailling whitespaces

* remove unnecessary const (after merge)
2018-07-23 08:31:48 +02:00
Leaf Petersen
32f94443cc
Remove uses of deprecated constants and change int.parse to int.tryParse (#19575)
* Remove uses of deprecated constants
* Change int.parse to int.tryParse where appropriate
2018-07-20 15:07:24 -07:00