Commit Graph

4861 Commits

Author SHA1 Message Date
Victoria Ashworth
5cd2d4c61e
Support iOS wireless debugging (#118104)
* setup wireless debugging to use device IP

* fix tests

* fix unused var and missing annotation

* remove unneeded try catch

* remove commented out line, change null to package id

* better way to get package id

* update mDNS lookup to continously check for server, add messaging if takes too long to find observatory url, update flutter drive to enable publish-port if using network device

* Refactor mDNS Discovery to poll for observatories and better handle multiple instances of the same app. Update drive command to make publish-port more stable. Update attach for iOS to only use Protocol Discovery if applicable, run mDNS and Protocol Discovery simultaneously, handle --debug-port/--debug-url/--device-vmservice-port, continously poll for obseravtories with mDNS, include port in error message when mutliple available

* add and update comments, use logger spinner intead of timer in flutter attach, other small improvements

* add newline to message so next log won't be on same line

* fix install/waiting for permission status progress so it doens't double print the time it took.

* only print backtrace if observatory times out on a physical usb connected device

* fix test

* Update related references from Observatory to Dart VM Service

* fix test
2023-01-19 20:00:21 +00:00
Danny Tuppeny
06909ccfa4
Update packages + fix tests for javascript mime change (#118617)
Update test expectations from application/javascript -> text/javascript

`package:mime` now uses `text/javascript` and not `application/javascript`.

See https://github.com/dart-lang/mime/pull/76.
See https://datatracker.ietf.org/doc/html/rfc9239.

> This document defines equivalent processing requirements for the various script media types. The most widely supported media type in use is `text/javascript`; all others are considered historical and obsolete aliases of `text/javascript`.
2023-01-19 09:54:40 -05:00
Christopher Fujino
374f09e1a6
[flutter_tools] No more implicit --no-sound-null-safety (#118491)
* remove implicit no-sound-null-safety

* add test

* bump sdk constraint in test file
2023-01-18 20:46:09 +00:00
Jonah Williams
2fd8250285
[flutter_tools] re-enable web shader compilation (#118461)
* [flutter_tools] re-enable web shader compilation

* update test cases
2023-01-13 19:43:27 +00:00
Victoria Ashworth
b4d72752bd
Add Info.plist from build directory as input path to Thin Binary build phase (#118209)
* Add Info.plist from build directory as input path to Thin Binary build phase

* fix directive ordering

* migrate benchmark, integration, and example tests
2023-01-13 13:41:08 -06:00
Parker Lougheed
9e11d4a105
Use correct API docs link in create --sample help message (#118371)
* Use correct API doc link in create --sample help message

* Verify Flutter and Dart website links in tool help messages use https

* Adjust test failure reasoning message
2023-01-12 23:47:19 +00:00
joshualitt
8f365a3bdc
[web] Update build to use generated JS runtime for Dart2Wasm. (#118359) 2023-01-12 13:46:39 -08:00
Andrew Kolos
ee1c59d462
reduce pub output from flutter create (#118285)
* reduce pub output from flutter create

* fix fake Pub implementations

* fix tests

* Update pub.dart

* replace enum with simpler boolean

* fix tests

* Revert "fix tests"

This reverts commit 8a3182d3b9.

* Revert "replace enum with simpler boolean"

This reverts commit 445dbc443d.

* go back to using an enum
2023-01-12 21:42:02 +00:00
Andrew Kolos
5630d531b1
[tool] Generate a binary version of the asset manifest (#117233)
* initial

* update asset_bundle_package_test

* Update asset_bundle_test.dart

* Update asset_bundle_package_fonts_test.dart

* update pubspec checksum for smc dependency

* flutter update-packages --force-upgrade

* prefer += 1 over ++

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

* add regexp comment

* rescope int list comparison function

* update packages

Co-authored-by: Jonah Williams <jonahwilliams@google.com>
2023-01-12 19:33:30 +00:00
Sigurd Meldgaard
40bc6b55e4
Move debug error message from failed pub to logger.printTrace (#118379)
* Move debug error message from failed pub to logger.printTrace

* Update test
2023-01-12 19:24:20 +00:00
Sigurd Meldgaard
b7881e5b64
Align flutter pub get/upgrade/add/remove/downgrade (#117896)
* Align `flutter pub get/upgrade/add/remove/downgrade`

* Add final . to command description

* Remove trailing whitespace

* Don't print message that command is being run

* Update expectations

* Use relative path

* Remove duplicated line

* Improve function dartdoc
2023-01-10 23:29:09 +00:00
Brandon DeRosier
700fe3d2b0
[Impeller Scene] Add SceneC asset importing (#118157) 2023-01-10 01:51:40 -08:00
Tae Hyung Kim
583a8122bc
Allow select cases to be numbers (#116625) 2023-01-10 01:18:03 -08:00
Helin Shiah
46e48ba3b4
Use program during attach if provided (#118130) 2023-01-09 11:27:47 -08:00
Jenn Magder
eaaacdcba9
Allow iOS and macOS plugins to share darwin directory (#115337) 2023-01-09 10:33:03 -08:00
gmackall
57dc071f79
Adding 'is' to list of kotlin reserved keywords (#116299)
Co-authored-by: Gray Mackall <mackall@google.com>
2023-01-06 00:10:07 +00:00
Nehal Patel
de2a42497f
Fix flutter update-packages regression by fixing parameters in "pub get" runner (#116687)
* Make pub get runner respect printProgress and retry parameters

* Fix typo

* Add regression test

* Improve test

* Fix implementation and test

* Test to fix flutter_drone tests

* Revert test

* Attempt #2 to fix flutter_drone tests

* Revert attempt

* Hack: Force printProgress to debug Windows tests

* Use ProcessUtils.run to avoid dangling stdout and stderr

* Update documentation

* Clean up retry argument
2023-01-06 00:08:05 +00:00
Christopher Fujino
672fe20bde
[flutter_tools] Fix null check in parsing web plugin from pubspec.yaml (#117939)
* fix null check in parsing web plugin yaml

* revert accidental diff

* remove comment
2023-01-04 20:28:26 +00:00
Vyacheslav Egorov
025ce117b7
Correctly propagate verbosity to subtasks in flutter.gradle (#117897)
* Correctly propagate verbosity to subtasks in flutter.gradle

* Add test

* Revert accidental changes

* Fix copyright year

* Fix imports
2023-01-04 09:54:21 +00:00
Peixin Li
906761cf9b
Fix the message strings for xcodeMissing and xcodeIncomplete (#117922)
* Add macOS to xcodeMissing and xcodeIncomplete

* And unit test
2023-01-04 02:48:00 +00:00
Ahmed Ashour
b9ead37244
Simplify null check. (#117026)
* Simplify null check.

* Simplify null check.

* Simplify null check.

* Fix.
2023-01-03 20:51:48 +00:00
Jesús S Guerrero
fe8dcf6631
[flutter_tools] timeline_test.dart flaky (#116667)
* contains name instead of remove last

* fix expect

* remove and expect on elements

* delete unused code
2023-01-03 20:44:53 +00:00
stuartmorgan
2a502363e1
Add native unit tests to iOS and macOS templates (#117147)
* Improve Swift plugin implementation

* Add iOS tests

* Review feedback on structure

* Remove duplicate scheme file

* Add macOS

* Add iOS

* swift test tweaks

* unit tests

* Whitespace

* Add e2e tests
2022-12-21 19:10:22 +00:00
Michael Goderbauer
b308555ed1
Enable dangling_library_doc_comments and library_annotations lints (#117365) 2022-12-20 16:03:21 -08:00
Camille Simon
de357647be
[Android] Bump template AGP and NDK versions (#116536)
* Bump versions

* Fix gradle errors test
2022-12-20 22:51:10 +00:00
Michael Goderbauer
fdd2d7d64a
Sync analysis_options.yaml & cleanups (#117327) 2022-12-20 14:15:39 -08:00
Michael Goderbauer
1adc27503f
Bump min SDK to 2.19.0-0 (#117345)
* Bump min SDK to 2.19.0-0

* fix
2022-12-20 00:46:14 +00:00
Jackson Gardner
9f2c5d8e21
Support flutter build web --wasm (#117075)
* Work in progress.

* Some fixes to the command line.

* Bootstrapping works.

* Change kickoff order to maximize concurrency.

* Fix analyzer errors and formatting issues.

* Fix doc comment.

* Added unit tests for some of the web targets.

* Format issue.

* Add an integration test that builds an app to wasm.

* Add a todo for depfiles.

* Formatting.

* Apparently the license header needs to say 2014.

* `file://` URIs confuse dart2wasm on Windows. Just use absolute paths.

* Update unit tests to match new path passing.

* Have a distinct build directory for wasm, and fixes for some upstream changes.
2022-12-19 20:09:02 +00:00
Danny Tuppeny
9f9010f5e8
[flutter_tools] Update DAP progress when waiting for Dart Debug extension connection (#116892)
Fixes https://github.com/Dart-Code/Dart-Code/issues/4293.
2022-12-19 11:33:26 -05:00
Jackson Gardner
ebeb491895
Use the name of errors, not the diagnostic messages. (#117229)
* Use the name of errors, not the diagnostic messages.

* Trailing comma.
2022-12-16 22:19:55 +00:00
Christopher Fujino
c7cb5f3f5b
[flutter_tools] pin package intl and roll pub packages (#117168)
* pin package intl and roll pub packages

* add test

* fix analysis
2022-12-16 00:34:51 +00:00
fzyzcjy
86b62a3c21
Tiny fix about outdated message (#114391) 2022-12-15 16:06:44 -08:00
hellohuanlin
0916375f44
[tools]Build IPA validation UI Polish (#116744)
* [tools]some ui polish for build ipa validation

* do not print out a few success validations

* rename installed type to success for more general usage

* forgot nit after reverting custom validation types and re-use doctor types
2022-12-15 14:43:32 -08:00
Christopher Fujino
1eaf5c0f08
[flutter_tools] tree shake icons from web builds (#115886)
* wip

* remove temp text file

* fix tests

* add test

* default to off

* restore gitignore

* update

* apply annotation to cupertino icons as well

* update reference to library in icon_tree_shaker.dart

* update tests

* fix tests

* remove hack to skip non-const check on web

* add hint about how much reduction and test
2022-12-15 22:13:17 +00:00
Jenn Magder
ada4460502
Audit covariant usage in tool (#116930) 2022-12-15 11:59:34 -08:00
stuartmorgan
f1d157bc29
Add an integration test to plugin template example (#117062)
* Add an integration test to plugin template example

Dart unit tests don't exercise host-side plugin code at all, so the
example tests in the plugin template currently have very little
meaningful coverage. This adds an integration test to the example app
when creating a plugin, so that there's an example of how to actually
test that a complete round-trip plugin call works.

This is done as a separate template that's currently only used by the
plugin template because I don't know what a good example for a
non-plugin case would be that isn't largely just a duplicate of the
widget tests. However, the integration test pre-includes conditionals
around the parts that are plugin-specific so that it can more easily be
expanded to other use cases later (e.g., in
https://github.com/flutter/flutter/issues/68818).

Part of https://github.com/flutter/flutter/issues/82458

* Add integration test to expected dependencies of a plugin app

* Test fixes

* Make an explicit test case
2022-12-15 19:49:14 +00:00
Loïc Sharma
c420562ef3
Fix output match (#116912) 2022-12-12 21:28:54 +00:00
Jonah Williams
84ed058b42
[flutter_tools] Add remap sampler support (#116861) 2022-12-12 17:44:32 +00:00
Ian Hickson
9fdb64b7e7
Taboo the word "simply" from our API documentation. (#116061) 2022-12-11 22:43:22 +00:00
Siva
7c8e171320
Manual Roll of Flutter Engine from 67254d6e4b03 to 8d83b98c55b3 (#116635)
* Roll Flutter Engine from 67254d6e4b03 to 8d83b98c55b3

* Roll Dart SDK from 35a9facce191 to e517487c5679 (Dart 3.0) (#38105)

* Bump SDK versions.

* Bump Dart SDK version constraints

* Update shrine package to 2.0.1 (null safe version)

* Fix more tests.

* Include patches from Jason for min android sdk version

* Fix analyzer warning
2022-12-08 18:03:51 -08:00
Christopher Fujino
afdc484011
add test of flutter update-packages --transitive-closure --consumer-only (#116747) 2022-12-09 01:00:22 +00:00
Tae Hyung Kim
117a83a4a7
Throw error when plural case had undefined behavior (#116622)
* init

* add comment

* make error more actionable
2022-12-08 22:29:14 +00:00
Casey Hillers
7673108d7e
Revert "Speed up first asset load by encoding asset manifest in binary rather than JSON (#113637)" (#116662)
This reverts commit 56cad89b1e.
2022-12-07 17:29:05 +00:00
Tae Hyung Kim
21f3ce8b69
[gen_l10n] Multiline descriptions (#116380)
* init

* empty commit to start google testing
2022-12-06 19:16:23 +00:00
Jason C.H
a8b36c7da4
Fix windows version validator under Chinese (#116282)
* Fix windows version validator under Chinese

* Update authors

* Update RegExp to reduce groups

* Add a trailing newline
2022-12-06 17:41:09 +00:00
Jackson Gardner
5201856805
Use file:/// style uris when passing platform to the compiler. (#116553)
* Use file:/// style uris when passing platform to the compiler.

* License header.

* Use BufferLogger.

* Don't unadvertently convert strings to regexes for matching purposes.

* Fix formatting.

* More formatting.
2022-12-06 02:27:21 +00:00
Jonah Williams
27281dab81
[flutter_tools] dont include material shaders in web builds (#116538)
* [flutter_tools] dont include material shaders in web builds

* add test
2022-12-05 20:42:15 +00:00
Andrew Kolos
56cad89b1e
Speed up first asset load by encoding asset manifest in binary rather than JSON (#113637) 2022-12-05 10:39:10 -08:00
Jackson Gardner
db1c3e208d
Platform binaries reland (#115502)
You can now specify a --local-web-sdk flag to point to a wasm_release folder. This will make it so that only artifacts that pertain to the web sdk are overridden to point to the wasm_release folder. Other artifacts (such as impellerc) will pull from the cache, or from the --local-engine path if that is specified.

This also uses precompiled platform kernel files for both ddc and dart2js
2022-12-02 14:13:40 -08:00
hellohuanlin
162be5933b
[tools]build IPA validation bundle identifier using the default "com.example" prefix (#116430)
* [tools]build IPA validation bundle identifier using default com.example

* rephrase the warning
2022-12-02 20:49:30 +00:00
hellohuanlin
be81e9eae7
[tools]build ipa validate launch image using template files (#116242)
* [tools]build ipa validate launch image using template files

* reuse more code by sharing the same file key

* fix space
2022-12-02 02:09:50 +00:00
Ahmed Ashour
f6224f368a
[gen_l10n] keys can contain dollar sign (#114808)
* [gen_l10n] keys can contain dollar sign

Fixes #112250

* Update packages/flutter_tools/lib/src/localizations/gen_l10n.dart

Co-authored-by: Christopher Fujino <fujino@google.com>
2022-12-01 21:42:02 +00:00
Nehal Patel
3b15d6a501
Removes retries from "dart pub get" and un-buffers its stdout/stderr output (#115801)
* Removes retries from "pub get" and proxies its stdout output

* Fix issue where ErrorHandlingProcessManager does not forward "mode" parameter to backing ProcessManager's "start" method

* Make "pub get" use ProcessStartMode.inheritStdio instead of forwarding bytes to stdout and stderr

* Fix tests

* Remove unused env var

* Add back 'Running "flutter pub get"...' status log

* Fix indent

* Add Pub.test() constructor which lets tests mock stdio
2022-12-01 19:30:17 +00:00
Jenn Magder
49f5980970
Suggest Rosetta when x64 binary cannot be run (#114558)
* Suggest Rosetta when x64 binary cannot be run

* validator

* Adjust error message
2022-12-01 19:17:07 +00:00
Gary Qian
6e8ebb3771
Reland "Upgrade targetSdkVersion and compileSdkVersion to 33" (#116146) 2022-12-01 07:12:47 -08:00
Tae Hyung Kim
7802c7acd8
[gen_l10n] Improvements to gen_l10n (#116202)
* init

* fix tests

* fix lint

* extra changes

* oops missed some merge conflicts

* fix lexer add tests

* consistent warnings and errors

* throw error at the end

* improve efficiency, improve code generation

* fix

* nit

* fix test

* remove helper method class

* two d's

* oops

* empty commit as google testing won't pass :(
2022-11-30 15:07:06 -08:00
Christopher Fujino
2ef2cc89e9
[flutter_tools] add deprecation message for "flutter format" (#116145) 2022-11-30 14:00:01 -08:00
Danny Tuppeny
a29796e339
[flutter_tools] Forward app.webLaunchUrl event from Flutter to DAP clients (#116275)
* [flutter_tools] Forward app.webLaunchUrl event from Flutter to DAP clients

Fixes https://github.com/Dart-Code/Dart-Code/issues/4292.

* Update packages/flutter_tools/lib/src/debug_adapters/flutter_adapter.dart

Co-authored-by: Christopher Fujino <fujino@google.com>

* Another static const instead of final

Co-authored-by: Christopher Fujino <fujino@google.com>
2022-11-30 21:25:07 +00:00
Christopher Fujino
9532b91c74
[flutter_tools] normalize windows file path cases in flutter validator (#115889)
* normalize windows file path cases in flutter validator

* fix

* make comparison more accurate by checking .startsWith() rather than .contains()

* fix method name

* call path.canonicalize

* fix
2022-11-29 23:46:48 +00:00
hellohuanlin
e438a12057
[tools]build ipa validate app icon size (#115594)
* [tools]build ipa validate icon size

* add more checks in case apple change the format, and also add device lab tests

* do not depend on collection package
2022-11-29 23:19:02 +00:00
Tae Hyung Kim
39a73cabed
Add Escaping Option for ICU MessageFormat Syntax (#116137)
* init

* make more descriptive

* fix lint
2022-11-28 19:35:06 -08:00
Jonah Williams
f777c9f651
[flutter_tools] use absolute path for shader lib (#116123)
* [flutter_tools] use absolute path for shader lib

* update tests
2022-11-29 01:57:26 +00:00
Tae Hyung Kim
215f6372c6
Refactor Message class to hold all translations (#115506)
* init

* more fixing

* finish

* fix lint

* address pr comments

* redo checks
2022-11-28 20:27:33 +00:00
Kevin Moore
259373d62b
[flutter_tools] Add --dump-info, --no-frequency-based-minification flags (#115862)
* [flutter_tools] Add --dump-info, --no-frequency-based-minification flags

Also some cleanup to named arguments to the buildWeb function

Fixes https://github.com/flutter/flutter/issues/115854

* fix tests
2022-11-22 23:57:25 +00:00
Zachary Anderson
73024eb703
[flutter_tool] Adds --enable-dart-profiling flag (#115863) 2022-11-22 15:47:51 -08:00
gaaclarke
2b0c895fa1
Updated the kotlinlang version url. (#115782)
* Updated the kotlinlang version url.

* fixed format for test
2022-11-21 21:47:25 +00:00
Christopher Fujino
0b9d18f8fa
[flutter_tools] Add flutter update-packages --synthetic-package-path (#115665)
* allow persisting synthetic package with option

* allow presisting synthetic packages dir

* fix

* fix bug and add tests

* clean up tests

* nits
2022-11-21 20:04:52 +00:00
Sam Rawlins
f255390f4d
Remove redundant arguments passed to redirecting factory constructors (#115497) 2022-11-17 00:47:14 +00:00
hellohuanlin
dcae424783
[tools]build ipa validate template icon files (#114841)
* [tools]build ipa validate template icon files

* use the same box for both validations, and added some unit test, and some nits

* add unit test for templateImageDirectory

* use fs.path.join intead of raw path

* use the correct filesystem

* lint

* use absolute path for flutter_template_images

* fix rebase

* update indentation
2022-11-16 19:29:17 +00:00
Christopher Fujino
a2233eabed
[flutter_tools] remove all body_might_complete_normally_catch_error ignores (#115184)
* remove all body_might_complete_normally_catch_error ignores

* add a test
2022-11-16 18:20:45 +00:00
Elias Yishak
d7454d552a
removing default values for [reporter] and [timeout] in flutter test (#115160)
* removing default values for [reporter] and [timeout]]

* passing reporter arg to see tests pass

* added test to confirm TestCommand is not passing defaults

* add'l helper message for [reporter] arg

* default behavior for github actions + fixed tests

* removing github conditional for reporter + related test

* removing unused import
2022-11-16 18:20:42 +00:00
godofredoc
2c1536a2d9
Create a main alias for master channel. (#115388)
* Create a main alias for master channel.

To slowly migrate away from master branch in the flutter repository we
created a main branch that is mirroring master branch. This PR is also
adding a channel alias that will allow to use master/main interchangeably.

Bug: https://github.com/flutter/flutter/issues/95041

* Fix channel tests.

* Remove additional space.
2022-11-16 02:49:00 +00:00
Jenn Magder
2c44f4a68b
Remove dev branch reference from build ios-frameworks error (#115166) 2022-11-15 21:35:29 +00:00
Brandon DeRosier
e9c6212da0
[Impeller] Add shader include with FlutterFragCoord for use by FragmentProgram (#114214) 2022-11-14 21:38:46 -08:00
Jonah Williams
59ecc75748
[flutter_tools] add uint compilation test (#115317)
* [flutter_tools] add uint compilation test

* Update shader_compiler_test.dart
2022-11-15 01:39:59 +00:00
Jenn Magder
2e51077d19
Do not strip architecture suffixes from host local-engine (#115320)
* Do not strip suffices from host local-engine

* suffixes
2022-11-15 01:36:49 +00:00
Jonah Williams
8230ef5e85
Revert "[web] Add --local-web-sdk flag and use precompiled platform kernels for dart2js and ddc (#114639)" (#115242)
This reverts commit 0e9ee3679c.
2022-11-13 20:23:26 +00:00
Jackson Gardner
0e9ee3679c
[web] Add --local-web-sdk flag and use precompiled platform kernels for dart2js and ddc (#114639)
* Dart2JS build step looks for compiled platform binaries.

* Use new locations of platform binaries.

* Added --local-web-sdk command line flag.

* Need to use the matching frontend server when doing ddc stuff.

* Update packages/flutter_tools/lib/src/test/web_test_compiler.dart

Co-authored-by: Mouad Debbar <mouad.debbar@gmail.com>

* Update packages/flutter_tools/lib/src/runner/flutter_command_runner.dart

Co-authored-by: Mouad Debbar <mouad.debbar@gmail.com>

* Formatting issues.

* Need to use URI format for platform dill.

* Fix resident runner tests.

* Fix analysis issue.

* Fix and add unit tests.

* Add some useful comments.

* Refine doc comments for flags.

Co-authored-by: Mouad Debbar <mouad.debbar@gmail.com>
2022-11-12 01:31:10 +00:00
blendthink
229b39eda5
[flutter_tools] Fix so that the value set by --dart-define-from-file can be passed to Gradle (#114297)
* Add dartDefineConfigJsonMap to the checklist

* Fix typo

* Align formatting with other code

* Fix toGradleConfig method
2022-11-11 18:48:01 +00:00
Jonah Williams
c021d9177c
[flutter_tools] support github reporter (#115137)
* [flutter_tools] support github reporter

* Update packages/flutter_tools/lib/src/commands/test.dart

Co-authored-by: Christopher Fujino <fujino@google.com>

Co-authored-by: Christopher Fujino <fujino@google.com>
2022-11-11 07:36:02 +00:00
Ian Hickson
4e7dbefd92
Explicitly call out documentation links in "flutter create" (#114181)
The recent survey suggests that some people are not finding documentation after they get started with Flutter, so let's just give them links right away. It might not help everyone but there's not really any downside so...
2022-11-10 22:13:52 +00:00
The one with the braid (she/her) | Dфҿ mit dem Zopf (sie/ihr)
2e432ec16b
chore: enable Flutter Android workflow on aarch64 (#113829)
- removes invalid arch check on Android workflow in order to enable Android development on any device supported

Signed-off-by: TheOneWithTheBraid <the-one@with-the-braid.cf>

Signed-off-by: TheOneWithTheBraid <the-one@with-the-braid.cf>
2022-11-10 22:09:28 +00:00
Jenn Magder
c1ceda41ef
Include stdout in codesign failure output (#115115) 2022-11-10 14:09:20 -08:00
Danny Tuppeny
09a4f23467
Prevent tests from producing dill files alongside the test file (#115075)
Fixes https://github.com/Dart-Code/Dart-Code/issues/4243.
2022-11-10 20:00:19 +00:00
Danny Tuppeny
51c517c03c
[flutter_tools/dap] Add support for forwarding flutter run --machine exposeUrl requests to the DAP client (#114539)
* [flutter_tools/dap] Add support for forwarding `flutter run --machine` requests to the DAP client

Currently the only request that Flutter sends to the client is `app.exposeUrl` though most of this code is generic to support other requests that may be added in future.

* Improve comment

* Fix thrown strings

* StateError -> DebugAdapterException

* Add a non-null assertion and assert

* Use DebugAdapterException to handle restartRequests sent before process starts

* Fix typo + use local var

* Don't try to actually send Flutter messages in tests because there's no process
2022-11-09 19:16:47 +00:00
Victoria Ashworth
3a656b16cb
Add more supported simulator debugging options and improve tests (#114628)
* add debugging options to simulator, test more debugging flags, add tests for other launch arguements

* refactor iOS launch arguments to use one function for both simulator and physical devices

* treat dart flags differently between physical and simulator

* Simplify some flags between devices.

Change --disable-service-auth-codes to not always be included for physical devices, only if disableServiceAuthCodes is true.
Change --disable-observatory-publication to be used for simulator devices too.
Change --enable-checked-mode & --verify-entry-points to be used if debuggingEnabled is true regardless of device type.
Chnage --trace-startup to be used for simulator devices too.

* fix ios release mode with buildable app startApp test

* determine observatory-port from deviceVmServicePort and hostVmServicePort

* add comments and remove hasObservatoryPort
2022-11-09 18:17:09 +00:00
Jesús S Guerrero
530324d232
Build command dependency injection (#114383)
* update flutter build command

* update tests

* fix analyze suggestions
2022-11-08 23:38:10 +00:00
Alex Wallen
7020f59ace
[tool] Support --flavor option for flutter install. (#114048)
* Alphabetize setup calls

* Add --flavor as an option for install

* Add verbose logging in install command

* Test that flavors build succeeds with proper flavor and fails with bogus one.

* Remove unused import

* The import was used...

* SQUASH

* Add flavor install test

* Rename test

* Add flavors install integration tests

* correct error message

* remove unused imports

* Delete copy test

* update test target

* Refactor mechanism to read buildInfo

* Remove unused import

* Set affected test targets to bringup: true

Co-authored-by: a-wallen <stephenwallen@google.com>
2022-11-08 22:53:23 +00:00
Zachary Anderson
a84e369bd2
Revert "Allow Flutter golden file tests to be flaky (#114450)" (#114902)
This reverts commit 53e6876226.
2022-11-08 09:26:55 -08:00
Kate Lovett
53e6876226
Allow Flutter golden file tests to be flaky (#114450)
* allow marking a golden check as flaky

* add matchesFlutterGolden to analyze.dart; no tags for flutter_goldens/lib

* Pause

* ++

* ++

* Analyzer therapy

* Once more with feeling

* Nits

* Review feedback

* Silly oops

* Test progress

* More tests

* Finish

* Nits

* Analyzer

* Review feedback

Co-authored-by: Yegor Jbanov <yjbanov@google.com>
2022-11-08 01:14:03 +00:00
Jonah Williams
e4e902dced
[flutter_tools] add compilation failure tests for new cases added in impellerc (#114757) 2022-11-07 20:59:13 +00:00
Victoria Ashworth
378387b139
when getting xcworkspace, exclude hidden files (#114099)
* exclude xcworkspace that begins with a period

* fix if spacing, add comment

* add unit test for when no xcworkspace found

* update to use xcodeWorkspace, make it nullable and refactor

* check if hostAppRoot exists before trying to get xcworkspace

* use local variables to take advantage of type promotion

* only check if not null, don't need to check if exists

* readd exist check for migrate

* readd missing line at end of file
2022-11-07 18:48:52 +00:00
Chris Bracken
3c9288c6d3
Increase minimum supported macOS version from 10.13 to 10.14 (#114713)
Increases the minimum macOS deployment target from macOS 10.13 (High Sierra) to 10.14 (Mojave) in the macOS app templates.

Includes:
* Update migration for macOS 10.11 apps to upgrade to 10.14
* Adds migration for macOS 10.13 apps to upgrade to 10.14
* Apply migration to all examples, and integration tests

This does not increase version in the plugin templates since those will need to wait until the 10.14 framework rolls to stable channel, so new plugins can build with apps created with `flutter create` on stable channel.

Issue: https://github.com/flutter/flutter/issues/114445
See RFC: http://flutter.dev/go/flutter-drop-macOS-10.13-2022-q4
See previous patch: https://github.com/flutter/flutter/pull/107689
2022-11-07 11:32:42 +01:00
Chris Bracken
5bc50c136b
Fix macOS migration nothing-to-upgrade test (#114703)
When testing whether a macOS deployment target version migration is
unnecessary due to already being at the target version, we were
previously checking the iOS deployment target version rather than the
macOS version. This updates it to test MACOSX_DEPLOYMENT_TARGET instead.
2022-11-05 17:02:46 -07:00
Tae Hyung Kim
cef4c2aac8
ICU Message Syntax Parser (#112390)
* init

* code generation

* improve syntax error, add tests

* add tests and fix bugs

* code generation fix

* fix all tests :)

* fix bug

* init

* fix all code gen issues

* FIXED ALL TESTS :D

* add license

* remove trailing spaces

* remove print

* tests fix

* specify type annotation

* fix test

* lint

* fix todos

* fix subclass issues

* final fix; flutter gallery runs

* escaping for later pr

* fix comment

* address PR comments

* more

* more descriptive errors

* last fixes
2022-11-05 10:26:46 -07:00
Jenn Magder
c1d2b854ef
Change some required nullable parameters in tool to non-null (#114115) 2022-11-04 17:36:01 +00:00
hellohuanlin
8a9ddade9a
[tools]validation basic Xcode settings for build ipa (#113412) (#114634) 2022-11-03 22:29:07 +00:00
Jason Simmons
a440c4689f
Do not assume that pub is the first command run by "flutter create" (#114621)
The "flutter create" command on macOS may run other commands such as
openssl when it calls _getCodeSigningIdentityDevelopmentTeam
2022-11-03 10:46:18 -07:00
Zachary Anderson
0943693e85
Revert "[tools]validation basic Xcode settings for build ipa (#113412)" (#114615)
This reverts commit e6300da2c3.
2022-11-03 15:23:03 +00:00
hellohuanlin
e6300da2c3
[tools]validation basic Xcode settings for build ipa (#113412) 2022-11-03 02:38:17 +00:00
Christopher Fujino
0211df9cfc
[flutter_tools] provide --timeout option to flutter drive (#114458) 2022-11-02 18:43:42 +00:00
Danny Tuppeny
3b0f8335ee
[flutter_tools/dap] Add a base Flutter adapter class to avoid duplication between adapters (#114533) 2022-11-02 18:38:46 +00:00
Danny Tuppeny
307987339e
[flutter_tools/dap] Map org-dartlang-sdk URIs to the location of the source files found by the analyzer (#114369) 2022-11-02 17:07:58 +00:00
Jonah Williams
1cfdac4b23
Always invoke impeller ios shader target (#114451) 2022-11-02 16:43:07 +00:00
Elias Yishak
17ec3b1d15
[flutter_tools] Introducing arg option for specifying the output directory for web (#113076) 2022-11-01 22:50:02 +00:00
Gary Qian
7ab2bf8ff7
Delete flutter_migrate code (#114253) 2022-10-31 17:52:05 +00:00
Jonah Williams
4f19a9fa46
[flutter_tools] Add support for compiling shaders to JSON bundle for web (#114295) 2022-10-31 16:52:09 +00:00
Liam Appelbe
ea0ddc94cc
Fix NPE in coverage collector (#114177) 2022-10-27 19:24:00 -07:00
Jenn Magder
15e694414c
Terminate simulator app on "q" (#114114) 2022-10-27 22:06:35 +00:00
Victoria Ashworth
8aad1190b7
Check for watch companion in build settings (#114078) 2022-10-27 22:05:05 +00:00
Christopher Fujino
d40f6d1e68
[flutter_tools] allow flutter drive to take screenshots when sent a terminating signal (#114118) 2022-10-27 18:51:15 +00:00
Jenn Magder
609b8f3219
Revert part of "Terminate simulator app on "q" (#113581)" (#114083) 2022-10-26 10:26:14 -07:00
Lucas Britto
5d93894264
[flutter_tools] Decouple fatal-warnings check from fatal-infos (#113748) 2022-10-26 16:44:25 +00:00
Jackson Gardner
cb534057e7
Don't specify libraries-spec argument if we are passing a platform dill. (#114045) 2022-10-26 16:05:08 +00:00
Jenn Magder
9f5c6553bc
Revert "Check for watch companion in build settings (#113956)" (#114035)
This reverts commit e13372188f.
2022-10-25 13:33:35 -07:00
Victoria Ashworth
e13372188f
Check for watch companion in build settings (#113956) 2022-10-25 20:08:19 +00:00
Alex Wallen
92d8b04bac
[macOS] Flavors project throws no flavor specified for creating a project. (#113979) 2022-10-25 19:50:50 +00:00
Danny Tuppeny
3599b3a877
Add support for expression compilation when debugging integration tests (#113481)
Fixes #79439.
2022-10-25 15:34:22 +01:00
Liam Appelbe
0c14308404
Add branch coverage to flutter test (#113802) 2022-10-24 14:31:17 -07:00
Greg Spencer
5259e1bc6d
Add --empty to the flutter create command (#113873) 2022-10-24 21:20:03 +00:00
Mouad Debbar
2dd87fbdf2
Fix --local-engine for the new web/wasm mode (#113759) 2022-10-24 20:43:09 +00:00
David Iglesias
883469229e
[web] Use TrustedTypes in flutter.js and other tools (#112969) 2022-10-21 16:03:51 +00:00
Christopher Fujino
483e1d9a6f
Validate bins on path in doctor (#113106) 2022-10-20 18:02:10 +00:00
Christopher Fujino
e4b9796790
[flutter_tools] Implement NotifyingLogger.supportsColor (#113635) 2022-10-20 15:43:49 +00:00
Brandon DeRosier
637e5bce66
[Impeller] Build Impeller iOS runtime stage shaders when Impeller is enabled (#113689) 2022-10-20 02:14:43 -07:00
Jenn Magder
49405135d7
Update macOS gallery display name (#113658) 2022-10-20 03:23:12 +00:00
Alex Li
3d94b8fd1d
[tool] Install the corresponding APK in flutter run (#113622) 2022-10-19 02:44:30 +00:00
Jenn Magder
4d28e6d064
Terminate simulator app on "q" (#113581) 2022-10-18 22:26:16 +00:00
Jenn Magder
b084249184
Remove Swift plugin Objective-C files (#113585) 2022-10-18 18:41:08 +00:00
Jesús S Guerrero
eea60f86f1
Dependency injection Attach command (#113227) 2022-10-18 17:30:01 +00:00
godofredoc
4fa91c949a
Revert "[tool] ️ Install the corresponding APK in flutter run (#112768)" (#113614)
This reverts commit 0ad71e8727.
2022-10-18 10:04:49 -07:00
Alex Li
0ad71e8727
[tool] ️ Install the corresponding APK in flutter run (#112768) 2022-10-18 02:06:30 +00:00
Jenn Magder
f059dd40ea
Show Xcode compilation errors at end of build, suppress stdout and stderr from Xcode (#113302) 2022-10-17 17:47:25 +00:00
Jason Simmons
f02cfd48df
Support the --no-devtools flag in "flutter run --machine" (#113414) 2022-10-17 16:44:15 +00:00
Lau Ching Jun
24aa26a36d
Handle null exception case in ProxiedDevice.stopApp. (#113317) 2022-10-14 15:27:06 +00:00
Lau Ching Jun
34995ba96e
Make AndroidApk nullable in stopApp. (#113353) 2022-10-13 17:03:57 +00:00
Jenn Magder
61ac000d65
Enable impeller flags for iOS simulator (#113350) 2022-10-12 20:37:06 +00:00
Jenn Magder
2f03dda55e
Fix Android Studio version string nullablity, fake AndroidStudio in test (#113295) 2022-10-12 18:32:55 +00:00
Lau Ching Jun
944a4c9714
Write crash report in temp directory if writing to CWD failed. (#113316) 2022-10-12 17:13:24 +00:00
Jenn Magder
8c8bb22222
BufferLogger should log stacktrace (#113240) 2022-10-11 20:14:18 +00:00
Brett Morgan
c0f48ba6bf
Fix for Issue #112983 (#112985) 2022-10-09 05:27:38 +11:00
Harry Terkelsen
529184bcca
[flutter_tool] Don't download CanvasKit if it's already in flutter_web_sdk (#113072) 2022-10-07 10:28:49 -07:00
Zachary Anderson
1587ee0123
Revert "Upgrade targetSdkVersion and compileSdkVersion to 33 (#112936)" (#113064)
This reverts commit f80411d893.
2022-10-06 13:52:31 -07:00
Gary Qian
f80411d893
Upgrade targetSdkVersion and compileSdkVersion to 33 (#112936) 2022-10-06 20:11:28 +00:00
Christopher Fujino
559d524ec1
improve debugging when dart pub get call fails (#112968) 2022-10-05 21:53:06 +00:00
Jenn Magder
b82cf76ff6
Return void from project migrate() (#112897) 2022-10-05 20:22:56 +00:00
林军华
8e30cc9c56
Revert file naming convention of .aar files to support fuzzy matching in build.gradle (#112149) 2022-10-04 03:37:22 +00:00
Jenn Magder
35afe1bdac
Stop embedding bitcode for iOS in tool (#112831) 2022-10-04 01:41:23 +00:00
Jenn Magder
8c0aa6c66c
Turn off bitcode in existing iOS Xcode projects (#112828) 2022-10-04 01:15:24 +00:00
Gary Qian
21861423f2
[flutter_tools] analyze --suggestions --machine command (#112217) 2022-10-03 17:40:58 +00:00
Andrew Kolos
f8c9f72b94
URI-decode asset paths before writing them to the asset manifest (#112415) 2022-10-01 01:09:06 +00:00
Jonah Williams
99fb2d36e8
[flutter_tools] cache more directories (#112651) 2022-09-30 08:52:29 +00:00
Jason Simmons
2a4adab7f4
Return ErrorHandlingFileSystem backed objects in ErrorHandlingFileSystem file/directory APIs (#112673) 2022-09-29 22:57:20 +00:00
Liam Appelbe
278ac62755
Migrate flutter_tools to use package:coverage (#111681) 2022-09-29 18:36:21 +00:00
Danny Tuppeny
5655225cd7
Send progress notifications to clients during hot reload / hot restart (#112455) 2022-09-29 16:27:40 +01:00
Jason Simmons
74dfc0708d
Treat assets as variants only if they share the same filename (#112602) 2022-09-29 01:36:20 +00:00
Jesús S Guerrero
fc015f52c6
Use directory exists instead of path.dirname (#112219) 2022-09-28 22:24:24 +00:00
Andrew Kolos
cb5b5c3459
Tighten asset variant detection criteria to only include device-pixel-ratio variants (#110721) 2022-09-27 20:57:33 +00:00
haizhu
cbfe5a5226
[tool] Proposal to support dart define config from a json file (#108098) 2022-09-26 21:47:27 +00:00
Lau Ching Jun
2a73ce9b50
Refactor DeviceManager.findTargetDevices() and FlutterCommand.findAllTargetDevices(), and add a flag to not show prompt. (#112223) 2022-09-23 21:10:35 +00:00
Christopher Fujino
eead1efe5f
[flutter_tools] Fix type error in ChromiumDevice.startApp (#111935) 2022-09-20 18:10:13 +00:00
Elias Yishak
9e87a5b08a
fix for flakey analyze test (#111895) 2022-09-19 21:00:56 +00:00
Christopher Fujino
35f8724b14
[flutter_tools] fix AndroidSdk.reinitialize bad state error (#111527) 2022-09-16 03:49:30 +00:00
Christopher Fujino
6bb2018af7
[flutter_tools] reduce doctor timeout to debug 111686 (#111687) 2022-09-15 20:59:17 +00:00
Elias Yishak
0c829caad8
error handling when path to dir provided instead of file (#109796) 2022-09-14 21:13:13 +00:00
姚春锋
148a0b264b
let the plugin's output generated in flutter/.android/plugins_build_output/${androidPlugin.name} (#94645) 2022-09-14 15:47:16 +00:00
Christopher Fujino
e4a203b347
[flutter_tools] filter "Resolving dependencies..." from dart pub get output to fix test flakiness (#111312) 2022-09-10 00:26:55 +00:00
Ivan Dlugos
d63442c1da
refactor: strip all local symbols from macOS and iOS App.framework - reduces app size (#111264) 2022-09-09 21:13:10 +00:00
Christopher Fujino
7875c80344
[flutter_tools] add test debugging for #111272 (#111280) 2022-09-09 18:00:46 +00:00
Liam Appelbe
ec75399beb
Null safety migration of packages/flutter_tools/test/general.shard, part 1/2 (#110711)
* Migrate packages/flutter_tools/test/general.shard, part 1/2

* Fix most of the tests

* Fix analysis

* Fix analysis

* Fix test

* Fix analysis

* Fix analysis

* Fix nit
2022-09-08 15:25:27 -07:00
Elias Yishak
66c306b452
Windows version check in doctor (#110013) 2022-09-08 14:30:19 +00:00
Sigurd Meldgaard
d80e994a62
Reland: Show output from pub get in flutter pub get (#110851) 2022-09-08 15:13:23 +02:00
Liam Appelbe
4453ba0a4d
Null safety migration of packages/flutter_tools/test/general.shard, part 2/2 (#110712)
* Migrate packages/flutter_tools/test/general.shard, part 2/2

* Fix analysis

* Fix tests

* Fix analysis

* Apply suggestions from code review

Co-authored-by: Christopher Fujino <fujino@google.com>

Co-authored-by: Christopher Fujino <fujino@google.com>
2022-09-07 12:28:52 -07:00
Michael Thomsen
242bb67d19
Update null safety warnings in prep for Dart 3 (#110998) 2022-09-07 14:59:25 +02:00
Liam Appelbe
8da0432094
Null safety migration of packages/flutter_tools/test/commands.shard/hermetic, part 1/3 (#110707)
* Migrate packages/flutter_tools/test/commands.shard/hermetic, part 1/3

* Fix tests

* Fix analysis

* Fix analyze_test

* Make AnalysisServer a local variable

* Chris's comments
2022-09-06 11:21:23 -07:00
Liam Appelbe
c0354999a7
Migrate packages/flutter_tools/test/web.shard (#110713) 2022-09-06 11:05:41 -07:00
Liam Appelbe
22cef4898a
Null safety migration of packages/flutter_tools/test/commands.shard/hermetic, part 2/3 (#110708)
* Migrate packages/flutter_tools/test/commands.shard/hermetic, part 2/3

* Fix tests

* Fix analysis

* Chris's comments
2022-09-06 10:39:18 -07:00
Liam Appelbe
9dbc09de1f
Null safety migration of packages/flutter_tools/test/commands.shard/hermetic, part 3/3 (#110709)
* Migrate packages/flutter_tools/test/commands.shard/hermetic, part 3/3

* Fix tests

* Chris's comment
2022-09-06 10:22:40 -07:00
Liam Appelbe
089d955156
Null safety migration of packages/flutter_tools/test/commands.shard/permeable (#110710)
* Migrate packages/flutter_tools/test/commands.shard/permeable

* Fix upgrade_test

* Chris's comments
2022-09-06 10:22:09 -07:00
Ivan Dlugos
723b82e4f0
Feat: dSYM debug info for iOS & macOS builds (#101586) 2022-09-05 18:16:16 +00:00
Anna Gringauze
3292f89764
Update issue reference for skipped hot restart tests (#110881) 2022-09-02 14:38:24 -07:00
Elliott Brooks (she/her)
57e42f0223
Manually update DWDS version to v.16.0.0 (#110822) 2022-09-02 19:17:48 +00:00
Christopher Fujino
08d5d51a98
[flutter_tools] Instantiate shutdown hooks before localfilesystem (#110693) 2022-09-02 17:38:56 +00:00
Pierre-Louis
8f5ee0ed58
Delete .packages (#110749) 2022-09-02 10:50:46 +02:00
Pierre-Louis
0c2f7bc2a2
Remove errant double spaces (#110758) 2022-09-02 04:00:58 +00:00
David Iglesias
9cb9f6bca4
[tool] Fix flutter.js regression with hot-reload on promise-based init. (#110805) 2022-09-01 22:25:16 +00:00
Christopher Fujino
8361465f77
[flutter_tools] change the way version is calculated on master (#110791) 2022-09-01 20:32:36 +00:00
Gary Qian
ddfcda73cd
Track platform in MigratePlaformConfig and enforce metadata file being provided (#110540) 2022-08-31 19:04:22 +00:00
Tae Hyung Kim
0508a1defd
[flutter_tools] Generate Localizations on flutter run for web (#110526) 2022-08-31 17:42:51 +00:00
Helin Shiah
8842281c29
Use UriConverter from context for test (#110539)
* Use UriConverter from context for test

* Fix type

* Pass URI converter using installHook

* Fix formatting

* Fix formatting in test

* Add comment about URI converter
2022-08-31 09:20:36 -07:00
Jenn Magder
5f5d4802fe
Support single arch local engines for 'build macos-framework' and 'ios-framework' (#110564) 2022-08-30 17:44:14 +00:00
Jonah Williams
d6dd832d0f
[flutter_tools] migrate gradle errors and project test to null safety (#110530) 2022-08-29 19:47:16 +00:00
Zachary Anderson
c6ec84e978
[flutter_tools] Pull more arm64 artifacts on Apple Silicon (#110291) 2022-08-29 10:33:24 -07:00
Zachary Anderson
0e195e9d46
Revert "Show output from pub get in flutter pub get (#106300)" (#110478)
This reverts commit 3802eb627e.
2022-08-29 08:02:50 -07:00
Sigurd Meldgaard
3802eb627e
Show output from pub get in flutter pub get (#106300) 2022-08-29 07:37:19 +00:00
Jonah Williams
428cafadb0
[flutter_tools] migrate some files to null safety (#110354) 2022-08-26 18:03:04 +00:00
Danny Tuppeny
676a4264aa
[dap] Don't wait for appStarted before responding to launch/attach + don't call app.stop for unstarted app (#109386) 2022-08-25 15:35:09 +00:00
Christopher Fujino
6e95067273
[flutter_tools] Fix _CastError in HotRunner._resetDirtyAssets (#108771) 2022-08-24 23:40:19 +00:00
Kate Lovett
7e12b37111
Deprecate 2018 text theme parameters (#109817) 2022-08-22 20:00:34 +00:00
Zachary Anderson
bd6b5cef95
[flutter_tools] Enable custom devices on all channels (#109953) 2022-08-21 12:16:53 -07:00
Jesús S Guerrero
e271e8428b
add GeneralInfo project validator to analyze --suggestions (#109874) 2022-08-19 21:18:49 +00:00
Tae Hyung Kim
646666f8e7
[gen_l10n] Add option to format generated localizations files (#109171)
* init

* fix

* fix 2

* fix 3

* tests

* fix tests

* clarify help text

* fix all tests

* fix formatting?

* add second test

* unused import

* remove print

* trailing spaces

* artifacts is never null

* fix
2022-08-19 14:03:42 -07:00
Anna Gringauze
b7c500fc6b
Remove passing of --debugger-module-names flag to frontend server (#109791)
The flag is true by default so the behavior does not change.

Next steps:

Use the flag for updated debugger module names:
  - Frontend server: make the current behavior controlled
    by the flag non-conditional
  - Frontend server: add more debugging names changes under
    the same flag, false by default
  - Dwds: make changes required for the new module names.
  - Flutter tools: when matching dwds changes roll to flutter,
    pass the flag to the frontend server again.

- Cleanup:
  - Frontend server: make new behavior default
  - Flutter tools: remove uses of the flag.
  - Frontend server: remove the flag.

Towards: https://github.com/dart-lang/webdev/issues/1692
Helps: https://github.com/flutter/flutter/issues/106727
2022-08-19 11:14:43 -07:00
Anna Gringauze
3b6e3a6938
Temporarily remove a bogus warning until fixed by dwds update (#109793)
* Temporarily remove a bogus warning until fixed by dwds update

* Addressed CR feedback
2022-08-19 11:06:53 -07:00
Jackson Gardner
5aad12cab1
Generate syntax for plugin registration that works both with and without null safety. (#109480) 2022-08-19 16:16:41 +00:00
jensjoha
981bdf5476
[flutter_tools] Make flutter test -v print timing of different phases (#108864) 2022-08-18 16:26:56 +00:00
Alexander Aprelev
bfdc9a6cfa
Introduce stubbed exclusive parameter to File.create-overridden method (#109646)
* Introduce stubbed `exclusive` parameter to `File.create`-overridden method.

This is to soften landing of a breaking change https://github.com/dart-lang/sdk/issues/49647
2022-08-17 13:26:08 -07:00
Michael Goderbauer
2b9beda0d0
Reland "Keep dirty manipulations private to Element base class (#109401)" (#109562) 2022-08-15 19:59:13 +00:00
Xavier H
341b62d28e
Fix Transporter app name in log after upload (#107414) 2022-08-11 20:42:33 +00:00
Jesús S Guerrero
edd466811d
Disable jank metrics for web (#109356) 2022-08-11 19:58:06 +00:00
Christopher Fujino
017dd3e7d6
[flutter_tools] Fix race condition with completer in devfs_web (#109059) 2022-08-09 23:57:06 +00:00
Jesús S Guerrero
5627e0d1f6
Add info project validator status (#109169) 2022-08-09 17:59:06 +00:00
Zachary Anderson
4dd9d49608
[flutter_tools] Adds test of impellerc output file mode (#109190) 2022-08-09 15:08:06 +00:00
Dillon Nys
f3d182f4b4
[flutter_tools] Fix tool crash for map cast (#107648) 2022-08-09 05:51:06 +00:00
Jonah Williams
921c80302c
[flutter_tools] support hot reload of font assets (#109091) 2022-08-08 20:42:06 +00:00
Daco Harkes
c2e58cdb18
Add quotes to Gradle NDK version error message (#109026) 2022-08-07 11:46:08 +00:00
Jonah Williams
f62da01068
[flutter_tools] ensure setAssetDirectory uses windows path (#109021) 2022-08-05 15:44:08 +00:00
Aman Verma
b02f68a66c
[flutter_tools] refactor stringsArg (#105032) 2022-08-05 13:17:06 +00:00
Michael Goderbauer
c22b7f697f
Add avoid_redundant_argument_values ignores back (#108984) 2022-08-04 09:59:57 -07:00
Michael Goderbauer
e27a19e3f8
Remove outdated ignores (#108924) 2022-08-03 23:37:05 +00:00
Hannes Winkler
c6aeaa305c
fix flutter not finding custom device (#108884) 2022-08-03 18:20:07 +00:00
Christopher Fujino
4b25e80c4a
[flutter_tools] Migrate more tool tests to null-safety (#108639) 2022-08-02 23:00:06 +00:00
Phil Quitslund
fd0da75cc9
fix noop toString() diagnostics (#108836) 2022-08-02 21:51:06 +00:00
Danny Tuppeny
14626c0a6d
[flutter_tools] Test that DAP process terminates at the end of a session (#108301) 2022-08-02 20:44:06 +00:00
Jenn Magder
7c7ae991e5
Use hasNoRemainingExpectations matcher for fake process manager in tool tests (#108649) 2022-07-30 02:02:05 +00:00
Jenn Magder
6ca4db4bea
Add usage event when macOS app is archived (#108651) 2022-07-30 00:45:05 +00:00
Jenn Magder
7f1a8f7948
Add usage event when iOS app is archived (#108643) 2022-07-29 22:44:06 +00:00
Jesús S Guerrero
6048e07f47
[flutter_tools] join flutter specific with home cache (#105343) 2022-07-29 19:58:06 +00:00
Gary Qian
762c92ead9
Remove doc for --ignore-deprecation and check for pubspec before v1 embedding check (#108523) 2022-07-28 20:48:05 -07:00
Gary Qian
7cfbdadc33
Reland "Upgrade Gradle and AGP versions to 7.5/7.2 and migrate benchmarks+examples" #108472 (#108510) 2022-07-28 19:38:07 -07:00
Michael Goderbauer
10a7c9ba22
Unify analysis options (#108462) 2022-07-28 09:07:49 -07:00
Kate Lovett
716533925b
Revert "Reland "Upgrade Gradle and AGP versions to 7.5/7.2 and migrate benchmarks+examples" #108355 (#108472)" (#108488)
This reverts commit 1f8c490c82.
2022-07-27 17:20:20 -05:00
Gary Qian
1f8c490c82
Reland "Upgrade Gradle and AGP versions to 7.5/7.2 and migrate benchmarks+examples" #108355 (#108472) 2022-07-27 14:23:09 -07:00
Zachary Anderson
15082387c6
[flutter_tool] Include impellerc output in ShaderCompilerException (#108348) 2022-07-27 11:37:14 -07:00
Jonah Williams
7e683c023a
[flutter_tools] add tool support for shader hot reload (#107963) 2022-07-27 03:31:06 +00:00
Zachary Anderson
1e69683688
Revert "Reland "Upgrade Gradle and AGP versions to 7.5/7.2 and migrate benchmarks+examples" (#108355)" (#108407)
This reverts commit c4b3625d62.
2022-07-26 19:30:28 -07:00
Gary Qian
c4b3625d62
Reland "Upgrade Gradle and AGP versions to 7.5/7.2 and migrate benchmarks+examples" (#108355) 2022-07-26 16:23:08 -07:00
Jenn Magder
4dc1bd40d4
Handle updated error message when iOS device is locked (#108057) 2022-07-26 22:33:07 +00:00
Tae Hyung Kim
001c499f24
[gen_l10n] Warn users when placeholder types are converted to 'num' when using pluralization (#108036)
* init

* asdf

* fix tests

* change warning slightly

* fix test again

* fix spacing and comment

* fix lint
2022-07-26 14:13:06 -07:00
Anurag Roy
f1df76e963
[flutter_tools] Suggest actions to fix failing FlutterValidator (#106355) 2022-07-26 19:47:07 +00:00
Jenn Magder
50474b29ce
Only run pod install on the first iOS build (#108205) 2022-07-26 19:39:06 +00:00
Jenn Magder
70aaff1217
Set Xcode build script phases to always run (#108331) 2022-07-26 19:20:07 +00:00
Jenn Magder
167655e8a7
Only show iOS simulators, reduce output spew in verbose (#108345) 2022-07-26 19:08:06 +00:00
Danny Tuppeny
5d31b07ed5
[flutter_tools] [dap] Ensure DAP sends app.stop/app.detach during terminate (#108310)
* [flutter_tools] [dap] Ensure DAP sends app.stop/app.detach during terminate

Fixes an issue where the flutter_tester device may not be cleaned up correctly if we just terminate the Flutter process.

* Update integration test expectations

* Revert accidental commit
2022-07-26 10:48:38 +01:00
Christopher Fujino
b035ef1352
[flutter_tools] Remove more shuffles (#107759) 2022-07-26 05:43:05 +00:00
Zachary Anderson
d155bc1bad
Revert "Upgrade Gradle and AGP versions to 7.5/7.2 and migrate examples/tests (#108197)" (#108349)
This reverts commit ca6cecf034.
2022-07-25 22:20:37 -07:00
Gary Qian
ca6cecf034
Upgrade Gradle and AGP versions to 7.5/7.2 and migrate examples/tests (#108197) 2022-07-25 15:23:08 -07:00
RockerFlower
5f67b47e23
[iOS] Update template icons (#107873) 2022-07-25 21:36:06 +00:00
Michael Goderbauer
8a7b35933c
flutter update-packages --force-upgrade + analyzer fix (#108198) 2022-07-25 10:10:31 -07:00
Rich Kadel
549f70c914
Remove outdated Fuchsia concepts (#107335)
Fuchsia will soon remove all support for Component Framework version 1
components (recognized by component manifests ending in `.cmx`).
Notably, some of the `flutter` tool commands for Fuchsia devices--
notably, but not limited to, those related to CFv1--are outdated, and
either do not work today or soon won't work.

This PR removes the outdated components and commands, replacing some
with the newer version, or simply removing the non-working features,
in some cases.
2022-07-22 16:42:48 -07:00
Zachary Anderson
dd20919ad6
[flutter_tool] Build shaders as .iplr and use FragmentProgram.fromAsset for ink_sparkle (#108071) 2022-07-21 20:50:08 -07:00
Christopher Fujino
6abd3691c3
[flutter_tools] add more debugging when pub get fails (#108062) 2022-07-21 19:22:07 +00:00
Jesús S Guerrero
fc3471fd28
check for pubspec instead of lib/ (#107968) 2022-07-21 17:03:09 +00:00
yaakovschectman
1e2be6ed54
Check for bad characters in path on Windows build (#107949)
* Check for bad characters in path on Windows build

* Doc comments

* Fix formatting

* Commenting/formatting

* Link to issue in comment

* Comments, formatting

* Global var rename
2022-07-20 14:05:13 -04:00
Lau Ching Jun
922eea8763
Dart registrant location (#107967) 2022-07-20 08:51:04 +00:00
David Iglesias
d72f08f50f
[web][debug] Remove RequireJS timeouts for debug builds. (#107868) 2022-07-19 22:56:05 +00:00
Danny Tuppeny
c67d2587d5
Provide more useful error message if a non-compliant DAP tool (or user) sends bad input to DAP server (#107827) 2022-07-19 11:48:05 -07:00
Zachary Anderson
e9529e2512
[flutter_tool] Allow includes relative to shader path (#107862) 2022-07-18 18:38:32 -07:00
Christopher Fujino
1371b8dc3c
[flutter_tools] Fix null check errors in attach command (#107864) 2022-07-18 23:10:06 +00:00
Alexandre Ardhuin
ccd33631e3
enable combinators_ordering (#107847) 2022-07-18 22:04:07 +00:00
Christopher Fujino
81045d4a44
Revert "Read dart_plugin_registrant path from FlutterProject to support non-standard path." (#107850) 2022-07-18 19:58:10 +00:00
Christopher Fujino
b156c0c440
[flutter_tools] migrate clean_test to null-safety (#107750) 2022-07-18 19:10:07 +00:00
Christopher Fujino
4f9528293f
[flutter_tools] Remove shuffle from doctor test (#107744) 2022-07-16 00:54:05 +00:00
Jesús S Guerrero
cdf5b1d40d
Pub dependencies project validator (#106895) 2022-07-15 23:12:05 +00:00
Lau Ching Jun
2cfeb0d1e1
Pass device-user in machine mode (#107747) 2022-07-15 15:18:05 -07:00
Lau Ching Jun
8f834cf150
Read dart_plugin_registrant path from FlutterProject to support non-standard path. (#107617) 2022-07-15 12:33:07 -07:00
Christopher Fujino
060adf09db
[flutter_tools] Migrate commands.shard/hermetic/doctor_test to null-safety and make hermetic (#107670) 2022-07-15 19:06:08 +00:00
Christopher Fujino
94da724868
[flutter_tools] fix RangeError in gen-l10n by checking for empty string (#107604) 2022-07-15 18:56:09 +00:00
Tae Hyung Kim
2da228593f
[gen_l10n] Throw error when arb file does not exist (#107583) 2022-07-15 18:18:06 +00:00
Jenn Magder
c4975d9be0
Increase app minimum supported macOS version from 10.11 to 10.13 (#107689) 2022-07-15 11:12:43 -07:00
moko256
45e212e74f
[Windows] Remove the usage of SETLOCAL ENABLEDELAYEDEXPANSION from bat scripts. (#106861) 2022-07-14 21:56:10 +00:00
Lau Ching Jun
5976c3702f
Check device type using platformType instead of type check to support proxied devices. (#107618) 2022-07-14 14:38:06 -07:00
Callum Moffat
902b0124a6
Add UIApplicationSupportsIndirectInputEvents migration (#106889) 2022-07-14 21:00:06 +00:00
Christopher Fujino
bcba43f503
[flutter_tools] Make android gradle builder test hermetic (#107606) 2022-07-14 20:08:07 +00:00
Christopher Fujino
cadb264d26
[flutter_tools] Catch more general XmlException rather than XmlParserException (#107574) 2022-07-13 22:38:07 +00:00
Jason Simmons
95a5a8d741
Check for analyzer rule names instead of descriptions in a flutter_tools test (#107541)
The descriptions can change between different versions of the analyzer.
2022-07-13 09:53:40 -07:00
jensjoha
803ef6a456
Improve coverage speed by using new caching option for package:coverage (#107395)
Speedup coverage test runs by using (new) coverage handle with caching.

On a `flutter test --coverage` run on `packages/flutter` the runtime goes from ~828 seconds to ~617 seconds, or a ~25% reduction in time spent (testing without coverage takes ~236 seconds so the overhead of `--coverage` in this case goes from ~592 seconds to ~381 seconds, or a ~35% reduction).
2022-07-13 11:07:59 +02:00
Anurag Roy
e6f69add99
[flutter_tools] Replace android v2 embedding broken doc link (#107456) 2022-07-12 20:31:07 +00:00
Danny Tuppeny
78d924af1d
[flutter_tools] [dap] Add support for passing env variables to spawned processes (#107415)
* [flutter_tools] [dap] Add support for passing env variables to spawned processes

* Use named args

* Use in-memory fs and FakePlatform

* Pass filesystem style to MemoryFileSystem
2022-07-12 10:04:08 +01:00
Bryan Oltman
bf7df23350
Remove superfluous periods from pub --help subcommand descriptions. (#106925)
* Remove periods from pub --help command descriptions

* Add trailing period consistently

* Remove added period from PackagesInteractiveGetCommand description

* Verify line ending for first line of command description

* Update _allowedTrailingPatterns to validate that lines end with only one period, bang, or colon
2022-07-11 13:06:31 -04:00
Alexander Biggs
7db73c0a93
[fuchsia] Change format of ffx call to debug spam. (#105169) 2022-07-10 22:51:06 +00:00
Christopher Fujino
84c8abd0f6
[flutter_tools] catch StdinException while trying to re-set single char mode (#107256) 2022-07-07 22:40:05 +00:00
Helin Shiah
118248bcc5
Pass URI converter from context to DDS (#106840)
* Pass URI converter from context to DDS

* Match change that will be merged

* Revert SDK web change
2022-07-07 10:10:04 -07:00
Alexander Aprelev
b1410c2ce7
Ensure flutter run build is done in incremental mode. (#107184)
* Ensure build is done in incremental mode.

This allows for faster bootstrapping of the compiler from previously created dill file.

Fixes https://github.com/flutter/flutter/issues/107183

* Avoid initializeFromDill in aot mode

* Update tests
2022-07-07 09:31:18 -07:00
David Iglesias
c4aaa394ac
[tool][web] Create an early web plugin_registrant for dartpad. (#106921) 2022-07-02 00:51:06 +00:00
Loïc Sharma
dcbdff087b
Ignore invalid description property in vswhere.exe JSON output (#106836)
The `flutter doctor` command uses `vswhere.exe` to verify the Visual Studio installation. This `vswhere.exe` is known to encode its output incorrectly. This is problematic as the `description` property is localized, and in certain languages this results in invalid JSON due to the incorrect encoding.

This change introduces a fallback to our `vswhere.exe` output parsing logic: if parsing JSON fails, remove the `description` property and retry parsing the JSON.

This fix was also tested on the outputs provided here: https://github.com/flutter/flutter/issues/106601#issuecomment-1170138123

Addresses https://github.com/flutter/flutter/issues/106601
2022-06-30 16:15:20 -07:00
Zachary Anderson
b005a34790
[flutter_tool] Pass --input-type to impellerc (#106845) 2022-06-30 07:12:24 -07:00
Daco Harkes
e4bde83d7f
plugin_ffi warn about lack of platform support (#106813) 2022-06-29 10:29:11 -07:00
Zachary Anderson
9c0f239947
Put shaders under a 'shaders' section in the manifest (#106752) 2022-06-28 19:31:27 -07:00
Loïc Sharma
6026eea9a4
[Windows] Flow version information to the build output (#106145)
Previously developers had to edit their `Runner.rc` file to update their executable's version information. Now, version information will automatically be set from `flutter build`'s arguments or the `pubspec.yaml` file for new projects. 

Addresses https://github.com/flutter/flutter/issues/73652
2022-06-27 10:45:56 -07:00
Brandon DeRosier
097c162cce
Fix .packages breakage and roll engine to 83b9a591a3d5 (#106584)
* 9508a368d Roll Dart SDK from 692562354d6d to d3b8091c30f0 (1 revision) (flutter/engine#34273)

* a2985c034 Roll Fuchsia Linux SDK from F1U6IH2Nf... to aRT7s0Yct... (flutter/engine#34251)

* 54867f360 Roll Skia from bdd0205ae470 to 4345a2ea731a (1 revision) (flutter/engine#34268)

* 98221a22d Clean up text input configuration in clearTextInputClient (flutter/engine#34209)

* b9e02cc83 Adds a license check shard to CI (flutter/engine#34274)

* 1daf7ba98 [Impeller] Metal:Reset Encoder viewport and scissor rect in case the command specifies no opinion (flutter/engine#34252)

* 83b9a591a [Linux] remove duplicate clone_string() in favor of g_strdup() (flutter/engine#34031)

* Don't use .packages

* Another attempt

Co-authored-by: engine-flutter-autoroll <engine-flutter-autoroll@skia.org>
2022-06-24 17:27:17 -07:00
Christopher Fujino
67dd01e599
[flutter_tools] tool exit from flutter create when provided just a drive letter (#106451) 2022-06-24 13:24:03 -07:00
Jesús S Guerrero
ddd493b927
[flutter_tools] migrate project-validate to analyze --suggestions (#106149) 2022-06-24 18:43:07 +00:00
Gustl22
47f54ace45
feat(tools): Arbitrary browser flags (closes #65575) (#104935) 2022-06-24 10:14:08 -07:00
Christopher Fujino
788c8b8ad4
[flutter_tools] tool exit access denied during symlinking (#106213) 2022-06-23 14:44:09 -07:00
Danny Tuppeny
e2ef8cfe44
Pass app.started events to the DAP client + dart.debuggerUris for Profile mode (#106337) 2022-06-21 12:09:06 -07:00
Jonah Williams
dfaec11ba5
migrate web integration tests to null safety (#106231) 2022-06-21 11:19:09 -07:00
Anurag Roy
47b40601d7
[flutter_tools] Have FlutterValidator fail on non-ideal git config (#103259) 2022-06-20 19:05:07 +00:00
Jonah Williams
db829c1e20
[flutter_tools] migrate more unit tests to null safety (#106153) 2022-06-17 21:34:27 -07:00
Jenn Magder
aba0c4e6f6
Do not show diagnostic warning for disconnected iOS devices (#105971) 2022-06-18 01:52:07 +00:00
Loïc Sharma
2efa2e44fe
Add integration test for flutter build windows (#106053)
Add an integration test that verifies that `flutter build windows` produces the expected executable. In the future, this will be used to test that version information is properly stamped on the executable.

Part of https://github.com/flutter/flutter/issues/73652.
2022-06-17 17:14:18 -07:00
Jesús S Guerrero
fae31eecce
[flutter_tools] temporary directory (#105815) 2022-06-17 02:58:05 +00:00
Jonah Williams
2c15e3cae4
[flutter_tools] update test/src to null safety (#106064) 2022-06-16 16:48:03 -07:00
Sam Rawlins
f104be7ae9
Ignore body_might_complete_normally_catch_error violations (#105795) 2022-06-16 23:12:06 +00:00
Jesús S Guerrero
32b22b85de
parse build version on xcodeproj (#105908) 2022-06-16 22:26:06 +00:00
Loïc Sharma
ede7fc67f5
Add more CMake unit tests (#106076)
Currently CMake is tested entirely through `build_linux_test.dart`. However, CMake is also used for Windows builds. This adds additional "generic" tests:

1. Parsing CMake files
2. Generating CMake config files.

In the future, this will be used to test that generated CMake config files contain the expected version information, which will be used to flow version information to Windows executables.

Part of https://github.com/flutter/flutter/issues/73652.
2022-06-16 11:48:17 -07:00
Christopher Fujino
589dd8028b
[flutter_tools] print override storage warning to STDERR instead of STDOUT (#106068) 2022-06-15 23:22:06 +00:00
Jonah Williams
92034482f9
[flutter_tool] partial null safety migration of tool source code (#105798) 2022-06-15 20:02:07 +00:00
Christopher Fujino
d31c250e38
[flutter_tools] Fix leaky test (#105927) 2022-06-13 16:12:29 -07:00
Elliott Brooks (she/her)
fe57704594
Enable skipped test for Dart URI logs from DWDS (#105274) 2022-06-09 15:03:11 -07:00
Lau Ching Jun
d30ad47eda
Make flutter attach respect the --dds-port flag. (#105560) 2022-06-09 13:03:09 -07:00
Christopher Fujino
8bea63287a
[flutter_tools] add shuffle to hermetic run_tests (#105462) 2022-06-09 12:53:09 -07:00
Lasse R.H. Nielsen
c951d2d7a0
Stop using FallThroughError. (#105600) 2022-06-08 22:38:08 -07:00
Gary Qian
696110ba46
Migrate apply (#102787) 2022-06-06 17:38:06 -07:00
Nils Reichardt
64db621980
Remove new keyword in a few files (#104438) 2022-06-06 16:08:06 -07:00
Gary Qian
e9a3cbf2b4
Migrate abandon (#102789) 2022-06-06 12:58:07 -07:00
Christopher Fujino
712752d2fb
[flutter_tools] return terminal to echo and line mode before exiting resident_runner (#105283) 2022-06-06 10:19:40 -07:00
Jenn Magder
003f2b69d2
Pass run and drive --trace-systrace for iOS (#105321) 2022-06-03 16:48:11 -07:00
Gary Qian
0895130e51
Migrate status (#102785) 2022-06-03 16:43:11 -07:00
Jesús S Guerrero
3da9eee2f0
[flutter_tools] re-use findProjectRoot on flutter command (#104850) 2022-06-03 15:23:10 -07:00
Jesús S Guerrero
889a15eb9d
[flutter_tools] add needsFullRestart flag on hot runner (#104562) 2022-06-03 10:18:16 -07:00
Jenn Magder
3f1f0a8170
Add flutter build macos-framework command (#105242) 2022-06-03 10:13:08 -07:00
Emmanuel Garcia
975e04ba6d
Move corrupted zip to a separate handler and ask user (#105054) 2022-06-03 10:08:08 -07:00
jensjoha
9929446ea3
Extra timing on hot reload (#104242)
This PR adds extra timings for a hot reload.
As an example, before a user might see

> Performing hot reload...                                                
> Reloaded 1 of 788 libraries in 554ms.

With this PR it would instead be something like

> Performing hot reload...                                                
> Reloaded 1 of 788 libraries in 554ms (compile: 33 ms, reload: 153 ms, reassemble: 310 ms).
2022-06-03 08:41:14 +02:00
Jenn Magder
208a418abc
flutter drive --enable-software-rendering --skia-deterministic-rendering (#105161) 2022-06-02 13:33:08 -07:00
Jenn Magder
dffddf00a2
Refactor BuildIOSFrameworkCommand with common darwin baseclass (#105194) 2022-06-02 10:28:08 -07:00
Christopher Fujino
99d0f8f279
[flutter_tools] handle HandshakeException in httphostvalidator (#105076) 2022-06-01 14:08:13 -07:00
Christopher Fujino
ac791adbc0
[flutter_tools] flutter daemon handles a closed stdout IOSink (#105075) 2022-06-01 10:08:13 -07:00
Emmanuel Garcia
3b20fb3f89
Retry builds when SSL exceptions are thrown (#105078) 2022-05-31 19:53:12 -07:00
Gary Qian
c02be8cd47
Support string compileSdkVersion for preview android SDKs (#104662) 2022-05-31 13:08:09 -07:00
Anna Gringauze
5cd979e441
Retry getting tabs in chrome launcher on ConnectionException (#104218) 2022-05-26 15:20:11 -07:00
Gary Qian
cc733660ed
Add link to more detailed multidex information. (#104558) 2022-05-26 13:05:08 -07:00
Danny Tuppeny
147020366a
Fix issues running integration tests through DAP debug adapter (#104618)
* Fix issues running integration tests through DAP

These adapters were incorrectly trying to connect a DDS instance even when Flutter would create its own. This change disables DDS in the DAP layer and leaves it to Flutter (although it passes `--no-dds` on to Flutter if provided to the DAP process).

Also fixes an issue where we would unnecessarily connect the VM Service for tests even in 'noDebug' mode because of a change/fix that now includes a 'vmServiceUri' in the `test.startedProcess` event.
2022-05-26 09:36:30 +01:00
Michael Goderbauer
3fa355c97d
Remove dead code in tools tests (#104567) 2022-05-25 12:48:17 -07:00
Jenn Magder
09987dc00a
Migrate create command to null safety (#104484) 2022-05-24 18:48:10 -07:00
Jenn Magder
a56c5e51ae
Migrate some test files to null safety (#104469) 2022-05-24 16:53:08 -07:00
Jesús S Guerrero
336aa267f9
[flutter_tools] General info project validator (#103653) 2022-05-24 16:28:10 -07:00
Loïc Sharma
c29a7a2d22
Ignore replacement characters from vswhere.exe output (#104284)
Flutter uses `vswhere.exe` to find Visual Studio installations and determine if they satisfy Flutter's requirements. However, `vswhere.exe`'s JSON output is known to contain bad UTF-8. This change ignores bad UTF-8 as long as they affect JSON properties that are either unused, or, used only for display purposes by Flutter.

Fixes: https://github.com/flutter/flutter/issues/102451
2022-05-24 13:30:37 -07:00
Chris Bracken
f9765c136f
[tool] Add tests for FakeProcessManager (#104456)
Adds a bit more clarifying documentation to the implementation of the
outputFollowsExit case, and adds tests that verify the behaviour of
stderr, stdout of processes launched via FakeProcessManager.

Specifically:
* Verifies that stderr, stdout are not emitted immediately after process
  exit if outputFollowsExit is true. They must be emitted at least one
  turn through the event loop later.
* Verifies that ProcessResult.stderr, stdout have the type documented
  according to the encoding passted to Process.run/runSync:
  * List<int> if null is passed as the encoding.
  * String (in the default system encoding) if no encoding is specified.
  * String (in the specified encoding) if an encoding is specified.

This is additional testing relating to refactoring landed in:
https://github.com/flutter/flutter/pull/103947

Issue: https://github.com/flutter/flutter/issues/102451
2022-05-23 22:57:34 -07:00
Jenn Magder
c5d046c00c
continue->next in Ruby script (#104296) 2022-05-23 18:43:05 -07:00
Chris Sells
4c66e304d1
fixes 103234 to enable debugging Flutter apps on VR headset (#104135) 2022-05-20 21:58:09 -07:00
Loïc Sharma
52e19ef7ec
Refactor vswhere.exe integration (#104133)
`VisualStudio` calls `vswhere.exe` to find Visual Studio installations and determine if they satisfy Flutter's requirements. Previously, `VisualStudio` stored the JSON output from `vswhere.exe` as `Map`s, resulting in duplicated logic to read the JSON output (once to validate values, second to expose values). Also, `VisualStudio` stored two copies of the JSON output (the latest valid installation as well as the latest VS installation).

This change simplifies `VisualStudio` by introducing a new `VswhereDetails`. This type contains the logic to read `vswhere.exe`'s JSON output, and, understand whether an installation is usable by Flutter. In the future, this `VswhereDetails` type will be used to make Flutter doctor resilient to bad UTF-8 output from `vswhere.exe`.

Part of https://github.com/flutter/flutter/issues/102451.
2022-05-20 10:12:25 -07:00
Zachary Anderson
ab7f6e5cfe
Pass --verbosity=error to the Dart front-end (#104020) 2022-05-20 09:10:31 -07:00
Emmanuel Garcia
0052566c7e
Show custom error message when Kotlin or Gradle bump is required (#102421) 2022-05-19 14:38:13 -07:00
Christopher Fujino
586b15cbcb
[flutter_tools] Upgrade only from flutter update-packages (#103924) 2022-05-19 13:33:11 -07:00
Liam Appelbe
d2ba83d421
Use libraryFilters flag to speed up coverage collection (#104122)
* Use libraryFilters flag to speed up coverage collection

* Allow libraryNames to be null

* Unconditionally enable the reportLines flag

* Fix analysis errors
2022-05-19 12:19:52 -07:00
Jonah Williams
851c9521c7
[flutter_tools] pass --compact-async to frontend_server (#104026) 2022-05-17 19:52:10 -07:00
Jenn Magder
52ddc9d174
Handle null values during yaml metadata parsing validation (#104022) 2022-05-17 18:32:09 -07:00
Chris Bracken
9d9e272e70
[tool] Add tests for FakeProcess (#104013)
Because this class has some subtle behaviour with regards to control of
exit timing and when and how it streams data to stderr and stdout, it's
worth adding unit tests for this class directly, as well as (in a
followup patch) for FakeProcessManager.

This is additional testing relating to refactoring landed in:
https://github.com/flutter/flutter/pull/103947

Issue: https://github.com/flutter/flutter/issues/102451
2022-05-17 16:54:08 -07:00
Christopher Fujino
0116b2e77d
[flutter_tools] fix RangeError in flutter channel command (#103766) 2022-05-17 16:22:12 -07:00
Jonah Williams
2ad7ced916
[flutter_tools] pass --enable-impeller to android (#104014) 2022-05-17 15:52:09 -07:00
Aman Verma
8fbf89b9f2
[flutter_tools] throw error when argResults is null (#103827) 2022-05-17 12:37:08 -07:00
Lau Ching Jun
a633f3df32
Add ability for PrebuiltWindowsApp to accept a zip archive. (#103918) 2022-05-17 11:27:11 -07:00
Chris Bracken
928bb1229b
[tool] Consistent FakeProcessManager.run/runSync (#103947)
`FakeProcessManager` is a test-oriented implementation of `ProcessManager`
that simulates launching processes and returning `ProcessResult` objects
whose `exitCode`, `stdout`, `stderr` can be used to write platform-portable,
hermetic tests that don't rely on actually launching processes from
executables on disk. Its `run` and `runSync` methods provide asynchronous and
synchronous variants of this functionality.

Previously, the behaviour of `run` and `runSync` were inconsistent with
regards to the treatment of the `stdoutEncoding` (similarly,
`stderrEncoding`) parameters:

`run`:
* if the encoding was null, `ProcessResult.stdout` was returned as a
  String in UTF-8 encoding. This was incorrect. The behaviour as
  specified in `ProcessResult.stdout` is that in this case, a raw
  `List<int>` should be returned.
* If the encoding was unspecified, `ProcessResult.stdout` was returned as
  a `String` in the `io.systemEncoding` encoding. This was correct.
* If the encoding was non-null, `ProcessResult.stdout` was returned as a
  `String` in the specified encoding. This was correct.

`runSync`:
* if the encoding was null, `ProcessResult.stdout` was returned as a
  `List<int>` in UTF-8 encoding. This was incorrect. The behaviour as
  specified in `ProcessResult.stdout` is that in this case, a raw
  `List<int>` should be returned.
* If the encoding was unspecified, `ProcessResult.stdout` was returned as
  `List<int>` in UTF-8 encoding. This was incorrect. The behaviour as
  specified in `ProcessResult.stdout` is that in this case, a String a
  `String` in the `io.systemEncoding` encoding should be returned.
* if the encoding was non-null, `ProcessResult.stdout` was returned as a
  `String` in unknown (but probably UTF-8) encoding. This was incorrect.
  The behaviour as specified in `ProcessResult.stdout` is that in this
  case, a `String` in the specified encoding should be returned.

`_FakeProcess`, from which we obtain the fake stdout and stderr values now
holds these fields as raw `List<int>` of bytes rather than as `String`s. It
is up to the user to supply values that can be decoded with the encoding
passed to `run`/`runAsync`.

`run` and `runAsync` have been updated to set stdout (likewise, stderr) as
specified in the `ProcessResult` documentation.

This is pre-factoring for #102451, in which the tool throws an exception
when processing the JSON output from stdout of the `vswhere.exe` tool,
whose output was found to include the `U+FFFD` Unicode replacement
character during UTF-8 decoding, which triggers a `toolExit` exception
when decoded using our [Utf8Decoder][decoder] configured with `reportErrors` =
true. Because `FakeProcessManager.runAsync` did not previously invoke
`utf8.decode` on its output (behaviour which differs from the non-fake
implementation), it was impossible to write tests to verify the fix.

Ref: https://api.flutter.dev/flutter/dart-io/ProcessResult/stdout.html

Issue: https://github.com/flutter/flutter/issues/102451

[decoder]: fd312f1ccf/packages/flutter_tools/lib/src/convert.dart (L51-L60)
2022-05-17 11:15:54 -07:00
Jenn Magder
bf7a32628e
Up CocoaPods minumum to 1.10 (#103655) 2022-05-16 17:42:19 -07:00
Christopher Fujino
0ad0dc255d
[flutter_tools] fix missing cmake (#103761) 2022-05-14 11:59:07 -07:00
Jonah Williams
90a592bf36
[flutter_tools] fix test asset loading (#103667) 2022-05-14 10:59:07 -07:00
Christopher Fujino
4c417884c2
[flutter_tools] ensure linux doctor validator finishes when pkg-config is not installed (#103755) 2022-05-13 18:24:13 -07:00
Jonah Williams
73846448fe
[flutter_tools] remove assertion for deprecation .packages (#103729) 2022-05-13 12:58:39 -07:00
Jonah Williams
9f28b83c19
[flutter_tools] migrate some integration tests to null safety (#103560) 2022-05-13 09:39:10 -07:00
Alex Li
aa39fa5a88
[gen_l10n] Better blank lines in the header of generated files (#103414) 2022-05-12 16:04:18 -07:00
David Iglesias
1af8cc1183
[tools][web] Make Plugin Registrant file ephemeral. (#102185) 2022-05-11 17:54:11 -07:00
Gary Qian
e997a3abd2
Add tests for migrate command methods (#103466) 2022-05-11 11:09:08 -07:00
Anna Gringauze
29fecb5980
Provide flutter sdk kernel files to dwds launcher instead of dart ones (#103436)
* Provide flutter sdk kernel files to dwds launcher instead of dart ones

* Update log test to report all warnings

* Update licences for new files

* Addressed CR comments

* Addressed CR comments
2022-05-11 08:52:43 -07:00
Aman Verma
f86dfdd2b7
[flutter_tools] boolArg refactor (#102088) 2022-05-09 21:54:08 -07:00
Gary Qian
90a8b0561d
[flutter_tools] MigrateUtils and MigrateManifest classes (#101937) 2022-05-09 15:23:50 -07:00
Jesús S Guerrero
596e9d1c47
[flutter_tools] stringArg refactor (#103231) 2022-05-09 09:54:12 -07:00
Danny Tuppeny
4ab68bd04d
Use consistent date instead of DateTime.now() in evaluation tests (#103269) 2022-05-08 19:32:14 +01:00
Christopher Fujino
09686a04c9
[flutter_tools] add --uninstall-first flag and pipe it through to ios-deploy (#102948) 2022-05-07 11:49:07 -07:00
Jenn Magder
c6ced845e3
Remove custom unawaited, prefer dart:async version (#103212) 2022-05-07 08:49:04 -07:00
Alexandre Ardhuin
d40ee2149c
remove unnecessary .toString() (#103226) 2022-05-06 16:04:13 -07:00
Gary Qian
1b16d23747
Add debug logging to deferred components test for deflaking (#103161) 2022-05-06 02:39:08 -07:00
Jenn Magder
2e1c146eec
Update ffi gem installation instructions (#103008) 2022-05-04 13:24:08 -07:00
Zachary Anderson
577919dbfe
Don't hardcode ink sparkle spir-v (#102674) 2022-05-04 09:28:45 -07:00
Christopher Fujino
9d59532a7b
[flutter_tools] update feature defaults (#102937) 2022-05-02 15:14:09 -07:00
Jenn Magder
36be63ba19
Embed Flutter and App frameworks for add-to-app on iOS (#102538) 2022-05-02 10:44:12 -07:00
Jesús S Guerrero
780a6c422b
[flutter_tool] New command project (#102118) 2022-04-29 23:09:06 -07:00
Tim Sneath
e4bd552e59
Update features.dart (#102766) 2022-04-28 16:34:08 -07:00
Phil Quitslund
b5e7fb076c
[flutter_tools] rename local functions with _s (#102688) 2022-04-27 16:19:07 -07:00
Pierre-Louis
9644aa8d76
Fixes documentation inconsistencies around 'material' and 'material design' (#102632) 2022-04-27 09:29:06 -07:00
Alexandre Ardhuin
07f1c20474
add missing trailing commas in list/set/map literals (#102585) 2022-04-27 09:15:35 +02:00
Zachary Anderson
4a2ed00231
[flutter_tools] Add entries to HostArtifacts for impellerc, libtessellator (#102593) 2022-04-26 13:30:45 -07:00
Jonah Williams
944fcda67f
[flutter_tools] remove UWP tooling (#102174) 2022-04-26 11:19:07 -07:00
Emmanuel Garcia
46cb9ede2f
Reduce Gradle log level in verbose output (#102422) 2022-04-25 10:30:40 -07:00
Alex Li
dca58a289b
[gen_l10n] Throw a specified exception when the language code is invalid (#102431) 2022-04-24 11:04:06 -07:00
Christopher Fujino
5a3e10047f
[flutter_tools] Add test that "Unresolve URI" warnings from DWDS are filtered from logs (#102399) 2022-04-22 15:29:07 -07:00
Elliott Brooks (she/her)
5414ef4c86
Hide unresolved DartUri log messages (#102338) 2022-04-22 12:43:39 -07:00
Jenn Magder
c9825d24dd
Handle CocoaPods ffi stderr (#102327) 2022-04-21 15:49:08 -07:00
Elsabe Ros
606e91ad63
Use the maven-publish plugin to publish AAR files. (#101891) 2022-04-19 16:34:07 -07:00
Christopher Fujino
f1e4018b58
[flutter_tools] explicitly enable macos-desktop in macos_content_validation_test.dart (#102009) 2022-04-15 20:14:08 -07:00
Chris Yang
a8da7ced35
Hide default bundle id error when xcresult detects an error (#101993) 2022-04-15 11:44:08 -07:00
Jenn Magder
1756ccc541
Set template and migrate apps to iOS 11 minimum (#101963) 2022-04-15 11:34:08 -07:00
Jason Simmons
d05d43431e
Provide a flag for controlling the dart2js optimization level when building for web targets (#101945) 2022-04-15 00:19:06 -07:00
Anurag Roy
ae805de468
[flutter_tools] Remove usage of globals.flutterGit from version (#100744) 2022-04-14 14:44:09 -07:00
Jenn Magder
fe11f57c61
Detect ARM ffi CocoaPods bus error (#101796) 2022-04-14 14:34:10 -07:00
Kaushik Iska
aeaeded715
Add VMService command to get frame rasterization metrics (#100696) 2022-04-14 13:44:05 -07:00
Lau Ching Jun
c2dc92ca88
Default to the newer version path when checking Android Studio Java path (#101862) 2022-04-13 22:49:06 -07:00
Christopher Fujino
41b73894bc
Test framework for executable files (#101853) 2022-04-13 22:44:07 -07:00
Christopher Fujino
fd5356ff60
[flutter_tools] shard out two integration tests we want to run on macOS arm64 (#101769) 2022-04-13 12:09:11 -07:00
Zachary Anderson
6190c5df09
Revert "Use the maven-publish plugin to publish AAR files. (#101276)" (#101827)
This reverts commit 2b0255f0d9.
2022-04-13 08:12:07 -07:00
Elsabe Ros
2b0255f0d9
Use the maven-publish plugin to publish AAR files. (#101276) 2022-04-12 22:19:08 -07:00
Callum Moffat
30a501801a
Support trackpad gestures in framework (#89944)
* Implement trackpad gestures in framework

* Touch and Pan/Zoom pointers have separate IDs now

* Handle trackpad pointer device type

* Respect supportedDevices for pan/zoom events

* Update after rebase

* Fix check failures

* Avoid error with very short drags

* Address feedback

* Refactor drag event handler

* Address more feedback

* Add some missing punctuation
2022-04-12 19:47:01 -07:00
Jenn Magder
6ccd993976
Add flutter build ipa --no-codesign flag (#101766) 2022-04-12 14:49:09 -07:00
Jenn Magder
d4bfb01336
Do not build for iOS armv7 (#97341) 2022-04-12 14:44:09 -07:00
Jenn Magder
888208c1f4
Disallow flutter run-ing on 32-bit development devices (#97339) 2022-04-12 14:39:07 -07:00
Christopher Fujino
d07ce92b15
[flutter_tools] Re-land Dump backtrace on ios app startup timeout (#101763) 2022-04-12 13:24:04 -07:00
Christopher Fujino
2a6582997d
Revert "[flutter_tools] Dump backtrace on ios app startup timeout (#101610)" (#101761)
This reverts commit 2978b59be7.
2022-04-12 09:09:32 -07:00
Christopher Fujino
2978b59be7
[flutter_tools] Dump backtrace on ios app startup timeout (#101610) 2022-04-12 08:49:08 -07:00
Emmanuel Garcia
9e0f0fe9d7
Add Gradle stacktrace and debug log level to verbose builds (#101734) 2022-04-11 20:14:08 -07:00
Christopher Fujino
355fd23a79
[flutter_tools] add test for dart binary arch (#101604) 2022-04-11 16:28:37 -07:00
Yang Chao
343713727a
Enable track widget creation when generating Generated.xcconfig (#101123) 2022-04-11 14:29:11 -07:00
Danny Tuppeny
675b961573
Unpause and remove breakpoints when detaching from Flutter process with DAP (#101695) 2022-04-11 21:15:37 +01:00
Danny Tuppeny
b086473769
Pass multidex flag when using --machine mode (#101689) 2022-04-11 12:19:09 -07:00
Jesús S Guerrero
2302daa3aa
Create when offline style (#101589) 2022-04-11 12:14:05 -07:00
Daco Harkes
85aac37ccf
Add more debugging info to android_plugin_example_app_build_test (#101685) 2022-04-11 08:24:09 -07:00
Janko Djuric
78ae72b0b2
[flutter_tools] Add --build-number and --build-name support to web and linux (#100377) 2022-04-10 11:42:39 -07:00
Chris Yang
1755819cb1
Log XCResult before other build issues (#100787) 2022-04-08 16:27:08 -07:00
Jenn Magder
71d52f27fb
Test Flutter.xcframework directory ios-arm64_armv7 or ios-arm64 (#101592) 2022-04-08 16:12:09 -07:00
Michael Goderbauer
a01424773e
Enable unnecessary_import (#101600) 2022-04-08 12:56:45 -07:00
Anna Gringauze
74944d528f
Run update-packages (#101450)
* Run update-packages

* Update DwdsLauncher, disable failing test

* Fix analyze error

Co-authored-by: Jenn Magder <magder@google.com>
2022-04-07 17:07:05 -07:00
Jesús S Guerrero
3394fb4a58
[flutter_tools] fix flutter create --offline (#100941)
Co-authored-by: Christopher Fujino <christopherfujino@gmail.com>
2022-04-07 17:05:49 -07:00
Emmanuel Garcia
b528310f58
Specify Kotlin version in modules and refactor (#101315) 2022-04-07 13:20:33 -07:00
Jenn Magder
d745eec051
Add --use-application-binary to "flutter install" (#101324) 2022-04-06 13:17:26 -07:00
creativecreatorormaybenot
96add4192e
Use single quotes for dartSdkVersionBounds (#101270)
* Use single quotes for `dartSdkVersionBounds`

* Update update_packages_test.dart

* Update test_project.dart

* Update tests_project.dart

* Update compile_error_project.dart

* Update hot_reload_with_asset.dart

* Update break_on_framework_exceptions_test.dart

* Update basic_project.dart
2022-04-06 09:54:10 -07:00
Lau Ching Jun
7f64e2ae02
Catch errors in ProxiedDevice to make sure we don't crash on errors. (#101332) 2022-04-06 09:51:10 -07:00
gaaclarke
35b18ba2e9
Made flag for debugging build time of user created widgets (#100926)
* Added a bool that allows us to limit debugProfileBuildsEnabled to user
created widgets.

* made it turned on by default

* switched to hashmap

* Cleaned everything up and added tests

* fixed an odd test where it wants to be able to add asserts and run in profile mode

* hixie feedback

* hixie2

* made it default to false

* updated docstring as per dans request
2022-04-05 10:54:21 -07:00
Jenn Magder
839a183ea6
Add note to doctor validator if script is running Rosetta (#101309) 2022-04-05 10:37:35 -07:00
keyonghan
95f4f473ff
[Revert] Skip overall_experience_test.dart: flutter run writes and clears pidfile appropriately (#101267)
* restore test

* use seed 20211102

* restore seed
2022-04-04 13:26:27 -07:00
Michael Goderbauer
dcde8163ce
migrate to super params (#100509) 2022-03-31 11:46:47 -07:00
Gary Qian
ead5b1c2f4
Retire v1 embedding compatibility from automatic multidex support (#100685) 2022-03-31 10:24:42 -07:00
Chris Bracken
1a072f9aee
[winuwp] Add removal warning in config help text (#101086) 2022-03-31 09:30:04 -07:00
David Iglesias
e52b777a2c
[web] flutter.js initialization with ui.webOnlyWarmupEngine (#100177) 2022-03-30 23:00:09 -07:00
Emmanuel Garcia
5c6918933e
Migrate AGP and Gradle versions to 7.1.2/7.4 (#99723) 2022-03-30 20:30:09 -07:00
Ben Konyi
75baed585e
Reland "Enable caching of CPU samples collected at application startup (#89600)" (#100995) 2022-03-30 13:50:13 -07:00
Sigurd Meldgaard
66ed64be4f
Migrate .packages -> package_config.json (#99677) 2022-03-30 13:56:03 +02:00
Christopher Fujino
b4325b68a2
[flutter_tool] Have long-running validators fail (#100936) 2022-03-28 21:57:44 -07:00
Jenn Magder
a452c92d5d
Set ARCHS to single-arch for local engine macOS builds (#100917) 2022-03-28 18:45:06 -07:00
gaaclarke
912873baa7
Relands "Starts using the --source flag to compile the dart registrant. (#98046)" (#100572) 2022-03-28 18:15:10 -07:00
Chris Bracken
bd6beb4ed7
[Linux] Update doctor wording for Linux (#99700)
Removes the beta-quality wording for Linux from messages in the tool.

Issue: https://github.com/flutter/flutter/issues/99697
2022-03-28 15:45:27 -07:00
Chris Bracken
b6bf325d0a
[macOS] Update doctor wording for macOS (#99699)
Removes the beta-quality wording for macOS from messages in the tool.

Issue: https://github.com/flutter/flutter/issues/98680
2022-03-28 15:44:28 -07:00
Christopher Fujino
9c138f9c76
[flutter_tools] warn when doctor takes long (#100805)
* warn when doctor takes long
2022-03-28 14:13:28 -07:00
Jenn Magder
231c1a4b55
Pass ARCHS build setting to flutter assemble on macOS (#100811) 2022-03-28 10:55:14 -07:00
Zachary Anderson
47f08a3fd6
[flutter_tool] Adds --enable-impeller flag to the run command (#100835) 2022-03-26 20:07:24 -07:00
Alex Li
543a7e8588
Android Q transition by default (#100812) 2022-03-25 22:25:07 -07:00
Chris Yang
c01cbd23cc
Add CADisableMinimumFrameDurationOnPhone migration (#100647) 2022-03-25 17:50:09 -07:00
Anurag Roy
e7ab846d14
[flutter_tools] Fix VersionUpstreamValidator to respect FLUTTER_GIT_URL (#100605) 2022-03-25 17:35:10 -07:00
Jenn Magder
12da4a2aff
Filter out some stray Xcode logging during macOS builds (#100707) 2022-03-25 16:35:11 -07:00
Danny Tuppeny
801ad5cd5a
Don't terminate Dart process pids from VM Service, record flutter_tools VM pid (#100223)
* Don't terminate Dart process pids from VM Service

These processes may be on another device, and in the case of attach the debugee should not be terminated anyway.
2022-03-23 16:31:31 +00:00
Anurag Roy
74f08c7352
[flutter_tools] Skip version freshness check for non-standard remotes (#97202) 2022-03-22 12:50:21 -07:00
Chris Bracken
fd3c34c9d4
[macOS] Use arm64 snapshot in arm64 App.framework (#100504)
Previously, https://github.com/flutter/flutter/pull/100271 enabled
building universal macOS binaries by default, but included a bug causing
the arm64 App.framework to be built such that the TEXT section
containing the app instructions built by gen_snapshot incorrectly
contained x86_64 instructions rather than arm64 instructions.

When building macOS (and iOS) apps, Flutter builds them in three
components:
* The Runner application: built by Xcode
* The bundled App.framework: built from assembly code generated by
  gen_snapshot from the application's Dart sources.
* The bundled FlutterMacOS.framework: built as part of the engine build
  and packaged by copying the distributed binary framework from our
  artifacts cache.

Building App.framework consists of the following steps:
* For each architecture, invoke gen_snapshot to generate
  architecture-specific assembly code, which is then built to object
  code and linked into an architecture-specific App.framework.
* Use the `lipo` tool to generate a universal binary that includes both
  x86_64 and arm64 architectures.

Previously, we were building architecture specific App.framework
binaries. However, for all architectures we were (mistakenly) invoking
the general `gen_snapshot` tool (which emitted x64 instructions, and
which is now deprecated) instead of the architecture-specific
`gen_snapshot_x86` and `gen_snapshot_arm64` builds which emit
instructions for the correct architecture.

This change introduces a small refactoring, which is to split the
`getNameForDarwinArch` function into two functions:
* `getDartNameForDarwinArch`: the name for the specified architecture as
  used in the Dart SDK, for example as the suffix of `gen_snapshot`.
* `getNameForDarwinArch`: the name for the specified architecture
  as used in Apple tools, for example as an argument to `lipo`. For
  consistency, and to match developer expectations on Darwin platforms,
  this is also the name used in Flutter's build outputs.

Issue: https://github.com/flutter/flutter/issues/100348
2022-03-21 20:36:57 -07:00