Commit Graph

268 Commits

Author SHA1 Message Date
Devon Carew
3f9ede1311
fix the reload and restart service extension methods (#56240) 2020-05-04 11:34:02 -07:00
Jonah Williams
0889e14361
[flutter_tools] increase stopApp timeout for FlutterDevice.exitApps (#55984) 2020-04-29 15:08:34 -07:00
Jonah Williams
534b0608ce
[flutter_tools] remove vm service (#55794)
Finishes the gradual vm service migration by deleting the flutter tooling's vm_service
2020-04-29 11:52:46 -07:00
Jonah Williams
ffcf1db3ca
[flutter_tools] reland migrate FlutterViews to package:vm_service (#55797)
Move FlutterView and related RPCs to the package:vm_service implementation. Update some getIsolate calls with catchError to match previous behavior.

- Updates tests that were previously mocking FlutterViews to use real views
- Moves the FlutterView cache from VM to FlutterDevice
- Catch SentinelException during Isolate.kill
2020-04-27 17:41:42 -07:00
Jenn Magder
958ab9336f
Revert "[flutter_tools] reland migrate FlutterView to new vmservice (#55774)" (#55788)
This reverts commit a18e6361cf.
2020-04-27 16:19:25 -07:00
Jonah Williams
a18e6361cf
[flutter_tools] reland migrate FlutterView to new vmservice (#55774) 2020-04-27 15:54:59 -07:00
Jonah Williams
07c451fea9
Revert "[flutter_tools] migrate FlutterView to new vm_service (#55341)" (#55772)
This reverts commit 2e50fd75eb.
2020-04-27 14:26:56 -07:00
Jonah Williams
2e50fd75eb
[flutter_tools] migrate FlutterView to new vm_service (#55341)
Move FlutterView and related RPCs to the package:vm_service implementation. Update some getIsolate calls with catchError to match previous behavior.

- Updates tests that were previously mocking FlutterViews to use real views
- Moves the FlutterView cache from VM to FlutterDevice
- Catch SentinelException during Isolate.kill
2020-04-27 14:16:28 -07:00
Jonah Williams
9202e54704
[flutter_tools] move service extensions off of deprecated vm service (#55012) 2020-04-20 15:15:54 -07:00
Jonah Williams
e6abda7f00
[flutter_tools] remove Isolate implementations of vm_service methods (#54920) 2020-04-16 15:48:21 -07:00
Jonah Williams
b6262e7c1c
[flutter_tools] remove runFromSource, move runInView to vm_service extension (#54700) 2020-04-15 10:35:01 -07:00
Jonah Williams
159710ecc5
[flutter_tools] fix response format of flutterVersion, flutterMemoryInfo (#54786) 2020-04-14 15:37:49 -07:00
Jonah Williams
723bc76847
[flutter_tools] update coverage collector to use vmservice api (#54682) 2020-04-13 16:10:02 -07:00
Jonah Williams
5adfd38dde
[flutter_tools] Move service methods to VmService extension methods (#54337) 2020-04-10 10:33:07 -07:00
Jonah Williams
cf5e4b544e
[flutter_tools] fix routing test (#54313) 2020-04-08 14:53:19 -07:00
Jonah Williams
4851888864
[flutter_tools] Migrate to package:vm_service 4: trigonometric boogaloo (#54132) 2020-04-08 12:33:33 -07:00
Jonah Williams
08fe78fff9
[flutter_tools] write SkSL file to local file (#53859) 2020-04-07 12:17:39 -07:00
Jonah Williams
61b3361781
Revert "[flutter_tools] Migrate to vm service 3 (reland): electric boogaloo (#53957)" (#54114)
This reverts commit d6b09626f2.
2020-04-06 10:36:14 -07:00
Jonah Williams
d6b09626f2
[flutter_tools] Migrate to vm service 3 (reland): electric boogaloo (#53957) 2020-04-06 10:18:41 -07:00
Jonah Williams
66f4907754
Revert "[flutter_tools] update to package vm_service: electric boogaloo (#53809)" (#53951)
This reverts commit 66d7a6c266.
2020-04-03 14:00:07 -07:00
Jonah Williams
66d7a6c266
[flutter_tools] update to package vm_service: electric boogaloo (#53809) 2020-04-03 12:38:56 -07:00
Jonah Williams
fe310148a1
[flutter_tool] Remove extra usage of .packages in vm service API (#52845) 2020-03-19 09:35:57 -07:00
Zachary Anderson
6c408a0567
Reland: [flutter_tool] Where possible, catch only subtypes of Exception (#52021)
* Reland: [flutter_tool] Where possible, catch only subtypes of Exception

* Add armv7f to getIOSArchForName
2020-03-06 10:22:12 -08:00
Jenn Magder
cbbb7ec5a7
Revert "Reland: [flutter_tool] Where possible, catch only subtypes of Exception (#51774)" (#51960)
This reverts commit 57c6721cd5.
2020-03-04 12:40:15 -08:00
Flutter GitHub Bot
57c6721cd5
Reland: [flutter_tool] Where possible, catch only subtypes of Exception (#51774) 2020-03-04 11:41:02 -08:00
Zachary Anderson
b32ee2f15c
Revert "Reland: [flutter_tool] Where possible, catch only subtypes of Exception (#51567)" (#51616)
This reverts commit 9de7787f25.
2020-02-27 22:57:13 -08:00
Zachary Anderson
9de7787f25
Reland: [flutter_tool] Where possible, catch only subtypes of Exception (#51567) 2020-02-27 22:46:23 -08:00
Zachary Anderson
483f49962c
Revert "[flutter_tool] Where possible, catch only subtypes of Exception (#51440)" (#51539)
This reverts commit f1cd47ef5c.
2020-02-26 23:42:19 -08:00
Zachary Anderson
f1cd47ef5c
[flutter_tool] Where possible, catch only subtypes of Exception (#51440) 2020-02-26 21:45:02 -08:00
Martin Kustermann
d2947571bd
Ensure to close connection to VM after collecting coverage (#50943) 2020-02-18 12:39:37 -08:00
Alexandre Ardhuin
f15c887c63
change quote to avoid escapes (#50368) 2020-02-11 20:58:27 +01:00
Mehmet Fidanboylu
0c5ae7d656
Use the FlutterVersion defined in context (#50040) 2020-02-03 20:43:02 -08:00
Alexandre Ardhuin
4f9b6cf017
enable lint prefer_final_in_for_each (#47724) 2020-01-07 16:32:04 +01:00
Jonah Williams
ee7a37f1d3
[flutter_tools] Ensure that global variables are easily identifiable (#47398) 2020-01-06 11:04:20 -08:00
Jonah Williams
81aa2710d2
[flutter_tool] add a vmservice API for hot ui requests (#45649) 2019-12-09 21:31:34 -08:00
Jonah Williams
b96d818c19
Remove record/replay/bug report functionality from the tool (#45999) 2019-12-03 13:24:45 -08:00
Ian Hickson
449f4a6673
License update (#45373)
* Update project.pbxproj files to say Flutter rather than Chromium

Also, the templates now have an empty organization so that we don't cause people to give their apps a Flutter copyright.

* Update the copyright notice checker to require a standard notice on all files

* Update copyrights on Dart files. (This was a mechanical commit.)

* Fix weird license headers on Dart files that deviate from our conventions; relicense Shrine.

Some were already marked "The Flutter Authors", not clear why. Their
dates have been normalized. Some were missing the blank line after the
license. Some were randomly different in trivial ways for no apparent
reason (e.g. missing the trailing period).

* Clean up the copyrights in non-Dart files. (Manual edits.)

Also, make sure templates don't have copyrights.

* Fix some more ORGANIZATIONNAMEs
2019-11-27 15:04:02 -08:00
Jonah Williams
831163f0d0
Register memory info command on vmservice for Android devices (#45568) 2019-11-26 14:49:56 -08:00
Alexandre Ardhuin
adc7351046
implicit-casts:false on flutter_tools/lib (#44447)
* implicit-casts:false on flutter_tools/lib

* address review comments

* use castStringKeyedMap

* introduce {bool,string,strings}Arg

* fix ci
2019-11-19 07:57:42 +01:00
Jenn Magder
2e7d9130b2
Observe logging from VM service on iOS 13 (#43915) 2019-11-01 14:37:17 -07:00
Jonah Williams
331d19ff4b
Add reloadMethod RPC (#43725) 2019-10-29 13:21:06 -07:00
Ryan Macnak
315471bfb0
Do not produce an error when encountering a new type in a service response. (#42972)
Flutter tool's service client library tries to "upgrade" sub-components of service responses with higher level model objects. It does this for all members of the response, rather than only those documented in the version it targets, and it errors out when encountering a new type. This causes it to fail when a new field is introduced with a new typed. Clients are required to ignore this.
2019-10-17 16:56:57 -07:00
Alexandre Ardhuin
f11c34109c
fix bad indentations(mainly around collection literals) (#41355) 2019-09-27 10:46:45 +02:00
Alexandre Ardhuin
b873162194
fix some bad indentations (#41172) 2019-09-24 21:03:37 +02:00
Zachary Anderson
e2340c641d
[flutter_tool] Use curly braces around single statment control structures (#40446) 2019-09-13 14:51:35 -07:00
Ryan Macnak
a6138bb005
Remove dead accessors of _getUnusedChangesInLastReload. (#39837)
This was part of a disused tool to explain what did and did not run after reload.
2019-09-12 12:34:58 -07:00
Kenzie Schmoll
d50d9c5e60
Register flutterVersion service in flutter_tools. (#39524)
* Register getFlutterVersion service in flutter_tools.

* Add short revision ids to response.

* Rename method and remove obsolete comments.

* Fix broken test by adding sendPeerNotifications flag.

* Implement mockPeer.sendNotification.
2019-09-05 09:50:36 -07:00
Jonah Williams
8d6dc620d6
fix rpc exception for real (#38575) 2019-08-15 12:13:12 -07:00
Jonah Williams
388d69eb9b
Catch errors thrown into the Zone by json_rpc (#38486) 2019-08-14 13:10:41 -07:00
Jonah Williams
8e6205fe1d
Handle thrown maps and rejects from fe server (#37743) 2019-08-07 17:00:36 -07:00
liyuqian
e77237d6d3
Reland "Fix the first frame logic in tracing and driver (#35297)" (#37192)
This relands https://github.com/flutter/flutter/pull/35297

The followings have been done to fix the broken tests:
  1. Add `didSendFirstFrameRasterizedEvent` extension and its tests
  2. Wait for `didSendFirstFrameRasterizedEvent` instead of
     `didSendFirstFrameEvent` during start up tests
  3. Mark missed (probably newly added) start up tests as flaky
2019-07-31 11:01:52 -07:00
Ben Konyi
8d81c30a7c [WIP] Use public _registerService RPC 2019-07-11 16:01:07 -07:00
Dan Field
e3acb5ca71
Refactor keymapping for resident_runner (#35762) 2019-07-08 16:38:49 -07:00
Siva
f496595773
Use the new service protocol message names (#35482)
* Use the new service protocol message names
  clearVMTimeline
  setVMTimelineFlags
  getVMTimeline
  getVMTimelineFlags

* Fix clearTimeline at another spot.
2019-07-02 16:10:04 -07:00
Zachary Anderson
22ca3f96ca
[flutter_tool] Don't truncate verbose logs from _flutter.listViews (#34255) 2019-06-12 11:18:53 -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
Dan Field
a8504405a8
Revert "Handle notification errors (#31868)" (#31886)
This reverts commit c0d5fd23ab.
2019-04-30 23:27:30 -07:00
Dan Field
c0d5fd23ab
Handle notification errors (#31868) 2019-04-30 15:42:22 -07:00
Dan Field
eac2104bc6
remove assert for Flutter Driver (#31815) 2019-04-29 17:03:25 -07:00
Jonah Williams
0acd3e6b04
refactor context to be implicit-downcast safe (#31622) 2019-04-25 15:51:08 -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
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
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
Alexandre Ardhuin
bfa1d25bf9
some formatting of map, parameters and spaces (#29760) 2019-03-23 00:02:21 +01: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
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
Phil Quitslund
802eca29d2
set literal conversions (#27811) 2019-03-06 11:05:16 -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
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
Alexandre Ardhuin
5169ab5974
format parameter list (#27261) 2019-02-21 09:27:07 +01:00
Michael Goderbauer
6d20ff2446
Remove all obsolete "// ignore:" (#27271) 2019-01-30 08:56:12 -08:00
Jonah Williams
91fd89e8b3
Wrap dart:convert to track utf8 decode failures (#26650) 2019-01-25 16:16:26 -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
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
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
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
Stanislav Baranov
c5251cdc02
Flutter tool support for automatic saving of JIT compilation trace (#25301) 2018-12-14 16:09:17 -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
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
Alexandre Ardhuin
344ebe02ff
avoid returning null for Future (#23784) 2018-11-05 16:38:23 +01: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
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
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
Michael Goderbauer
dc36195cb3
Reland "Remove all service extensions from release mode (#23038)" (#23291) 2018-10-23 03:53:29 +02: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
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
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
Alexandre Ardhuin
2d3ff10d62
apply lint prefer_void_to_null in packages/flutter_tools (#22686) 2018-10-05 07:54:56 +02: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
f62afdcf57
add missing type parameter on methods (#22096) 2018-10-01 21:29:08 +02:00
shrike69
fd8a9603ac
Remove waitForViews() during hot reload (#22371) 2018-09-28 11:35:38 -07:00
Alexandre Ardhuin
a07d3719a1
enable lint prefer_generic_function_type_aliases (#21680) 2018-09-14 21:06:19 +02: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
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