chore: move engine docs out of engine/ and into docs/ (#175195)

Moving docs to be co-located with other docs + updating links. This has
the benefit of not including docs in engine content hash semantics.
This commit is contained in:
John "codefu" McDole
2025-09-16 11:19:50 -07:00
committed by GitHub
parent db3cbe51cb
commit e068a3e6c4
69 changed files with 56 additions and 58 deletions

View File

@@ -9,7 +9,7 @@ flutter/flutter repository. It is based on the more comprehensive official
- Code should follow the guidance and principles described in
[the Flutter contribution guide](https://github.com/flutter/flutter/blob/main/CONTRIBUTING.md).
- Code should be tested and follow the guidance described in the [writing effective tests guide](https://github.com/flutter/flutter/blob/main/docs/contributing/testing/Writing-Effective-Tests.md) and the [running and writing tests guide](https://github.com/flutter/flutter/blob/main/docs/contributing/testing/Running-and-writing-tests.md).
- Changes to the [engine/ directory](https://github.com/flutter/flutter/tree/main/engine) should additionally have appropriate tests as described in [the engine test guidance](https://github.com/flutter/flutter/blob/main/engine/src/flutter/docs/testing/Testing-the-engine.md).
- Changes to the [engine/ directory](https://github.com/flutter/flutter/tree/main/engine) should additionally have appropriate tests as described in [the engine test guidance](https://github.com/flutter/flutter/blob/main/docs/engine/testing/Testing-the-engine.md).
- PR descriptions should include the Pre-launch Checklist from
[the PR template](https://github.com/flutter/flutter/blob/main/.github/PULL_REQUEST_TEMPLATE.md),
with all of the steps completed.
@@ -81,4 +81,4 @@ For more detailed guidance, refer to the following documents:
- [The Flutter contribution guide](https://github.com/flutter/flutter/blob/main/CONTRIBUTING.md)
- [Writing effective tests guide](https://github.com/flutter/flutter/blob/main/docs/contributing/testing/Writing-Effective-Tests.md)
- [Running and writing tests guide](https://github.com/flutter/flutter/blob/main/docs/contributing/testing/Running-and-writing-tests.md)
- [Engine testing guide](https://github.com/flutter/flutter/blob/main/engine/src/flutter/docs/testing/Testing-the-engine.md)
- [Engine testing guide](https://github.com/flutter/flutter/blob/main/docs/engine/testing/Testing-the-engine.md)

View File

@@ -106,7 +106,7 @@ that describe these methodologies. The following list is ordered: you
are strongly recommended to go through these documents in the order
presented.
1. [Setting up your engine development environment](./engine/src/flutter/docs/contributing/Setting-up-the-Engine-development-environment.md),
1. [Setting up your engine development environment](./docs/engine/contributing/Setting-up-the-Engine-development-environment.md),
which describes the steps you need to configure your computer to
work on Flutter's engine. If you only want to write code for the
Flutter framework, you can skip this step. Flutter's engine mainly

View File

@@ -14,7 +14,7 @@ If you intend to contribute to Flutter, welcome! You are encouraged to start wit
* [Cherrypick process](./releases/Flutter-Cherrypick-Process.md)
* [Closing issues](./contributing/issue_hygiene/README.md#closing-issues)
* [Dashboards](./infra/Dashboards.md)
* [Debugging a broken engine autoroll](../engine/src/flutter/docs/Debugging-the-engine.md#bisecting-a-roll-failure)
* [Debugging a broken engine autoroll](../docs/engine/Debugging-the-engine.md#bisecting-a-roll-failure)
* [Deprecations](./contributing/Tree-hygiene.md#deprecations)
* [Design documents](./contributing/Design-Documents.md)
* [Discord](./contributing/Chat.md)
@@ -31,7 +31,7 @@ If you intend to contribute to Flutter, welcome! You are encouraged to start wit
* [Style guide for Flutter repo](./contributing/Style-guide-for-Flutter-repo.md)
* [Submitting code, process for](./contributing/Tree-hygiene.md#overview)
* [Support levels, definitions of](./about/Values.md#support)
* [Symbolicating stack traces](../engine/src/flutter/docs/Crashes.md)
* [Symbolicating stack traces](../docs/engine/Crashes.md)
* [Threading in the Engine](./about/The-Engine-architecture.md#threading)
* [When will my bug be fixed?](./contributing/issue_hygiene/README.md#when-will-my-bug-be-fixed)
* [Security best practices](./infra/Security.md#best-practices)

View File

@@ -14,7 +14,7 @@ Flutter Engine sits in this stack, highlights API boundaries, and identifies the
repositories where the individual pieces live. The legend below clarifies some
of the terminology commonly used to describe the pieces of a Flutter app.
<img src="https://raw.githubusercontent.com/flutter/flutter/main/engine/src/flutter/docs/app_anatomy.svg?sanitize=true" alt="Flutter Architecture Diagram" width="40%"/>
<img src="https://raw.githubusercontent.com/flutter/flutter/main/docs/engine/app_anatomy.svg?sanitize=true" alt="Flutter Architecture Diagram" width="40%"/>
#### Dart App
@@ -70,7 +70,7 @@ library called `dart:ui` to provide low-level access to Skia features and the
shell. The shells can also communicate directly to Dart code via [Platform
Channels](https://flutter.io/platform-channels/) which bypass the engine.
![Flutter Architecture Diagram](https://github.com/flutter/flutter/tree/main/engine/src/flutter/docs/flutter_overview.svg?sanitize=true)
![Flutter Architecture Diagram](https://github.com/flutter/flutter/tree/main/docs/engine/flutter_overview.svg?sanitize=true)
## Threading

View File

@@ -13,7 +13,7 @@
Verify that `adb` is in your [PATH](https://en.wikipedia.org/wiki/PATH_(variable)) (that `which adb` prints sensible output).
If you're
[also working on the Flutter engine](../../engine/src/flutter/docs/contributing/Setting-up-the-Engine-development-environment.md),
[also working on the Flutter engine](../../docs/engine/contributing/Setting-up-the-Engine-development-environment.md),
you can use the copy of the Android platform tools in
`.../engine/src/third_party/android_tools/sdk/platform-tools`.

View File

@@ -152,7 +152,7 @@ feel empowered to ask for tests.
## Using git
Assuming your environment has been configured according to the instructions in
[Setting up the Engine development environment](../../engine/src/flutter/docs/contributing/Setting-up-the-Engine-development-environment.md),
[Setting up the Engine development environment](../../docs/engine/contributing/Setting-up-the-Engine-development-environment.md),
[Setting up the Framework development environment](Setting-up-the-Framework-development-environment.md), or
[Setting up the Packages development environment](../ecosystem/contributing/Setting-up-the-Packages-development-environment.md),
follow these steps to start working on a patch:

View File

@@ -47,7 +47,7 @@ runs them, run `dart dev/bots/test.dart` and `dart --enable-asserts dev/bots/ana
### Locally built engines
If you've built your own flutter engine (see [Setting up the Engine development environment](../../../engine/src/flutter/docs/contributing/Setting-up-the-Engine-development-environment.md)), you
If you've built your own flutter engine (see [Setting up the Engine development environment](../../../docs/engine/contributing/Setting-up-the-Engine-development-environment.md)), you
can pass `--local-engine` to change what flutter shell `flutter test` uses. For example,
if you built an engine in the `out/host_debug_unopt` directory, you can use:
@@ -120,8 +120,8 @@ The following is an example of what running the local engine command might look
The above command would use the local Flutter engine located at `/Users/myname/flutter/engine` to execute the `external_ui_integration_test` test on an Android emulator, which is why the `android_debug_unopt_x86` version of the engine is used.
Note that some tests may require `profile` mode instead of `debug` mode when running with local engine. Make sure to pass in the correct local engine. See [Compiling the engine](../../../engine/src/flutter/docs/contributing/Compiling-the-engine.md) for more details.
Note that some tests may require `profile` mode instead of `debug` mode when running with local engine. Make sure to pass in the correct local engine. See [Compiling the engine](../../../docs/engine/contributing/Compiling-the-engine.md) for more details.
## For the engine
See the [Testing the engine](../../../engine/src/flutter/docs/testing/Testing-the-engine.md) wiki.
See the [Testing the engine](../../../docs/engine/testing/Testing-the-engine.md) wiki.

View File

@@ -87,7 +87,7 @@ You can also set a breakpoint directly with [lldb](https://lldb.llvm.org/tutoria
## Debugging Android builds with gdb
See https://github.com/flutter/flutter/blob/master/engine/src/flutter/sky/tools/flutter_gdb
See https://github.com/flutter/flutter/blob/main/engine/src/flutter/sky/tools/flutter_gdb
## Debugging native engine code on Android with Android Studio

View File

@@ -1,6 +1,6 @@
This is an index of team-facing documentation for the [flutter/engine team](https://github.com/flutter/flutter/tree/main/engine).
- [Accessibility on Windows](https://github.com/flutter/flutter/blob/master/docs/platforms/desktop/windows/Accessibility-on-Windows.md)
- [Accessibility on Windows](https://github.com/flutter/flutter/blob/main/docs/platforms/desktop/windows/Accessibility-on-Windows.md)
- [Code signing metadata](./release/Code-signing-metadata.md) for engine binaries
- [Compiling the engine](./contributing/Compiling-the-engine.md)
- [Comparing AOT Snapshot Sizes](./benchmarks/Comparing-AOT-Snapshot-Sizes.md)
@@ -9,7 +9,7 @@ This is an index of team-facing documentation for the [flutter/engine team](http
- [Custom Flutter Engine Embedding in AOT Mode](./Custom-Flutter-Engine-Embedding-in-AOT-Mode.md)
- [Debugging the engine](./Debugging-the-engine.md)
- [Flutter engine operation in AOT Mode](./Flutter-engine-operation-in-AOT-Mode.md)
- [Flutter Test Fonts](https://github.com/flutter/flutter/blob/master/docs/contributing/testing/Flutter-Test-Fonts.md)
- [Flutter Test Fonts](https://github.com/flutter/flutter/blob/main/docs/contributing/testing/Flutter-Test-Fonts.md)
- [Flutter's modes](./Flutter's-modes.md)
- [Engine Clang Tidy Linter](./ci/Engine-Clang-Tidy-Linter.md)
- [Engine disk footprint](./Engine-disk-footprint.md)
@@ -18,12 +18,12 @@ This is an index of team-facing documentation for the [flutter/engine team](http
- [Image Codecs in the Flutter Engine](Image-Codecs-in-the-Flutter-Engine.md)
- [Impeller](./impeller/README.md) documentation index
- [Life of a Flutter Frame](Life-of-a-Flutter-Frame.md)
- [Resolving common build failures](https://github.com/flutter/flutter/blob/master/docs/platforms/android/Resolving-common-build-failures.md)
- [Resolving common build failures](https://github.com/flutter/flutter/blob/main/docs/platforms/android/Resolving-common-build-failures.md)
- [Setting up the Engine development environment](./contributing/Setting-up-the-Engine-development-environment.md)
- [Supporting legacy platforms](Supporting-legacy-platforms.md)
- [Testing Android Changes in the Devicelab on an Emulator](https://github.com/flutter/flutter/blob/master/docs/platforms/android/Testing-Android-Changes-in-the-Devicelab-on-an-Emulator.md)
- [Testing Android Changes in the Devicelab on an Emulator](https://github.com/flutter/flutter/blob/main/docs/platforms/android/Testing-Android-Changes-in-the-Devicelab-on-an-Emulator.md)
- [Testing the engine](./testing/Testing-the-engine.md)
- [The Engine architecture](https://github.com/flutter/flutter/blob/master/docs/about/The-Engine-architecture.md)
- [Upgrading Engine's Android API version](https://github.com/flutter/flutter/blob/master/docs/platforms/android/Upgrading-Engine's-Android-API-version.md)
- [The Engine architecture](https://github.com/flutter/flutter/blob/main/docs/about/The-Engine-architecture.md)
- [Upgrading Engine's Android API version](https://github.com/flutter/flutter/blob/main/docs/platforms/android/Upgrading-Engine's-Android-API-version.md)
- [Using the Dart Development Service (DDS) and Flutter DevTools with a custom Flutter Engine Embedding](./Using-the-Dart-Development-Service-(DDS)-and-Flutter-DevTools-with-a-custom-Flutter-Engine-Embedding.md)
- [Using Sanitizers with the Flutter Engine](./Using-Sanitizers-with-the-Flutter-Engine.md)

View File

Before

Width:  |  Height:  |  Size: 59 KiB

After

Width:  |  Height:  |  Size: 59 KiB

View File

@@ -18,7 +18,7 @@ Depending on the platform you are making changes for, you may be interested in a
- Instead of compiling manually as described in this file, it's recommended to use `et`,
the engine tool, located at
https://github.com/flutter/flutter/blob/master/engine/src/flutter/tools/engine_tool.
https://github.com/flutter/flutter/blob/main/engine/src/flutter/tools/engine_tool.
- For local development and testing, it's generally preferable to use `--unopt` builds.
These builds will have additional logging and checks enabled, and generally use build
and link flags that lead to faster compilation and better debugging symbols.
@@ -57,7 +57,7 @@ These steps build the engine used by `flutter run` for Android devices.
Run the following steps from the `engine/src` directory in your local checkout. See [Setting up the Engine development environment](Setting-up-the-Engine-development-environment.md).
1. Make sure your engine code is [up to date](https://github.com/flutter/flutter/blob/master/engine/src/flutter/docs/contributing/Compiling-the-engine.md#updating-the-engine).
1. Make sure your engine code is [up to date](https://github.com/flutter/flutter/blob/main/docs/engine/contributing/Compiling-the-engine.md#updating-the-engine).
2. Prepare your build files
* `./flutter/tools/gn --android --unoptimized` for device-side executables.
@@ -70,7 +70,7 @@ Run the following steps from the `engine/src` directory in your local checkout.
> 💡 **TIP**: When developing on a Mac with ARM (M CPU), prefer `host_debug_unopt_arm64`.
>
> You can continue to use `host_debug_unopt` (required for Intel Macs), but the engine will be run under Rosetta
> which may be slower. See [Developing with Flutter on Apple Silicon](https://github.com/flutter/flutter/blob/master/docs/platforms/desktop/macos/Developing-with-Flutter-on-Apple-Silicon.md)
> which may be slower. See [Developing with Flutter on Apple Silicon](https://github.com/flutter/flutter/blob/main/docs/platforms/desktop/macos/Developing-with-Flutter-on-Apple-Silicon.md)
> for more information.
3. Build your executables
@@ -90,11 +90,11 @@ If you're going to be debugging crashes in the engine, make sure you add
`android/AndroidManifest.xml` file for the Flutter app you are using
to test the engine.
See [The flutter tool](https://github.com/flutter/flutter/blob/master/docs/tool/README.md) for instructions on how to use the `flutter` tool with a local engine.
See [The flutter tool](https://github.com/flutter/flutter/blob/main/docs/tool/README.md) for instructions on how to use the `flutter` tool with a local engine.
You will typically use the `android_debug_unopt` build to debug the engine on a device, and
`android_debug_unopt_x64` to debug in on a simulator. Modifying dart sources in the engine will
require adding a `dependency_override` section in you app's `pubspec.yaml` as detailed
[here](https://github.com/flutter/flutter/blob/master/docs/tool/README.md#using-a-locally-built-engine-with-the-flutter-tool).
[here](https://github.com/flutter/flutter/blob/main/docs/tool/README.md#using-a-locally-built-engine-with-the-flutter-tool).
Note that if you use particular android or ios engine build, you will need to have corresponding
host build available next to it: if you use `android_debug_unopt`, you should have built `host_debug_unopt`,
@@ -130,7 +130,7 @@ These steps build the engine used by `flutter run` for iOS devices.
Run the following steps, from the `engine/src` directory:
1. Make sure your engine code is [up to date](https://github.com/flutter/flutter/blob/master/engine/src/flutter/docs/contributing/Compiling-the-engine.md#updating-the-engine).
1. Make sure your engine code is [up to date](https://github.com/flutter/flutter/blob/main/docs/engine/contributing/Compiling-the-engine.md#updating-the-engine).
2. `./flutter/tools/gn --ios --unoptimized` to prepare build files for device-side executables (or `--ios --simulator --unoptimized` for simulator).
* This also produces an Xcode project for working with the engine source code at `out/ios_debug_unopt/flutter_engine.xcodeproj`
@@ -142,11 +142,11 @@ Run the following steps, from the `engine/src` directory:
4. `ninja -C out/ios_debug_unopt && ninja -C out/host_debug_unopt` to build all artifacts (use `out/ios_debug_sim_unopt` for Simulator).
See [The flutter tool](https://github.com/flutter/flutter/blob/master/docs/tool/README.md) for instructions on how to use the `flutter` tool with a local engine.
See [The flutter tool](https://github.com/flutter/flutter/blob/main/docs/tool/README.md) for instructions on how to use the `flutter` tool with a local engine.
You will typically use the `ios_debug_unopt` build to debug the engine on a device, and
`ios_debug_sim_unopt` to debug in on a simulator. Modifying dart sources in the engine will
require adding a `dependency_override` section in you app's `pubspec.yaml` as detailed
[here](https://github.com/flutter/flutter/blob/master/docs/tool/README.md#using-a-locally-built-engine-with-the-flutter-tool).
[here](https://github.com/flutter/flutter/blob/main/docs/tool/README.md#using-a-locally-built-engine-with-the-flutter-tool).
See also [instructions for debugging the engine in a Flutter app in Xcode](../Debugging-the-engine.md#debugging-ios-builds-with-xcode).
@@ -154,7 +154,7 @@ See also [instructions for debugging the engine in a Flutter app in Xcode](../De
These steps build the desktop embedding, and the engine used by `flutter test` on a host workstation.
1. Make sure your engine code is [up to date](https://github.com/flutter/flutter/blob/master/engine/src/flutter/docs/contributing/Compiling-the-engine.md#updating-the-engine).
1. Make sure your engine code is [up to date](https://github.com/flutter/flutter/blob/main/docs/engine/contributing/Compiling-the-engine.md#updating-the-engine).
2. `./flutter/tools/gn --unoptimized` to prepare your build files.
* `--unoptimized` disables C++ compiler optimizations. On macOS, binaries are emitted unstripped; on Linux, unstripped binaries are emitted to an `exe.unstripped` subdirectory of the build.
@@ -162,10 +162,10 @@ These steps build the desktop embedding, and the engine used by `flutter test` o
3. `ninja -C out/host_debug_unopt` to build a desktop unoptimized binary.
* If you skipped `--unoptimized`, use `ninja -C out/host_debug` instead.
See [The flutter tool](https://github.com/flutter/flutter/blob/master/docs/tool/README.md) for instructions on how to use the `flutter` tool with a local engine.
See [The flutter tool](https://github.com/flutter/flutter/blob/main/docs/tool/README.md) for instructions on how to use the `flutter` tool with a local engine.
You will typically use the `host_debug_unopt` build in this setup. Modifying dart sources in the engine will
require adding a `dependency_override` section in you app's `pubspec.yaml` as detailed
[here](https://github.com/flutter/flutter/blob/master/docs/tool/README.md#using-a-locally-built-engine-with-the-flutter-tool).
[here](https://github.com/flutter/flutter/blob/main/docs/tool/README.md#using-a-locally-built-engine-with-the-flutter-tool).
If you have [ccache](https://ccache.dev/) installed on your system, you can enable this by using `--ccache` on `gn` in step 2 above.
This can speed up subsequent builds, especially when switching branches.
@@ -180,7 +180,7 @@ On Windows, ensure that the engine checkout is not deeply nested. This avoid the
1. Make sure you have Visual Studio installed (non-Googlers only). [Debugging Tools for Windows 10](https://docs.microsoft.com/en-us/windows-hardware/drivers/debugger/debugger-download-tools#small-classic-windbg-preview-logo-debugging-tools-for-windows-10-windbg) must be installed.
2. Make sure your engine code is [up to date](https://github.com/flutter/flutter/blob/master/engine/src/flutter/docs/contributing/Compiling-the-engine.md#updating-the-engine).
2. Make sure your engine code is [up to date](https://github.com/flutter/flutter/blob/main/docs/engine/contributing/Compiling-the-engine.md#updating-the-engine).
3. Ensure long path support is enabled on your machine. Launch PowerShell as an administrator and run:
```
@@ -271,7 +271,7 @@ python3 flutter/tools/fuchsia/with_envs.py flutter/testing/fuchsia/run_tests.py
## Compiling for the Web
For building the engine for the Web we use the [felt](https://github.com/flutter/flutter/blob/master/engine/src/flutter/lib/web_ui/README.md) tool.
For building the engine for the Web we use the [felt](https://github.com/flutter/flutter/blob/main/engine/src/flutter/lib/web_ui/README.md) tool.
To test Flutter with a local build of the Web engine, add `--local-web-sdk=wasm_release` to your `flutter` command, e.g.:
@@ -290,7 +290,7 @@ Compiling the web engine might take a few extra steps on Windows. Use cmd.exe an
2. Make sure, depot_tools, ninja and python are installed and added to the path. Also set the following environment variable for depot tools:
* `DEPOT_TOOLS_WIN_TOOLCHAIN = 0`
* Tip: if you get a python error try to use Python 2 instead of 3
3. Make sure your engine code is [up to date](https://github.com/flutter/flutter/blob/master/engine/src/flutter/docs/contributing/Compiling-the-engine.md#updating-the-engine).
3. Make sure your engine code is [up to date](https://github.com/flutter/flutter/blob/main/docs/engine/contributing/Compiling-the-engine.md#updating-the-engine).
* Tip: If you get a git authentication errors on this step try Git Bash instead
5. `python .\flutter\tools\gn --unoptimized --full-dart-sdk` to prepare your build files.
6. `ninja -C .\out\<dir created by previous step>` to build.

View File

@@ -42,7 +42,7 @@ Run the following steps to set up your environment:
> * `GYP_MSVS_OVERRIDE_PATH=C:\Program Files\Microsoft Visual Studio\2022\Community`
> * Use the path of your installation.
Clone the Flutter source code. As of late 2024, the engine source is part of the main [flutter/flutter repo](https://github.com/flutter/flutter). The convention is to fork this repo and point `origin` to your fork and `upstream` to `git@github.com:flutter/flutter.git`. See [Setting up the Framework development environment](https://github.com/flutter/flutter/blob/master/docs/contributing/Setting-up-the-Framework-development-environment.md#set-up-your-environment) for more.
Clone the Flutter source code. As of late 2024, the engine source is part of the main [flutter/flutter repo](https://github.com/flutter/flutter). The convention is to fork this repo and point `origin` to your fork and `upstream` to `git@github.com:flutter/flutter.git`. See [Setting up the Framework development environment](https://github.com/flutter/flutter/blob/main/docs/contributing/Setting-up-the-Framework-development-environment.md#set-up-your-environment) for more.
> [!IMPORTANT]
> On Windows, the following must be run as an Administrator due to [a known issue](https://github.com/flutter/flutter/issues/94580).
@@ -75,8 +75,8 @@ gclient sync
## Next steps:
* [Compiling the engine](Compiling-the-engine.md) explains how to actually get builds, now that you have the code.
* The docs for the flutter tool have a section on [using a locally built engine with the flutter tool](https://github.com/flutter/flutter/blob/master/docs/tool/README.md#using-a-locally-built-engine-with-the-flutter-tool).
* [Signing commits](https://github.com/flutter/flutter/blob/master/docs/contributing/Signing-commits.md), to configure your environment to securely sign your commits.
* The docs for the flutter tool have a section on [using a locally built engine with the flutter tool](https://github.com/flutter/flutter/blob/main/docs/tool/README.md#using-a-locally-built-engine-with-the-flutter-tool).
* [Signing commits](https://github.com/flutter/flutter/blob/main/docs/contributing/Signing-commits.md), to configure your environment to securely sign your commits.
## Editor autocomplete support
@@ -175,11 +175,11 @@ To set up:
### Using Android Studio as an IDE for the Android Embedding [Java]
Alternatively, Android Studio can be used as an IDE for the Android Embedding Java code. See docs
at https://github.com/flutter/flutter/blob/master/engine/src/flutter/shell/platform/android/README.md#editing-java-code for
at https://github.com/flutter/flutter/blob/main/engine/src/flutter/shell/platform/android/README.md#editing-java-code for
instructions.
## VSCode Additional Useful Configuration
1. Create [snippets](https://code.visualstudio.com/docs/editor/userdefinedsnippets) for header files with [this configuration](https://github.com/chromium/chromium/blob/master/tools/vscode/settings.json5). This will let you use `hdr` keyboard macro to create the boiler plate header code. Also consider some of [these settings](https://github.com/chromium/chromium/blob/master/tools/vscode/settings.json5) and [more tips](https://chromium.googlesource.com/chromium/src/+show/lkgr/docs/vscode.md).
1. Create [snippets](https://code.visualstudio.com/docs/editor/userdefinedsnippets) for header files with [this configuration](https://github.com/chromium/chromium/blob/main/tools/vscode/settings.json5). This will let you use `hdr` keyboard macro to create the boiler plate header code. Also consider some of [these settings](https://github.com/chromium/chromium/blob/main/tools/vscode/settings.json5) and [more tips](https://chromium.googlesource.com/chromium/src/+show/lkgr/docs/vscode.md).
2. To format GN files on save, [consider using this extension](https://marketplace.visualstudio.com/items?itemName=persidskiy.vscode-gnformat).

View File

Before

Width:  |  Height:  |  Size: 108 KiB

After

Width:  |  Height:  |  Size: 108 KiB

View File

Before

Width:  |  Height:  |  Size: 299 KiB

After

Width:  |  Height:  |  Size: 299 KiB

View File

Before

Width:  |  Height:  |  Size: 252 KiB

After

Width:  |  Height:  |  Size: 252 KiB

View File

Before

Width:  |  Height:  |  Size: 186 KiB

After

Width:  |  Height:  |  Size: 186 KiB

View File

@@ -18,12 +18,12 @@ flowchart TD
vulkan_exts{Vulkan Supports Extensions}
vulkan[Use Vulkan Backend]
opengl[Use OpenGL Backend]
start-->device_support
device_support-->|Yes|android_api
device_support-->|No|opengl
android_api-->|>= Android 29|vulkan_version
android_api-->|< Android 29|opengl
@@ -88,4 +88,3 @@ There are no issues with SurfaceTextures when using the GLES backend.
We do not currently support rendering these textures when using the Vulkan
backend. Supporting this will require adding support for importing GL textures
into Vulkan textures which will have performance implications.

View File

@@ -273,4 +273,3 @@ And with that, you should see animated triangle shading.
## Conclusion
You have learned how to draw a triangle, modify its vertices, access varying information in the fragment shader, and specify uniform data to your shaders. You'll find that its somewhat annoying that you can't color outside the confines of your triangle. So add more, the rest is Flutter doesn't do anything more (conceptually) complicated.

View File

@@ -313,7 +313,6 @@ flowchart TD
OpenGL --> GraphicsHardware
Metal --> GraphicsHardware
Vulkan --> GraphicsHardware
```
WebGPU, or Dawn/wgpu.rs in JS garb, purports to be a sensible and portable abstraction layer over the [client APIs](https://dawn.googlesource.com/dawn/+/HEAD/docs/support.md). For middleware, that presents an interesting value proposition. Instead of doing mostly the same thing multiple times, you just target one API and let the WebGPU library take care of the rest.

View File

@@ -49,4 +49,4 @@
_See also:_
* [Learning to Read GPU Frame Captures](https://github.com/flutter/flutter/blob/main/engine/src/flutter/impeller/docs/read_frame_captures.md)
* [Learning to Read GPU Frame Captures](https://github.com/flutter/flutter/blob/main/docs/engine/impeller/docs/read_frame_captures.md)

View File

@@ -1,5 +1,6 @@
# RBE for Flutter Engine Developers
g
## Overview
This is documentation on setting up RBE for building the Flutter engine. It is
@@ -211,7 +212,7 @@ The logs for RBE live under the system `/tmp` folder in the files `/tmp/reproxy.
In CI runs, the RBE logs are also available by following the links as in the
screenshot below under `teardown remote execution > collect rbe logs`:
![LUCI logs links](luci.png "LUCI logs links")
![LUCI logs links](../../engine/src/flutter/docs/rbe/luci.png "LUCI logs links")
### Dependency analysis failures

View File

@@ -330,7 +330,7 @@ Xcode and hit CMD+U.
Dart unit tests are executed during pre-submit on our CI system when submitting
PRs to the `flutter/engine` repository.
_See also: [Flutter Test Fonts](https://github.com/flutter/flutter/blob/master/docs/contributing/testing/Flutter-Test-Fonts.md)_
_See also: [Flutter Test Fonts](https://github.com/flutter/flutter/blob/main/docs/contributing/testing/Flutter-Test-Fonts.md)_
### Framework tests

View File

@@ -49,12 +49,12 @@ If the script completes without errors, move on to step 10 in the next section t
1. Set up your Engine and Flutter environments by following the instructions described in the pages
linked to from [our contributing guide](../../CONTRIBUTING.md).
2. Build the engine according to the instructions on the [Compiling the engine](../../engine/src/flutter/docs/contributing/Compiling-the-engine.md) page.
2. Build the engine according to the instructions on the [Compiling the engine](../../docs/engine/contributing/Compiling-the-engine.md) page.
3. Select a target Dart revision, typically use the [latest revision](https://github.com/dart-lang/sdk/commits/main). Check that the tests for that revision have all passed (all green) on the [Dart buildbot](https://ci.chromium.org/p/flutter/g/engine/console) and the [Internal Dart Flutter buildbot](https://ci.chromium.org/p/dart/g/flutter/console).
4. Create a PR (see [Tree hygiene](../contributing/Tree-hygiene.md)) that updates `dart_revision` in [DEPS](../../DEPS) to your selected revision. Invoke `gclient sync` in the src directory to ensure versions corresponding to the DEPS file are synced up.
5. Update all Dart-dependent DEPS entries using [`create_updated_flutter_deps.py`](../../engine/src/tools/dart/create_updated_flutter_deps.py) script. In case script complains that dart dependency was removed, remove entry from flutter DEPS file manually. If the list of library source files or patch files is modified, update the file [`libraries.yaml`](../../engine/src/flutter/lib/snapshot/libraries.yaml) and regenerate the corresponding json file.
6. Invoke `gclient sync` in the src directory to ensure versions corresponding to the DEPS file are synced up.
7. Build the debug, profile, and release versions of the engine, following the normal [Compiling the engine](../../engine/src/flutter/docs/contributing/Compiling-the-engine.md) instructions. You will need to build the host versions of the engine too. Here is a script with the build commands:
7. Build the debug, profile, and release versions of the engine, following the normal [Compiling the engine](../../docs/engine/contributing/Compiling-the-engine.md) instructions. You will need to build the host versions of the engine too. Here is a script with the build commands:
```bash
#!/bin/bash -e
@@ -88,7 +88,7 @@ cd $FLUTTER_HOME/packages/flutter
flutter test --local-engine=host_debug --local-engine-host=host_debug
```
> See [Running a Flutter app with a local engine](../../engine/src/flutter/docs/Debugging-the-engine.md#running-a-flutter-app-with-a-local-engine) for more information.
> See [Running a Flutter app with a local engine](../../docs/engine/Debugging-the-engine.md#running-a-flutter-app-with-a-local-engine) for more information.
8. Make sure your path contains `engine/src/third_party/dart/tools/sdks/dart-sdk/bin`, run the script `flutter/ci/licenses.sh` in the src directory, update `flutter/ci/licenses_golden/licenses_third_party` by copying `out/license_script_output/licenses_third_party` into it. Include this change in your pull request.
**If any licenses changed, make sure to also update the actual `LICENSE` file.**

View File

@@ -2,7 +2,7 @@
## Setting up the Engine development environment
See [here](https://github.com/flutter/flutter/blob/master/engine/src/flutter/docs/contributing/Setting-up-the-Engine-development-environment.md#getting-the-source)
See [here](https://github.com/flutter/flutter/blob/master/docs/engine/contributing/Setting-up-the-Engine-development-environment.md#getting-the-source)
## `gclient` bootstrap
@@ -11,6 +11,6 @@ Flutter engine uses `gclient` to manage dependencies.
If you've already cloned the flutter repository:
1. Copy one of the `engine/scripts/*.gclient` to the [root](../) folder as `.gclient`:
1. Googlers: copy `rbe.gclient` to enable faster builds with [RBE](https://github.com/flutter/flutter/blob/master/engine/src/flutter/docs/rbe/rbe.md)
1. Googlers: copy `rbe.gclient` to enable faster builds with [RBE](https://github.com/flutter/flutter/blob/master/docs/engine/rbe/rbe.md)
2. Everyone else: copy `standard.gclient`
2. run `gclient sync` from the [root](../) folder

View File

@@ -23,7 +23,7 @@ If you need help, consider asking for advice on the #hackers-new channel on [Dis
[test-exempt]: https://github.com/flutter/flutter/blob/master/docs/contributing/Tree-hygiene.md#tests
[Flutter Style Guide]: https://github.com/flutter/flutter/blob/master/docs/contributing/Style-guide-for-Flutter-repo.md
[C++, Objective-C, Java style guides]: https://github.com/flutter/flutter/blob/main/engine/src/flutter/CONTRIBUTING.md#style
[testing the engine]: https://github.com/flutter/flutter/blob/main/engine/src/flutter/docs/testing/Testing-the-engine.md
[testing the engine]: https://github.com/flutter/flutter/blob/main/docs/engine/testing/Testing-the-engine.md
[CLA]: https://cla.developers.google.com/
[flutter/tests]: https://github.com/flutter/tests
[breaking change policy]: https://github.com/flutter/flutter/blob/master/docs/contributing/Tree-hygiene.md#handling-breaking-changes

View File

@@ -256,7 +256,7 @@ bool Trampoline::BlitTextureOpenGLToVulkan(
//
// See the following help link for an overview of the different coordinate
// systems:
// https://github.com/flutter/engine/blob/5810b3fc791f4bb82b9a454014310990eddc1181/impeller/docs/coordinate_system.md
// https://github.com/flutter/flutter/blob/master/docs/engine/impeller/docs/coordinate_system.md
static constexpr const VertexData kVertData[] = {
{{-1, -1}, {0, 1}}, // bottom left
{{-1, +1}, {0, 0}}, // top left

View File

@@ -17,7 +17,7 @@
///
/// See also:
///
/// * [Flutter GPU documentation](https://github.com/flutter/flutter/blob/main/engine/src/flutter/docs/impeller/Flutter-GPU.md).
/// * [Flutter GPU documentation](https://github.com/flutter/flutter/blob/main/docs/engine/impeller/Flutter-GPU.md).
library flutter_gpu;
import 'dart:ffi';

View File

@@ -335,7 +335,7 @@ Once you know the version for the Emscripten SDK, change the line in
[1]: https://github.com/flutter/flutter/blob/main/engine/src/flutter/docs/contributing/Setting-up-the-Engine-development-environment.md
[1]: https://github.com/flutter/flutter/blob/main/docs/engine/contributing/Setting-up-the-Engine-development-environment.md
[2]: https://github.com/flutter/flutter/blob/main/engine/src/flutter/lib/web_ui/test/README.md
[3]: https://github.com/flutter/flutter/blob/main/engine/src/flutter/lib/web_ui/dev/package_lock.yaml
[4]: https://chrome-infra-packages.appspot.com/p/flutter_internal

View File

@@ -39,7 +39,7 @@ source on a supported platform (see:
run at all outside of a valid repository setup.
[architectural layers]: https://docs.flutter.dev/resources/architectural-overview#architectural-layers
[setting up the engine development environment]: https://github.com/flutter/flutter/blob/main/engine/src/flutter/docs/contributing/Setting-up-the-Engine-development-environment.md
[setting up the engine development environment]: https://github.com/flutter/flutter/blob/main/docs/engine/contributing/Setting-up-the-Engine-development-environment.md
It is recommended to add `et` to your `PATH` by adding the [`bin` folder][]:

View File

@@ -299,7 +299,7 @@ extensions:
# Flutter and Dart extensions.
- Dart-Code.dart-code
# Supports C/C++ in the engine.
# See https://github.com/flutter/flutter/blob/main/engine/src/flutter/docs/contributing/Setting-up-the-Engine-development-environment.md#vscode-with-cc-intellisense-cc
# See https://github.com/flutter/flutter/blob/main/docs/engine/contributing/Setting-up-the-Engine-development-environment.md#vscode-with-cc-intellisense-cc
- llvm-vs-code-extensions.vscode-clangd
# Auto-formats C/C++ code.
# https://github.com/flutter/flutter/blob/main/engine/src/flutter/CONTRIBUTING.md#cc