187 Commits

Author SHA1 Message Date
Todd Volkert
21c514fc56
Wire up support for --skia-deterministic-rendering (#14802)
https://github.com/flutter/flutter/issues/14519
2018-02-20 23:22:58 -08:00
Devon Carew
0350c9ecff
route device issue diagnostics to flutter doctor (#13346)
* route device issue diagnostics to flutter doctor

* review comments

* review comments
2017-12-07 09:32:23 -08:00
Todd Volkert
e792c6bb5b
Add support for binding to IPv6 localhost in flutter run (#13136)
This allows `flutter run` to work on hosts that are IPv6-only.
2017-11-21 20:12:21 -08:00
Greg Spencer
0259be90b8
Fix spelling errors in all the dartdocs. (#13061)
I got tired of drive-by spelling fixes, so I figured I'd just take care of them all at once.

This only corrects errors in the dartdocs, not regular comments, and I skipped any sample code in the dartdocs. It doesn't touch any identifiers in the dartdocs either. No code changes, just comments.
2017-11-17 10:05:21 -08:00
Yegor
870da175bc
remove unused forwardPort; truthier console messages (#12981) 2017-11-10 16:51:16 -08:00
Jason Simmons
1affb4237a
Remove the diagnostic server from flutter_tools (#12771) 2017-10-30 15:53:04 -07:00
Alexandre Ardhuin
1fce14a31c enable lint prefer_single_quotes (#12665) 2017-10-22 18:11:36 +02:00
Carlo Bernaschina
ba36008af6 Add --trace-skia parameter to flutter run (#12070)
* Add --trace-skia parameter to flutter run

Skia tracing is extremely useful for internal debug, but reduces the
amount of space available in the Dart Timeline buffers.
Disable skia tracing by default and expose them via the --trace-skia
flag.

* Roll Engine to 57a1445a45964d386500c39f5e8d06db060abadb
2017-09-13 12:59:05 -07:00
Alexander Aprelev
c5750cd7ea Introduce --preview-dart-2 option to run new frontend compiler in flutter tools. (#11741)
This adds --preview-dart-2 flag that enables use of Dart 2.0 Frontend in Flutter tools.
2017-08-31 13:35:55 -07:00
Mikkel Nygaard Ravn
9496e6dfa7 Support for app flavors in flutter tooling, #11676 retake (#11734) 2017-08-23 10:55:35 +02:00
Mikkel Nygaard Ravn
7c3a45dc6e Revert "Support for app flavors in flutter tooling (#11676)" (#11729)
This reverts commit 8d07d3f652d687dfd80038371406fbe2942253a6.
2017-08-22 12:24:29 +02:00
Mikkel Nygaard Ravn
8d07d3f652 Support for app flavors in flutter tooling (#11676) 2017-08-22 10:38:23 +02:00
Devon Carew
a7c3bf4849 perform the initial poll for devices quicker (#11356)
* perform the initial poll for devices quicker

* add a Poller class

* test the new Poller class
2017-08-01 15:29:54 -07:00
Chris Bracken
0adb39ae9b Avoid concurrent device polling in daemon; add timeout (#11184)
Apply a 30 second timeout to Android/iOS device polling.

If there's a device poll already in progress, skip polling for new
devices; wait for the first request to return/timeout.
2017-07-12 17:57:15 -07:00
xster
57746f38c0 Guess sign iOS with the first certificate when running in machine mode (#10870)
* Guess sign with the first certificate when multiple are available in machine mode

* review
2017-06-28 13:33:14 -07:00
Chris Bracken
1d9f009579 Re-enable use of instruments for iOS device lookup (#10838)
This reverts commit b2909a245a607995ce7ec286585cd1f643124f57.

This resubmits the following patches:

1. Use Xcode instruments to list devices (#10801)
Eliminates the dependency on idevice_id from libimobiledevice. Instead,
uses Xcode built-in functionality.

2. Make device discovery asynchronous (#10803)
Migrates DeviceDiscovery.devices and all device-specific lookup to be
asynchronous.
2017-06-19 13:14:57 -07:00
Chris Bracken
b2909a245a Revert use of Xcode instruments for device lookup (#10806)
* Revert "Make device discovery asynchronous (#10803)"
This reverts commit 972be9c8b4048e18ecfb8ab582159c8d78abace8.

* Revert "Use Xcode instruments to list devices (#10801)"
This reverts commit 37bb5f1300e67fe590c44bb9ecda653b2967e347.

This is to resolve a failure that looks related to a bad install of Xcode 8.0
on our build bots and should be reinstated when the infra issue is diagnosed
and resolved.

Instruments worked well when this was originally landed, and on the
following commit, but started failing two commits after this originally
landed. Manual invocation of instruments on the build host currently
results in:

```
dyld: Library not loaded: @rpath/InstrumentsAnalysisCore.framework/Versions/A/InstrumentsAnalysisCore
  Referenced from: /Applications/Xcode8.0.app/Contents/Developer/usr/bin/instruments
  Reason: image not found
Abort trap: 6
```

It appears the /Applications/Xcode8.0.app/Contents/Applications
directory (which contains Instruments) is missing on the host.
2017-06-16 19:00:31 -07:00
Chris Bracken
972be9c8b4 Make device discovery asynchronous (#10803)
Migrates DeviceDiscovery.devices and all device-specific lookup to be
asynchronous.
2017-06-16 17:47:06 -07:00
Gary Qian
a367dcb02c Add flags to pass '--enable-software-rendering' flag to engine in run command (#10449) 2017-06-02 09:44:36 -07:00
Todd Volkert
6a4b08bec6 Make DeviceDomain echo a msg if doctor says it can't list anything (#9749)
This message will be picked up by IntelliJ and shown to the user in a toast.
2017-05-03 16:12:08 -07:00
Todd Volkert
ffdca6f7e8 Fix getDevicesById() (#9646)
If the user specified a non-exact device id, it was producing
an exception whereby we were trying to listen to the
`getAllConnectedDevies()` stream twice.
2017-04-27 13:12:59 -07:00
Zachary Anderson
0770c3c14f [flutter_tools] Adds some support for '-d all' (#9585) 2017-04-26 21:49:38 -07:00
Todd Volkert
60c5ffc1a9 Switch many Device methods to be async (#9587)
`adb` can sometimes hang, which will in turn hang the Dart isolate if
we're using `Process.runSync()`. This changes many of the `Device` methods
to return `Future<T>` in order to allow them to use the async process
methods. A future change will add timeouts to the associated calls so
that we can properly alert the user to the hung `adb` process.

This is work towards #7102, #9567
2017-04-25 17:23:00 -07:00
Devon Carew
f29dd4f921 improve progress display when running apps; speed up startup (#9475)
* improve progress display when running apps; speed up startup

* review comments
2017-04-20 07:13:35 -07:00
Ian Hickson
2a54524337 Fix tests to use Ahem, and helpful changes around that (#9332)
* Fix tests to use Ahem, and helpful changes around that

- Fix fonts that had metric-specific behaviours.

- LiveTestWidgetsFlutterBinding.allowAllFrames has been renamed
  to LiveTestWidgetsFlutterBinding.framePolicy.

- LiveTestWidgetsFlutterBinding now defaults to using a frame policy
  that pumps slightly more frames, to animate the pointer crosshairs.

- Added "flutter run --use-test-fonts" to enable Ahem on devices.

- Changed how idle() works to be more effective in live mode.

- Display the test name in live mode (unless ahem fonts are enabled).

- Added a toString to TextSelectionPoint.

- Style nit fixes.

* Roll engine to get Ahem changes.

* Update tests for dartdoc changes.

* Fix flutter_tools tests
2017-04-12 13:33:02 -07:00
Jason Simmons
67b3871e2a Filter Android logs by the pid of the remote process (#9293)
Fixes https://github.com/flutter/flutter/issues/6849
2017-04-07 13:41:29 -07:00
Alexandre Ardhuin
8bcf302e23 use conditional assignment (#9252) 2017-04-07 21:41:17 +02:00
Alexandre Ardhuin
4c530d5e8c prefer_final_fields (#8967) 2017-03-29 21:21:46 +02:00
Jakob Andersen
7b2367ed5f Remove legacy .apk build. (#8793)
* Remove legacy .apk build.

Print out an error message telling the user to upgrade the project if
it's not Gradle-based. Removed all the obvious traces of the legacy
build.

Added support for Dart VM kernel snapshots in Gradle builds.

Fixed Android installs to verify that the app is actually installed, and
not just rely on the presence of the .sha1 file.
2017-03-20 11:05:55 +01:00
Alexandre Ardhuin
2166ea5b7f apply partially the upcoming unnecessary_lambdas (#8810) 2017-03-15 23:09:58 +01:00
Todd Volkert
1b4f817b0c Make tests more hermetic. (#8765)
1. Add `PortScanner` abstraction so that we don't do actual port scanning
   in tests.
2. Don't change the real `cwd` of the isolate during tests, as it affects
   all tests, not just the current running test.

Fixes #8761
2017-03-14 10:28:56 -07:00
Todd Volkert
34ed3d2d24 Pay off some technical debt. (#8710)
* Rename `Device.platform` to `Device.targetPlatform` to avoid
  collision with the exported variable from `platform.dart`
2017-03-10 10:11:05 -08:00
Chris Bracken
7a09316cd0 Declare locals final where not reassigned (flutter_tools) (#8570) 2017-03-03 17:50:46 -08:00
Jakob Andersen
a745fd58be Don't reinstall the app if the latest build is already installed. (#8328)
Only implemented for Android devices for now. Compare the installed SHA1
to the latest build. If they match, there's no reason to reinstall the
build.

Fixes #8295
2017-02-22 14:35:49 +01:00
Dan Rubel
7138541d23 new --kernel option for flutter run to use precompiled kernel code (#8191) 2017-02-15 17:37:00 -05:00
Ian Hickson
dc634e195e Introduce the concept of asynchronicity to the service extensions. (#7823)
This allows us, for example, to wait for the slow mode banner to have
been removed from the screen before triggering a screen shot.
2017-02-02 15:48:35 -08:00
Ian Hickson
576b4e1179 Change --debug-port to --observatory-port (#7675)
...and add --diagnostic-port.

...and document port 0.
2017-01-26 16:42:48 -08:00
Todd Volkert
417c2f25fc Migrate flutter_tools to use package:platform (#7642) 2017-01-25 16:06:41 -08:00
John McCutchan
6a63af4081 Rebuild Android apk when Dart source is modified (#7345)
- [x] Wire up dependency checker and plumb flags down to the right place

Fixes #7014
2017-01-10 07:59:55 -08:00
Todd Volkert
8bb270342e Update flutter_tools to use package:file throughout (#7385)
This removes direct file access from within flutter_tools
in favor of using `package:file` via a `FileSystem` that's
accessed via the `ApplicationContext`.

This lays the groundwork for us to be able to easily swap
out the underlying file system when running Flutter tools,
which will be used to provide a record/replay file system,
analogous to what we have for process invocations.
2017-01-06 16:51:44 -08:00
Dan Rubel
93e662abaa Cleanup common port forwarding code (#7142)
This moves the various copies of port forwarding code in the Device subclasses into the ProtocolDiscovery class.

* move port forwarding to a common location
* throw exception if protocol Uri is not discovered or port forwarding fails
* cancel discovery protocol subscriptions on iOS launches (wasn't happening before)
* fix iOS port forwarding to match other implementations
* add tests
2016-12-06 09:19:12 -08:00
Dan Rubel
a9584e1214 Handle new observatory url (#7061)
* reapply handle new Observatory URL changes
Fixes https://github.com/flutter/flutter/issues/6843

* allow non numeric IPv4 addresses
Fixes https://github.com/flutter/flutter/issues/7051
2016-11-30 20:29:04 -05:00
John McCutchan
0b737ac57b Remove default AppContext and cleanup globals (#6999) 2016-11-29 07:54:20 -08:00
Dan Rubel
fcf41fc737 revert handle new Observatory URL (#7056)
737a55ef3e
2016-11-28 16:15:19 -05:00
Dan Rubel
737a55ef3e handle new Observatory URL (#6992) 2016-11-28 11:36:20 -05:00
Todd Volkert
9cb914df17 Allow for application-specific log readers. (#6898)
* Allow for application-specific log readers.

When running with prebuilt application binaries, those applications
aren't guaranteed to be named "Runner" (as it is when we build
the app locally in Flutter tools)
2016-11-16 17:19:00 -08:00
John McCutchan
e908655207 Remove legacy restart support (#6801) 2016-11-10 11:12:59 -08:00
Dan Rubel
0b49d81cb2 flutter devices/doctor report Android (and iOS) version (#6545)
* refactor device descriptions method - easier to add columns
* show device SDK version
2016-10-27 09:07:21 +01:00
Devon Carew
b00e6cda66 tweak the device description for emulators (#6214) 2016-10-04 20:29:10 -07:00
Dan Rubel
55bc771f58 flutter devices indicate which are simulators (#6200) 2016-10-04 13:07:42 -04:00