Commit graph

2568 commits

Author SHA1 Message Date
Jonah Williams 15154b115f
[flutter_tools] deprecate build aot (#59487)
This command was previously used by the re-entrant build scripts in xcode_backend.sh and build.gradle. These have since been refactored to use flutter assemble.

Deprecation the command in preparation for removal in a future release of flutter. The only current use is a test on HHH
2020-06-16 13:00:11 -07:00
Christopher Fujino 807b60250a
[flutter_tools] Update roll_dev.dart (#59215) 2020-06-16 09:30:04 -07:00
Jonah Williams 958f7c5b55
[flutter_tools] ensure generated entrypoint matches test and web entrypoint language version (#59291)
Ensure that the language version of the test/web generated entrypoint matches the language version of the test file to run, or the overall package language version if no annotation is provided.
2020-06-16 09:17:12 -07:00
Michael Goderbauer 584fd5f913
Word substitutions (#59484)
* Word substitutions

* ++
2020-06-16 09:15:43 -07:00
duzenko c79de78237
LG debugging/logcat fixed (#58670) 2020-06-15 09:35:07 -07:00
James D. Lin c21b3233e4
[flutter tools] Don't return success if we trigger runZoned's error callback (#58474) 2020-06-15 09:35:04 -07:00
Ian Hickson 6202476691
Remove license statements in template files. (#57268) 2020-06-15 09:30:05 -07:00
Jenn Magder 0093c6a4c6
Add Podfile migration warning to support federated plugins (#59201) 2020-06-12 12:44:14 -07:00
Danny Tuppeny 96711b00ce
Don't crash on requests for invalid package URLs (#59250) 2020-06-12 09:25:04 -07:00
Jonah Williams bf94520644
[versions] Update all the versions (#59283) 2020-06-11 16:40:22 -07:00
Marcus Tomlinson 1fe0f22645
Remove use of BundleUtilities in Linux build (#59080)
* Explicitly install the Flutter library

* Publish ${FLUTTER_LIBRARY} to parent scope

* Bundle plugin libraries

* Bundle <plugin_name>_bundled_libraries too

* BUNDLED_LIBRARIES -> PLUGIN_BUNDLED_LIBRARIES

* Update Linux plugin test

* Address review comments
2020-06-11 22:00:28 +01:00
Jenn Magder 222c2cb0cc
Deprecate make-host-app-editable (#59217) 2020-06-11 11:37:15 -07:00
Jenn Magder 75fd73d818
Revert "[flutter_tools] inject output preferences at the top level (#58875)" (#59197)
This reverts commit dca6320fe4.
2020-06-10 13:49:35 -07:00
Jonah Williams dca6320fe4
[flutter_tools] inject output preferences at the top level (#58875)
The tool was setting the output preferences in a sub-context. Originally these were not injected before the arg parsers were created, though that was fixed by the lazy command creation. Once local engine is removed, the inner flutter_command Zone can be removed.
2020-06-10 12:13:06 -07:00
Jonah Williams e7b4d2b80e
[flutter_tools] remove globals from proxy validator (#59175)
Remove global Platfrom from proxy validator. move tests to new file, and update asserts to cover message contents.
2020-06-10 12:12:35 -07:00
Jonah Williams d911eadf95
[flutter_tools] create NotifyingLogger at the top level when running flutter run --machine or flutter attach --machine (#59087)
Removes dependency on injecting additional logger with zones
2020-06-09 15:39:27 -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
Jonah Williams e54f8f523f
[flutter_tools] include dart-defines in cached kernel name (#59083)
This prevents using a cached kernel file with different defines, since --initialize-from-dill does not handle this correctly.

Fixes #58976
2020-06-09 12:03:28 -07:00
Christopher Fujino cf7e4a0b90
[flutter_tools] Fix slow ios_device_start_prebuilt_test (#59026) 2020-06-09 11:22:31 -07:00
Helin Shiah e62c1f6954
Send text error in JSON and print in tools (#59018) 2020-06-09 11:18:03 -07:00
Jonah Williams ec4049e781
[flutter_tools] support bundle-sksl-path on all desktop and mobile targets (#58879)
Adds support for --bundle-sksl-path to windows, linux, macOS, and iOS.

Fixes #53115
2020-06-09 11:15:52 -07:00
Jonah Williams 01e60a1ca4
[flutter_tools] Reland: use correct sdk path for analysis (#59081)
flutter analyze was unconditionally using the cached dart-sdk for analysis, and was not running with the built SDK during local engine. This broke when trying to update the analyzer for null safety, since it required us to wait for the dart change to roll into the framework first.
2020-06-09 10:47:21 -07:00
Jonah Williams 5e3e5a2a1a
Revert "[flutter_tools] use correct sdk path for analysis (#58871)" (#59035)
This reverts commit 9ed3e5bea6.
2020-06-08 17:38:23 -07:00
Jonah Williams 9ed3e5bea6
[flutter_tools] use correct sdk path for analysis (#58871)
flutter analyze was unconditionally using the cached dart-sdk for analysis, and was not running with the built SDK during local engine. This broke when trying to update the analyzer for null safety, since it required us to wait for the dart change to roll into the framework first.
2020-06-08 17:21:33 -07:00
Jenn Magder 5eb4917d73
Release cache lock for commands after required artifacts are downloaded (#59012) 2020-06-08 17:18:02 -07:00
Jenn Magder 023532d991
Revert "Build iOS apps using Swift Packages (#59009)" (#59025)
This reverts commit 43e28084fc.
2020-06-08 15:45:10 -07:00
Jenn Magder 43e28084fc
Build iOS apps using Swift Packages (#59009) 2020-06-08 13:53:01 -07:00
Jonah Williams 80ea454288
[flutter_tools] change service worker load to NOTICES (#58890)
update flutter_service_worker.js to NOTICES
2020-06-08 12:33:31 -07:00
Jonah Williams 0620cfa770
Revert "Send text error in JSON and print in tools (#58994)" (#59002)
This reverts commit f0174b176a.
2020-06-08 11:56:23 -07:00
Jonah Williams ef9b77d99a
fix analysis on master (#59001) 2020-06-08 11:53:17 -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
Helin Shiah f0174b176a
Send text error in JSON and print in tools (#58994)
* Revert "Revert "Send text error in JSON and print in tools (#58284)" (#58872)"

This reverts commit c2d5e18cb2.

* Put streamListen in try/catch if extension events already listened for
2020-06-08 11:24:23 -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 206ccc3632
[flutter_tools] rename library to be less absurd (#58891)
Instead of targets/dart.dart -> targets/common.dart
2020-06-08 11:19:53 -07:00
Jonah Williams 64538f4d78
[flutter_tools] disable dartdev when calling snapshots directly (#58830) 2020-06-06 14:48:03 -07:00
Jonah Williams c2d5e18cb2
Revert "Send text error in JSON and print in tools (#58284)" (#58872)
This reverts commit cce6b3c5ae.
2020-06-06 10:35:58 -07:00
Helin Shiah cce6b3c5ae
Send text error in JSON and print in tools (#58284)
* Send text error in JSON and print in tools

* Add test for error text

* Fix analysis issues

* Move streamListen to try/catch and use global.printStatus

* Extract print error fn and listen for events in web runner

* Add extension listen request to test

* Update packages/flutter_tools/lib/src/resident_runner.dart

Co-authored-by: Jonah Williams <jonahwilliams@google.com>

* Rename error parsing method

* Allow crash if listen for extension stream fails

* Add test for error and non-error extension events

* Fix formatting for TextTreeRenderer

* Use shorter message for second exceptions

* Specify types for map

* Add empty JSON for resident_web_runner test

* Move stream listen to vmservice and add vmservice test

* Fix stream type

* Move structured error log definition to vmservice

* Use correct test matcher isNot

Co-authored-by: Jonah Williams <jonahwilliams@google.com>
2020-06-05 19:07:37 -07:00
Jonah Williams 5722adf11d
[flutter_tools] remove deprecation warning on flutter format (#58817)
So that we have a release where both are available without a deprecation warning.
2020-06-05 12:40:02 -07:00
Jonah Williams 1e4d9f8502
[flutter_tools] add --write-sksl-on-exit to flutter drive (#58743)
Allow dumping sksl files on driver exit when a file path is provided to drive's --write-sksl-on-exit
2020-06-05 11:01:23 -07:00
Jonah Williams d0abf7f90f
[flutter_tools] don't use verbose when in doctor or help command (#58798) 2020-06-05 10:12:11 -07:00
stuartmorgan 94b7ff241e
Don't require a specific Windows 10 SDK (#58713)
Current versions of the Windows desktop build files don't require a specific Windows 10 SDK version, but doctor still checks for one since vswhere doesn't allow for flexible queries. This has been a common source of issues for people setting up on Windows for the first time, because the current VS installer by default only includes a newer version of the SDK than what doctor is looking for.

This removes the vswhere SDK check, and instead uses a manual check for SDKs. Since this uses undocumented (although fairly widely used, so relatively unlikely to change) registry information, the check is non-fatal, so that builds can progress even if the SDK isn't found by doctor; in practice, it's very unlikely that someone would install the C++ Windows development workload but remove the selected-by-default SDK from the install.

Now that all requirements are default, the instructions when missing VS have been simplified so that they no longer list individual components, and instead just say to include default items.

Fixes #50487
2020-06-04 18:53:00 -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
Jonah Williams 3b0c84b906
Revert "use Expand-Archive and Compress-Archive in windows os utils (#58390)" (#58719)
This reverts commit bbe18f7580.
2020-06-04 14:22:10 -07:00
Jonah Williams bbe18f7580
use Expand-Archive and Compress-Archive in windows os utils (#58390)
Work towards removal of package:archive and ideally more stable unzipping of artifacts. These commands are available in Powershell 5+, which we already require for windows.
2020-06-04 14:00:33 -07:00
Jonah Williams eae77804fe
[flutter_tools] use -f when fetching tags (#58703)
use -f to overwrite local tags on master branch
2020-06-04 13:54:32 -07:00
Jonah Williams 3bc4a82605
[flutter_tools] avoid serving files outside of expected paths (#58653) 2020-06-04 11:53:04 -07:00
Jonah Williams e934c2fc0a
[flutter_tools] reland: copy dill after startup (#58455)
* [flutter_tools] only copy cached dill after startup

* shared code

* cleanup artifact directory

* do not copy if dillOutputPath is given
2020-06-04 10:17:43 -07:00
Jenn Magder 2eca1d303c
Use fake command in analytics test (#58544) 2020-06-03 21:23:01 -07:00
Jonah Williams b1d75fc99d
[flutter_tools] add flag for sound-null-safety, unify with experiments (#58533)
Also combines experiments into extraGenSnapshot/ExtraFrontEndOptions. Allows providing --no-sound-null-safety to allow out of order migration and running.
2020-06-03 21:02:07 -07:00
Jenn Magder 95edf28150
Move create project build tests to permeable subshard (#58645) 2020-06-03 17:41:15 -07:00
Jenn Magder c130aa9574
Add FakeAsync to delay tests (#58644) 2020-06-03 17:16:37 -07:00
JustWe 6c8d7b00ff
Show unsupported devices when no supported devices are connected (#56531) 2020-06-03 16:14:38 -07:00
Jonah Williams 0734db62ca
[flutter_tools] remove handling of error that is fixed (#58557)
The linked error has been fixed, removed work around. Updates the test cases to only test for exit instead of error message

#33050
2020-06-03 13:27:47 -07:00
Jonah Williams 7e942b6229
[flutter_tools] iOS VM Service logs should include stderr (#58551) 2020-06-03 12:53:02 -07:00
Jenn Magder e72e7f9fb0
Don't elapse real time during IOSDevice.startApp tests (#58538) (#58622) 2020-06-03 12:43:02 -07:00
Jonah Williams e216eec7b4
[flutter_tools] Allow the tool to suppress compilation errors. (#58539)
Suppress compilation errors on startup so they are not duplicated from the native build step.
2020-06-03 12:00:03 -07:00
Jenn Magder 79e2409419
Fake out DeviceManager.getDevices in test (#58541) 2020-06-03 11:48:37 -07:00
Jenn Magder 37bc900860
Revert "Don't elapse real time during IOSDevice.startApp tests (#58538)" (#58618)
This reverts commit 27186c784f.
2020-06-03 11:26:29 -07:00
Jenn Magder 27186c784f
Don't elapse real time during IOSDevice.startApp tests (#58538) 2020-06-03 09:33:02 -07:00
Jonah Williams 01b9bf8ea6
[flutter_tools] deprecate flutter generate and codegen (#58328) 2020-06-03 09:28:02 -07:00
Jenn Magder 2ece1c3a17
Revert "Build iOS apps using Swift Packages (#58522)" (#58549)
This reverts commit 2054f37aaf.
2020-06-02 19:00:12 -07:00
Jenn Magder 2054f37aaf
Build iOS apps using Swift Packages (#58522) 2020-06-02 17:57:11 -07:00
Jonah Williams 37a86c483c
Revert "[flutter_tools] Put a heap size limit on the frontend_server" (#58525)
* Revert "[flutter_tools] Put a heap size limit on the frontend_server (#58039)"
2020-06-02 17:52:20 -07:00
Jonah Williams 6135091de9
Revert "[flutter_tools] only copy cached dill after startup (#58188)" (#58454)
This reverts commit 39d1e4b7e9.
2020-06-01 17:17:03 -07:00
Jonah Williams 39d1e4b7e9
[flutter_tools] only copy cached dill after startup (#58188)
Remove copying from the shutdown stage since that seems risky. If the tool copies the first compilation there will still be a decent dill for initialization.
2020-06-01 16:31:27 -07:00
Jonah Williams 4845df906a
[flutter_tools] do not include material icon incorrectly (#58335)
If a dependency specified uses-material-design: true and the main pubspec specifies uses-material-design: false, then the MaterialIcons font would be included in the font manifest, but not in the AssetManifest or final bundle. Remove it from the FontManifest if this occurs
2020-06-01 16:30:43 -07:00
Jonah Williams 584e4f2534
[flutter_tools] cleanup to devfs Operations (#58332)
removes globals from devFS operations and cleans up testing to be context free. Removes unused and unnecessarily temp directory in testing.
2020-06-01 15:28:38 -07:00
Jenn Magder f4d26a3b85
Change iOS device discovery from polling to long-running observation (#58137) 2020-06-01 12:33:01 -07:00
stuartmorgan a3b9e20a6b
Fix non-local-engine Linux release builds (#58372) 2020-06-01 11:03:02 -07:00
Jenn Magder b0c98b6651
Detect USB/network interface from iOS devices (#58257) 2020-05-29 15:50:23 -07:00
Jonah Williams 6d8ec35014
Revert "Revert "[flutter_tools] always initialize the resident runner from di…" (#58208) 2020-05-29 15:43:03 -07:00
Marcus Tomlinson 5ee5490a63
[flutter_tools] Support profile and release builds on Linux (#57135) 2020-05-29 15:38:02 -07:00
Jonah Williams d9144bf8fc
[flutter_tools] rename output LICENSE file to NOTICES and support loading either (#57871)
Work towards #16723

This is only safe to land after #58131 lands in google3. Only build NOTICES in asset manfiest, and load either LICENSE or NOTICES from pubspec dependencies.
2020-05-29 11:55:02 -07:00
Jonah Williams a1636b6fef
Revert "[flutter_tools] always initialize the resident runner from dill (#52497)" (#58193) 2020-05-28 16:28:02 -07:00
stuartmorgan 9989c54cb1
Add release and profile support for Windows (#57749)
Builds and bundles an 'app.so' containing AOT data, and downloads and packages the release/profile artifacts for those builds, rather than always using the debug artifacts.

Fixes https://github.com/flutter/flutter/issues/38477
Fixes https://github.com/flutter/flutter/issues/39664
2020-05-28 12:17:56 -07:00
Jonah Williams 7cdf26d0dc
[flutter_tools] forward flutter format to dart format and deprecate (#57829) 2020-05-28 11:28:08 -07:00
Greg Spencer 379e11b641
Update the flutter script's locking mechanism and follow_links (#57590)
Update the flutter and dart scripts' locking mechanism and follow_links function to be more robust and support more platforms.

This adds support for using mkdir as a fallback if the system doesn't have flock instead of using shlock, since shlock doesn't work on shared filesystems.

It also fixes a problem in the follow_links function where it failed when the link resolved to the root directory.
2020-05-27 15:30:46 -07:00
Jonah Williams 8443f7cfd3
Revert "[flutter_tools] write test to convince self of lack of timing issue (#58011)" (#58123)
This reverts commit f77c669d68.
2020-05-27 14:16:12 -07:00
Jonah Williams f77c669d68
[flutter_tools] write test to convince self of lack of timing issue (#58011)
In #55864 a race condition was described where a done event is received before we finish connecting. This cannot happen, since async functions begin synchronously and the flag isWaitingForVm is tripped immediately, keeping onDone from exiting.
2020-05-27 12:47:30 -07:00
Zachary Anderson 29736f6fea
[flutter_tools] Put a heap size limit on the frontend_server (#58039) 2020-05-27 10:12:24 -07:00
Jonah Williams 8432204194
[flutter_tools] throw if asked to build release for x86_64 (#57874) 2020-05-27 10:11:15 -07:00
Jonah Williams a926715dac
[flutter_tools] URI encode dart-define values (#57873) 2020-05-27 10:11:04 -07:00
Jonah Williams ba847d54f0
[flutter_tools] validate android arch and build number (#57830) 2020-05-27 10:10:51 -07:00
Jonah Williams 600338286f
[flutter_tools] add vm service method to pull SkSL (#57813) 2020-05-27 10:10:41 -07:00
Jonah Williams f640ad6914
[flutter_tools] ensure emulator command does not crash with missing avdmanager (#57703) 2020-05-27 10:10:30 -07:00
Jonah Williams ffc56ff735
[flutter_tools] hide all development tools (#57690) 2020-05-27 10:10:19 -07:00
Neevash Ramdial 428ce0815b
[flutter_tools] Support latest IntelliJ via Jetbrain toolbox (#57963) 2020-05-27 10:07:28 -07:00
James D. Lin c6f7792311
[flutter tools] Improve messages when we fail to connect to the Observatory (#57355) 2020-05-21 17:47:02 -07:00
Jonah Williams 359daf4f73
[flutter_tools] reland: remove globals from android device/testing (#57614) 2020-05-20 13:21:22 -07:00
Jenn Magder adead099a6
Always show diagnostics (#57532) 2020-05-19 18:17:03 -07:00
Jonah Williams 5e33ecee46
Revert "[flutter_tools] remove globals/context for android testing (#57445)" (#57611)
This reverts commit 602d8baf34.
2020-05-19 13:06:14 -07:00
Jonah Williams 602d8baf34
[flutter_tools] remove globals/context for android testing (#57445) 2020-05-19 12:37:07 -07:00
Jonah Williams d0d9da832b
[flutter_tools] prevent wildcard assets from causing build invalidation issues (#56472) 2020-05-19 12:37:04 -07:00
Jonah Williams 91ec439348
[flutter_tools] handle missing null check in manifest parser (#57400) 2020-05-18 12:47:29 -07:00
Jonah Williams 70b889a9a3
[flutter_tools] reland: integrate l10n tool into hot reload/restart/build (#57510)
Reland: #56167
2020-05-18 12:47:18 -07:00
Jonah Williams 27a6705aa4
[flutter_tools] chunk the hashing of large files (#57506)
For files larger than 250 KB (roughly the size of framework.dart), chunk the conversion. This may be important for large assets like images.
2020-05-18 12:45:20 -07:00
Jonah Williams 49ad67ccf0
[flutter_tools] minor cleanups to try catch (#57446)
- OsError now implements exception, remove workaround.
- Prefer is check to catching TypeError
2020-05-18 09:38:22 -07:00
stuartmorgan 30d405c794
Temporarily allow pluginClass: none on desktop (#57498)
Treats 'pluginClass: none' as equivalent to having no 'pluginClass'
entry on the desktop platforms, to satisy stable channel plugin
validation of Dart-only desktop plugin implementations. See
issue for full details.

Part of https://github.com/flutter/flutter/issues/57497
2020-05-18 09:26:37 -07:00
stuartmorgan 25e9d0494b
Add Linux GTK artifacts to unpack list (#57452)
To simplify development of the in-progress GTK embedding, which will
replace the GLFW embedding on Linux, add the GTK artifacts to the unpack
list. This means that until the transition, both the GLFW and GTK
artifacts will be unpacked.

Part of #54860
2020-05-18 09:26:07 -07:00
stuartmorgan f991308e3e
Fix CMake invocation for 3.10 compat (#57415)
The -S/-B format of specifying source and build directories wasn't added
until 3.13. For 3.10 compatibility, use the older form of having the
working directory as the build directory, and the last argument as the
source directory.

Fixes #57409
2020-05-18 09:25:28 -07:00
Jonah Williams b19b744bb7
[flutter_tools] check for Runner.sln when parsing for plugins (#57392)
Throw a toolExit if the windows plugin logic runs on an invalid windows project. Update the supported project check to validate the existence of a Runner.sln file
2020-05-18 09:24:51 -07:00
stuartmorgan 8abf0a6d8c
Switch to CMake for Linux desktop (#57238)
Updates the Linux templates to use CMake+ninja, rather than Make, and updates the tooling to generate CMake support files rather than Make support files, and to drive the build using cmake and ninja.

Also updates doctor to check for cmake and ninja in place of make.

Note: While we could use CMake+Make rather than CMake+ninja, in testing ninja handled the tool_backend.sh call much better, calling it only once rather than once per dependent target. While it does add another dependency that people are less likely to already have, it's widely available in package managers, as well as being available as a direct download. Longer term, we could potentially switch from ninja to Make if it's an issue.

Fixes #52751
2020-05-16 15:07:34 -07:00
Jonah Williams afdc440840
[flutter_tools] surface missing assets originating package (#55701) 2020-05-16 14:52:04 -07:00
Zachary Anderson 533cd7a6d1
[flutter_tools] Delete system temp entries on fatal signals (#55513) 2020-05-14 14:27:02 -07:00
Jonah Williams bd47262183
[flutter_tools] fix period in URL for androidX incompat (#57182) 2020-05-14 12:32:03 -07:00
Jonah Williams a801496701
[flutter_tools] allow adb to fail to unforward without crashing (#57173) 2020-05-14 12:27:01 -07:00
Jonah Williams 1000ae802d
[flutter_tools] ensure package_config is re-created if pub get is run (#57184) 2020-05-14 11:22:07 -07:00
Jonah Williams a2cf9ecc46
[flutter_tools] expose track-widget-creation to build aar (#57117) 2020-05-14 11:17:06 -07:00
Jonah Williams 8a77381e58
[flutter_tools] do not set timestamp of package_config file (#57077) 2020-05-14 11:12:08 -07:00
Christopher Fujino a2f5364dc0
throw more specific toolexit when git fails during upgrade (#57162) 2020-05-14 11:03:07 -07:00
Jenn Magder bd430081e0
Make initial daemon devices population fast (#56959) 2020-05-14 11:00:51 -07:00
Jenn Magder 1eaa8c300c
Swap xcode_tests from MockProcessManager to FakeProcessManager (#56502) 2020-05-13 09:17:03 -07:00
Jonah Williams 9e9524977e
[flutter_tools] introduce a BuildSystem interface (#56946) 2020-05-13 09:12:08 -07:00
Anna Gringauze e88ef6d554
Updated dwds (and other packages) (#56958) 2020-05-13 09:07:09 -07:00
Jonah Williams 7f400af35a
[flutter_tools] expand Regexp log match to include more AndroidRuntime failures (#56943) 2020-05-12 07:35:02 -07:00
Nate Bosch 59a8ef3a21
Remove direct uses of LocalPlatform (#56605)
When `const LocalPlatform` is used immediately and not passed as a
dependency it does not have utility over the static properties from
`dart:io`. Remove these uses to reduce the noise around how the
instantiable `Platform` class is used.
2020-05-11 12:59:29 -07:00
Jenn Magder 4ecb1bbe2d
Add mirror overrides to doctor output (#56928) 2020-05-11 11:57:02 -07:00
Jenn Magder 9c87b32477
Remove Runner target check, prefer schemes (#56620) 2020-05-11 11:56:44 -07:00
Luke Cheng 793e6a48a1
typo fix on the FLUTTER_STORAGE_BASE_URL usage (#56685) 2020-05-09 21:14:01 -07:00
Jonah Williams d70d0913b2
Revert "[flutter_tools] integrate l10n tool into build/run (#56167)" (#56800)
This reverts commit f865ac7e25.
2020-05-09 17:50:46 -07:00
Zachary Anderson 04fe25e63e
[flutter_tools] Don't try to execute gradle wrapper out of /tmp (#56706) 2020-05-08 14:00:28 -07:00
Jonah Williams f865ac7e25
[flutter_tools] integrate l10n tool into build/run (#56167)
* [flutter_tools] integration l10n tool

* add runtime skip to build system

* Update build_system.dart

* add links to issues, comments

* Update packages/flutter_tools/test/general.shard/build_system/build_system_test.dart

Co-authored-by: Shi-Hao Hong <shihaohong@google.com>

* Update packages/flutter_tools/lib/src/build_system/targets/localizations.dart

Co-authored-by: Shi-Hao Hong <shihaohong@google.com>

* Update localizations.dart

* switch to gen_l10n localizations

* fix tests

Co-authored-by: Shi-Hao Hong <shihaohong@google.com>
2020-05-08 12:06:15 -07:00
Jenn Magder 0dc7be3bb0
Always remove the workspace settings (#56703) 2020-05-08 12:05:52 -07:00
Jonah Williams 2304838a98
[flutter_tools] fix aar defaults test (#56694) 2020-05-08 10:04:04 -07:00
Jonah Williams c57092511a
[flutter_tools] rename to .sksl.json (#56634) 2020-05-08 09:44:03 -07:00
Jonah Williams 717f9de662
[flutter_tools] enable tree-shake-icons by default for non-web targets (#56633)
Enable tree-shake-icons by default for non-web targets. Make missing fonts a status print
2020-05-08 09:42:43 -07:00
Bogdan Lukin 80a14af582
[flutter_tools] ensure track-widget-creation can be changed on devcompiler (#56564)
Workaround for cached web builds with --[no-]track-widget-creation flags.
Similar PR: #23299
2020-05-07 18:58:43 -07:00
Jenn Magder 0a4f6cdef0
Add split-debug and obfuscation to build aar (#56342) 2020-05-07 18:14:02 -07:00
Jonah Williams 2d26cbb2bf
[flutter_tools] reduce initial cache size on web (#56103) 2020-05-07 17:59:02 -07:00
Jenn Magder 4be791994f
Swap xcodeproj_tests from MockProcessManager to FakeProcessManager (#56505) 2020-05-07 15:18:27 -07:00
xster f6b47a5f35
let the embedding maven engine dependency reference the storage proxy (#56164) 2020-05-07 11:36:02 -07:00
Jonah Williams 9bfe50cb81
[flutter_tools] fix windows vscode lookup (#56491) 2020-05-06 16:51:01 -07:00
Zachary Anderson 6f0ed5e142
[flutter_tools] Restore base/platform.dart (#56410) 2020-05-06 08:15:39 -07:00
Jonah Williams 0ecc7a4bee
[flutter_tools] support multiple fuchsia devices (#55780)
Fixes #55765

We are currently only returning the first device from dev-finder, instead we need to look at the whole list.
2020-05-05 13:40:38 -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 209bdcb669.
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
Siva a48a51b0ff
Trial PR to use an engine that has the null safety unfork CL in it. (#56309)
* Trial PR to use an engine that has the null safety unfork CL in it.

* Fix mack specification for test.
2020-05-05 09:54:21 -07:00
Jenn Magder 415401102c
Gradle artifacts and tasks tests without context (#56335) 2020-05-04 18:38:14 -07:00
Jenn Magder 06fcf5146b
Inject logger and fs into printHowToConsumeAar, test without context (#56331) 2020-05-04 18:38:00 -07:00
Jenn Magder 90233746b7
BuildInfo tests without context (#56329) 2020-05-04 18:37:44 -07:00
Jenn Magder c587d73ec6
Use androidSdk globals variable everywhere (#56330) 2020-05-04 17:48:10 -07:00
Devon Carew 3f9ede1311
fix the reload and restart service extension methods (#56240) 2020-05-04 11:34:02 -07:00
Jonah Williams 6d1966efcc
[flutter_tools] make gallery hot reload 5x faster with one neat trick (#56224) 2020-05-04 11:32:30 -07:00
Jenn Magder c8c55b4098
Check Xcode build setting FULL_PRODUCT_NAME for bundle name (#55799) 2020-05-04 11:31:08 -07:00
Peter Lauri f6db8ccd20
[flutter_tools] fix version tag v stripping and support old "dev" and new "pre" tags (#55602) 2020-05-04 11:24:03 -07:00
Jonah Williams ec93c51eaf
[flutter_tools] add support for faster incremental build (#56067)
Introduce BuildSystem.buildIncremental, which keeps an in-memory cache of timestamps instead of file hashes. This will be used to implement localization generation through the same build system API.
2020-05-01 17:30:26 -07:00
Jonah Williams 2a5690f097
[flutter_tools] fix iOS build inconsistencies and pipe through performance file (#56094)
Ensure iOS and android builds can be correctly cached. Use the performance-measurement-file to verify that all targets were skipped on the second invocation. This is only run on the flutter_gallery build.
2020-05-01 15:34:28 -07:00
Jonah Williams ac2dfcf338
[version] update all versions (#56141) 2020-05-01 15:14:36 -07:00
Jonah Williams d6cbf2591a
[flutter_tools] don't recreate license, manifest, asset if unchanged (#56107)
Avoid syncing unchanged versions of these files during hot restart/reload. This happens if the asset bundle needs to be built but produces identical manifests/licenses due to only asset contents changing
2020-05-01 12:03:31 -07:00
Jonah Williams 368da5bb59
[flutter_tools] support bundling SkSL shaders in flutter build apk/appbundle (#56059)
Support bundling SkSL shaders into an android APK or appbundle via the --bundle-sksl-path command line options. If provided, these are validated for platform engine revision and then placed in flutter_assets/io.flutter.shaders.json
2020-04-30 13:39:08 -07:00
Jonah Williams bd6ccb606a
[flutter_tools] android device stopApp handles null apk (#55990)
The resident runner does not check if the ApplicationPackage is null when trying to stop the app. Update AndroidDevice.stopApp to handle this case by returning false.

The package will be null when flutter attach is used.
2020-04-29 16:31:42 -07:00
Jonah Williams 0889e14361
[flutter_tools] increase stopApp timeout for FlutterDevice.exitApps (#55984) 2020-04-29 15:08:34 -07:00
Jonah Williams a58d50deb1
[flutter_tools] allow pulling performance data from assemble (#55699) 2020-04-29 13:04:59 -07:00
Jenn Magder 46a5c550db
Add iOS simulator log parse test (#55808) 2020-04-29 13:02:39 -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 c55b32204e
[flutter_tools] fix performance of tree-shake-icons (#55417)
Fixes the performance issue with tree-shake-icons and filters to ttf mime type. Does not change default or error behavior.
2020-04-29 11:43:47 -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
michaellee8 9d770c1091
[flutter_tools] fix pm serve ipv6 linklocal addr issue (#55664) 2020-04-29 09:29:02 -07:00
Katarina Sheremet 3b067049ad
Support tags in testWidgets (#55141) 2020-04-28 15:49:01 -07:00
Jonah Williams 7b1d24216e
[flutter_tools] Make packages not required for local engine (#55882) 2020-04-28 14:53:53 -07:00
kwkr 1ac09088c3
Fix/use contains ignoring whitespace (#55887) 2020-04-28 13:12:12 -07:00
James D. Lin b7fd24a7dc
[flutter tools] Move _informUserOfCrash into crash_reporting.dart (#55614) 2020-04-28 10:34:03 -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
Jenn Magder d40699a3b8
Remove v prefix in doctor version (#55773) 2020-04-27 15:48:22 -07:00
Emmanuel Garcia e524a303a4
Print stdout and stderr when the ssh command failed (#55762) 2020-04-27 15:44:01 -07:00
Christopher Fujino 069dc9c72d
[flutter_tools] catch ProcessException and throw ToolExit during upgrade (#55759) 2020-04-27 15:04:02 -07:00
Jonah Williams 2aa9016652
[flutter_tools] ensure etag headers are ascii (#55704) 2020-04-27 15:02:15 -07:00
michaellee8 34b8f830b8
[flutter_tools] add --dart-define option for fuchsia build (#55715) 2020-04-27 14:59:03 -07:00
Jonah Williams 1ab3878996
[flutter_tools] support --enable-experiment in flutter test (#55564)
Support --enable-experiment in flutter test (for flutter_tester). Required minor change for null safety.
2020-04-27 14:47:43 -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 dd88b20435
[flutter_tools] quality pass on Linux build (#55556)
- Update the Linux build to support most of the build configuration, though like windows most only make sense for profile/release.
- Ensure VERBOSE_SCRIPT_LOGGING is set when the logger is verbose
- Automatically run pub get like other build commands
2020-04-25 19:02:03 -07:00
Jonah Williams d72eea539e
[flutter_tools] precache and unpack updates for desktop release artifacts (#55510)
- Update windows precache to include placeholder profile/release artifacts
- Update Linux and windows unpack to account for the cpp_client_wrapper code to live separate from the engine binaries
- Cleanup testing in unpack_linux and remove test cases that are covered in build_system_test.dart
2020-04-25 14:27:55 -07:00
Jonah Williams c5554cdf41
[flutter_tools] remove trailing eth info from fuchsia package server (#55617) 2020-04-24 21:35:23 -07:00
Christopher Fujino 4552af155c
[flutter_tools] enable flutter upgrade to support force pushed branches (#55594) 2020-04-24 17:55:16 -07:00
Jonah Williams cf0fcd4536
[flutter_tools] detect ipv6 in fuchsia server url (#55605) 2020-04-24 17:03:04 -07:00
Jonah Williams 35edbe3d9d
Revert "[flutter_tools] fix version tag v stripping (#55385)" (#55577)
This reverts commit c91a3a74ec.
2020-04-24 09:38:49 -07:00
Peter Lauri c91a3a74ec
[flutter_tools] fix version tag v stripping (#55385) 2020-04-24 09:11:54 -07:00
Jonah Williams 2f0d41b2a6
[flutter_tools] set test directory base as additional root, allow running without index.html (#55531) 2020-04-24 09:09:53 -07:00
Anna Gringauze 873b21ec04
fixed flutter pub get failure in tests (#55499) 2020-04-24 09:09:01 -07:00
Christopher Fujino 37ac9015ad
[flutter_tools] check first for stable tag, then dev tag (#55342) 2020-04-23 15:19:27 -07:00
Jonah Williams 543186f105
[flutter_tools] quality pass on windows build (#55436) 2020-04-23 12:29:48 -07:00
Jonah Williams bb683c4cdb
[flutter_tools] fix package config invalidation (#55420) 2020-04-23 11:34:01 -07:00
Jonah Williams 8df0d68633
[flutter_tools] remove globals from pub (#55412) 2020-04-22 16:34:12 -07:00
Jonah Williams 27d11da88f
Revert "[flutter_tools] default tree-shake-icons to enabled and improve performance (#54923)" (#55413)
This reverts commit 0b93a9219b.
2020-04-22 15:43:09 -07:00
Jonah Williams 0b93a9219b
[flutter_tools] default tree-shake-icons to enabled and improve performance (#54923) 2020-04-22 13:17:46 -07:00
Jonah Williams c8164dad80
[flutter_tools] migrate windows to assemble (#55187) 2020-04-22 12:26:49 -07:00
Jonah Williams f2761b6b04
[flutter_tools] refactor Chrome launch logic to remove globals/statics (#55160) 2020-04-22 01:28:51 -07:00
James D. Lin 566c1d1124
flutter_tools: Prefer using .of() over .from() when possible (#55250)
Prefer using `.of()` (which is statically type-checked) over
`.from()` (which is dynamically type-checked) when possible.
2020-04-21 22:09:50 -07:00
Jonah Williams 0b3f5cfcc0
[flutter_tools] initial support for enable experiment, run, apk, ios, macos (#54617) 2020-04-21 20:39:36 -07:00
Jonah Williams d46da3ae11
[flutter_tools] remove PackageMap and finish PackageConfig migration (#55244) 2020-04-21 19:55:15 -07:00
Katarina Sheremet d8f353af5b
Support tags when running tests from command line (#55152) 2020-04-21 10:35:13 -07:00
Jenn Magder 8109dcc2b4
CrashReportSender dependency injection (#54924) 2020-04-20 15:23:09 -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 b7e30cfc26
[flutter_tools] update compilation to use package config (#54467) 2020-04-20 14:02:49 -07:00
Jonah Williams 6a390aa7dc
[flutter_tools] fix type error in symbolize (#55212) 2020-04-20 12:21:44 -07:00
Jonah Williams 9e72bf565e
[flutter_tools] don't compute hashes of well known artifacts (#53848) 2020-04-20 12:21:20 -07:00