Gray Mackall
c5d163fccb
Delete v1 android engine embedding ( flutter/engine#52022 )
...
Fixes https://github.com/flutter/flutter/issues/143531
Other failures from the initial attempt are fixed in https://github.com/flutter/flutter/pull/146523/
2024-10-23 21:12:52 +00:00
Jason Simmons
57a7c7a5fe
Allow running the YAPF formatter using Python version 3.11 ( flutter/engine#56062 )
2024-10-23 21:10:55 +00:00
Devon Carew
7ffe338915
Update the engine deps to track new SoT git locations for several packages ( flutter/engine#56028 )
...
This PR updates the deps and pubspec overrides to track the new SoT of
several Dart core packages (these now live in dart-lang/core).
- `package:args`
- `package:async`
- `package:convert`
- `package:crypto`
- `package:fixnum`
- `package:logging`
- `package:path`
- `package:platform`
- `package:typed_data`
issues
- https://github.com/dart-lang/sdk/issues/56591
## 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] and the [C++,
Objective-C, Java style guides].
- [x] I listed at least one issue that this PR fixes in the description
above.
- [ ] I added new tests to check the change I am making or feature I am
adding, or the PR is [test-exempt]. See [testing the engine] for
instructions on writing and running engine tests.
- [x] I updated/added relevant documentation (doc comments with `///`).
- [x] I signed the [CLA].
- [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
[C++, Objective-C, Java style guides]:
https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
[testing the engine]:
https://github.com/flutter/flutter/wiki/Testing-the-engine
[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
2024-10-23 11:14:58 -07:00
zijiehe@
cd975cfa34
Reland: [fuchsia] Remove pm use in build_fuchsia_artifacts ( flutter/engine#55932 )
...
Redo: https://github.com/flutter/engine/pull/55832
See the diff of diffs,
```
diff <(curl -s '1cd59a0c06 .diff') <(curl -s 'ccea3b80cc .diff')
```
Or
```
48c48
< index 5258466145387..83aebdaacd9b6 100755
---
> index 5258466145387..3f74d19640d0f 100755
141,142c141,142
< + far_file = '%s_%s%s_runner-0.far' % (runner_type, mode, '_product' if product else '')
< + CopyPath('%s/%s' % (source_root, far_file), '%s/%s' % (destination, far_file))
---
> + far_file = '%s_%s%s_runner' % (runner_type, mode, '_product' if product else '')
> + CopyPath('%s/%s-0.far' % (source_root, far_file), '%s/%s.far' % (destination, far_file))
```
This change restores the files' -0 suffix which was wrongly removed in the last iteration.
=== Description of the original change:
This change removes the in-house built pm-based build rules in favor of the high level fuchsia_component / fuchsia_package in the gn-sdk.
Also the use of pm in build_fuchsia_artifacts.py is removed as the placements of the binaries changed.
https://github.com/flutter/engine/pull/55445 was a previous attempt and it generates [a malformatted cipd](https://chrome-infra-packages.appspot.com/p/flutter/fuchsia/+/vU1Op26qgO5XYs9S8AqQMvBwgITD9hq3-2dIu2H5-iwC ).
Bug: http://b/353729557 , http://b/368608542
[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2024-10-21 21:52:00 +00:00
Mouad Debbar
2af8c83f84
[web] Support woff2 fonts ( flutter/engine#55908 )
...
- Enable support for WOFF2 fonts.
- Add Brotli depndency (increases CK size by ~53KB compressed, including the Brotli dictionary).
- Use split WOFF2 fonts for Emoji.
- Remove the `useColorEmoji` runtime config flag.
Partially based off of https://github.com/flutter/engine/pull/41282
Fixes https://github.com/flutter/flutter/issues/119536
Contributes to https://github.com/flutter/flutter/issues/153974 and opens the door for moving more fonts to WOFF2.
2024-10-21 13:38:22 +00:00
Zachary Anderson
92b630aa1e
Add back unnecessary_parenthesis lint ( flutter/engine#55931 )
...
Follow-up from https://github.com/flutter/engine/pull/55927
2024-10-17 13:27:46 -07:00
gaaclarke
92923c20fd
Started using a specific python for yapf ( flutter/engine#55905 )
...
fixes https://github.com/flutter/flutter/issues/156993
## 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] and the [C++,
Objective-C, Java style guides].
- [x] I listed at least one issue that this PR fixes in the description
above.
- [x] I added new tests to check the change I am making or feature I am
adding, or the PR is [test-exempt]. See [testing the engine] for
instructions on writing and running engine tests.
- [x] I updated/added relevant documentation (doc comments with `///`).
- [x] I signed the [CLA].
- [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
[C++, Objective-C, Java style guides]:
https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
[testing the engine]:
https://github.com/flutter/flutter/wiki/Testing-the-engine
[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
2024-10-17 08:08:18 -07:00
auto-submit[bot]
a8961f9449
Reverts "[fuchsia] Remove pm use in build_fuchsia_artifacts ( #55832 )" ( flutter/engine#55922 )
...
Reverts: flutter/engine#55832
Initiated by: zijiehe-google-com
Reason for reverting: may break roller.
Original PR Author: zijiehe-google-com
Reviewed By: {jrwang}
This change reverts the following previous change:
This change removes the in-house built pm-based build rules in favor of the high level fuchsia_component / fuchsia_package in the gn-sdk.
Also the use of pm in build_fuchsia_artifacts.py is removed as the placements of the binaries changed.
https://github.com/flutter/engine/pull/55445 was a previous attempt and it generates [a malformatted cipd](https://chrome-infra-packages.appspot.com/p/flutter/fuchsia/+/vU1Op26qgO5XYs9S8AqQMvBwgITD9hq3-2dIu2H5-iwC ).
Bug: http://b/353729557 , http://b/368608542
[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2024-10-17 01:12:46 +00:00
auto-submit[bot]
0e1b2a9058
Reverts "Manual roll Dart SDK from d916a5f69a48 to 2bf0f2b8d391 (24 revisions) ( #55884 )" ( flutter/engine#55915 )
...
Reverts: flutter/engine#55884
Initiated by: zanderso
Reason for reverting: b/373907578
Original PR Author: a-siva
Reviewed By: {srawlins, zanderso}
This change reverts the following previous change:
Manual roll requested by [asiva@google.com ](mailto:asiva@google.com)
https://dart.googlesource.com/sdk.git/+log/d916a5f69a48..2bf0f2b8d391
2024-10-15 [dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com ](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com) Version 3.7.0-23.0.dev
2024-10-14 [dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com ](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com) Version 3.7.0-22.0.dev
2024-10-14 [dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com ](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com) Version 3.7.0-21.0.dev
2024-10-14 [dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com ](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com) Version 3.7.0-20.0.dev
2024-10-12 [dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com ](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com) Version 3.7.0-19.0.dev
2024-10-12 [dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com ](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com) Version 3.7.0-18.0.dev
2024-10-12 [dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com ](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com) Version 3.7.0-17.0.dev
2024-10-12 [dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com ](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com) Version 3.7.0-16.0.dev
2024-10-11 [dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com ](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com) Version 3.7.0-15.0.dev
2024-10-11 [dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com ](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com) Version 3.7.0-14.0.dev
2024-10-11 [dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com ](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com) Version 3.7.0-13.0.dev
2024-10-11 [dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com ](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com) Version 3.7.0-12.0.dev
2024-10-10 [dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com ](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com) Version 3.7.0-11.0.dev
2024-10-10 [dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com ](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com) Version 3.7.0-10.0.dev
2024-10-10 [dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com ](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com) Version 3.7.0-9.0.dev
2024-10-10 [dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com ](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com) Version 3.7.0-8.0.dev
2024-10-10 [dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com ](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com) Version 3.7.0-7.0.dev
2024-10-09 [dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com ](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com) Version 3.7.0-6.0.dev
2024-10-09 [dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com ](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com) Version 3.7.0-5.0.dev
2024-10-09 [dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com ](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com) Version 3.7.0-4.0.dev
2024-10-09 [dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com ](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com) Version 3.7.0-3.0.dev
2024-10-09 [dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com ](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com) Version 3.7.0-2.0.dev
2024-10-09 [dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com ](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com) Version 3.7.0-1.0.dev
2024-10-08 [dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com ](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com) Version 3.7.0-0.0.dev
2024-10-16 21:13:46 +00:00
zijiehe@
ccea3b80cc
[fuchsia] Remove pm use in build_fuchsia_artifacts ( flutter/engine#55832 )
...
This change removes the in-house built pm-based build rules in favor of the high level fuchsia_component / fuchsia_package in the gn-sdk.
Also the use of pm in build_fuchsia_artifacts.py is removed as the placements of the binaries changed.
https://github.com/flutter/engine/pull/55445 was a previous attempt and it generates [a malformatted cipd](https://chrome-infra-packages.appspot.com/p/flutter/fuchsia/+/vU1Op26qgO5XYs9S8AqQMvBwgITD9hq3-2dIu2H5-iwC ).
Bug: http://b/353729557 , http://b/368608542
[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2024-10-16 17:55:12 +00:00
Siva
f19aaeb32d
Manual roll Dart SDK from d916a5f69a48 to 2bf0f2b8d391 (24 revisions) ( flutter/engine#55884 )
...
Manual roll requested by [asiva@google.com ](mailto:asiva@google.com)
https://dart.googlesource.com/sdk.git/+log/d916a5f69a48..2bf0f2b8d391
2024-10-15
[dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com ](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com)
Version 3.7.0-23.0.dev
2024-10-14
[dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com ](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com)
Version 3.7.0-22.0.dev
2024-10-14
[dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com ](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com)
Version 3.7.0-21.0.dev
2024-10-14
[dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com ](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com)
Version 3.7.0-20.0.dev
2024-10-12
[dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com ](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com)
Version 3.7.0-19.0.dev
2024-10-12
[dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com ](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com)
Version 3.7.0-18.0.dev
2024-10-12
[dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com ](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com)
Version 3.7.0-17.0.dev
2024-10-12
[dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com ](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com)
Version 3.7.0-16.0.dev
2024-10-11
[dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com ](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com)
Version 3.7.0-15.0.dev
2024-10-11
[dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com ](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com)
Version 3.7.0-14.0.dev
2024-10-11
[dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com ](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com)
Version 3.7.0-13.0.dev
2024-10-11
[dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com ](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com)
Version 3.7.0-12.0.dev
2024-10-10
[dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com ](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com)
Version 3.7.0-11.0.dev
2024-10-10
[dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com ](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com)
Version 3.7.0-10.0.dev
2024-10-10
[dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com ](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com)
Version 3.7.0-9.0.dev
2024-10-10
[dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com ](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com)
Version 3.7.0-8.0.dev
2024-10-10
[dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com ](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com)
Version 3.7.0-7.0.dev
2024-10-09
[dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com ](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com)
Version 3.7.0-6.0.dev
2024-10-09
[dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com ](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com)
Version 3.7.0-5.0.dev
2024-10-09
[dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com ](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com)
Version 3.7.0-4.0.dev
2024-10-09
[dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com ](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com)
Version 3.7.0-3.0.dev
2024-10-09
[dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com ](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com)
Version 3.7.0-2.0.dev
2024-10-09
[dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com ](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com)
Version 3.7.0-1.0.dev
2024-10-08
[dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com ](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com)
Version 3.7.0-0.0.dev
---------
Co-authored-by: skia-flutter-autoroll <skia-flutter-autoroll@skia.org>
2024-10-15 18:37:05 -07:00
auto-submit[bot]
205b056c01
Reverts "[Fuchsia] Use more high level fuchsia-gn-sdk templates ( #55445 )" ( flutter/engine#55834 )
...
Reverts: flutter/engine#55445
Initiated by: zijiehe-google-com
Reason for reverting: This change would break the build_fuchsia_artifacts.py without https://github.com/flutter/engine/pull/55832/files . I'd merge two into one.
Original PR Author: zijiehe-google-com
Reviewed By: {jrwang}
This change reverts the following previous change:
This change removes the in-house built pm-based build rules in favor of the high level fuchsia_component / fuchsia_package in the gn-sdk.
The build_fuchsia_artifacts.py is still using pm, and it will be handled in a following change.
Bug: http://b/353729557 , http://b/368608542
[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2024-10-11 17:51:47 +00:00
zijiehe@
54e9d74b7a
[fuchsia] Use the right versioned libs according to the target-api-level ( flutter/engine#55786 )
...
Except for the vulkan, target-api-level should control the versions of the other libraries rather than the ones in ToT (//fuchsia/sdk/$host_os/arch/$target_cpu/dist).
FYI: @hjfreyer
Bug: http://b/40935282
[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2024-10-11 17:27:05 +00:00
zijiehe@
297cf4be72
[Fuchsia] Use more high level fuchsia-gn-sdk templates ( flutter/engine#55445 )
...
This change removes the in-house built pm-based build rules in favor of
the high level fuchsia_component / fuchsia_package in the gn-sdk.
The build_fuchsia_artifacts.py is still using pm, and it will be handled
in a following change.
Bug: http://b/353729557 , http://b/368608542
## 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] and the [C++,
Objective-C, Java style guides].
- [x] I listed at least one issue that this PR fixes in the description
above.
- [x] I added new tests to check the change I am making or feature I am
adding, or the PR is [test-exempt]. See [testing the engine] for
instructions on writing and running engine tests.
- [x] I updated/added relevant documentation (doc comments with `///`).
- [x] I signed the [CLA].
- [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
[C++, Objective-C, Java style guides]:
https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
[testing the engine]:
https://github.com/flutter/flutter/wiki/Testing-the-engine
[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
2024-10-11 08:41:35 -07:00
Matan Lurey
ecb7c78604
Recognizegroup, and warn when we silently discard targets. ( flutter/engine#55791 )
...
Closes https://github.com/flutter/flutter/issues/156260 .
Fixes the degenerate case where you specify an unrecognized target, and it falls back to rebuilding the entire engine as if you specified nothing. In addition, added recognition of `group`.
2024-10-10 18:45:49 +00:00
Matan Lurey
4f6d8c462d
Move some et tests around and delete unused files. ( flutter/engine#55764 )
...
Just general cleanup with no behavioral changes.
2024-10-09 23:03:14 +00:00
Matan Lurey
173af3d95f
Refactor multi-file build parsing into a single BuildPlan class. ( flutter/engine#55720 )
...
Closes https://github.com/flutter/flutter/issues/148444 (code de-duplicated).
Closes https://github.com/flutter/flutter/issues/150877 (`--build-strategy=local`).
Closes https://github.com/flutter/flutter/issues/150884 (`--build-strategy=remote`).
Replaces duplicate code across ~3 commands (query, test, build) with a class called `BuildPlan`, which encapsulates (a) concurrency, (b) build configuration, (c) RBE, (d) LTO, and (e) build strategy. I also moved all of the validation of the build plan into `build_plan_test`, which gives us better coverage at a lower cost (less things to think about in that suite of tests).
I know the diff looks scary, but 1K of the 1.4K is tests.
/cc @gaaclarke @flar
2024-10-08 23:45:20 +00:00
gaaclarke
96134c85e4
added shell_unittests and ui_unittests to the testing menu ( flutter/engine#55711 )
...
## 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] and the [C++,
Objective-C, Java style guides].
- [x] I listed at least one issue that this PR fixes in the description
above.
- [x] I added new tests to check the change I am making or feature I am
adding, or the PR is [test-exempt]. See [testing the engine] for
instructions on writing and running engine tests.
- [x] I updated/added relevant documentation (doc comments with `///`).
- [x] I signed the [CLA].
- [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
[C++, Objective-C, Java style guides]:
https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
[testing the engine]:
https://github.com/flutter/flutter/wiki/Testing-the-engine
[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
2024-10-08 11:17:01 -07:00
John McCutchan
1e3d251560
Add --rbe-force-local flag to force rbe task execution to happen on the local machine ( flutter/engine#55635 )
...
`build`, `test`, and `run` commands all support the `--exec-strategy`
flag ('auto', 'local', 'remote').
This flag controls the RBE task execution strategy (when RBE is
enabled).
Closes #150877
2024-10-04 14:59:37 -07:00
Matan Lurey
9f49c8f4e3
Add support for et test //flutter/path/to/dart_test ( flutter/engine#55638 )
...
Closes https://github.com/flutter/flutter/issues/147013 .
Closes https://github.com/flutter/flutter/issues/147071 .
/cc @reidbaker who I know wants to do this for the Java rules soon TM.
/cc @jtmcdole, @zanderso for visibility.
2024-10-04 13:55:27 -07:00
Matan Lurey
92c9c99411
Add missing license headers to engine_tool. ( flutter/engine#55636 )
...
Address post-submit feedback on https://github.com/flutter/engine/pull/55537#pullrequestreview-2346684376 .
2024-10-04 00:24:20 +00:00
Matan Lurey
887fcf0563
Add and use a dart_test rule. ( flutter/engine#55630 )
...
Work towards https://github.com/flutter/flutter/issues/147013 .
I think I still need applicable metadata about the output, and then make
sure `et test` understands everything:
```sh
% et test //flutter/tools/engine_tool/...
[2024-10-03 13:26:42.657137] ERROR: No test targets found
```
2024-10-03 14:41:25 -07:00
Matan Lurey
6c9af1435d
Refactor et run (and friends). ( flutter/engine#55537 )
...
Does a few things:
- Refactors `run_command_test` significantly to reduce global fixtures
- Replaced stringly-typed things with enum-like objects
- Adds a lot stronger coverage for `run_command` to make future refactors safer
- Takes advantage of `package:test` having a workable matchers system and uses it
- Changes `return 1` into `throw FatalError(...)` where it makes sense in `run_command`
As a result of the refactoring work, I also fixed a bug: Closes https://github.com/flutter/flutter/issues/147646 .
2024-10-03 19:32:08 +00:00
Matan Lurey
7a1d324299
Remove all use of gn desc global test fixtures. ( flutter/engine#55592 )
...
Closes https://github.com/flutter/flutter/issues/148420 .
2024-10-02 21:55:05 +00:00
Matan Lurey
44df46cab0
Use localized config data for et test tests. ( flutter/engine#55573 )
...
The logical "part 2.5" of the work started in https://github.com/flutter/engine/pull/55540 .
Test output does not change, the tests just no longer rely on the global `fixtures.dart` data.
2024-10-02 17:45:00 +00:00
Matan Lurey
b8c26536c3
Use localized config data for et query tests. ( flutter/engine#55572 )
...
The logical "part 2" of the work started in https://github.com/flutter/engine/pull/55540 .
Test output does not change, the tests just no longer rely on the global `fixtures.dart` data.
2024-10-02 17:41:10 +00:00
Matan Lurey
842e2fe8f1
Migrate off a global test fixture for build and lint. ( flutter/engine#55540 )
...
Partial work towards https://github.com/flutter/flutter/issues/148420 , unblocks https://github.com/flutter/engine/pull/55537 .
These tests can now be more precise, and changing the fixtures no longer has side-effects on tests across the entire repository. There are about 11 other usages (there were ~50 in these) after this PR that I'll get to, as well as the hard-coded `gn desc` output, before retiring `fixtures.dart`
2024-10-01 16:29:51 +00:00
Matan Lurey
ed6acfd197
Introduce a GN rule that (explicitly) generates a dart test wrapper ( flutter/engine#55475 )
...
Closes https://github.com/flutter/flutter/issues/155769 .
This is a variant of the approach in https://github.com/flutter/engine/pull/52241 , based on feedback from @jakemac53 and @jonahwilliams (who originally sped up `dart test` significantly by using `frontend_server` under the scenes: https://github.com/dart-lang/test/pull/1399 ), in short:
```gn
# tools/engine_tool/BUILD.gn
import("//flutter/build/dart/internal/gen_dartcli_call.gni")
gen_dartcli_call("tests") {
args = [ "test" ]
cwd = "//flutter/tools/engine_tool"
}
```
This stanza, when built (`ninja -C ../out/host_debug flutter/tools/engine_tool:tests`) generates the following file:
```sh
# ../out/host_debug/gen/flutter/tools/engine_tool/tests
set -e
# Needed because if it is set, cd may print the path it changed to.
unset CDPATH
# Store the current working directory.
prev_cwd=$(pwd)
# Set a trap to restore the working directory.
trap 'cd "$prev_cwd"' EXIT
CD_PATH="/Users/matanl/Developer/engine/src/flutter/tools/engine_tool"
if [ -n "$CD_PATH" ]; then
cd "$CD_PATH"
fi
/Users/matanl/Developer/engine/src/flutter/prebuilts/macos-arm64/dart-sdk/bin/dart "test"
```
In turn, when executed (`../out/host_debug/gen/flutter/tools/engine_tool/tests`) it just runs `dart test`:
```sh
flutter % ../out/host_debug/gen/flutter/tools/engine_tool/tests
Building package executable...
Built test:test.
00:00 +0: test/test_command_test.dart: test command executes test
00:00 +3: test/run_command_test.dart: run command invokes flutter run
...
00:00 +117: All tests passed!
```
There is no actual compilation performed by the tool (that is handled implicitly by `dart test`), and as a result neither a `depfile` is needed, nor generating a pre-compiled artifact like a snapshot or AOT elf/assembly.
---
This work is incomplete, that is, we'd want to properly tag the executable so `et` can find it, and create a wrapper template (i.e. `dart_test`) that tightens things up a bit, but I wanted to show the work at this intermediate step to get feedback before moving forward.
/cc @jonahwilliams, @jtmcdole as well.
2024-09-30 21:39:36 +00:00
Matan Lurey
a38103ac0e
Remove the need to use runZoned by replacing print statements ( flutter/engine#55530 )
2024-09-30 21:33:21 +00:00
gaaclarke
74788642ea
Added metal validation for `impeller_unittests ( flutter/engine#55527 )
...
This turns on Metal validation for launching impeller_unittests from the tests panel. This matches the default behavior of launching tests from XCode. Without these assertions errors in Metal are completely silent. In my case I just got a black screen until I tried running the tests through xcode.
[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2024-09-30 19:19:08 +00:00
Matan Lurey
2a0f911fef
Migrate try/finally calls to addTearDown. ( flutter/engine#55499 )
...
I also removed other no-longer-enforced cruft. No behavioral changes.
2024-09-28 00:27:20 +00:00
Chris Bracken
d03ba742e2
cipd: add mobileprovision CIPD package ( flutter/engine#55449 )
...
Adds instructions for creating updated CIPD packages containing a new provisioning profile that goes with an updated signing certificate, for use on Chromium CI bots.
These are part of a broader set of steps required to renew our development signing certificate annually, as described in [cl/678826297](http://cl/678826297 ) (Google-internal).
Issue: https://github.com/flutter/flutter/issues/152888
[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2024-09-26 17:21:06 +00:00
Matan Lurey
e89480f02d
Move lint suppression from baseline.xml to @SuppressLint. ( flutter/engine#55447 )
...
I think you just had the lint identifier wrong?
Closes https://github.com/flutter/flutter/issues/155712 .
2024-09-25 22:41:11 +00:00
jesswrd
21ddf3e6e3
Remove usages of WindowManager's getDefaultDisplay ( flutter/engine#55002 )
...
Removed deprecated usages of WindowManager's `getDefaultDisplay()` and
replaced them with DisplayManager's `getDisplay()`.
Note: Decided to keep a usage of `getDefaultDisplay()`, which can be
found in FlutterView.java because it is expected to be deleted as a part
of V1 embedding removal. No changes were made to that file.
path to FlutterView.java:
shell/platform/android/io/flutter/embedding/android/FlutterView.java
Fixes [#99421 ](https://github.com/flutter/flutter/issues/99421 )
## 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] and the [C++,
Objective-C, Java style guides].
- [x] I listed at least one issue that this PR fixes in the description
above.
- [x] I added new tests to check the change I am making or feature I am
adding, or the PR is [test-exempt]. See [testing the engine] for
instructions on writing and running engine tests.
- [x] I updated/added relevant documentation (doc comments with `///`).
- [x] I signed the [CLA].
- [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
[C++, Objective-C, Java style guides]:
https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
[testing the engine]:
https://github.com/flutter/flutter/wiki/Testing-the-engine
[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
2024-09-25 17:04:00 -04:00
gaaclarke
1076f5fd42
adds more tasks to the engine workspace ( flutter/engine#55435 )
...
- host_debug_unopt_arm64
- android_debug_unopt_arm64
- ios_debug_unopt_arm64 (missed in previous change)
[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2024-09-25 17:18:57 +00:00
zijiehe@
cbaf3f8fbc
[Fuchsia] Remove deprecated and unnecessary parameters from fuchsia*archive ( flutter/engine#55324 )
...
This is a precondition to use more high-level templates in fuchsia-gn-sdk to replace build rules in flutter.
Meanwhile fuchsia-gn-sdk does not use pm anymore and this change is also helpful to get rid of the use of pm.
Briefly, it removes all cmx_file parameters and avoids specifying duplicated parameters (binary / target_name / default cml file).
Bug: http://b/353729557 , http://b/40935282
[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2024-09-24 15:44:56 +00:00
gaaclarke
164c50b500
Made YAML version of vscode workspace to avoid redundancy ( flutter/engine#55322 )
...
In https://github.com/flutter/engine/pull/55291 we added a vscode workspace to help with running tests and sharing settings. However, VSCode does not support a config format that has the ability to reduce redundancy and it will get quite unwieldy as we add in all of the engines test runners. To combat that I've added instead a YAML config that can converted to JSON for VSCode.
This also adds 2 more test runners: display_list_unittests and impeller_golden_tests
[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2024-09-23 21:24:05 +00:00
gaaclarke
fa68c30a0f
Adds vscode workspace with impeller test runner ( flutter/engine#55291 )
...
This PR removes our checked in .vscode files and instead starts a vscode
workspace for the engine. As a first step I've added build tasks for the
arm64 `impeller_unittests`. I also setup C++ TestMate so that we can
easily navigate to tests and execute them. The tests will be rebuilt
before each execution.
The goal would be that eventually all of our c++ tests can be listed
here. This is going to make external contribution much easier and make
it so I don't have to keep editing the "launch.json" file to run
specific tests.

## 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] and the [C++,
Objective-C, Java style guides].
- [x] I listed at least one issue that this PR fixes in the description
above.
- [x] I added new tests to check the change I am making or feature I am
adding, or the PR is [test-exempt]. See [testing the engine] for
instructions on writing and running engine tests.
- [x] I updated/added relevant documentation (doc comments with `///`).
- [x] I signed the [CLA].
- [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
[C++, Objective-C, Java style guides]:
https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
[testing the engine]:
https://github.com/flutter/flutter/wiki/Testing-the-engine
[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
2024-09-20 12:57:32 -07:00
Brandon DeRosier
806cddf7d3
Remove tinygltf ( flutter/engine#55264 )
...
This is another thing we were only using for Impeller Scene.
2024-09-17 20:53:22 +00:00
Matan Lurey
425e6c707d
Remove all references to litetest from the engine repo. ( flutter/engine#55163 )
...
Closes https://github.com/flutter/flutter/issues/133569 .
2024-09-12 16:26:25 -07:00
Brandon DeRosier
16acb8258a
Remove Impeller Scene 👋 ( flutter/engine#55118 )
...
Impeller Scene has been fully rewritten as a Dart library for Flutter: https://pub.dev/packages/flutter_scene
2024-09-12 14:56:08 -07:00
Gray Mackall
bc422dfe62
Add a note about re generating Gradle lockfiles ( flutter/engine#55150 )
...
Adds a note that Gradle lockfile generation is necessary when updating the android embedding dependencies bundle.
[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2024-09-12 21:10:49 +00:00
Matan Lurey
37f629a23f
Migrate more tests from litetest to package:test ( flutter/engine#55119 )
...
Partial work towards https://github.com/flutter/flutter/issues/133569 .
Commentary on removal of `assert`-conditionals here: https://github.com/flutter/flutter/issues/155054 .
2024-09-12 19:01:05 +00:00
Matan Lurey
5aee88abfb
Migrate const_finder_test to use package:test ( flutter/engine#55132 )
...
... instead of some home-grown framework.
This is the last test in the engine that uses custom command line arguments to start. As of this PR, `dart test` including full debugging in an IDE works across all Dart tooling code.
I tried to make this idiomatic as much as possible without changing the logic.
2024-09-12 15:30:33 +00:00
Gray Mackall
7a06558bd9
Replace System.loadLibrary with ReLinker.loadLibrary() in FlutterJNI.loadLibrary() ( flutter/engine#55095 )
...
Could fix? https://github.com/flutter/flutter/issues/83596
The communication on https://issuetracker.google.com/issues/346717090#comment2 recommends using [ReLinker](https://github.com/KeepSafe/ReLinker ) to avoid a bug in how library loading interacts with the [Play delivery feature](https://developer.android.com/guide/playcore/feature-delivery ) (used in turn by Flutter's deferred components).
The ReLinker docs also suggest that if you have `minSdk` less than `23`, then you should be using ReLinker regardless, as `System.loadLibrary` is unreliable for other reasons.
I don't have any strong evidence to suggest that either one of these two root causes is the definitive cause of https://github.com/flutter/flutter/issues/83596 , but it probably wouldn't hurt ð¤·
[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2024-09-11 21:05:52 +00:00
Matan Lurey
64fbc93023
Move more of the tests in the engine to package:test ( flutter/engine#55083 )
...
Partial work towards https://github.com/flutter/flutter/issues/133569 .
2024-09-10 21:14:12 +00:00
Matan Lurey
d068ccc47d
Add more package:test (removing usages of package:litetest) ( flutter/engine#54882 )
...
... also removed a few TODOs, deleted a proof of concept directory.
Work towards https://github.com/flutter/flutter/issues/133569 .
2024-09-04 22:42:55 +00:00
Matan Lurey
1e6dde4eb1
Migrate another big chunk of the engine repo to package:test ( flutter/engine#54853 )
...
There are almost no behavioral changes.
Because `dart test` runs with assertions, and the former command does not, I had to tweak some of the engine tool tests because they would assert that there were duplicate names - but I didn't change any actual code besides the test expectations themselves/the fixtures.
This is not all of the engine, but is approximately 1/3 of all imports of `package:litetest` migrated.
2024-08-29 15:35:52 +00:00
Matan Lurey
87727168e8
Remove --disable-dart-dev across flutter/engine. ( flutter/engine#54845 )
...
As per the Dart CLI team and @bkonyi, this is no longer providing value and we shouldn't cargo-cult it.
Work towards https://github.com/flutter/flutter/issues/154268 .
2024-08-29 00:12:32 +00:00
Matan Lurey
712e7b9a05
Migrateheader_guard_check to package:test. ( flutter/engine#54811 )
...
Work towards https://github.com/flutter/flutter/issues/133569 .
I also augmented the `run_tests.py` script to support an incremental migration to `package:test`, PTAL.
2024-08-28 21:12:12 +00:00