flutter/packages/flutter_tools/test
Martin Kustermann 01590aa27a
Refactor native asset integration into flutter tools (#158932)
Currently the `NativeAsset` target in flutter tools is responsible for
two things:

* performing the dart build (in the app as well as all transitive pub
dependencies)
* taking output (shared libraries) from this build and copying them
around

This intermingling of responsibilities leads to more complex code and
potentially unnecessary work: If the source code changed (e.g. `.c`
files change) we have to run the dart build again. But doing so may
result in the same shared libraries (e.g. adding comments to the `.c`
code). Currently we're going to copy the shared libraries despite them
having not changed, which then may cause upstream things to be dirtied
(if it's based on timestamp of files) and re-built.

Instead this PR splits this `NativeAsset` into the two orthogonal pieces

* `DartBuild` target that is responsible for the dart build
* `InstallCodeAssets` that is responsible for copying shared libraries
to the right place and producing a `native_assets.yaml`.

This decoupling is also preparation for a future where a dart build can
produce other kinds of assets (e.g. data assets) and is used in the web
build as well. (The web build would use `DartBuild` but not
`InstalCodeAssets`).
2024-11-15 21:04:42 +01:00
..
android_java11_integration.shard Reland "Update template/test compileSdk, targetSdk, ndk versions" (#153795) 2024-08-21 18:27:00 +00:00
android_preview_integration.shard Use Gradle KTS in new Android app projects by default (2nd try) (#157195) 2024-10-22 17:28:31 +00:00
commands.shard Move platform-specific log-reading implementation details from ResidentRunner/FlutterDevice to DeviceLogReader implementations (#156181) 2024-11-14 21:29:30 +00:00
data make asset_test.dart tests not dependent on context (#141331) 2024-01-11 18:08:07 +00:00
flutter_build_apk.shard Try with bringup: true debugging why flutter build apk often times out. (#158895) 2024-11-14 02:12:14 +00:00
general.shard Refactor native asset integration into flutter tools (#158932) 2024-11-15 21:04:42 +01:00
host_cross_arch.shard Test alternate correct macOS framework xcprivacy manifest location (#157318) 2024-10-22 19:41:14 +00:00
integration.shard Stop generate both .kts and non-.kts gradle files for a test project. (#158965) 2024-11-15 01:38:26 +00:00
src Move platform-specific log-reading implementation details from ResidentRunner/FlutterDevice to DeviceLogReader implementations (#156181) 2024-11-14 21:29:30 +00:00
web.shard Move explicit package dependencies to a feature flag (#158016) 2024-11-13 18:33:34 -08:00