Commit Graph

7614 Commits

Author SHA1 Message Date
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
Ahmed Ashour
0be4a8e9ae Remove unneeded date comment in gradle-wrapper.properties (#104061) 2022-06-13 16:43:11 -07:00
Christopher Fujino
d31c250e38 [flutter_tools] Fix leaky test (#105927) 2022-06-13 16:12:29 -07:00
Anurag Roy
1ea72163b2 [flutter_tools] Remove redundant/unused code in version.dart (#105111) 2022-06-10 13:38:07 -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
Elliott Brooks (she/her)
67a18250b1 Update packages with update-packages (#105325) 2022-06-06 10:49:39 -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
Elliott Brooks (she/her)
81734be7ec Remove package:shelf version pin (#105261) 2022-06-02 21:23:09 -07: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
Danny Tuppeny
c5b5abe1d2 Update dependencies with 'flutter update-packages --force-upgrade' (#105009) 2022-06-01 11:33:11 -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
Chris Bracken
73ae3243de [tool] Migrate off deprecated coverage paramters (#104997)
In https://github.com/flutter/flutter/pull/103771, we rolled
dependencies in Flutter, which triggered an update of package:coverage
to v1.3.1. The new version includes
https://github.com/dart-lang/coverage/pull/370 in which two deprecations
landed:

* The `Resolver` default constructor was deprecated and replaced with
  the `Resolver.create` static factory method, which unfortunately
  happens to be async.
* The `packagesPath` parameter to `HitMap.parseJson`, which takes the
  path to the `.packages` file of the package for which coverage is to
  be collected, was deprecated. This parameter was replaced with
  `packagePath` in https://github.com/dart-lang/coverage/pull/370 which
  was part of the overall deprecation of the .packages file in Dart
  itself https://github.com/dart-lang/sdk/issues/48272. The overall goal
  being that end-user code shouldn't need to know about implementation
  details such as whether dependency information is stored in a
  .packages file or a package_info.json file, but rather use the
  package_config package to obtain the package metadata and perform
  other functions such as resolving its dependencies to filesystem
  paths. packagesPath was replaced by packagePath, which takes the path
  to the package directory itself. Internally, package:coverage then
  uses package_config to do the rest of the package/script URI
  resolution to filesystem paths.

This migrates off the deprecated `packagesPath` parameter to the
replacement `packagePath` paramter.

Issue: https://github.com/flutter/flutter/issues/103830
2022-05-31 16:15:28 -07:00
Gary Qian
c02be8cd47 Support string compileSdkVersion for preview android SDKs (#104662) 2022-05-31 13:08:09 -07:00
Daco Harkes
7342574069 Fix plugin_ffi bindings regen command and bump ffigen (#104844) 2022-05-27 15:08:07 -07:00
Darren Austin
c27a1a70f3 Update material_color_utilities dependency to 0.1.5. (#104771) 2022-05-27 11:18:12 -07:00
David Iglesias
b7eaad8b14 [tool][web] Fix flutter.js in Safari 13 (#104761) 2022-05-26 17:50:10 -07:00
Tim Sneath
fdf9b6e93d Update Windows manifest to declare Windows 11 (#104768) 2022-05-26 17:40:07 -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
f3e567c901 Create static plugin frameworks build ios-framework --static (#104576) 2022-05-25 09:03:12 -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
Dacian Florea
680bc17cde [web] [fix] Cache resource data only if the fetching succeed (#103816) 2022-05-24 16:23:06 -07:00
Konstantin Scheglov
c27e88a5b1 Fix existing DUPLICATE_IMPORT diagnostics. (#104533) 2022-05-24 14:18:31 -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