Add end-to-end AGP 9 build fixture#1766
Draft
ajpallares wants to merge 6 commits into
Draft
Conversation
…d build
Replaces the configuration-only smoke test under .circleci/agp9-smoke/
with a real Flutter build fixture at e2e-tests/agp9_test_app/ that
exercises the plugin's AGP 9 branch end-to-end through the Flutter
Gradle plugin under Flutter 3.44+.
The new agp9-end-to-end-test CircleCI job installs JDK 21 via SDKMAN
and runs `flutter build apk --debug` against the fixture. The build
currently fails: with Flutter 3.44's default `android.builtInKotlin=false`,
kotlin-android is not applied to purchases_ui_flutter, so the top-level
`kotlin { compilerOptions { ... } }` block guarded by `agpMajor >= 9`
in purchases_ui_flutter/android/build.gradle is not reachable. Landing
the fixture in its failing state so the regression is visible while we
work out the right fix with the Flutter Gradle plugin.
Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
The fixture only exercises the Flutter 3.44 migrator default (android.builtInKotlin=false). Add a second build pass in the same CircleCI job that sed-flips the flag to `true` and rebuilds, so the job also covers the AGP 9 default path through purchases_ui_flutter's Kotlin gating without duplicating the fixture. `when: always` on the flip + second-build steps ensures the second result is reported even if the first build fails. Document the same flip-and-rebuild recipe in e2e-tests/agp9_test_app/README.md for local reproduction. Co-authored-by: Cursor <cursoragent@cursor.com>
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.
Motivation
The smoke test in #1765 only verifies configuration. This fixture actually builds a Flutter 3.44 app against the local plugins, exercising the AGP 9 branch of
purchases_ui_flutter/android/build.gradleend-to-end through the Flutter Gradle plugin.Summary
e2e-tests/agp9_test_app/: build-only fixture pinned to AGP 9.0.1, KGP 2.3.20, Gradle 9.1.agp9-smoke-testCircleCI job (and.circleci/agp9-smoke/) withagp9-end-to-end-test, which runsflutter build apk --debugunder JDK 21.Notes
android.builtInKotlin=false,kotlin-androidis not applied topurchases_ui_flutter, so thekotlin { ... }block guarded byagpMajor >= 9in [DO NOT MERGE] Add AGP 9 compatibility #1765 is unreachable. Landing as draft for visibility so we can iterate on the right fix. Full repro ine2e-tests/agp9_test_app/README.md.Made with Cursor