As discussed offline, this is best deleted when Skia-gold is used for
all of our engine tests.
However, this will be useful for unblocking some PRs until then :)
See README.md for details!
Partial work towards re-landing #44936.
Both the `clang_tidy` and `githooks` passage could benefit from being
able to automatically find the latest `compile_commands.json` output,
which means that some common code should exist in the `tools/`
directory.
This is a very minimal (but tested) library for doing exactly that.
Previously, some common Darwin framework targets existed in:
//flutter/shell/platform/darwin/BUILD.gn
This moves all targets into:
//flutter/shell/platform/darwin/common/BUILD.gn
The framework_shared target has been renamed framework_common for consistency with the directory name, and flutter_channels_unittests has been renamed framework_common_unittests since it's a reasonable target for adding other tests of common framework code.
We also de-duplicate targets with existing targets.
* The `flutter_channels` target duplicates the existing
`framework_shared` target.
* The `common` target already includes the buffer conversions
translation units,
which are only used by the iOS embedder.
No test changes since there are no semantic changes, just a
restructuring of build targets.
## 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 Hixie said 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
[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
Re-submit the changes to enable windows pre-push checks.
This patch changes how `ci/bin/format.dart` generate diffs from `diff` and `patch` commands to `git diff` and `git apply` in order to have a common method for these operations on all platforms. Windows installations don't have diff and patch commands available by default and many implementations which provide such commands work differently than the UN*X tools. Git however works consistently across all platforms.
Additionally, this patch also changes the python executable in some of the pre-push components affected by this to `vpython3` to continue the effort started at flutter/flutter#108474 and I also removed the `--no-sound-null-safety` parameter in the ci/format.sh, ci/format.bat files
NOTE: Since the original patch caused some issues, I suggest that this should be tested more carefully before it is merged.
### Issues fixed by this PR
* flutter/flutter#108122
* flutter/flutter#107920
* flutter/flutter#86506
* flutter/flutter#106615
### [flutter/tests] repo impact
None.
writing and running engine tests.
[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
* Enable the same test in linux host for v2 and legacy recipes.
Dart tests were not being run in the engine v2 linux builds.
Bug: https://github.com/flutter/flutter/issues/120701
* Generate path_ops.
* Remove unopt build requirement.
* Remove the check for host_debug_unopt.
* Add shell_testing deps.
* Add path_ops.
* Build benchmarks in release.
* Enable fml benchmarks.
* Add UI benchmarks.
* Add ui_list.
* Add geometry benchmarks.
* Add remaining benchmark targets.
* Compatibility with python2 and python3
* Formatting
* Updated to use a function instead of decoding bytes in multiple places.
* Formatting and whitespace cleanup.
* Fix import statement.
* Linter change for docstring.
* Formatting.
* Remove function from run_tests.py since it is a pain to import.
* Add todo message for python 2 deprecation.
* Updated copyright year.
* wip
* extend const_finder_test to compile web dills
* add test
* add back tests, including non-const for web
* update run_tests.py
* fix whitespace
* clean up test file
* add new options to cli
* use annotation rather than explicit deny list
* clean up
* Apply suggestions from code review
Co-authored-by: Zachary Anderson <zanderso@users.noreply.github.com>
* clean up
* code review
Co-authored-by: Zachary Anderson <zanderso@users.noreply.github.com>
Roll Swiftshader, ANGLE, and Vulkan deps.
Updates license bot for new locations of licenses and new files
in roll.
Converts unit test harnesses to use SwANGLE, which is the
supported way of using SwiftShader as a software backend for GLES.
Updates goldens due to swiftshader changes.
Fixes up include paths to avoid directly including third_party
code by that name, which is unlikely to work in other build
environments.
Includes upstream patches to ANGLE and SwiftShader to build in our
windows environments, as well as patches to Skia to support
defining the location of VulkanMemoryAllocator and a patch to ANGLE
to support opting into a newer version of VMA.