Status Update
Comments
ki...@google.com <ki...@google.com> #2
Please reassign this to me since I'm the current primary oncall for Fireperf (go/fireperf-oncall).
I've filed an internal issue for this at
ga...@google.com <ga...@google.com>
ki...@google.com <ki...@google.com> #3
Thank you for reporting this error along with a repro project & clear repro steps!
We have identified the root cause of this issue:
The Performance Plugin's processing of code change deltas is not correctly accounting for removed classes. We will aim to find a fix at the earliest.
For now, we have also identified a workaround:
Performing a build clean after encountering the build error is sufficient to allow future builds to run successfully.
ga...@google.com <ga...@google.com> #4
Steps to reproduce (with project using FirebasePerfPlugin and Kotlin):
- create classes
User.java
, 'Address.java, 'Data.kt
(it is important to have both Kotlin and Java sources) and build - delete
User.java
and create interfaceUser.kt
and classUserImpl.java
that implements interfaceUser
and build
Examining ./app/build/intermediates/transforms/FirebasePerformancePlugin/
directory, there will be 2 copies of User.class
(the class one and the interface one) because class User
will not be removed while running the transform.
rk...@google.com <rk...@google.com> #5
The root cause have been fixed in the perf-plugin
(internally tracked at
rk...@google.com <rk...@google.com> #6
gavara@ can you mark this bug as Fixed since we don't seem to have the access to update the bug status.
Description
(Filing a public issue here, feel free to link it again an internal one)
Using the attached project and running:
./gradlew :app:assembleDebug
app/src/main/java/com/example/kotlinconfcaching/Data.java
mylibrary/src/main/java/com/example/kotlinconfcaching/Data.java
./gradlew :app:assembleDebug
againThis causes build to fail with:
Running
find app/build/intermediates/transforms/FirebasePerformancePlugin/ -name Data.class
shows there are 2 copies ofData.class
which indicates that the one fromapp
was not removed.