Status Update
Comments
ga...@google.com <ga...@google.com>
ga...@gmail.com <ga...@gmail.com> #3
are considered input to the configuration cache and modifying them will cause configuration cache to be invalidated.
If they are "file system entry" inputs isn't it just about the file existing or not? The way I understand it only for "file" inputs the content matters. So modifying a manifest wouldn't cause an invalidation, just creating/deleting it.
hu...@google.com <hu...@google.com> #4
Re
Re file system entry
inputs and file
inputs, and these AndroidManifest.xml
files are file system entry
inputs (i.e., changing the file existence invalidates the configuration cache, but changing its contents does not).
hu...@google.com <hu...@google.com> #5
Punting this to the next release because:
- These inputs (whether the manifests exist, without regard to their contents) typically don't change and therefore don't invalidate the configuration cache.
- This sounds like a bug in Gradle (discussed at
https://gradle.slack.com/archives/C10J6STFZ/p1688736660915589 ) as Gradle is resolvingProvider
s beforeProvider.get()
is called.
(Pls let me know if you disagree.)
au...@google.com <au...@google.com> #6
Is file system entry
the one that ignores contents?
hu...@google.com <hu...@google.com> #7
Yes, that is correct.
hu...@google.com <hu...@google.com> #8
In AndroidManifest.xml
file system entries
will not be part of the configuration cache inputs (i.e., creating/deleting the file or modifying its contents will not invalidate the configuration cache).
This change will be available in AGP 8.3.0-alpha04+.
Thank you for this report!
an...@google.com <an...@google.com> #9
Thank you for your patience while our engineering team worked to resolve this issue. A fix for this issue is now available in:
- Android Studio Iguana | 2023.2.1 Canary 4
- Android Gradle Plugin 8.3.0-alpha04
We encourage you to try the latest update.
If you notice further issues or have questions, please file a new bug report.
Thank you for taking the time to submit feedback — we really appreciate it!
Description
DESCRIBE THE ISSUE IN DETAIL:
STEPS TO REPRODUCE:
Expected
Modifying manifest overlay files does not invalidate configuration cache.
Actual
Files such as
constraintlayout/constraintlayout-compose/src/release/AndroidManifest.xml
andconstraintlayout/constraintlayout-compose/src/testDebug/AndroidManifest.xml
are considered input to the configuration cache and modifying them will cause configuration cache to be invalidated.Gradle marks the reader ashttps://cs.android.com/android-studio/platform/tools/base/+/mirror-goog-studio-main:build-system/gradle-core/src/main/java/com/android/build/gradle/tasks/ProcessLibraryManifest.kt;l=300
com.android.build.gradle.tasks.ProcessLibraryManifest$CreationAction$configure$2
which I think it is coming from the following line: