Skip to content

Add end-to-end AGP 9 build fixture#1766

Draft
ajpallares wants to merge 6 commits into
pallares/agp9-kotlin-conditionalfrom
pallares/agp9-end-to-end-test
Draft

Add end-to-end AGP 9 build fixture#1766
ajpallares wants to merge 6 commits into
pallares/agp9-kotlin-conditionalfrom
pallares/agp9-end-to-end-test

Conversation

@ajpallares

Copy link
Copy Markdown
Member

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.gradle end-to-end through the Flutter Gradle plugin.

Summary

  • New e2e-tests/agp9_test_app/: build-only fixture pinned to AGP 9.0.1, KGP 2.3.20, Gradle 9.1.
  • Replaces the agp9-smoke-test CircleCI job (and .circleci/agp9-smoke/) with agp9-end-to-end-test, which runs flutter build apk --debug under JDK 21.

Notes

  • The build currently fails: with Flutter 3.44's default android.builtInKotlin=false, kotlin-android is not applied to purchases_ui_flutter, so the kotlin { ... } block guarded by agpMajor >= 9 in [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 in e2e-tests/agp9_test_app/README.md.

Made with Cursor

…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>
@ajpallares ajpallares changed the title Add end-to-end AGP 9 build fixture (replaces smoke test) Add end-to-end AGP 9 build fixture May 29, 2026
ajpallares and others added 4 commits June 1, 2026 12:58
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>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant