-
Notifications
You must be signed in to change notification settings - Fork 29.7k
Reland "Move native assets to isolated/ directory"
#143055
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
chingjun
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
|
We might need to wait for the revert to land to be able to apply a g3 fix again. FYI @XilaiZhang patch cl: cl/604636592 |
vashworth
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM!
|
@XilaiZhang please hit submit on this PR once it's possible on your end. |
|
cc @itsjustkevin (current oncall) I have pre attached a g3 fix for this reland and submitted this PR just now. |
Now that flutter/flutter#143055 has landed, we should be able to start doing breaking changes.
Roll of dart-lang/native#964, which separates the `KernelAsset`s (the asset information embedded in the Dart kernel snapshot) from `Asset`s (the assets in the `build.dart` protocol). See the linked issue for why they ought to be different instead of shared. This PR does not change any functionality in Flutter. (Now that #143055 has landed, we can land breaking changes.) For reference, the same roll in the Dart SDK: https://dart-review.googlesource.com/c/sdk/+/352642
Reland of #142709.
The revert of the revert is in the first commit, the fix in the commit on top.
The move of the fakes for packages/flutter_tools/test/general.shard/resident_runner_test.dart was erroneous before, as it was trying to use setters instead of a private field. This PR changes the private
_devFSfield in the fake to be a publicfakeDevFSin line with other fakes.Original PR description
Native assets in other build systems are not built with
package:native_assets_builderinvokingbuild.dartscripts. Instead all packages have their own blaze rules. Therefore we'd like to not depend onpackage:native_assets_builderfrom flutter tools in g3 at all.This PR aims to move the imports of
native_assets_builderandnative_assets_cliinto theisolated/directory and into the files with amainfunction that are not used in with other build systems.In order to be able to remove all imports in files used by other build systems, two new interfaces are added
HotRunnerNativeAssetsBuilderandTestCompilerNativeAssetsBuilder. New parameters are then piped all the way through from the entry points:The build_system/targets dir is already excluded in other build systems.
So, after this PR only the two above files and build_system/targets import from
isolated/native_assets/and onlyisolated/native_assets/importpackage:native_assets_cliandpackage:native_assets_builder.Context:
Pre-launch Checklist
///).