Delete getLegacyAndroidExtension and migrate the NDK fallback to the public DSL - #5
Open
reidbaker-agent wants to merge 1 commit into
Open
Delete getLegacyAndroidExtension and migrate the NDK fallback to the public DSL#5reidbaker-agent wants to merge 1 commit into
reidbaker-agent wants to merge 1 commit into
Conversation
reidbaker-agent
force-pushed
the
agp-plugin-buildtypes
branch
from
July 22, 2026 15:54
fd41f02 to
dc99bbd
Compare
reidbaker-agent
force-pushed
the
agp-ndk-fallback
branch
from
July 22, 2026 15:54
03a8311 to
7e60b17
Compare
reidbaker-agent
force-pushed
the
agp-plugin-buildtypes
branch
from
July 28, 2026 13:35
dc99bbd to
6e9a5d6
Compare
reidbaker-agent
force-pushed
the
agp-ndk-fallback
branch
from
July 28, 2026 13:35
7e60b17 to
106779a
Compare
reidbaker-agent
force-pushed
the
agp-plugin-buildtypes
branch
from
July 28, 2026 13:37
6e9a5d6 to
8650166
Compare
reidbaker-agent
force-pushed
the
agp-ndk-fallback
branch
from
July 28, 2026 13:37
106779a to
f247915
Compare
reidbaker-agent
force-pushed
the
agp-plugin-buildtypes
branch
from
July 29, 2026 20:17
8650166 to
46063e6
Compare
reidbaker-agent
force-pushed
the
agp-ndk-fallback
branch
from
July 29, 2026 20:18
f247915 to
308ba7e
Compare
reidbaker-agent
force-pushed
the
agp-plugin-buildtypes
branch
from
July 29, 2026 20:42
46063e6 to
bece987
Compare
reidbaker-agent
force-pushed
the
agp-ndk-fallback
branch
from
July 29, 2026 20:43
308ba7e to
c459db2
Compare
…public DSL Phase P4 of the AGP public-API migration (flutter#180137, flutter#166550): - AgpCommonExtensionWrapper gains externalNativeBuild, and both the already-configuring-a-native-build check in forceNdkDownload and the synthetic-cmake fallback now read/write cmake.path, cmake.buildStagingDirectory and the per-build-type externalNativeBuild.cmake.arguments through the public DSL (property assignment with File values instead of the legacy Any-taking CmakeOptions methods; arguments via the public MutableList). - getLegacyAndroidExtension and the BaseExtension import are deleted from FlutterPluginUtils; nothing in production sources references BaseExtension anymore. - forceNdkDownload tests move their mocks from BaseExtension/ internal CmakeOptions to the wrapper path (findByName("android") + public Cmake), assert cmake arguments by list content, and drop the defaultConfig-untouched assertions that only existed to guard the legacy extension. The two tests that asserted the old ApplicationExtension-vs-BaseExtension ndkVersion preference are deleted: getConfiguredNdkVersion has had a single source since P1. Also restores the findByType(ApplicationExtension) mocks (needed by isFlutterAppProject) that P1's test edit dropped in three tests. - FlutterPluginUtilsTest no longer imports internal.dsl.CmakeOptions or internal.dsl.DefaultConfig. Verification note: FGP unit tests could not be executed in this sandbox (network policy blocks dl.google.com); run 'gradle test' (both AGP axes) in packages/flutter_tools/gradle in CI, plus an NDK-absent scratch build exercising the synthetic-cmake fallback. Revert-safe until P5 lands.
reidbaker
force-pushed
the
agp-plugin-buildtypes
branch
from
July 31, 2026 18:07
bece987 to
ffbce64
Compare
reidbaker
force-pushed
the
agp-ndk-fallback
branch
from
July 31, 2026 18:07
c459db2 to
e257098
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Phase 5 of 11 of the AGP public-API migration; stacked on #4.
Phase P4 of the AGP public-API migration (flutter#180137,
flutter#166550):
already-configuring-a-native-build check in forceNdkDownload and the
synthetic-cmake fallback now read/write cmake.path,
cmake.buildStagingDirectory and the per-build-type
externalNativeBuild.cmake.arguments through the public DSL (property
assignment with File values instead of the legacy Any-taking
CmakeOptions methods; arguments via the public MutableList).
from FlutterPluginUtils; nothing in production sources references
BaseExtension anymore.
internal CmakeOptions to the wrapper path (findByName("android") +
public Cmake), assert cmake arguments by list content, and drop the
defaultConfig-untouched assertions that only existed to guard the
legacy extension. The two tests that asserted the old
ApplicationExtension-vs-BaseExtension ndkVersion preference are
deleted: getConfiguredNdkVersion has had a single source since P1.
Also restores the findByType(ApplicationExtension) mocks (needed by
isFlutterAppProject) that P1's test edit dropped in three tests.
internal.dsl.DefaultConfig.
Verification note: FGP unit tests could not be executed in this sandbox
(network policy blocks dl.google.com); run 'gradle test' (both AGP
axes) in packages/flutter_tools/gradle in CI, plus an NDK-absent
scratch build exercising the synthetic-cmake fallback.
Revert-safe until P5 lands.
CI must run the FGP unit tests (the Kotlin suite in packages/flutter_tools/gradle could not run in the delivery sandbox: dl.google.com returns 403, so AGP artifacts do not resolve).