Commit Graph

2892 Commits

Author SHA1 Message Date
Jonah Williams
5de43e2017
[flutter_tools] hide Skia specific rendering options. (#132509)
At some point in the near future, we'll start an Impeller on Android preivew - and later make it the default. Unlike Skia, Impeller does not have a fallback software rendering mode. We'd like to stop suggesting this as an option now, and in the future remove the option to force software rendering.

Once impeller is the default, asking for software rendering on Android will result in either an error or falling back to Skia.
2023-08-14 20:54:15 +00:00
Polina Cherkasova
a7b69b069f
Unpin leak_tracker and handle breaking changes in API. (#132352) 2023-08-14 10:05:20 -07:00
Christopher Fujino
a6118612ac
Fix flutter attach local engine (#131825)
Fixes: https://github.com/flutter/flutter/issues/124970
Part of https://github.com/flutter/flutter/issues/47161

Before this change, there were two places we overrode the `Artifacts` in a Zone:

1. if/when we parse local-engine CLI options: 1cf3907407/packages/flutter_tools/lib/src/runner/flutter_command_runner.dart (L281)
2. an additional override for fuchsia platform dill (no longer used, deleted in this PR): 1cf3907407/packages/flutter_tools/lib/src/commands/attach.dart (L274)

Note 1 above creates a new instance of `Artifacts.getLocalEngine()`. In this flow, there exist two instances of `Artifacts`:

1. The default fallback instance of `CachedArtifacts` (which gets all artifacts from flutter/bin/cache), instantiated in context_runner.dart: 1cf3907407/packages/flutter_tools/lib/src/context_runner.dart (L137)
2. An instance of `CachedLocalEngineArtifacts` created in the command runner once the CLI options have been parsed: 1cf3907407/packages/flutter_tools/lib/src/runner/flutter_command_runner.dart (L281)

The regression happened when we direct injected the Artifacts 1 from above BEFORE we parsed the local-engine flag, and then used this in the second zone override, and then when creating the `FlutterDevice` there are multiple calls to `globals.artifacts` returned it when it should have returned Artifacts 2: 1cf3907407/packages/flutter_tools/lib/src/resident_runner.dart (L80)

Device.artifactOverrides was originally introduced in https://github.com/flutter/flutter/pull/32071, but is no longer used, so I deleted it.

I also removed direct injection of `Artifacts` to the attach sub-command, because that class now no longer references artifacts.

I believe the ideal true fix for this would be to:

1. Migrate all leaf calls to `globals.artifacts` to use direct injection (in this case, the offending invocations were in [`FlutterDevice.create()`](1cf3907407/packages/flutter_tools/lib/src/resident_runner.dart (L80-L218)), but I'm not sure that something else would not have broken later)
2. Ensure we are always direct injecting the desired instance of `Artifacts`--that is, if the user desires local engine artifacts, that we are passing an instance of `CachedLocalEngineArtifacts`.
  a. Alternatively, and probably simpler, teach `CachedArtifacts` to know about the local engine. This would mean parsing the global CLI options BEFORE we ever construct any instance of `Artifacts`.
  
As an overall recommendation for implementing https://github.com/flutter/flutter/issues/47161, in the overall tree of tool function calls, we should probably migrate the leaves first (that is, migrate the sub-commands last). We should also audit and reconsider any usage of `runZoned()` or `context.run()` for the purpose overriding zoneValues.
2023-08-10 17:51:05 +00:00
Polina Cherkasova
2efda23a45
Pin leak_tracker. (#132261) 2023-08-09 20:25:06 -07:00
Christopher Fujino
55bb3e5538
[flutter_tools] set terminal.singleCharMode to false after attach finishes (#131723)
Fixes https://github.com/flutter/flutter/issues/131511

Similar fix to 84c8abd0f6 (diff-38f3e3415d9806f22a78060fafb3206d1a006f74631fac04e7a680a64e06ccf0)
2023-08-02 17:42:52 +00:00
Ian Hickson
3396ec7b88
Device discovery output cleanup (#131223)
Fixes https://github.com/flutter/flutter/issues/6538
2023-07-28 21:37:00 +00:00
Christopher Fujino
43afac1e29
Reduce usage of testUsingContext (#131078)
Part of https://github.com/flutter/flutter/issues/47161
2023-07-24 17:22:25 +00:00
Valentin Vignal
be7c7e3e45
Suggest a potential valid name for the flutter project when using flutter create (#130900)
Fixes https://github.com/flutter/flutter/issues/109775

*If you had to change anything in the [flutter/tests] repo, include a link to the migration guide as per the [breaking change policy].*
2023-07-21 19:09:25 +00:00
Tae Hyung Kim
c6b93b2db7
Relax syntax for gen-l10n (#130736)
To preserve backward compatibility with the old parser which would
ignore syntax errors, this PR introduces a way to treat the special
characters `{` and `}` in the following way:
1. If we encounter a `{` which searching for a string token and this `{`
is not followed by a valid placeholder, then we treat the `{` as a
string and continue lexing for strings.
2. If we encounter a `}` while not within some expression (i.e.
placeholders, arguments, plurals, or selects), then we treat the `}` as
a string and continue lexing for strings.

This makes it so that
```
"helloWorld": "{ } { placeholder }",
"@@helloWorld": {
  "placeholders": {
    "placeholder" {}
  }
}
```
treats the `{ }` as a string while `{ placeholder } ` is treated as a
placeholder.

Fixes https://github.com/flutter/flutter/issues/122404.
2023-07-18 13:59:48 -07:00
hellohuanlin
1b07c3d798
[tools/ios_build_ipa] fallback to CFBundleName if CFBundleDisplayName is absent (#130752)
The display name will fallback to CFBundleName if CFBundleDisplayName is absent. 

*List which issues are fixed by this PR. You must list at least one issue.*

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

*If you had to change anything in the [flutter/tests] repo, include a link to the migration guide as per the [breaking change policy].*
2023-07-17 22:21:07 +00:00
Pavel Mazhnik
3a1190a5a8
[flutter_tools] Support coverage collection for dependencies (#129513)
PR provides a new option to the `test` command to include coverage info of specified packages.  
It helps collecting coverage info in test setups where test code lives in separate packages or for multi-package projects.
At present, only current package is included to the final report.

Usage:

Consider an app with two packages: `app`, `common`.
Some of the tests in `app` use (indirectly) code that is located in `common`. When running with `--coverage` flag, that code is not included in the coverage report by default. To include `common` package in report, we can run:

```sh
flutter test --coverage --coverage-package app --coverage-package common
```

Note that `--coverage-package` accepts regular expression. 

Fixes https://github.com/flutter/flutter/issues/79661
Fixes https://github.com/flutter/flutter/issues/101486
Fixes https://github.com/flutter/flutter/issues/93619
2023-07-17 08:42:13 +00:00
Matan Lurey
03749051e8
Always escape when writing pubspec.yaml's 'description' field. (#130096)
Closes https://github.com/flutter/flutter/issues/80013.

**Before**:

```
$ flutter create test1 --description "a: b"
Creating project test1...
Error detected in pubspec.yaml:
Error on line 2, column 15: Mapping values are not allowed here. Did you miss a colon earlier?
  ╷
2 │ description: a: b
  │               ^
  ╵
Please correct the pubspec.yaml file at /Users/matan/Developer/scratch/test1/pubspec.yaml
```

**After**:

```
$ flutter create test1 --description "a: b"
Creating project test1...
Resolving dependencies in test1... 
Got dependencies in test1.
Wrote 129 files.

All done!
You can find general documentation for Flutter at: https://docs.flutter.dev/
Detailed API documentation is available at: https://api.flutter.dev/
If you prefer video documentation, consider: https://www.youtube.com/c/flutterdev

In order to run your application, type:

  $ cd test1
  $ flutter run

Your application code is in test1/lib/main.dart.
```

---

It's worth noting that this _always_ escapes a non-empty project description, which means that descriptions that were not previously wrapped in `"`s' will be. I'm not sure how worth it is to do a _conditional_ escape (i.e. only escape if not escaping would cause a problem), but willing to change.

Side-note: I had no idea where to list this test in the (very large) `create_test.dart`, so I did my best :)
2023-07-13 22:53:51 +00:00
Tae Hyung Kim
dabd7b3bb5
Throw error on unexpected positional arguments (#130274)
This PR fixes ignoring when random positional arguments added to the
`flutter gen-l10n`.

So we are no longer able to call `flutter gen-l10n hello world` or
`flutter gen-l10n --format false`.

Fixes https://github.com/flutter/flutter/issues/118203
2023-07-10 12:12:23 -07:00
Christopher Fujino
6f3b07811b
[flutter_tools] delete flutter format command (#129360)
On the current stable branch (3.10.x), `flutter format` no longer works, and gives an error. This change just deletes the code.

Fixes https://github.com/flutter/flutter/issues/115809
2023-06-22 21:28:55 +00:00
gmackall
51f659825e
Unpin path_provider_android (#129205)
Unpins path_provider_android where it is pinned. Follows the same steps as https://github.com/flutter/flutter/pull/128898.

Fixes https://github.com/flutter/flutter/issues/116376
2023-06-22 21:22:49 +00:00
Christopher Fujino
3f68b25b46
[flutter_tools] fix cast error when dart-defines-json file includes null (#128909)
Fixes https://github.com/flutter/flutter/issues/128787
2023-06-16 18:12:22 +00:00
Ian Hickson
8c5a70f367
flutter update-packages --cherry-pick-package (#128917)
Fixes https://github.com/flutter/flutter/issues/101525
2023-06-15 19:26:53 +00:00
Christopher Fujino
3246808cd2
[flutter_tools] cache flutter sdk version to disk (#124558)
Fixes https://github.com/flutter/flutter/issues/112833

Most of the actual changes here are in [packages/flutter_tools/lib/src/version.dart](https://github.com/flutter/flutter/pull/124558/files#diff-092e00109d9e1589fbc7c6de750e29a6ae512b2dd44e85d60028953561201605), while the rest is largely just addressing changes to the constructor of `FlutterVersion` which now has different dependencies.

This change makes `FlutterVersion` an interface with two concrete implementations:

1. `_FlutterVersionGit` which is mostly the previous implementation, and
2. `_FlutterVersionFromFile` which will read a new `.version.json` file from the root of the repo

The [`FlutterVersion` constructor](https://github.com/flutter/flutter/pull/124558/files#diff-092e00109d9e1589fbc7c6de750e29a6ae512b2dd44e85d60028953561201605R70) is now a factory that first checks if `.version.json` exists, and if so returns an instance of `_FlutterVersionFromGit` else it returns the fallback `_FlutterVersionGit` which will end up writing `.version.json` so that we don't need to re-calculate the version on the next invocation.

`.version.json` will be deleted in the bash/batch entrypoints any time we need to rebuild he tool (this will usually be because the user did `flutter upgrade` or `flutter channel`, or manually changed the commit with git).
2023-06-15 00:20:30 +00:00
gmackall
944d6c8fef
Unpin flutter_plugin_android_lifecycle (#128898)
Unpins flutter_plugin_android_lifecycle where it is pinned. I then 
1. ran `flutter update-packages --force-upgrade` (but only committed the changes within `dev/integration_tests/gradle_deprecated_settings/`, which is where it had been pinned) 
2. followed by `./gradlew :generateLockfiles` from `dev/integration_tests/gradle_deprecated_settings/android/` (the lockfile was what was causing the CI dependency resolution failure, so this second step is the fix for that).

See the reason it was pinned: https://github.com/flutter/flutter/pull/121847#discussion_r1124797112 followed by the PR that pinned it: https://github.com/flutter/flutter/pull/122043

Fixes https://github.com/flutter/flutter/issues/122039
2023-06-14 20:58:37 +00:00
Christopher Fujino
d499533602
[flutter_tools] Suppress git output in flutter channel (#128475)
Fixes https://github.com/flutter/flutter/issues/128025
2023-06-13 19:28:06 +00:00
Andrew Kolos
cfe4fedca2
rename generated asset manifest file back to AssetManifest.bin (from AssetManifest.smcbin) (#128529)
Closes https://github.com/flutter/flutter/issues/128456, which is now linked to in a code comment in this change.
Reopens https://github.com/flutter/flutter/issues/124883.

This effectively reverts https://github.com/flutter/flutter/pull/126077 and is intended to be cherry-picked into stable.
2023-06-09 21:20:50 +00:00
William Hesse
0d39f6466d
[testing] Make the FLUTTER_STORAGE_BASE_URL warning non-fatal (#128335)
Presubmit testing and CI testing of Flutter using a custom storage location for engine artifacts must be able to use the --fatal-warnings flag without failing due to the custom artifact location.

This change adds an option that makes this warning non-fatal. The new --no-fatal-storage-url-warning flag makes the --fatal-warnings flag ignore the warning that a custom artifact download URL is being used by setting the environment variable FLUTTER_STORAGE_BASE_URL.

Bug: #127683

- [X ] I read the [Contributor Guide] and followed the process outlined there for submitting PRs.
- [X ] I read the [Tree Hygiene] wiki page, which explains my responsibilities.
- [X ] I read and followed the [Flutter Style Guide], including [Features we expect every widget to implement].
- [X ] I signed the [CLA].
- [X ] I listed at least one issue that this PR fixes in the description above.
- [X ] I updated/added relevant documentation (doc comments with `///`).
2023-06-09 11:06:13 +00:00
Christopher Fujino
0d95243fb2
[flutter_tools] Precache after channel switch (#118129)
Fixes https://github.com/flutter/flutter/issues/44118
2023-06-09 01:46:24 +00:00
Andrew Kolos
96afa500db
[tools] allow explicitly specifying the JDK to use via a new config setting (#128264)
Closes https://github.com/flutter/flutter/issues/106416.

This PR adds a new `flutter config` setting named `jdk-dir`. When set, the tool will use the JDK found at this location for all Java-dependent tool operations such as building Android apps via gradle and running Android SDK tools.
2023-06-07 04:52:17 +00:00
Victoria Ashworth
cd18c8c02f
Workaround for Dart VM timeout (#127875)
Workaround solution for: https://github.com/flutter/flutter/issues/121231
See https://github.com/flutter/flutter/issues/120808#issuecomment-1551826299 Error Case 2 for more information.

Sometimes the `ios-deploy` process does not return the logs from the application. We've been unable to figure out why. This is a solution to workaround that by using `idevicesyslog` alongside `ios-deploy` as a backup in getting the log for the Dart VM url. As explained in https://github.com/flutter/flutter/issues/120808#issuecomment-1551826299, when error case 2 happens, the `idevicesyslog` does successfully find the Dart VM.

Also, in the comments of the code it mentions `syslog` is not written on iOS 13+, this was added in response to this issue: https://github.com/flutter/flutter/issues/41133.

However, `idevicesyslog` does in fact work (at least for iOS 16), we use it to collect device logs for our CI tests already: 1dc26f80f0/dev/devicelab/lib/framework/devices.dart (L998-L1006)
2023-06-02 17:17:57 +00:00
Michael Goderbauer
95cd3c0340
Make --flutter-repo analyze whole repo (#127990)
Fixes https://github.com/flutter/flutter/issues/127989.
2023-06-02 17:17:54 +00:00
Tae Hyung Kim
5596a0cdab
Fix gen-l10n format: true so that it applies to when it gets called via build target (#127886) 2023-05-31 15:25:54 -07:00
Phil Quitslund
5bf6318688
Update collection-fors to prefer final (as per updated prefer_final_in_for_each) (#127511)
The newly updated lint will soon flag for-each in collections.

See discussion: https://github.com/dart-lang/linter/pull/4383

/cc @goderbauer
2023-05-26 23:34:36 +00:00
Ian Hickson
9c7a9e779f
Give channel descriptions in flutter channel, use branch instead of upstream for channel name (#126936)
## How we determine the channel name

Historically, we used the current branch's upstream to figure out the current channel name. I have no idea why. I traced it back to https://github.com/flutter/flutter/pull/446/files where @abarth implement this and I reviewed that PR and left no comment on it at the time.

I think this is confusing. You can be on a branch and it tells you that your channel is different. That seems weird.

This PR changes the logic to uses the current branch as the channel name.

## How we display channels

The main reason this PR exists is to add channel descriptions to the `flutter channel` list:

```
ianh@burmese:~/dev/flutter/packages/flutter_tools$ flutter channel
Flutter channels:
  master (tip of tree, for contributors)
  main (tip of tree, follows master channel)
  beta (updated monthly, recommended for experienced users)
  stable (updated quarterly, for new users and for production app releases)
* foo_bar

Currently not on an official channel.
ianh@burmese:~/dev/flutter/packages/flutter_tools$
```

## Other changes

I made a few other changes while I was at it:

* If you're not on an official channel, we used to imply `--show-all`, but now we don't, we just show the official channels plus yours. This avoids flooding the screen in the case the user is on a weird channel and just wants to know what channel they're on.
* I made the tool more consistent about how it handles unofficial branches. Now it's always `[user branch]`.
* I slightly adjusted how unknown versions are rendered so it's clearer the version is unknown rather than just having the word "Unknown" floating in the output without context.
* Simplified some of the code.
* Made some of the tests more strict (checking all output rather than just some aspects of it).
* Changed the MockFlutterVersion to implement the FlutterVersion API more strictly.
* I made sure we escape the output to `.metadata` to avoid potential injection bugs (previously we just inlined the version and channel name verbatim with no escaping, which is super sketchy).
* Tweaked the help text for the `downgrade` command to be clearer.
* Removed some misleading text in some error messages.
* Made the `.metadata` generator consistent with the template file.
* Removed some obsolete code to do with the `dev` branch.

## Reviewer notes

I'm worried that there are implications to some of these changes that I am not aware of, so please don't assume I know what I'm doing when reviewing this code. :-)
2023-05-23 19:59:20 +00:00
Ian Hickson
487ed57388
Suggest that people move to "beta" when they upgrade on "master" (#127146)
Similar to https://github.com/flutter/flutter/pull/126972 but for master
upgrades.

Co-authored-by: Tim Sneath <timsneath@google.com>
2023-05-22 15:03:14 -07:00
Andrew Kolos
80a4f9b159
Reland "[tool] Move Java functions to their own file" (#126577)
Relands #126086, which was reverted by #126569.
2023-05-20 06:29:21 +00:00
Christopher Fujino
e310475fc7
[flutter_tools] only try to take a screenshot from flutter drive if the --screenshot flag is passed (#127150)
Fixes https://github.com/flutter/flutter/issues/123621
2023-05-19 19:14:17 +00:00
Christopher Fujino
05af460790
[flutter_tools] unpin and roll camera_android (#126945)
camera_android was pinned because of https://github.com/flutter/flutter/issues/126710, which was fixed upstream in release 0.10.8+1.
2023-05-17 18:07:20 +00:00
Michael Goderbauer
5e1ba701ed
enable no_literal_bool_comparisons lint (#126647) 2023-05-16 16:14:23 +00:00
Polina Cherkasova
ea5eddb5a9
Upgrade leak_tracker to 5.0.0 (#126367)
Fixes https://github.com/flutter/flutter/issues/126259

Updated pubspec:
345f0bffbf/packages/flutter/pubspec.yaml
2023-05-16 04:39:26 +00:00
Tomasz Gucio
99c7e9f088
Add spaces after flow control statements (#126320) 2023-05-15 11:07:30 +02:00
Andrew Kolos
5b2f658ff5
Revert "[tool] Move Java functions to their own file" (#126569)
Reverts flutter/flutter#126086.

This PR changed the interfaces of some classes, namely `AndroidSdk`, and deleted a global.

These classes had custom overrides in g3 that were not updated with a g3fix, so this PR has broken tests. See https://b.corp.google.com/issues/281945232 (non-public link)
2023-05-11 17:06:57 +00:00
Andrew Kolos
0a63cd70f1
[tool] Move Java functions to their own file (#126086)
This is the first step in unifying Java-finding logic across the tool. If curious, see #126029 for an example of what all the changes will probably entail.

Moves java-related functionality like `AndroidSdk.findJavaHome` to a new class, `Java`.

See tracking issue https://github.com/flutter/flutter/issues/126126 for more.
2023-05-11 04:32:25 +00:00
fzyzcjy
742a1b49e9
Fix that flutter test does not understand concurrency (#125942)
Close https://github.com/flutter/flutter/issues/125940

I will add tests if this PR looks roughly OK :)

The fix mainly mimics https://github.com/flutter/flutter/pull/115160 - just remove the default argument.

p.s. I ran into this bug when wanting to set concurrency in my dart_test.yaml for one set of my tests which I need to be executed without parallalization.
2023-05-08 20:25:00 +00:00
Loïc Sharma
472a0ab314
[Tool] Output help on 'flutter pub' (#126211)
This change makes `flutter pub` show the help usage:

```
PS > flutter pub
Commands for managing Flutter packages.

Global options:
-h, --help                  Print this usage information.
-v, --verbose               Noisy logging, including all shell commands executed.
                            If used with "--help", shows hidden options. If used with "flutter
                            doctor", shows additional diagnostic information. (Use "-vv" to force
                            verbose logging in those cases.)
-d, --device-id             Target device id or name (prefixes allowed).
    --version               Reports the version of this tool.
    --suppress-analytics    Suppress analytics reporting for the current CLI invocation.
    --disable-telemetry     Disable telemetry reporting when this command runs.

Usage: flutter pub <subcommand> [arguments]
-h, --help    Print this usage information.

Available subcommands:
  add         Add a dependency to pubspec.yaml.
  cache       Work with the Pub system cache.
  deps        Print package dependencies.
  downgrade   Downgrade packages in a Flutter project.
  get         Get the current package's dependencies.
  global      Work with Pub global packages.
  login       Log into pub.dev.
  logout      Log out of pub.dev.
  outdated    Analyze dependencies to find which ones can be upgraded.
  pub         Pass the remaining arguments to Dart's "pub" tool.
  publish     Publish the current package to pub.dartlang.org.
  remove      Removes a dependency from the current package.
  run         Run an executable from a package.
  test        Run the "test" package.
  token       Manage authentication tokens for hosted pub repositories.
  upgrade     Upgrade the current package's dependencies to latest versions.
  uploader    Manage uploaders for a package on pub.dev.
  version     Print Pub version.

Run "flutter help" to see global options.
```

Previously it showed an error message:

```
PS > flutter pub
Missing subcommand for "flutter pub".

Run 'flutter -h' (or 'flutter <command> -h') for available flutter commands and options.
```

Addresses https://github.com/flutter/flutter/issues/110025
2023-05-08 17:22:10 +00:00
Jackson Gardner
4439fd41d9
Always use --concurrency=1 for web tests. (#126179)
This should fix https://github.com/flutter/flutter/issues/126178

When we don't pass a `--concurrency` flag to the test package, it uses a default based on the number of cores that are on the machine. However, the web test platform itself serializes all these requests anyway, which can lead to the test package timing out. This is because from the test package's perspective, it has already started the loading process on a number of suites which are simply waiting for other test suites to compile and run. The ones that wait the longest can run up against the test packages 12 minute timeout for loading a given suite, even though they haven't actually started to try to load.

Instead, we should always pass `--concurrency=1` to the test package so that it doesn't attempt to start loads concurrently in the first place.
2023-05-08 16:33:15 +00:00
Pierre-Louis
65dfb555c0
Update packages (#126140)
In particular, update pin for `material_color_utilities` to `0.5.0`.
2023-05-08 09:51:28 +02:00
Kevin Moore
f9d455134a
tool: replace top-level functions with enum properties (#126167) 2023-05-05 19:10:07 +00:00
chunhtai
b00f1c4599
Adding vmservice to get iOS app settings (#123156)
fixes https://github.com/flutter/flutter/issues/120405
2023-05-04 22:14:11 +00:00
Kevin Moore
529b919f09
tool-web-wasm: make wasm-opt an "option" instead of a "flag" (#126035)
Allows controlling a broader set of variables than just on/off.

Also make wasm-opt "full" the default
2023-05-04 22:07:12 +00:00
Kevin Moore
2c56a25da3
[tool] Improve help info with build web --wasm flags (#125907)
Also fixed some comments
2023-05-03 21:02:07 +00:00
Kevin Moore
4bd9bcd7cb
tool: DRY up DepfileService (#125922) 2023-05-03 20:54:51 +00:00
Anas
512e2c3fd5
fix package template create platform folders (#125292)
`package` template should not create platform folders. This happen cause by default all platforms are supported and tools didn't distinguish between package and other template, which makes all platforms are true for below code,
d186792c00/packages/flutter_tools/lib/src/project.dart (L374-L380)

fixes: #119844 which make #116320 makes invalid. As for why tools created deprecated `Android Embedding`, `appManifestFile` does not exist for `package` template, which make below code to trigger,
https://github.com/flutter/flutter/blob/master/packages/flutter_tools/lib/src/project.dart#L768-L770

This does not happen with `module` and `plugin` as it have specific condition check for them. I try to reproduce it with `app` template but didn't succeed
2023-04-29 00:00:08 +00:00
Tae Hyung Kim
5c44b1df0f
Refactor "gen-l10n" command to use same code path when "l10n.yaml" is present or not present (#125429)
I think this is a long needed change to the `gen-l10n` command.
Essentially, the arguments to `flutter gen-l10n` can be provided by two
different methods: via command line arguments or via the `l10n.yaml`
file. The existence of a `l10n.yaml` file causes the latter approach to
take precedence.

However, currently, there's several differences in how the two
approaches are handled, and most of the default arguments are all over
the place, causing unexpected issues such as #120457 or #120023.

This PR refactors the command so that
* `LocalizationOptions` are more consistent with the actual argument
names/yaml options.
* All default values are determined in `LocalizationOptions`'s
constructor (or in `argParser.addOption(...)` in the case a boolean
value needs to be explicitly true).
* New `parseLocalizationsOptionsFromCommand` function to parse
arguments.
* Parse `LocalizationOptions` at the beginning of `runCommand()` and
pass it to `generateLocalizations`.

Fixes #120023.
2023-04-26 11:49:25 -07:00
Kevin Moore
034adb66cc
[tool,web] Include more info URI on Wasm init failure (#125312) 2023-04-24 18:33:21 +00:00
Victoria Ashworth
48bb3c0bc9
Use term wireless instead of network (#124232)
Rename variables, update comments, etc from `network` to `wireless` to keep it more uniform.

Also, move non-overriden messages related to device selection into the file they're used.

Part 7 in breakdown of https://github.com/flutter/flutter/pull/121262.
2023-04-19 19:59:11 +00:00
Tae Hyung Kim
b6c7df447d
l10n.yaml's nullable-getter option should default to true (#124353)
Currently, nullable-getter defaults to false when l10n.yaml is not present, which is not the same behavior as when an l10n.yaml file is present and nullable-getter is not set.

Fixes #120457.
2023-04-18 18:42:07 +00:00
Andrew Kolos
68ec71f46c
[flutter_tools] Remove Version.unknown (#124771)
Fixes #124756 by removing the concept of `Version.unknown`.

`Version` fields that needed the ability to represent an unknown version have been made nullable. Assigning `null` to them represents an unknown version.
2023-04-15 19:56:41 +00:00
Jackson Gardner
2269dc10b3
Add option to run wasm-opt on module output. (#124831)
This fixes https://github.com/flutter/flutter/issues/124159

Adds the command line argument `--wasm-opt` to optimize the web assembly output.
2023-04-14 17:19:21 +00:00
Kevin Moore
76e587bf78
flutter-tool: enum cleanup (#124760)
flutter-tool: enum cleanup
2023-04-14 01:55:05 +00:00
Kevin Moore
ecf6a66387
Add omit-type-checks flag for wasm builds (#124341)
Add omit-type-checks flag for wasm builds
2023-04-11 00:38:35 +00:00
Lau Ching Jun
c8b38b20bf
Debounce the proxied connection over proxied devices. (#124540)
Debounce the proxied connection over proxied devices.
2023-04-10 23:20:01 +00:00
Lau Ching Jun
5923ae41d2
Allow daemon to start DDS remotely when proxied devices are used. (#124061)
Allow daemon to start DDS remotely when proxied devices are used.
2023-04-10 20:21:07 +00:00
Eilidh Southren
0f5e513ba8
Update MCU version (#124512)
Update MCU version
2023-04-10 16:44:26 +00:00
Jackson Gardner
07b89dada4
Add support to the flutter tool to compile against the skwasm renderer (#124296)
Add support to the flutter tool to compile against the skwasm renderer
2023-04-10 15:52:40 +00:00
Kevin Moore
1045c3d081
flutter_tool: add and use WebCompilerConfig (#124183)
flutter_tool: add and use WebCompilerConfig
2023-04-06 05:30:23 +00:00
Kevin Moore
f3e8ae7d51
flutter tool: add experimental output during wasm build (#124166) 2023-04-05 18:48:03 -07:00
Jenn Magder
385728e7fd
Add tools test for buildWeb compilation (#124179)
Add tools test for buildWeb compilation
2023-04-05 22:57:07 +00:00
Elias Yishak
a32f0bb7a0
Add analytics package + setTelemetry method attached (#124015)
The first of many PRs for transitioning to `package:unified_analytics`.
This PR is only focused on disabling and enabling telemetry via the
`flutter config --[no-]analytics` flag

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

## Pre-launch Checklist

- [x] I read the [Contributor Guide] and followed the process outlined
there for submitting PRs.
- [x] I read the [Tree Hygiene] wiki page, which explains my
responsibilities.
- [x] I read and followed the [Flutter Style Guide], including [Features
we expect every widget to implement].
- [x] I signed the [CLA].
- [x] I listed at least one issue that this PR fixes in the description
above.
- [x] I updated/added relevant documentation (doc comments with `///`).
- [x] I added new tests to check the change I am making, or this PR is
[test-exempt].
- [x] All existing and new tests are passing.

If you need help, consider asking for advice on the #hackers-new channel
on [Discord].

<!-- Links -->
[Contributor Guide]:
https://github.com/flutter/flutter/wiki/Tree-hygiene#overview
[Tree Hygiene]: https://github.com/flutter/flutter/wiki/Tree-hygiene
[test-exempt]:
https://github.com/flutter/flutter/wiki/Tree-hygiene#tests
[Flutter Style Guide]:
https://github.com/flutter/flutter/wiki/Style-guide-for-Flutter-repo
[Features we expect every widget to implement]:
https://github.com/flutter/flutter/wiki/Style-guide-for-Flutter-repo#features-we-expect-every-widget-to-implement
[CLA]: https://cla.developers.google.com/
[flutter/tests]: https://github.com/flutter/tests
[breaking change policy]:
https://github.com/flutter/flutter/wiki/Tree-hygiene#handling-breaking-changes
[Discord]: https://github.com/flutter/flutter/wiki/Chat

---------

Co-authored-by: Christopher Fujino <fujino@google.com>
Co-authored-by: Christopher Fujino <christopherfujino@gmail.com>
2023-04-05 14:08:56 -04:00
Michael Goderbauer
daaa32bc06
Add CustomDimensions.commandRunIsTest (#124135) 2023-04-05 09:30:36 -07:00
Danny Tuppeny
1a6a20cdc6
[flutter_tools] Include mode in app.start event, and forward app.start to DAP clients (#121239)
[flutter_tools] Include mode in app.start event, and forward app.start to DAP clients
2023-04-05 05:39:09 +00:00
Victoria Ashworth
842873c2fc
Allow --ipv6 flag for flutter attach on iOS devices (#123822)
Allow --ipv6 flag for flutter attach on iOS devices
2023-04-04 22:33:28 +00:00
Victoria Ashworth
dbc18bbdb8
Add flag to filter by device connection interface (#124034)
Add flag to filter by device connection interface
2023-04-04 22:33:26 +00:00
Chinmay Garde
f6c2b10e1a
[Impeller] Plumb through the impeller-force-gl flag. (#123828)
[Impeller] Plumb through the impeller-force-gl flag.
2023-03-31 15:13:10 +00:00
Chinmay Garde
7d31fe32f8
[Impeller] Plumb through the enable-vulkan-validation flag. (#123808)
[Impeller] Plumb through the enable-vulkan-validation flag.
2023-03-30 21:34:19 +00:00
Victoria Ashworth
fa01649a59
Update device selection to wait for wireless devices to load (#122932)
Update device selection to wait for wireless devices to load
2023-03-29 17:58:07 +00:00
Janice Collins
81e9060968
Suppress analytics flag pass through to analysis server (#123235)
Suppress analytics flag pass through to analysis server
2023-03-24 19:59:15 +00:00
Harry Terkelsen
897e3db40c
Inject the gstatic CanvasKit CDN URL by default in flutter build web (#122772) 2023-03-23 09:17:25 -07:00
Christopher Fujino
3736274a6d
Revert "[flutter_tools] Remove sound null safety flag (#123031)" (#123280)
Revert "[flutter_tools] Remove sound null safety flag (#123031)"
2023-03-22 22:53:49 +00:00
Michael Goderbauer
fda9ecfef7
Remove 1745 decorative breaks (#123259)
Remove 1745 decorative breaks
2023-03-22 21:12:22 +00:00
Jason Simmons
d81e915780
Provide an ApplicationPackage to the flutter_tools logs command (#123149)
Provide an ApplicationPackage to the flutter_tools logs command
2023-03-22 14:51:39 +00:00
Michael Goderbauer
25e38a2a87
Bump lower Dart SDK constraints to 3.0 & add class modifiers (#122546)
Bump lower Dart SDK constraints to 3.0 & add class modifiers
2023-03-21 20:21:58 +00:00
Victoria Ashworth
9136a47458
Set plugin template minimum iOS version to 11.0 (#122625)
Set plugin template minimum iOS version to 11.0
2023-03-21 16:40:50 +00:00
Zachary Anderson
7e88acfb0e
[flutter_tool] Adds a flag to disable Impeller (#122960) 2023-03-20 22:23:23 -07:00
Christopher Fujino
f4c3facfdd
Revert "Revert "[flutter_tools] Remove sound null safety flag (#120936)" (#122909)" (#123031)
[flutter_tools] Remove sound null safety flag #2
2023-03-20 22:32:07 +00:00
Christopher Fujino
f6bc147c91
Revert "[flutter_tools] Remove sound null safety flag (#120936)" (#122909)
This reverts commit 7c3088cf22.
2023-03-17 11:31:48 -07:00
Christopher Fujino
7c3088cf22
[flutter_tools] Remove sound null safety flag (#120936)
[flutter_tools] Remove sound null safety flag
2023-03-17 17:48:35 +00:00
Christopher Fujino
7e151b4641
[flutter_tools] throw tool exit on invocation of flutter format (#121646)
[flutter_tools] throw tool exit on invocation of flutter format
2023-03-16 21:40:26 +00:00
Victoria Ashworth
27248d4b64
Separate attached and wireless devices (#122615)
Separate attached and wireless devices
2023-03-15 16:35:05 +00:00
Bartek Pacia
37fc9ed260
[flutter_tools] Clean up boolArgDeprecated and stringArgDeprecated (#122184)
[flutter_tools] Clean up `boolArgDeprecated` and `stringArgDeprecated`
2023-03-13 21:20:19 +00:00
Victoria Ashworth
ee42a302ec
Move target devices logic to its own classes and file (#121903)
Move target devices logic to its own classes and file
2023-03-13 16:14:21 +00:00
Jim Graham
3f2cca8eeb
Adjust the minimum sdk version in the synthetic pkg for new Dart requirements (#122380)
Manually landing to fix the Engine rolls. The change will not affect Google Testing.
2023-03-10 09:23:33 -08:00
Tim Maffett
2e8c3468e7
fix devtool instructional messages after flutter build ... --analyze-size . Fixes #122229 (#122230)
fix devtool instructional messages after `flutter build ... --analyze-size `.  Fixes #122229
2023-03-09 22:29:50 +00:00
Reid Baker
fe9e819143
Create configOnly flag for android (#121904)
Create configOnly flag for android
2023-03-08 19:46:52 +00:00
Christopher Fujino
b1641749fc
pin flutter_plugin_android_lifecycle and roll other pub deps (#122043)
pin flutter_plugin_android_lifecycle and roll other pub deps
2023-03-06 21:51:07 +00:00
Seiya Kokushi
acc840e574
[tool] Proposal to multiple defines for --dart-define-from-file (#120878)
[tool] Proposal to multiple defines for --dart-define-from-file
2023-03-06 18:16:14 +00:00
Christopher Fujino
26b7456f88
[flutter_tools] remove late from update-packages command (#121891)
[flutter_tools] remove late from update-packages command
2023-03-03 22:38:19 +00:00
Chris Yang
b81b1e28a3
[flutter_tool] add enable-embedder-api flag (#121895)
[flutter_tool] add enable-embedder-api flag
2023-03-03 21:13:54 +00:00
Victoria Ashworth
cc26a1aa0c
Update device filtering and introduce isConnected and connectionInterface (#121359)
Update device filtering and introduce isConnected and connectionInterface
2023-03-03 18:06:16 +00:00
Kevin Moore
a7f9ebcc49
Reorganize CLI flags for build web (#121837)
Reorganize CLI flags for `build web`
2023-03-03 00:59:16 +00:00
Kevin Moore
a8cc95e36d
flutter_tool: only enable wasm compile in master channel (#121755)
flutter_tool: only enable wasm compile in master channel
2023-03-02 22:21:50 +00:00
Kevin Moore
0cd6f1fbdb
[flutter_tool] advertise the default value for --dart2js-optimization (#121621)
[flutter_tool] advertise the default value for --dart2js-optimization
2023-03-01 01:17:56 +00:00
Ben Konyi
ecd7518df5
Reland "Remove references to Observatory (#118577)" (#121606)
This reverts commit 275ab9c69b.
2023-02-28 11:57:04 -05:00
Michael Goderbauer
275ab9c69b
Revert "Reland "Remove references to Observatory (#118577)" (#121215)" (#121555)
Revert "Reland "Remove references to Observatory (#118577)""
2023-02-27 23:46:53 +00:00
Danny Tuppeny
06952ba254
[flutter_tools] Add support for URI formats like ?line=x for "flutter test" (#119740)
* [flutter_tools] Add support for URI formats like ?line=x for "flutter test"

* Remove unnecessary function

* Handle parsing absolute paths on Windows

* Use Windows-style paths when running on Windows

* Fix paths in isFile

* Remove unnecessary clear
2023-02-27 19:13:00 +00:00
Greg Price
516b60bda1
Give error on too many arguments to flutter config (#121494)
Give error on too many arguments to `flutter config`
2023-02-27 17:22:20 +00:00
Ben Konyi
fbae472fc3
Reland "Remove references to Observatory (#118577)" (#121215)
This reverts commit 298d8c76ba.
2023-02-27 09:26:43 -05:00
Lioness100
26b6c1bedd
Fix typos (#121171)
* Fix typos

* lowercase animated & opacity

* Undo typo fix

---------

Co-authored-by: Michael Goderbauer <goderbauer@google.com>
2023-02-23 19:43:21 +00:00
Enguerrand ARMINJON
6259b690f6
feature/clean-a-specific-scheme: Add this-scheme new flag for clean command (#116733)
Co-authored-by: Enguerrand_ARMINJON_MAC_2 <earminjon@sqli.com>
2023-02-21 17:35:13 +00:00
Mateus Felipe C. C. Pinto
ebbc94bc2b
allow passing --file-reporter option to test running refs #69425 (#120716)
* allow passing --file-reporter option to test running refs #69425

* Add trailing comma to help to meet style requirements

* Add space between tests for clarity

---------

Co-authored-by: daniel-v <dvarga@skawa.hu>
2023-02-21 17:24:11 +00:00
Ian Hickson
6205c110d6
Remove "note that" in our documentation (as per style guide) (#120842)
* lerp documentation

* Remove Note, Note That from repo

* Improve BorderSide documentation.

* apply review comments
2023-02-17 22:27:33 +00:00
Casey Hillers
298d8c76ba
Revert "Remove references to Observatory (#118577)" (#120929)
This reverts commit 2df140f40d.
2023-02-16 21:28:30 -08:00
Christopher Fujino
c6b636fa51
[flutter_tools] Replace Future.catchError() with Future.then(onError: ...) (#120637)
* wip run_local_linter.dart

* get run_local_linter.dart working

* slow working implementation

* speed up run_local_linter.dart

* fix run_local_linter.dart

* remove catchError

* another fix

* fix another

* fix

* more fixes

* fix moar

* fix moar

* fix

* finish

* fix tests

* clean up further

* code review

* delete run_local_linter.dart
2023-02-15 19:03:00 +00:00
Ian Hickson
d29668ddb2
Improve network resources doctor check (#120417)
...and various other minor cleanup:

* Moved "FLUTTER_STORAGE_BASE_URL" into a constant throughout the code. There are other strings that we should do that to but this one was relevant to the code I was changing.

* Fixed the logger's handling of slow warnings. Previously it deleted too much text. Fixed the test for that to actually verify it entirely, too.

* Made the logger delete the slow warning when it's finished.

* Fixed 'Please choose one (To quit, press "q/Q")' message to be the cleaner 'Please choose one (or "q" to quit)'.

* Added a debug toString to ValidationResult for debugging purposes (not used).

* In http_host_validator:

  - Shortened constant names to be clearer (e.g. kPubDevHttpHost -> kPubDev).
  - Added GitHub as a tested host since when you run `flutter` we hit that immediately.
  - Renamed the check "Network resources".
  - Updated the `slowWarning` of the check to say which hosts are pending.
  - Removed all timeout logic. Timeouts violate our style guide.
  - Removed `int.parse(... ?? '10')`; passing a constant to `int.parse` is inefficient.
  - Replaced the `_HostValidationResult` class with `String?` for simplicity.
  - Improved the error messages to be more detailed.
  - Removed all checks that dependened on the stringification of exceptions. That's very brittle.
  - Added a warning specifically for HandshakeException that talks about the implications (MITM attacks).
  - Replaced exception-message-parsing logic with just calling `Uri.tryParse` and validating the result.
  - Replaced a lot of list-filtering logic with just a single for loop to check the results.
  - Replaced code that added a constant to a known-empty list with just returning a constant list.
  - Revamped the logic for deciding which hosts to check to just use a single chain of if/else blocks instead of getters, lists literals with `if` expressions, `??`, functions, etc spread over multiple places in the code.
2023-02-15 00:02:09 +00:00
Ben Konyi
2df140f40d
Remove references to Observatory (#118577)
Observatory is being deprecated for Dart 3.0 so it should no longer be
referenced in tooling messaging / flags.

See https://github.com/dart-lang/sdk/issues/50233
2023-02-13 14:29:30 -05:00
Michael Thomsen
c8c8621416
Clean up null safety messages (#120350) 2023-02-09 19:40:32 +01:00
Christopher Fujino
1089588863
un-pin package:intl (#119900) 2023-02-07 12:10:18 -08:00
Ben Konyi
47a0674651
Reland "Add --serve-observatory flag to run, attach, and test (#118402)" (#119737)
This reverts commit 254a796bc3.
2023-02-06 09:23:35 -05:00
Mouad Debbar
d4b6898478
[web] Put all index.html operations in one place (#118188)
* [web] Put all index.html operations in one place

* review comments

* fix build

* change quotes

* fix test
2023-02-02 19:49:18 +00:00
Sigurd Meldgaard
ca0596e41d
Fix pub get --unknown-flag (#119622) 2023-02-02 16:22:39 +01:00
Alex Li
4ae2d3b6df
🔥 Do not format the messages file for gen-l10n (#119596)
* 🔥 Do not format the messages file

*  Add test

*  Add the link to the test

*  Respect the path separator from the file system

*  Add the untranslated messages file existence test
2023-02-01 23:45:38 +00:00
Zachary Anderson
254a796bc3
Revert "Reland "Add --serve-observatory flag to run, attach, and test (#118402)" (#119529)" (#119729)
This reverts commit 7477d7ac79.
2023-02-01 09:19:48 -08:00
Ben Konyi
7477d7ac79
Reland "Add --serve-observatory flag to run, attach, and test (#118402)" (#119529)
* Reland "Add --serve-observatory flag to run, attach, and test (#118402)"

This reverts commit 86ab01d2bd.

* Fix flaky failures

* Fix VM service disappearing failure
2023-01-30 21:00:18 +00:00
Zachary Anderson
86ab01d2bd
Revert "Add --serve-observatory flag to run, attach, and test (#118402)" (#119302)
This reverts commit 6cd4fa45e2.
2023-01-26 16:43:39 -08:00
Ben Konyi
6cd4fa45e2
Add --serve-observatory flag to run, attach, and test (#118402)
This flag will allow for Observatory to be served by the VM service once it is disabled by default in the Dart SDK.
2023-01-25 12:46:08 -05:00
Victoria Ashworth
81052a7d36
Add usage event to track when a iOS network device is used (#118915)
* Add usage event to track when a iOS network device is used

* update usage event to track percentage of iOS network vs usb devices, update and fix tests

* refactor tracking to happen in usageValues with a custom dimension
2023-01-25 10:57:12 -06:00
Michael Goderbauer
38630b6bd1
Remove unnecessary null checks in flutter_tool (#118857)
* dart fix --apply

* manual fixes

* fix after merge conflicts

* review
2023-01-23 21:43:08 +00:00
Victoria Ashworth
a07e8a6ac4
[reland] Support wireless debugging (#118895)
* Reland "Support iOS wireless debugging (#118104)"

This reverts commit cbf2e16892.

* Remove device loading status
2023-01-20 19:02:37 +00:00
Jenn Magder
030288d33b
Revert "[macos] add flavor options to commands in the flutter_tool (#118421)" (#118858)
This reverts commit 73096fd96e.
2023-01-20 03:46:45 +00:00
Alex Wallen
73096fd96e
[macos] add flavor options to commands in the flutter_tool (#118421)
* Add new macos target configured for flavors

* Rename Free App copy-Info.plist to Free App Info.plist

* Remove bogus entitlements

* Remove Generated.xcconfig

* Audit project.pbxproj

* Remove unused configs

* share one info.plist

* Modify scheme so that paid app works

* Codesign automatic

* Pipe flavor as scheme into xcodebuild

* Ignore incoming flavor string

* pipe flavor for flutter run to work

* Add devicelab tests

* Error if host and target device are same for flutter install desktop

* Avoid bang (!) by promoting a local.

Co-authored-by: Jenn Magder <magder@google.com>

* Add supportsInstall property

* Override  in test classes

* Add install test on macOS

* Refactor application_package and add tests for package directory

Co-authored-by: a-wallen <stephenwallen@google.com>
Co-authored-by: Jenn Magder <magder@google.com>
2023-01-19 23:52:16 +00:00
Alex Wallen
1dd7f45bfb
Add build macos --config-only option. (#118649)
Co-authored-by: a-wallen <stephenwallen@google.com>
2023-01-19 21:29:17 +00:00
Jenn Magder
cbf2e16892
Revert "Support iOS wireless debugging (#118104)" (#118826)
This reverts commit 5cd2d4c61e.
2023-01-19 12:31:53 -08:00
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
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
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
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
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
Michael Goderbauer
0220afdd3e
enable use_enums (#117376) 2022-12-20 20:06:24 +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
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
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
Christopher Fujino
7a743c8816
[flutter_tools] Pin and roll pub (#116745)
* pin path_provider_android

* make path_provider_android non-transitive

* roll
2022-12-12 21:02:07 +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
Michael Thomsen
91568cc9b7
Adjust upper Dart SDK constraint (#116586) 2022-12-06 23:41:53 +01: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
Zachary Anderson
7c0f882a92
Revert "[flutter_tools] Pin path_provider_android and roll pub packages (#116377)" (#116424)
This reverts commit ce94230281.
2022-12-02 08:30:14 -08:00
Christopher Fujino
ce94230281
[flutter_tools] Pin path_provider_android and roll pub packages (#116377)
* pin path_provider_android

* remove constraint that only explicit dependencies can be pinned

* roll packages
2022-12-02 03:13:07 +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
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
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
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
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
Christopher Fujino
459391708e
[flutter_tools] Pin package:archive and manual roll (#115662)
* add package:archive to pins

* roll
2022-11-18 19:28:10 +00:00
Devon Carew
0344407614
Rev package:pub_semver to the latest version (#115570)
* rev package:pub_semver to the latest version

* revert update_packages.dart changes
2022-11-17 18:29:37 +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
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
Jenn Magder
2c44f4a68b
Remove dev branch reference from build ios-frameworks error (#115166) 2022-11-15 21:35:29 +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
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
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
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
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
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
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
Jenn Magder
28ab431096
Make Logger required when injected in flutter_tool (#114111) 2022-10-27 22:40:08 +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
Lucas Britto
5d93894264
[flutter_tools] Decouple fatal-warnings check from fatal-infos (#113748) 2022-10-26 16:44:25 +00: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
Christopher Fujino
e4b9796790
[flutter_tools] Implement NotifyingLogger.supportsColor (#113635) 2022-10-20 15:43:49 +00:00
Jesús S Guerrero
eea60f86f1
Dependency injection Attach command (#113227) 2022-10-18 17:30:01 +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
Jenn Magder
7dd65c16c2
Add bitcode deprecation note for add-to-app iOS developers (#112900) 2022-10-06 02:51:23 +00:00
Jason Simmons
57cd3252b1
When updating packages, do not delete the simulated SDK directory until all pub invocations have finished (#112975) 2022-10-05 21:54:31 +00:00
Jenn Magder
35afe1bdac
Stop embedding bitcode for iOS in tool (#112831) 2022-10-04 01:41:23 +00:00
Gary Qian
21861423f2
[flutter_tools] analyze --suggestions --machine command (#112217) 2022-10-03 17:40:58 +00:00
Jesús S Guerrero
fc015f52c6
Use directory exists instead of path.dirname (#112219) 2022-09-28 22:24:24 +00:00
haizhu
cbfe5a5226
[tool] Proposal to support dart define config from a json file (#108098) 2022-09-26 21:47:27 +00:00
Sam Rawlins
0500962440
Return null rather than fall off nullable onError catchError handler. (#111581) 2022-09-16 04:35:19 +00:00
Elias Yishak
0c829caad8
error handling when path to dir provided instead of file (#109796) 2022-09-14 21:13:13 +00:00
Christopher Fujino
2e299e1934
[flutter_tools] Pin url_launcher_android and update packages (#111309) 2022-09-09 23:57:03 +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
Sigurd Meldgaard
d80e994a62
Reland: Show output from pub get in flutter pub get (#110851) 2022-09-08 15:13:23 +02:00
Greg Spencer
e3a6a0da91
Annual spelling error fix (#111132) 2022-09-07 23:49:03 +00: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
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
Ivan Dlugos
723b82e4f0
Feat: dSYM debug info for iOS & macOS builds (#101586) 2022-09-05 18:16:16 +00:00
Pierre-Louis
0c2f7bc2a2
Remove errant double spaces (#110758) 2022-09-02 04:00:58 +00: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
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
Christopher Fujino
db51e5d944
[flutter_tools] unpin path_provider_android and roll (#110216) 2022-08-25 19:42:21 +00:00
Christopher Fujino
6e95067273
[flutter_tools] Fix _CastError in HotRunner._resetDirtyAssets (#108771) 2022-08-24 23:40:19 +00: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
jensjoha
981bdf5476
[flutter_tools] Make flutter test -v print timing of different phases (#108864) 2022-08-18 16:26:56 +00:00
Christopher Fujino
b79c216845
[flutter_tools] Pin path_provider_android (#109429) 2022-08-12 01:18:41 +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
5627e0d1f6
Add info project validator status (#109169) 2022-08-09 17:59:06 +00:00
Pierre-Louis
de8a2fa6a7
Update packages (#109054)
In particular, to get `material_color_utilities` `0.2.0`.
2022-08-05 15:21:03 -04:00
Christopher Fujino
4b25e80c4a
[flutter_tools] Migrate more tool tests to null-safety (#108639) 2022-08-02 23:00:06 +00:00
Jenn Magder
7f1a8f7948
Add usage event when iOS app is archived (#108643) 2022-07-29 22:44:06 +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
RockerFlower
5f67b47e23
[iOS] Update template icons (#107873) 2022-07-25 21:36:06 +00: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
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
Christopher Fujino
1371b8dc3c
[flutter_tools] Fix null check errors in attach command (#107864) 2022-07-18 23:10:06 +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
Jenn Magder
c4975d9be0
Increase app minimum supported macOS version from 10.11 to 10.13 (#107689) 2022-07-15 11:12:43 -07: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
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
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
Christopher Fujino
84c8abd0f6
[flutter_tools] catch StdinException while trying to re-set single char mode (#107256) 2022-07-07 22:40:05 +00:00
Christopher Fujino
19ac08dcd7
manual pub package roll; remove test_api pin, unblock bumping dwds (#106887) 2022-07-06 17:28:07 +00: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
Helin Shiah
19d5113391
Refactor daemon to check for project's supported platforms (#106704)
* Refactor daemon to check for project's supported platforms

* Fix type issue
2022-06-28 10:49:03 -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
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
Jonah Williams
db829c1e20
[flutter_tools] migrate more unit tests to null safety (#106153) 2022-06-17 21:34:27 -07:00
Jonah Williams
1572773729
Update package:archive and pin test_api (#106157) 2022-06-16 21:23:08 -07:00
Jonah Williams
92034482f9
[flutter_tool] partial null safety migration of tool source code (#105798) 2022-06-15 20:02:07 +00:00
Lau Ching Jun
d30ad47eda
Make flutter attach respect the --dds-port flag. (#105560) 2022-06-09 13:03: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
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
Jenn Magder
3f1f0a8170
Add flutter build macos-framework command (#105242) 2022-06-03 10:13:08 -07: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
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
Darren Austin
c27a1a70f3
Update material_color_utilities dependency to 0.1.5. (#104771) 2022-05-27 11:18:12 -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
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
Christopher Fujino
0116b2e77d
[flutter_tools] fix RangeError in flutter channel command (#103766) 2022-05-17 16:22:12 -07:00
Chris Bracken
6eb12c6843
[macOS] Update template icons to Big Sur style (#103739)
Updates the AppIcon assets in the macOS app template to meet Apple's
icon guidelines as of macOS Big Sur. Assets were moved to the
[flutter_template_images][1] package, which includes them as of version
4.1.0.

Ref: https://developer.apple.com/design/human-interface-guidelines/macos/icons-and-images/app-icon/

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

[1]: https://github.com/flutter/packages/tree/main/packages/flutter_template_images
2022-05-14 17:20:24 -07:00
Jonah Williams
90a592bf36
[flutter_tools] fix test asset loading (#103667) 2022-05-14 10:59:07 -07:00
engine-flutter-autoroll
7d234c966a
Roll Flutter Engine from 58193a3b6ef1 to 10e0e15347d3 (5 revisions) (#103742)
* c4b899f63 Roll dart sdk to 7b24ff4d92e2d2136020fc5bedadfe7025861510 (flutter/engine#33309)

* 7956603cc [web] Migrate Flutter Web DOM usage to JS static interop - 12. (flutter/engine#33241)

* 1d0c2ae6f Roll Skia from 1e43dce386c9 to f6e31bf1dcfb (6 revisions) (flutter/engine#33320)

* ed5a2fef0 Roll Skia from f6e31bf1dcfb to 69fecd6c2d85 (1 revision) (flutter/engine#33322)

* 10e0e1534 Revert "[web] Migrate Flutter Web DOM usage to JS static interop - 12. (#33241)" (flutter/engine#33321)

* fix local tests

Co-authored-by: Jonah Williams <jonahwilliams@google.com>
2022-05-13 14:30:19 -07:00
Gary Qian
e997a3abd2
Add tests for migrate command methods (#103466) 2022-05-11 11:09:08 -07:00
Christopher Fujino
e8c01a8aa8
[flutter_tools] pub roll (#103220)
Co-authored-by: Michael Goderbauer <goderbauer@google.com>
2022-05-10 10:26:54 -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
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
Jesús S Guerrero
780a6c422b
[flutter_tool] New command project (#102118) 2022-04-29 23:09:06 -07:00
Alexandre Ardhuin
07f1c20474
add missing trailing commas in list/set/map literals (#102585) 2022-04-27 09:15:35 +02:00
Jonah Williams
944fcda67f
[flutter_tools] remove UWP tooling (#102174) 2022-04-26 11:19:07 -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
6ccd993976
Add flutter build ipa --no-codesign flag (#101766) 2022-04-12 14:49:09 -07:00
Danny Tuppeny
b086473769
Pass multidex flag when using --machine mode (#101689) 2022-04-11 12:19: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
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
Michael Goderbauer
dcde8163ce
migrate to super params (#100509) 2022-03-31 11:46:47 -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
Zachary Anderson
47f08a3fd6
[flutter_tool] Adds --enable-impeller flag to the run command (#100835) 2022-03-26 20:07:24 -07:00
Anurag Roy
74f08c7352
[flutter_tools] Skip version freshness check for non-standard remotes (#97202) 2022-03-22 12:50:21 -07:00
Christopher Fujino
0d83e80104
[flutter_tools] Null safe update packages (#99357) 2022-03-17 13:35:17 -07:00
Gary Qian
63ff7a199b
MigrateConfig and migrate integration testing base (#99092) 2022-03-16 11:10:22 -07:00
Jeff Ward
0aab22807c
First pass at using platform abstraction for plugins (#92672) 2022-03-09 14:10:21 -08:00
Jonah Williams
59859df126
Add Windows performance benchmark (#99564) 2022-03-04 15:41:14 -08:00
Viren Khatri
671aa9e95e
complete migration of flutter repo to Object.hash* (#99505) 2022-03-04 12:56:21 -08:00
Mathieu Dubois-Briand
020bf31c99
Fix custom-device default forwardPortSuccessRegex (#97719) 2022-03-04 11:06:22 -08:00
Jonah Williams
0a9a43b99a
Use flutter pub instead of dart pub (#99159) 2022-02-25 11:31:23 -08:00
Lau Ching Jun
6a9ac4509b
Add option in ProxiedDevice to only transfer the delta when deploying. (#97462) 2022-02-23 12:09:16 -08:00
Tomasz Gucio
e4351ff053
Enable use_if_null_to_convert_nulls_to_bools lint (#98753) 2022-02-22 14:39:20 -08:00
Ben Konyi
50c4720913
Update dependencies to pull in new vm_service, dds, dwds, coverage, etc (#98513) 2022-02-18 12:32:08 -08:00
Christopher Fujino
289988dc62
[flutter_tools] fix type error in flutter update-packages --jobs=n (#98283) 2022-02-11 14:50:18 -08:00
Taha Tesser
d6d3283c8d
Fix flutter gen-l10n help message (#98147) 2022-02-11 01:40:14 -08:00
Jenn Magder
ac52901c14
Export an IPA for distribution via "flutter build ipa" without --export-options-plist (#97672) 2022-02-02 19:28:25 -08:00