Commit Graph

7577 Commits

Author SHA1 Message Date
Danny Tuppeny
e71655b7e9 Include VS Code + Android Studio URLs in the No IDE message (#69194) 2020-10-28 11:17:06 -07:00
Konstantin Scheglov
7b86be228e Use runZonedGuarded() instead of deprecated onError. (#69160) 2020-10-28 08:43:31 -07:00
Jonah Williams
9e5e763ebe [flutter_tools] document flutter root initialization (#67884)
Moves the flutter root initialization to a static method on the cache. This is a small step towards making this functionality non-static and instead injected like normal members - however, completely removing all of the static-ness at once was too large of a change.

Instead document and add unit tests and change existing code as little as possible.

#47161
2020-10-27 15:20:07 -07:00
Anurag Roy
cd690f9559 [flutter_tools] Add --verify-only flag to flutter upgrade (#68866)
* Add --verify-only flag for flutter upgrade
2020-10-27 14:06:39 -07:00
Jonah Williams
18f0a2288e [flutter_tools] update to vm_service 5.2.0, update to dwds 7.0.0 (#69067)
Rolls in several fixes to web tooling, including better handling of absolute file imports. Updates to latest vm service to unblock null safety mode query

Co-authored-by: Gary Roumanis <grouma@google.com>
Co-authored-by: Anna Gringauze <annagrin@google.com>
2020-10-27 13:55:32 -07:00
Dan Field
36f9af3f55 reland driver vm_service migration (#69126)
* One more reland of "Driver vm service (#68654)" (#69074)" (#69077)" (#69089)"

This reverts commit e5814756a2.

* pub run test
2020-10-27 11:30:24 -07:00
Jonah Williams
8c3d564ded [flutter_tools] fix test expectation in resident_runner.dart (#69121) 2020-10-27 10:11:02 -07:00
Jonah Williams
3300a1bd68 [flutter_tools] eagerly set asset directory path, cache flutter views, simplify error handling (#68978)
Performs some small cleanup on the hot reload code path.

- Combines nested try/catch into single try catch, update on clause now that package:vm_service is used and Map does not need to be caught.
- Cache FlutterViews for the lifetime of the hot reload method handler
- Set asset directory path once during startup and remove conditional set during hot reload
2020-10-27 09:20:05 -07:00
Dan Field
e5814756a2 Revert "Revert "Revert "Driver vm service (#68654)" (#69074)" (#69077)" (#69089)
This reverts commit 05ab0eba19.
2020-10-27 01:47:03 -07:00
Dan Field
05ab0eba19 Revert "Revert "Driver vm service (#68654)" (#69074)" (#69077)
This reverts commit 19ce7a86af.
2020-10-26 19:22:25 -07:00
Jonah Williams
19ce7a86af Revert "Driver vm service (#68654)" (#69074)
This reverts commit 3ecac303b4.

Co-authored-by: Dan Field <dfield@gmail.com>
2020-10-26 18:56:34 -07:00
Jonah Williams
6cd847c767 [flutter_tools] update test platform to use buildInfo instead of mode + additional params (#69033) 2020-10-26 18:50:17 -07:00
Dan Field
3ecac303b4 Driver vm service (#68654)
Migrate flutter_driver to use package:vm_service
2020-10-26 17:09:14 -07:00
Jonah Williams
e0ec9a06dc [flutter_tools] Make ApplicationPackageFactory inject dependencies for Android Builds (#67827)
* [flutter_tools] simplication of application store logic

* maybe return null

* fix install tests

* Clean up imports

* revert windows test

* remove unused import
2020-10-26 16:51:32 -07:00
Jonah Williams
e7b66ac7ad [flutter_tools] do not include AS validator if android is not enabled (#69047) 2020-10-26 15:59:00 -07:00
Jonah Williams
2e54c4a8ea [flutter_tools] implement safe file copy with multiple fallbacks (#69000)
The tool observes a large number of unhandled exceptions during the file copy portion of flutter create. it is difficult to tell whether the permission issue is caused by the source/destination, or whether it is due to a bug in dart:io.

To work around this, implement a permission check for both the source and dest files. If either fails, the tool can exit with a more specific message.

If these checks pass, then perform the actual copy. If the copy fails, fallback to manually copying the bytes
2020-10-26 15:49:07 -07:00
Jonah Williams
8b973f01c4 [flutter_tools] add package_config.json to analyze_once_test.dart (#69059)
* [flutter_tools] add package_config.json to analyze_once_test.dart
2020-10-26 15:46:51 -07:00
Jacob MacDonald
193fe3e980 Update null safe deps to prepare for the 2.12 sdk version (#69041)
* update pinned null safety deps

* run update-packages

* add http dep to devicelab package

* rerun update-packages
2020-10-26 14:31:13 -07:00
Alexandre Ardhuin
17cdf5559d enable unnecessary_string_escapes and use_raw_strings (#68302) (#69025) 2020-10-26 12:42:05 -07:00
Jonah Williams
183fe75d58 [flutter_tools] reland: drive service (#68887)
Overhaul of flutter drive in order to deliver a better experience, namely:

* flutter run and flutter drive now share more flags, so code paths that were previously only testable on run are now testable on drive.
* Removes web-initialize-platform as this is no longer used
* flutter drive correctly sets up a logger that shows native exceptions, by connecting to the vm service.
* VM service connection now provides access to memory info without launching devtools (only for debug/profile mode)

Web changes

* Passes on the one test in the repo, otherwise the webdriver code has been isolated as much as possible

Additional NNBD related bug fixes:

No longer passes --enable-experiment to the test script. (FYI @blasten ). earlier we might have assumed that the flutter gallery benchmarks would be migrated along side the app and flutter driver, but only the app under test needs to be migrated. The test scripts should never be run with the experiment.
2020-10-26 10:11:30 -07:00
Jonah Williams
0f28edac65 [flutter_tools] null safety mode is used for dill naming (#68898)
* [flutter_tools] null safety mode is used for dill naming

* add bad test case
2020-10-23 15:39:58 -07:00
Jenn Magder
832d776b15 Stop debugger when iOS app crashes (#68844) 2020-10-23 14:12:04 -07:00
Jenn Magder
59544e377d Apple silicon arch -arm64 -> -arm64e (#68855) 2020-10-23 13:48:38 -07:00
Jonah Williams
424ea0958b [flutter_tools] make android deps no longer required for flutter doctor (#68533) 2020-10-23 12:37:04 -07:00
Jonah Williams
cb67513f29 [flutter_tools] Reland: simplify pub cache logic (#67589)
There have been some more additional reports of a missing 'package:characters' import after upgrading flutter. This has me concerned that our pub caching logic is incorrect. Instead of the tool attempting to guess when pub should be run, always delegate to pub.

Also takes an opportunity to fix the kernel snapshot depending on the .packages or package_config. Due to the generated: date field this causes extra rebuilds. Instead when pub get is run, write out an additional file with just the package contents and version.

Fixes #66777
Fixes #65723
2020-10-23 10:00:56 -07:00
Jenn Magder
351ccf7eaf Better error message when export options plist does not a fix (#68826) 2020-10-22 23:28:51 -07:00
Jenn Magder
aea070790f Turn off CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER in CocoaPod targets (#68817) 2020-10-22 22:02:04 -07:00
Jonah Williams
1edec6fc20 Revert "[flutter_tools] refactor drive launch into separate service, split by mobile+desktop and web (#68451)" (#68845)
This reverts commit 2e75f52ae4.
2020-10-22 19:39:33 -07:00
Jonah Williams
2e75f52ae4 [flutter_tools] refactor drive launch into separate service, split by mobile+desktop and web (#68451)
Overhaul of flutter drive in order to deliver a better experience, namely:

flutter run and flutter drive now share more flags, so code paths that were previously only testable on run are now testable on drive.
Removes web-initialize-platform as this is no longer used
flutter drive correctly sets up a logger that shows native exceptions, by connecting to the vm service.
VM service connection now provides access to memory info without launching devtools (only for debug/profile mode)
Web changes

Passes on the one test in the repo, otherwise the webdriver code has been isolated as much as possible

Additional NNBD related bug fixes:

No longer passes --enable-experiment to the test script. (FYI @blasten ). earlier we might have assumed that the flutter gallery benchmarks would be migrated along side the app and flutter driver, but only the app under test needs to be migrated. The test scripts should never be run with the experiment.
2020-10-22 15:07:02 -07:00
Jenn Magder
f63d56e455 App.framework must support iOS 8 for older Flutter projects (#68729)
* App.framework must support iOS 8 for older Flutter projects

* Fix test
2020-10-22 13:50:54 -07:00
stuartmorgan
3ff334d68d Add a missing include to the Linux plugin template (#68737)
The template uses strcmp (to check the received method), so should
include <cstring>
2020-10-22 13:50:39 -07:00
Jonah Williams
37470dfc0b [devicelab] de-flake iOS launch (#68790)
* [devicelab] de-flake iOS launch
2020-10-22 13:37:57 -07:00
Jonah Williams
21ca1f9ba5 [flutter_tools] use --no-print-incremental-dependencies for non-resident and test compiles (#68678) 2020-10-22 13:34:59 -07:00
Jonah Williams
37042fdb08 [flutter_tools] remove iOS screenshot on failure functionality (#68650)
* [flutter_tools] remove iOS screenshot on failure functionality

* remove all screenshot code
2020-10-22 13:34:07 -07:00
Jenn Magder
f877266139 Add CocoaPods sudo installation note (#68542)
* Add CocoaPods sudo installation note

* Refer to instructions
2020-10-22 13:33:35 -07:00
Jenn Magder
04657354f5 Build IPA command (#67781)
* Build IPA command

* xcarchive -> ipa
2020-10-22 13:32:51 -07:00
Robert Ancell
16b9933d85 Disable header bar when not using GNOME Shell. (#68452)
Fixes https://github.com/flutter/flutter/issues/68253
2020-10-22 10:24:19 +13:00
Robert Ancell
b200baebd7 Try the Wayland GDK backend, the engine now supports it (#66519)
* Try the Wayland GDK backend, the engine now supports it

* Update comment from review

* Just do default GTK behaviour
2020-10-22 09:38:11 +13:00
Zachary Anderson
cbcd1321ed Revert "enable unnecessary_string_escapes and use_raw_strings (#68302)" (#68714)
This reverts commit ae06c19a37.
2020-10-21 08:16:13 -07:00
Alexandre Ardhuin
ae06c19a37 enable unnecessary_string_escapes and use_raw_strings (#68302) 2020-10-21 16:34:24 +02:00
Jenn Magder
d29cd9beb6 Clean up device logger and port forwarding on drive completion (#68655) 2020-10-20 16:01:51 -07:00
Jonah Williams
cb5865d86c [flutter_tools] add some versions to tool sources, cleanup build.yaml (#68624) 2020-10-20 09:50:31 -07:00
Jenn Magder
d81691d0f4 Revert "Build iOS apps using Swift Packages (#68361)" (#68546)
This reverts commit dd9323bdfb.
2020-10-19 17:57:32 -07:00
Yegor
ea3b08f333 Respond to HTTP POST requests with 404 in WebAssetServer (#68492)
* Respond to POST with 404 in WebAssetServer
2020-10-19 16:21:39 -07:00
Jenn Magder
dd9323bdfb Build iOS apps using Swift Packages (#68361) 2020-10-19 15:47:04 -07:00
Jenn Magder
5e17a240bd Generate only requested platform directories on create (#68376) 2020-10-19 14:17:43 -07:00
Jonah Williams
e422d5c724 [flutter_tools] reland: --no-android-gradle-daemon in devicelab (#68491)
Remove devicelab specific code for shutting down gradle daemon, add --android-gradle-daemon option to build/run/drive`. Avoids need for un-tested devicelab specific handler. There are also some feature requests for this, so 2 birds one stone.

Example:

flutter build apk --no-android-gradle-daemon will pass --no-daemon on to gradle
2020-10-19 10:27:58 -07:00
Jonah Williams
19f363029e [flutter_tools] increase devFS sync timeout to 60 seconds (#68488)
The current timeout is too short for some remote workflows. The existing unit test require hitting a real timeout so I've removed it.

See b/171005910
2020-10-19 10:14:37 -07:00
Jonah Williams
ed5482de19 Revert "[flutter_tools] add --android-gradle-daemon option, use in devicelab (#68409)" (#68489)
This reverts commit ddab72e79f.
2020-10-19 09:33:52 -07:00
Jonah Williams
ddab72e79f [flutter_tools] add --android-gradle-daemon option, use in devicelab (#68409)
Remove devicelab specific code for shutting down gradle daemon, add --android-gradle-daemon option to build/run/drive`. Avoids need for un-tested devicelab specific handler. There are also some feature requests for this, so 2 birds one stone.

Example:

flutter build apk --no-android-gradle-daemon will pass --no-daemon on to gradle
2020-10-19 09:12:21 -07:00