73 Commits

Author SHA1 Message Date
Danny Tuppeny
d19bd37749
Tweak message about debugging with web-server (#61535) 2020-07-15 17:57:14 +01:00
Jonah Williams
e666ea8de4
[flutter_tools] cleanups to web runner functionality (#61178)
Skip unnecessary parsing of chrome URI. Ensure stack traces are initialized in web server. Disclaimer on web server that it does not support debugging and remove help message. Fix generated entrypoint to check for main(List<String> args)

- Fixes #59643
- Fixes #55084
- Fixes #60417
2020-07-13 15:12:46 -07:00
Jonah Williams
d4589e0c71
[flutter_tools] ensure AppRunLogger is injected for run/attach machine (#61103)
run/attach --machine requires a different logger than daemon, which uses the NotifyingLogger. We have too many loggers!

Fixes #59463
2020-07-08 18:21:46 -07:00
Jonah Williams
6067571fab
[flutter_tools] support flutter run -d edge (#56173)
Support Microsoft Edge as a device for flutter run when web is enabled. Currently this only works on Windows, and does not include a validator for edge.

Fixes #55322
2020-06-09 12:03:51 -07:00
Jenn Magder
886313393f
Support work profiles and multiple Android users for run, install, attach, drive (#58815) 2020-06-08 11:28:02 -07:00
Jonah Williams
4f88ed1d3c
[flutter_tools] only restrict devices based on arch + buildMode, not emulator status (#58887)
instead of restricting profile/release mode based on whether the tool thinks the device is an emulator, restrict based on the device target architecture and the requested build mode. Notably, this enables release mode on x86_64 Android emulators, but not x86 emulators since we do not support that as an AOT target.

This does not add release mode support for simulators, since this requires us to build and upload artifacts for simulator/x86_64
2020-06-08 11:20:15 -07:00
Jonah Williams
f5de6aadd4
[flutter_tools] remove zone level overrides of verbose and daemon logging (#57448)
Make it possible for all FlutterCommands to be global free, by moving instantiation to inside the Zone context. Additionally, provide VerboseLogger and NotifyLogger (daemon) at the top level and remove from command-specific overrides.

This allows removing a work around where web devices needed to look up directly from the context in non-test code.

Technically the output preferences are still zone injected, but these will be moved soon as they were not being used correctly by the top level command (the injection comes after ArgParser reads the overflow values, causing numerous wrap issues)
2020-06-04 16:35:36 -07:00
Zachary Anderson
6f0ed5e142
[flutter_tools] Restore base/platform.dart (#56410) 2020-05-06 08:15:39 -07:00
Jonah Williams
9b7b9d795e
[flutter_tools] reland remove flutter view cache (#56387)
Fixes #56194

Remove caching of FlutterView and poll forever if the list of flutter views is empty. Added test for missing release mode logic.
2020-05-05 12:09:51 -07:00
Jonah Williams
d98d3a973f
Revert "[flutter_tools] remove flutter view cache (#56223)" (#56385)
This reverts commit 209bdcb6695b6bffa7b21ce6fc8fcf2310f5ecd0.
2020-05-05 11:15:33 -07:00
Jonah Williams
209bdcb669
[flutter_tools] remove flutter view cache (#56223)
Remove caching of FlutterView. Perhaps the FlutterView RPC might return an empty list if the VM is not quite up yet? We had some old logic to poll the flutter views RPC for up to 200ms. That doesn't seem like a great approach, so instead we could forgo it entirely and trust that either the views come up before the developer tries to interact, or we crash.
2020-05-05 10:47:01 -07:00
Jonah Williams
72397fd448
[flutter_tools] Lazily inject logger into web devices (#55961)
Constructing the WebDevices with the global logger too early will lead to them grabbing the StdoutLogger when running in daemon mode. This prevents IDEs from seeing the correct debug message.
2020-04-29 11:35:40 -07:00
Jonah Williams
f2761b6b04
[flutter_tools] refactor Chrome launch logic to remove globals/statics (#55160) 2020-04-22 01:28:51 -07:00
xster
1376746237
Reland #53153 to attach to existing modules and apps for Android (#53289) 2020-03-25 16:45:49 -07:00
Jenn Magder
b684041bb8
Revert "Let flutter attach find the service port by looking through old logs again (#53153)" (#53282)
This reverts commit 0c5ffdc9efc4e04ed637645014465b656afc14a5.
2020-03-25 10:53:45 -07:00
xster
0c5ffdc9ef
Let flutter attach find the service port by looking through old logs again (#53153) 2020-03-24 23:26:01 -07:00
Devon Carew
d6614dbafd
save and restore the chrome session local storage information (#53030)
save and restore the chrome session local storage information
2020-03-24 12:20:13 -07:00
Jenn Magder
2f216ceee5
Add timeout flag to devices command, pipe through discovery (#51678) 2020-03-16 14:15:00 -07:00
Jonah Williams
65a7941228
[flutter_tools] reduce globals in web validator and chrome launcher (#51443) 2020-02-26 10:37:52 -08:00
Angjie Li
5ee4147283
Allow developers to run flutter driver web test directly (#51084) 2020-02-22 16:49:03 -08:00
Yegor
b34046903b
Fix stack trace parsing on non-debug builds; add e2e tests (#50652)
* Fix stack trace parsing on non-debug builds; add e2e tests
2020-02-13 18:34:08 -08:00
Alexandre Ardhuin
b953c3e5a8
use raw strings to avoid escaping (#50322) 2020-02-07 16:35:55 +01:00
Alexandre Ardhuin
5c28e3eeea
unnecessary escapes fixes (#50178)
* unnecessary escapes fixes

* replace some strings with raw strings

* update regexp

* address review comments
2020-02-07 06:35:50 +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
01953a1015
[flutter_tool] fix NPE in log reader for web server device (#46729) 2019-12-10 16:14:48 -08:00
Zachary Anderson
99684ce159 [flutter_tool] Make Device.dispose() abstract (#46006) 2019-12-05 08:48:00 -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
Danny Tuppeny
37eec86294
Allow web server device to use extension if started with --start-paused (#44263)
* Allow web server device to use extension if started with --start-paused

* Fix comment

* Remove browser-launch option that allowed using Chrome without launching Chrome

The web-server device should now be used if you don't want to launch a browser.

* Add tests for WebServerDevice with --start-paused

* Fixes from rebase

* More fixes from rebase

* Fix from rebase

* Fix condition for page refresh in non-debug builds

* Make dwds conditions match with a new getter

* Add missing .device
2019-11-19 20:11:53 +00:00
Jonah Williams
e236196037
cache sdkNameAndVersion logic for web devices (#45145) 2019-11-19 09:36:24 -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
Danny Tuppeny
81f6ba84b9
Switch from using app.progress to app.webLaunchUrl for passing web launch urls (#44268)
* Switch from using app.progress to app.url for passing web launch urls

* Update daemon.md

* Change app.url -> app.webLaunchUrl

* Add tests for app.webLaunchUrl event

* Update tests with recent changes after rebasing
2019-11-18 18:10:15 +00:00
Jonah Williams
3422540bc4
copy chrome preferences to seeded data dir (#44032) 2019-11-04 09:09:20 -08:00
Jonah Williams
6fc99e98ad
rename headless server to web server (#42970) 2019-10-18 12:41:47 -07:00
Jonah Williams
01f779e97a
Fix NPE in Chrome Device (#42813) 2019-10-16 15:46:07 -07:00
Jonah Williams
06864e445c
Rename Server/web device to Headless Server/headless-server (#41618) 2019-09-30 12:19:45 -07:00
Danny Tuppeny
7e73cd74b1
Fix visibility of web server device when Chrome is not available (#40757)
* Fix visbility of web server device when Chrome is not available

* Add tests

* Update workflow test

* Fix tests to not rely on Chrome being on the underlying machine
2019-09-30 14:45:30 +01:00
Jonah Williams
7065e43306
Allow skipping chrome launch with --no-web-browser-launch (#40627) 2019-09-25 13:55:54 -07:00
Alexandre Ardhuin
89427d672d
add missing trailing commas in flutter_tools (#40968) 2019-09-24 08:06:09 +02:00
Jonah Williams
925a52fa6b
add host and port to run configuration for web devices (#40191) 2019-09-12 08:58:49 -07:00
Jonah Williams
f614144f0a
Add "web" server device to allow running flutter for web on arbitrary browsers (#39951)
* add web server device

* remove extra async

* fixes to server device

* testing updates

* fix test cases

* address comments
2019-09-10 19:29:31 -07:00
Jonah Williams
6f71ce26d6
Place terminalUi flag on terminal interface (#39214) 2019-08-27 14:20:51 -07:00
Jonah Williams
a785db78fb
Reland "Integrate dwds into flutter tool for web support (#34252)" (#37649)" (#37650) 2019-08-05 16:51:57 -07:00
Jonah Williams
433436e1ee
Revert "Integrate dwds into flutter tool for web support (#34252)" (#37649) 2019-08-05 15:58:04 -07:00
Jonah Williams
4ccd81199f
Integrate dwds into flutter tool for web support (#34252) 2019-08-05 12:41:58 -07:00
Jonah Williams
3fedb8cb5a
Reland: use flutter features for web and desktop (#36699) 2019-07-22 15:34:03 -07:00
Jonah Williams
8eae2dfb92
Revert "Use FlutterFeatures to configure web and desktop devices (#36465)" (#36654)
This reverts commit bd52a78c7162e26721a383b76bac53744e5656a7.
2019-07-21 21:47:43 -07:00
Jonah Williams
bd52a78c71
Use FlutterFeatures to configure web and desktop devices (#36465) 2019-07-21 18:21:15 -07:00
Danny Tuppeny
f3be1d9d95
Add emulatorID field to devices in daemon (#34794)
* Add emulatorId to Android and iOS emulator devices

* Update docs

* Review tweaks

* Add tests for AndroidConsole for getting avd names

* Remove unused import

* Remove duplicated header

* Fix imports
2019-06-26 16:39:23 +01:00
Jonah Williams
25b5656969
Reland: rename web device (#34885) 2019-06-24 11:09:07 -07:00
Jonah Williams
d644015620
Revert "set web device name to Chrome (#34856)" (#34884) 2019-06-21 15:04:44 -07:00