Fixed
Status Update
Comments
we...@gmail.com <we...@gmail.com> #2
My current proguard rules:
-keepattributes SourceFile,LineNumberTable
-keepattributes *Annotation*
-renamesourcefileattribute SourceFile
-allowaccessmodification
#remove log statements
-assumenosideeffects class android.util.Log {
public static boolean isLoggable(java.lang.String, int);
public static int v(...);
public static int i(...);
public static int w(...);
public static int d(...);
public static int e(...);
}
## fabric
-dontwarn com.crashlytics.**
-dontwarn javax.annotation.**
##Retrofit
# remove with retrofit 2.6.0 upgrade as they are included
-if interface * { @retrofit2.http.* <methods>; }
-keep,allowobfuscation interface <1>
# Application classes that will be serialized/deserialized over Gson
#-keepclassmembernames class com.wesleyellis.nextepisode.network.models.** { <fields>; }
#-keepclassmembers class com.wesleyellis.nextepisode.network.models.** { <init>(...); }
# !! Remove this oncehttps://issuetracker.google.com/issues/112386012 is fixed !!
-keep class com.wesleyellis.nextepisode.network.models.** { *; }
-keepattributes SourceFile,LineNumberTable
-keepattributes *Annotation*
-renamesourcefileattribute SourceFile
-allowaccessmodification
#remove log statements
-assumenosideeffects class android.util.Log {
public static boolean isLoggable(java.lang.String, int);
public static int v(...);
public static int i(...);
public static int w(...);
public static int d(...);
public static int e(...);
}
## fabric
-dontwarn com.crashlytics.**
-dontwarn javax.annotation.**
##Retrofit
# remove with retrofit 2.6.0 upgrade as they are included
-if interface * { @retrofit2.http.* <methods>; }
-keep,allowobfuscation interface <1>
# Application classes that will be serialized/deserialized over Gson
#-keepclassmembernames class com.wesleyellis.nextepisode.network.models.** { <fields>; }
#-keepclassmembers class com.wesleyellis.nextepisode.network.models.** { <init>(...); }
# !! Remove this once
-keep class com.wesleyellis.nextepisode.network.models.** { *; }
js...@google.com <js...@google.com> #3
Thank you for the reports. We have similar issues ( issue 130789358 and issue 131140696 ) on 3.4.0 (or R8 1.4.77), but it seems like even ToT has an issue. I'll prepare some logging, and will ask you to run it locally.
js...@google.com <js...@google.com> #4
Could you run the attached r8.jar by editing your top-level gradle file like this?
buildscript {
dependencies {
classpath files($PATH_TO_R8_JAR) // Must be before the Gradle Plugin for Android.
classpath 'com.android.tools.build:gradle:3.5.0-alpha13'
}
}
$ ./gradlew clean assembleRelease
Just in case, I attached the diff against ToT.
If the logs are too verbose and you don't want to share that publicly, you can send it to jsjeon@google.com Thanks!
buildscript {
dependencies {
classpath files($PATH_TO_R8_JAR) // Must be before the Gradle Plugin for Android.
classpath 'com.android.tools.build:gradle:3.5.0-alpha13'
}
}
$ ./gradlew clean assembleRelease
Just in case, I attached the diff against ToT.
If the logs are too verbose and you don't want to share that publicly, you can send it to jsjeon@google.com Thanks!
js...@google.com <js...@google.com> #5
Someone else ran the logging, which helped me figure out a certain points I missed (https://issuetracker.google.com/issues/131140696#comment11 ). If you didn't try yet, please ignore attachments in comment #4 , but use attached r8.jar in this comment.
js...@google.com <js...@google.com> #6
Could you let us know what libraries (and version) you're using? In particular, I wonder you may use com.google.firebase:* and com.google.android.gms:play-services-*
we...@gmail.com <we...@gmail.com> #7
dependencies {
implementation("org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.3.30")
implementation("org.jetbrains.kotlinx:kotlinx-coroutines-core:1.2.0")
implementation("org.jetbrains.kotlinx:kotlinx-coroutines-rx2:1.2.0")
implementation("org.jetbrains.kotlinx:kotlinx-coroutines-android:1.2.0")
//google
implementation("androidx.core:core-ktx:1.1.0-alpha05")
implementation("androidx.appcompat:appcompat:1.1.0-alpha04")
implementation("androidx.fragment:fragment-ktx:1.1.0-alpha06")
implementation("androidx.activity:activity-ktx:1.0.0-alpha06")
implementation("androidx.palette:palette-ktx:1.0.0")
implementation("androidx.browser:browser:1.0.0")
implementation("androidx.recyclerview:recyclerview:1.1.0-alpha04")
implementation("androidx.coordinatorlayout:coordinatorlayout:1.1.0-alpha01")
implementation("androidx.preference:preference-ktx:1.1.0-alpha04")
implementation("com.google.android.material:material:1.1.0-alpha05")
implementation("androidx.constraintlayout:constraintlayout:2.0.0-alpha4")
implementation("androidx.lifecycle:lifecycle-extensions:2.1.0-alpha04")
implementation("androidx.lifecycle:lifecycle-common-java8:2.1.0-alpha04")
implementation("androidx.navigation:navigation-fragment-ktx:2.1.0-alpha02")
implementation("androidx.navigation:navigation-ui-ktx:2.1.0-alpha02")
//others
implementation("com.google.android.gms:play-services-auth:16.0.1")
implementation("com.google.android.gms:play-services-drive:16.1.0")
implementation("com.google.firebase:firebase-core:16.0.8")
implementation("com.google.firebase:firebase-perf:16.2.5")
implementation("com.google.firebase:firebase-inappmessaging-display:17.1.1")
implementation("com.google.guava:guava:27.1-android")
implementation("com.android.billingclient:billing:1.2.2")
//third-party
implementation("com.airbnb.android:lottie:3.0.0")
implementation("com.google.dagger:dagger:2.22.1")
implementation("com.google.dagger:dagger-android:2.22.1")
implementation("com.google.dagger:dagger-android-support:2.22.1")
implementation("com.github.bumptech.glide:glide:4.9.0")
implementation("com.github.bumptech.glide:okhttp3-integration:4.9.0")
implementation("com.github.mancj:MaterialSearchBar:0.8.2")
implementation("com.jakewharton.threetenabp:threetenabp:1.2.0")
implementation("net.gotev:speech:1.4.0")
implementation("com.xwray:groupie:2.3.0")
implementation("com.xwray:groupie-kotlin-android-extensions:2.3.0")
implementation("me.drakeet.support:toastcompat:1.1.0")
//network
implementation("com.squareup.okhttp3:okhttp:3.14.1")
implementation("com.squareup.retrofit2:retrofit:2.5.0")
implementation("com.squareup.retrofit2:converter-gson:2.5.0")
//rxjava
implementation("io.reactivex.rxjava2:rxjava:2.2.8")
implementation("io.reactivex.rxjava2:rxkotlin:2.3.0")
implementation("io.reactivex.rxjava2:rxandroid:2.1.1")
implementation("com.squareup.retrofit2:adapter-rxjava2:2.5.0")
//logging
implementation("com.crashlytics.sdk.android:crashlytics:2.9.9")
//annotations
kapt("com.github.bumptech.glide:compiler:4.9.0")
kapt("io.realm:realm-annotations-processor:5.10.0")
kapt("com.google.dagger:dagger-compiler:2.22.1")
kapt("com.google.dagger:dagger-android-processor:2.22.1")
//leak
debugImplementation("com.squareup.leakcanary:leakcanary-android:1.6.3")
debugImplementation("com.squareup.leakcanary:leakcanary-support-fragment:1.6.3")
releaseImplementation("com.squareup.leakcanary:leakcanary-android-no-op:1.6.3")
implementation("org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.3.30")
implementation("org.jetbrains.kotlinx:kotlinx-coroutines-core:1.2.0")
implementation("org.jetbrains.kotlinx:kotlinx-coroutines-rx2:1.2.0")
implementation("org.jetbrains.kotlinx:kotlinx-coroutines-android:1.2.0")
implementation("androidx.core:core-ktx:1.1.0-alpha05")
implementation("androidx.appcompat:appcompat:1.1.0-alpha04")
implementation("androidx.fragment:fragment-ktx:1.1.0-alpha06")
implementation("androidx.activity:activity-ktx:1.0.0-alpha06")
implementation("androidx.palette:palette-ktx:1.0.0")
implementation("androidx.browser:browser:1.0.0")
implementation("androidx.recyclerview:recyclerview:1.1.0-alpha04")
implementation("androidx.coordinatorlayout:coordinatorlayout:1.1.0-alpha01")
implementation("androidx.preference:preference-ktx:1.1.0-alpha04")
implementation("com.google.android.material:material:1.1.0-alpha05")
implementation("androidx.constraintlayout:constraintlayout:2.0.0-alpha4")
implementation("androidx.lifecycle:lifecycle-extensions:2.1.0-alpha04")
implementation("androidx.lifecycle:lifecycle-common-java8:2.1.0-alpha04")
implementation("androidx.navigation:navigation-fragment-ktx:2.1.0-alpha02")
implementation("androidx.navigation:navigation-ui-ktx:2.1.0-alpha02")
//others
implementation("com.google.android.gms:play-services-auth:16.0.1")
implementation("com.google.android.gms:play-services-drive:16.1.0")
implementation("com.google.firebase:firebase-core:16.0.8")
implementation("com.google.firebase:firebase-perf:16.2.5")
implementation("com.google.firebase:firebase-inappmessaging-display:17.1.1")
implementation("com.google.guava:guava:27.1-android")
implementation("com.android.billingclient:billing:1.2.2")
//third-party
implementation("com.airbnb.android:lottie:3.0.0")
implementation("com.google.dagger:dagger:2.22.1")
implementation("com.google.dagger:dagger-android:2.22.1")
implementation("com.google.dagger:dagger-android-support:2.22.1")
implementation("com.github.bumptech.glide:glide:4.9.0")
implementation("com.github.bumptech.glide:okhttp3-integration:4.9.0")
implementation("com.github.mancj:MaterialSearchBar:0.8.2")
implementation("com.jakewharton.threetenabp:threetenabp:1.2.0")
implementation("net.gotev:speech:1.4.0")
implementation("com.xwray:groupie:2.3.0")
implementation("com.xwray:groupie-kotlin-android-extensions:2.3.0")
implementation("me.drakeet.support:toastcompat:1.1.0")
//network
implementation("com.squareup.okhttp3:okhttp:3.14.1")
implementation("com.squareup.retrofit2:retrofit:2.5.0")
implementation("com.squareup.retrofit2:converter-gson:2.5.0")
//rxjava
implementation("io.reactivex.rxjava2:rxjava:2.2.8")
implementation("io.reactivex.rxjava2:rxkotlin:2.3.0")
implementation("io.reactivex.rxjava2:rxandroid:2.1.1")
implementation("com.squareup.retrofit2:adapter-rxjava2:2.5.0")
//logging
implementation("com.crashlytics.sdk.android:crashlytics:2.9.9")
//annotations
kapt("com.github.bumptech.glide:compiler:4.9.0")
kapt("io.realm:realm-annotations-processor:5.10.0")
kapt("com.google.dagger:dagger-compiler:2.22.1")
kapt("com.google.dagger:dagger-android-processor:2.22.1")
//leak
debugImplementation("com.squareup.leakcanary:leakcanary-android:1.6.3")
debugImplementation("com.squareup.leakcanary:leakcanary-support-fragment:1.6.3")
releaseImplementation("com.squareup.leakcanary:leakcanary-android-no-op:1.6.3")
we...@gmail.com <we...@gmail.com> #8
The attached jar in comment #5 fails to download in chrome, at about 5mb with 'Failed - Network error'
js...@google.com <js...@google.com>
ap...@google.com <ap...@google.com> #9
Project: r8
Branch: master
commit 522bd9fc1d398753fed5134b6c4fe32cdae482be
Author: Jinseong Jeon <jsjeon@google.com>
Date: Sun Apr 28 14:28:53 2019
Account for IINC instruction when collecting arg uses in jar code.
Bug: 131140696, 131207184, 131443760, 130789358
Change-Id: I8fba2eb7dc2b814b2f21f2ba4fc634bf7bb58dd1
M src/main/java/com/android/tools/r8/jar/JarArgumentUseVisitor.java
M src/test/java/com/android/tools/r8/ir/optimize/unusedarguments/UnusedArgumentsIntTest.java
M src/test/java/com/android/tools/r8/ir/optimize/unusedarguments/UnusedArgumentsTestBase.java
https://r8-review.googlesource.com/37740
Branch: master
commit 522bd9fc1d398753fed5134b6c4fe32cdae482be
Author: Jinseong Jeon <jsjeon@google.com>
Date: Sun Apr 28 14:28:53 2019
Account for IINC instruction when collecting arg uses in jar code.
Bug: 131140696, 131207184, 131443760, 130789358
Change-Id: I8fba2eb7dc2b814b2f21f2ba4fc634bf7bb58dd1
M src/main/java/com/android/tools/r8/jar/JarArgumentUseVisitor.java
M src/test/java/com/android/tools/r8/ir/optimize/unusedarguments/UnusedArgumentsIntTest.java
M src/test/java/com/android/tools/r8/ir/optimize/unusedarguments/UnusedArgumentsTestBase.java
js...@google.com <js...@google.com> #10
The fix ( comment #9 ) is landed, could you try the following instead?
buildscript {
repositories {
maven {
url "http://storage.googleapis.com/r8-releases/raw/master "
}
}
dependencies {
classpath 'com.android.tools:r8:522bd9fc1d398753fed5134b6c4fe32cdae482be' // Must be before the Gradle Plugin for Android.
classpath 'com.android.tools.build:gradle:3.5.0-alpha13'
}
}
buildscript {
repositories {
maven {
url "
}
}
dependencies {
classpath 'com.android.tools:r8:522bd9fc1d398753fed5134b6c4fe32cdae482be' // Must be before the Gradle Plugin for Android.
classpath 'com.android.tools.build:gradle:3.5.0-alpha13'
}
}
ap...@google.com <ap...@google.com> #11
Project: r8
Branch: d8-1.4
commit 7c81a6c1d74eece58960b8fdee852d409af5b8b9
Author: Christoffer Quist Adamsen <christofferqa@google.com>
Date: Mon Apr 29 09:08:31 2019
Version 1.4.93
Cherry pick: Account for IINC instruction when collecting arg uses in jar code.
CL:https://r8-review.googlesource.com/c/r8/+/37740
Bug: 131140696, 131207184, 131443760, 130789358
Change-Id: Ic36eacad6f11d821b3207c42b9fecfc40375c2d2
M src/main/java/com/android/tools/r8/Version.java
M src/main/java/com/android/tools/r8/jar/JarArgumentUseVisitor.java
M src/test/java/com/android/tools/r8/ir/optimize/unusedarguments/UnusedArgumentsIntTest.java
M src/test/java/com/android/tools/r8/ir/optimize/unusedarguments/UnusedArgumentsTestBase.java
https://r8-review.googlesource.com/37725
Branch: d8-1.4
commit 7c81a6c1d74eece58960b8fdee852d409af5b8b9
Author: Christoffer Quist Adamsen <christofferqa@google.com>
Date: Mon Apr 29 09:08:31 2019
Version 1.4.93
Cherry pick: Account for IINC instruction when collecting arg uses in jar code.
CL:
Bug: 131140696, 131207184, 131443760, 130789358
Change-Id: Ic36eacad6f11d821b3207c42b9fecfc40375c2d2
M src/main/java/com/android/tools/r8/Version.java
M src/main/java/com/android/tools/r8/jar/JarArgumentUseVisitor.java
M src/test/java/com/android/tools/r8/ir/optimize/unusedarguments/UnusedArgumentsIntTest.java
M src/test/java/com/android/tools/r8/ir/optimize/unusedarguments/UnusedArgumentsTestBase.java
we...@gmail.com <we...@gmail.com> #12
Looking good, just tried a build with the dev version and it's building fine now, Thanks.
js...@google.com <js...@google.com> #13
Great! Thank you for the confirmation. The fix will be available at AS 3.5 beta2 I guess, which will be around or slightly after I/O.
mi...@gmail.com <mi...@gmail.com> #14
Hi there,
I tried to use 1.4.93 version of r8 and got the following error on the attached scr. I don't use kotlin on my project.
I tried to use 1.4.93 version of r8 and got the following error on the attached scr. I don't use kotlin on my project.
js...@google.com <js...@google.com> #15
Please refer to issue 131618207 regarding 1.4.93. Also, the latest version in 1.4 branch is 1.4.95: https://r8.googlesource.com/r8/+refs
mi...@gmail.com <mi...@gmail.com> #16
Thanks, 1.4.95 fixed the issue! I had to change maven url from ` "http://storage.googleapis.com/r8-releases/raw/master "` to ` "http://storage.googleapis.com/r8-releases/raw "` to get it.
Is there a simple way to see what is changed on each version?
Is there a simple way to see what is changed on each version?
js...@google.com <js...@google.com> #17
You can click each version tag, which has some commit (and/or cherry-pick) messages on it. E.g., https://r8.googlesource.com/r8/+/refs/tags/1.5.25
ri...@google.com <ri...@google.com> #18
re #16:
There is no way to see what changed but to look in the log:
https://r8.googlesource.com/r8/+log/refs/heads/d8-1.4
for the 1.4 branch. You basically can click each version and see what got merged in.
The maven url is basically:
http://storage.googleapis.com/r8-releases/raw/master
for master commits, i.e., when we ask people to try something that only exists on our development branch (or is even build from a non committed cl), maven "version" being a commit hash
http://storage.googleapis.com/r8-releases/raw
for version commits on our release branches(what often ends up in studio stable/beta, but we do merge critical bug fixes to branches even when we know no more version of studio for that branch will come out)
There is no way to see what changed but to look in the log:
for the 1.4 branch. You basically can click each version and see what got merged in.
The maven url is basically:
for master commits, i.e., when we ask people to try something that only exists on our development branch (or is even build from a non committed cl), maven "version" being a commit hash
for version commits on our release branches(what often ends up in studio stable/beta, but we do merge critical bug fixes to branches even when we know no more version of studio for that branch will come out)
sa...@gmail.com <sa...@gmail.com> #19
#10 is not working. it is asking to update the android studio to 3.5 and android studio 3.5 is not yet live I think. and I try to update the studio it says it is already updated with newer version.
js...@google.com <js...@google.com> #20
What error are you seeing? Comment #10 , which actually refers to comment #9 , is in R8 1.4.93, which is part of AGP 3.4.1 (there is a point release for Android studio 3.4).
Yes, AS 3.5 is not stable yet, so if you tried to update the studio from itself, I don't think it will be updated. You still need to freshly install a RC version. Comment #10 and all other buildscript changes are about top-level `build.gradle` file though, not updating your AS. By updating build.gradle in your project, you can use a specific version of R8, AGP, etc.
Yes, AS 3.5 is not stable yet, so if you tried to update the studio from itself, I don't think it will be updated. You still need to freshly install a RC version.
et...@gmail.com <et...@gmail.com> #21
Bagaimana cara memperbaiki
com.android.tools.r8.errors.b: Different stack heights at jump target: 0 != 1
com.android.tools.r8.errors.b: Different stack heights at jump target: 0 != 1
et...@gmail.com <et...@gmail.com> #22
Ini lah log kesalahan pada project yang saya bangun, mohon bantuan nya.
Different stack heights at jump target: 0 != 1
Stack trace:
com.android.tools.r8.errors.a: Different stack heights at jump target: 0 != 1
at com.android.tools.r8.errors.a.a(:7)
at com.android.tools.r8.ir.conversion.O.b(:58)
at com.android.tools.r8.ir.conversion.O.a(:104)
at com.android.tools.r8.ir.conversion.O.a(:53)
at com.android.tools.r8.graph.C.b(:40)
at com.android.tools.r8.ir.conversion.O.b(:35)
at com.android.tools.r8.utils.U0.a(:10)
at com.google.common.util.concurrent.TrustedListenableFutureTask$TrustedFutureInterruptibleTask.runInterruptibly(TrustedListenableFutureTask.java:125)
at com.google.common.util.concurrent.InterruptibleTask.run(InterruptibleTask.java:69)
at com.google.common.util.concurrent.TrustedListenableFutureTask.run(TrustedListenableFutureTask.java:78)
at com.google.common.util.concurrent.MoreExecutors$DirectExecutorService.execute(MoreExecutors.java:322)
at java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:134)
at com.google.common.util.concurrent.AbstractListeningExecutorService.submit(AbstractListeningExecutorService.java:66)
at com.google.common.util.concurrent.AbstractListeningExecutorService.submit(AbstractListeningExecutorService.java:36)
at com.android.tools.r8.utils.U0.a(:3)
at com.android.tools.r8.ir.conversion.O.a(:10)
at com.android.tools.r8.D8.d(:29)
at com.android.tools.r8.D8.b(:1)
at com.android.tools.r8.utils.W.a(:30)
at com.android.tools.r8.D8.run(:11)
at com.android.builder.dexing.D8DexArchiveBuilder.convert(D8DexArchiveBuilder.java:116)
at com.android.builder.dexing.DexArchiveBuilder.convert$default(DexArchiveBuilder.kt:46)
at com.android.build.gradle.internal.tasks.DexFileDependenciesTask$DexFileDependenciesWorkerAction.run(DexFileDependenciesTask.kt:153)
at com.android.build.gradle.internal.tasks.Workers$ActionFacade.run(Workers.kt:242)
at org.gradle.workers.internal.AdapterWorkAction.execute(AdapterWorkAction.java:57)
at org.gradle.workers.internal.DefaultWorkerServer.execute(DefaultWorkerServer.java:63)
at org.gradle.workers.internal.NoIsolationWorkerFactory$1$1.create(NoIsolationWorkerFactory.java:67)
at org.gradle.workers.internal.NoIsolationWorkerFactory$1$1.create(NoIsolationWorkerFactory.java:63)
at org.gradle.internal.classloader.ClassLoaderUtils.executeInClassloader(ClassLoaderUtils.java:97)
at org.gradle.workers.internal.NoIsolationWorkerFactory$1.lambda$execute$0(NoIsolationWorkerFactory.java:63)
at org.gradle.workers.internal.AbstractWorker$1.call(AbstractWorker.java:44)
at org.gradle.workers.internal.AbstractWorker$1.call(AbstractWorker.java:41)
at org.gradle.internal.operations.DefaultBuildOperationExecutor$CallableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:409)
at org.gradle.internal.operations.DefaultBuildOperationExecutor$CallableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:399)
at org.gradle.internal.operations.DefaultBuildOperationExecutor$1.execute(DefaultBuildOperationExecutor.java:157)
at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:242)
at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:150)
at org.gradle.internal.operations.DefaultBuildOperationExecutor.call(DefaultBuildOperationExecutor.java:94)
at org.gradle.internal.operations.DelegatingBuildOperationExecutor.call(DelegatingBuildOperationExecutor.java:36)
at org.gradle.workers.internal.AbstractWorker.executeWrappedInBuildOperation(AbstractWorker.java:41)
at org.gradle.workers.internal.NoIsolationWorkerFactory$1.execute(NoIsolationWorkerFactory.java:60)
at org.gradle.workers.internal.DefaultWorkerExecutor.lambda$submitWork$2(DefaultWorkerExecutor.java:200)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at org.gradle.internal.work.DefaultConditionalExecutionQueue$ExecutionRunner.runExecution(DefaultConditionalExecutionQueue.java:215)
at org.gradle.internal.work.DefaultConditionalExecutionQueue$ExecutionRunner.runBatch(DefaultConditionalExecutionQueue.java:164)
at org.gradle.internal.work.DefaultConditionalExecutionQueue$ExecutionRunner.run(DefaultConditionalExecutionQueue.java:131)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:64)
at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:48)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.java:56)
at java.lang.Thread.run(Thread.java:748)
Suppressed: java.util.concurrent.ExecutionException: com.android.tools.r8.errors.a: Different stack heights at jump target: 0 != 1
at com.google.common.util.concurrent.AbstractFuture.getDoneValue(AbstractFuture.java:552)
at com.google.common.util.concurrent.AbstractFuture.get(AbstractFuture.java:513)
at com.google.common.util.concurrent.FluentFuture$TrustedFuture.get(FluentFuture.java:86)
at com.android.tools.r8.utils.U0.a(:14)
at com.android.tools.r8.utils.U0.a(:9)
... 39 more
[CIRCULAR REFERENCE:com.android.tools.r8.errors.a: Different stack heights at jump target: 0 != 1]
Caused by: com.android.tools.r8.errors.a: Different stack heights at jump target: 0 != 1
at com.android.tools.r8.ir.conversion.o.a(:243)
at com.android.tools.r8.ir.conversion.o.a(:157)
at com.android.tools.r8.ir.conversion.N.a(:133)
at com.android.tools.r8.graph.l.a(:93)
at com.android.tools.r8.graph.l.a(:71)
at com.android.tools.r8.graph.l.buildIR(:1)
at com.android.tools.r8.graph.C0.buildIR(:1)
at com.android.tools.r8.graph.T.a(:152)
at com.android.tools.r8.ir.conversion.O.a(:412)
at com.android.tools.r8.ir.conversion.O.b(:53)
... 52 more
Different stack heights at jump target: 0 != 1
Stack trace:
com.android.tools.r8.errors.a: Different stack heights at jump target: 0 != 1
at com.android.tools.r8.errors.a.a(:7)
at com.android.tools.r8.ir.conversion.O.b(:58)
at com.android.tools.r8.ir.conversion.O.a(:104)
at com.android.tools.r8.ir.conversion.O.a(:53)
at com.android.tools.r8.graph.C.b(:40)
at com.android.tools.r8.ir.conversion.O.b(:35)
at com.android.tools.r8.utils.U0.a(:10)
at com.google.common.util.concurrent.TrustedListenableFutureTask$TrustedFutureInterruptibleTask.runInterruptibly(TrustedListenableFutureTask.java:125)
at com.google.common.util.concurrent.InterruptibleTask.run(InterruptibleTask.java:69)
at com.google.common.util.concurrent.TrustedListenableFutureTask.run(TrustedListenableFutureTask.java:78)
at com.google.common.util.concurrent.MoreExecutors$DirectExecutorService.execute(MoreExecutors.java:322)
at java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:134)
at com.google.common.util.concurrent.AbstractListeningExecutorService.submit(AbstractListeningExecutorService.java:66)
at com.google.common.util.concurrent.AbstractListeningExecutorService.submit(AbstractListeningExecutorService.java:36)
at com.android.tools.r8.utils.U0.a(:3)
at com.android.tools.r8.ir.conversion.O.a(:10)
at com.android.tools.r8.D8.d(:29)
at com.android.tools.r8.D8.b(:1)
at com.android.tools.r8.utils.W.a(:30)
at com.android.tools.r8.D8.run(:11)
at com.android.builder.dexing.D8DexArchiveBuilder.convert(D8DexArchiveBuilder.java:116)
at com.android.builder.dexing.DexArchiveBuilder.convert$default(DexArchiveBuilder.kt:46)
at com.android.build.gradle.internal.tasks.DexFileDependenciesTask$DexFileDependenciesWorkerAction.run(DexFileDependenciesTask.kt:153)
at com.android.build.gradle.internal.tasks.Workers$ActionFacade.run(Workers.kt:242)
at org.gradle.workers.internal.AdapterWorkAction.execute(AdapterWorkAction.java:57)
at org.gradle.workers.internal.DefaultWorkerServer.execute(DefaultWorkerServer.java:63)
at org.gradle.workers.internal.NoIsolationWorkerFactory$1$1.create(NoIsolationWorkerFactory.java:67)
at org.gradle.workers.internal.NoIsolationWorkerFactory$1$1.create(NoIsolationWorkerFactory.java:63)
at org.gradle.internal.classloader.ClassLoaderUtils.executeInClassloader(ClassLoaderUtils.java:97)
at org.gradle.workers.internal.NoIsolationWorkerFactory$1.lambda$execute$0(NoIsolationWorkerFactory.java:63)
at org.gradle.workers.internal.AbstractWorker$1.call(AbstractWorker.java:44)
at org.gradle.workers.internal.AbstractWorker$1.call(AbstractWorker.java:41)
at org.gradle.internal.operations.DefaultBuildOperationExecutor$CallableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:409)
at org.gradle.internal.operations.DefaultBuildOperationExecutor$CallableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:399)
at org.gradle.internal.operations.DefaultBuildOperationExecutor$1.execute(DefaultBuildOperationExecutor.java:157)
at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:242)
at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:150)
at org.gradle.internal.operations.DefaultBuildOperationExecutor.call(DefaultBuildOperationExecutor.java:94)
at org.gradle.internal.operations.DelegatingBuildOperationExecutor.call(DelegatingBuildOperationExecutor.java:36)
at org.gradle.workers.internal.AbstractWorker.executeWrappedInBuildOperation(AbstractWorker.java:41)
at org.gradle.workers.internal.NoIsolationWorkerFactory$1.execute(NoIsolationWorkerFactory.java:60)
at org.gradle.workers.internal.DefaultWorkerExecutor.lambda$submitWork$2(DefaultWorkerExecutor.java:200)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at org.gradle.internal.work.DefaultConditionalExecutionQueue$ExecutionRunner.runExecution(DefaultConditionalExecutionQueue.java:215)
at org.gradle.internal.work.DefaultConditionalExecutionQueue$ExecutionRunner.runBatch(DefaultConditionalExecutionQueue.java:164)
at org.gradle.internal.work.DefaultConditionalExecutionQueue$ExecutionRunner.run(DefaultConditionalExecutionQueue.java:131)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:64)
at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:48)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.java:56)
at java.lang.Thread.run(Thread.java:748)
Suppressed: java.util.concurrent.ExecutionException: com.android.tools.r8.errors.a: Different stack heights at jump target: 0 != 1
at com.google.common.util.concurrent.AbstractFuture.getDoneValue(AbstractFuture.java:552)
at com.google.common.util.concurrent.AbstractFuture.get(AbstractFuture.java:513)
at com.google.common.util.concurrent.FluentFuture$TrustedFuture.get(FluentFuture.java:86)
at com.android.tools.r8.utils.U0.a(:14)
at com.android.tools.r8.utils.U0.a(:9)
... 39 more
[CIRCULAR REFERENCE:com.android.tools.r8.errors.a: Different stack heights at jump target: 0 != 1]
Caused by: com.android.tools.r8.errors.a: Different stack heights at jump target: 0 != 1
at com.android.tools.r8.ir.conversion.o.a(:243)
at com.android.tools.r8.ir.conversion.o.a(:157)
at com.android.tools.r8.ir.conversion.N.a(:133)
at com.android.tools.r8.graph.l.a(:93)
at com.android.tools.r8.graph.l.a(:71)
at com.android.tools.r8.graph.l.buildIR(:1)
at com.android.tools.r8.graph.C0.buildIR(:1)
at com.android.tools.r8.graph.T.a(:152)
at com.android.tools.r8.ir.conversion.O.a(:412)
at com.android.tools.r8.ir.conversion.O.b(:53)
... 52 more
sg...@google.com <sg...@google.com> #23
Please note that Android Studio 3.5 Canary 13 is a very old unsupported version. Please try the latest stable version 4.1.2, to see if the error is still present there.
Description
Gradle 5.4
> Task :app:transformClassesAndResourcesWithR8ForRelease
R8 is a new Android code shrinker. If you experience any issues, please file a bug at
disable R8 by updating gradle.properties with 'android.enableR8=false'.
Current version is: 1.5.20-dev (build a85ccd499f6d149322870a8aedddc92152071a01 from go/r8bot (luci-r8-ci-xenial-11-e43k))
> Task :app:transformClassesAndResourcesWithR8ForRelease FAILED
AGPBI: {"kind":"error","text":"Undefined value encountered during compilation. This is typically caused by invalid dex input that uses a register that is not define on all control-flow paths leading to the use.","sources":[{}],"tool":"R8"}
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':app:transformClassesAndResourcesWithR8ForRelease'.
> com.android.tools.r8.CompilationFailedException: Compilation failed to complete
* Try:
Run with --info or --debug option to get more log output. Run with --scan to get full insights.
* Exception is:
org.gradle.api.tasks.TaskExecutionException: Execution failed for task ':app:transformClassesAndResourcesWithR8ForRelease'.
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter$3.accept(ExecuteActionsTaskExecuter.java:151)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter$3.accept(ExecuteActionsTaskExecuter.java:148)
at org.gradle.internal.Try$Failure.ifSuccessfulOrElse(Try.java:191)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:141)
at org.gradle.api.internal.tasks.execution.ResolveBeforeExecutionStateTaskExecuter.execute(ResolveBeforeExecutionStateTaskExecuter.java:75)
at org.gradle.api.internal.tasks.execution.ValidatingTaskExecuter.execute(ValidatingTaskExecuter.java:62)
at org.gradle.api.internal.tasks.execution.SkipEmptySourceFilesTaskExecuter.execute(SkipEmptySourceFilesTaskExecuter.java:108)
at org.gradle.api.internal.tasks.execution.ResolveBeforeExecutionOutputsTaskExecuter.execute(ResolveBeforeExecutionOutputsTaskExecuter.java:67)
at org.gradle.api.internal.tasks.execution.StartSnapshotTaskInputsBuildOperationTaskExecuter.execute(StartSnapshotTaskInputsBuildOperationTaskExecuter.java:62)
at org.gradle.api.internal.tasks.execution.ResolveAfterPreviousExecutionStateTaskExecuter.execute(ResolveAfterPreviousExecutionStateTaskExecuter.java:46)
at org.gradle.api.internal.tasks.execution.CleanupStaleOutputsExecuter.execute(CleanupStaleOutputsExecuter.java:94)
at org.gradle.api.internal.tasks.execution.FinalizePropertiesTaskExecuter.execute(FinalizePropertiesTaskExecuter.java:46)
at org.gradle.api.internal.tasks.execution.ResolveTaskExecutionModeExecuter.execute(ResolveTaskExecutionModeExecuter.java:95)
at org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:57)
at org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(SkipOnlyIfTaskExecuter.java:56)
at org.gradle.api.internal.tasks.execution.CatchExceptionTaskExecuter.execute(CatchExceptionTaskExecuter.java:36)
at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.executeTask(EventFiringTaskExecuter.java:73)
at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.call(EventFiringTaskExecuter.java:52)
at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.call(EventFiringTaskExecuter.java:49)
at org.gradle.internal.operations.DefaultBuildOperationExecutor$CallableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:416)
at org.gradle.internal.operations.DefaultBuildOperationExecutor$CallableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:406)
at org.gradle.internal.operations.DefaultBuildOperationExecutor$1.execute(DefaultBuildOperationExecutor.java:165)
at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:250)
at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:158)
at org.gradle.internal.operations.DefaultBuildOperationExecutor.call(DefaultBuildOperationExecutor.java:102)
at org.gradle.internal.operations.DelegatingBuildOperationExecutor.call(DelegatingBuildOperationExecutor.java:36)
at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter.execute(EventFiringTaskExecuter.java:49)
at org.gradle.execution.plan.LocalTaskNodeExecutor.execute(LocalTaskNodeExecutor.java:43)
at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$InvokeNodeExecutorsAction.execute(DefaultTaskExecutionGraph.java:355)
at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$InvokeNodeExecutorsAction.execute(DefaultTaskExecutionGraph.java:343)
at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$BuildOperationAwareExecutionAction.execute(DefaultTaskExecutionGraph.java:336)
at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$BuildOperationAwareExecutionAction.execute(DefaultTaskExecutionGraph.java:322)
at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker$1.execute(DefaultPlanExecutor.java:134)
at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker$1.execute(DefaultPlanExecutor.java:129)
at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.execute(DefaultPlanExecutor.java:202)
at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.executeNextNode(DefaultPlanExecutor.java:193)
at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.run(DefaultPlanExecutor.java:129)
at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:63)
at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:46)
at org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.java:55)
Caused by: java.lang.RuntimeException: com.android.tools.r8.CompilationFailedException: Compilation failed to complete
at com.android.builder.profile.Recorder$Block.handleException(Recorder.java:55)
at com.android.builder.profile.ThreadRecorder.record(ThreadRecorder.java:108)
at com.android.build.gradle.internal.pipeline.TransformTask.transform(TransformTask.java:230)
at org.gradle.internal.reflect.JavaMethod.invoke(JavaMethod.java:103)
at org.gradle.api.internal.project.taskfactory.IncrementalTaskInputsTaskAction.doExecute(IncrementalTaskInputsTaskAction.java:46)
at org.gradle.api.internal.project.taskfactory.StandardTaskAction.execute(StandardTaskAction.java:41)
at org.gradle.api.internal.project.taskfactory.AbstractIncrementalTaskAction.execute(AbstractIncrementalTaskAction.java:25)
at org.gradle.api.internal.project.taskfactory.StandardTaskAction.execute(StandardTaskAction.java:28)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter$5.run(ExecuteActionsTaskExecuter.java:404)
at org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:402)
at org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:394)
at org.gradle.internal.operations.DefaultBuildOperationExecutor$1.execute(DefaultBuildOperationExecutor.java:165)
at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:250)
at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:158)
at org.gradle.internal.operations.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:92)
at org.gradle.internal.operations.DelegatingBuildOperationExecutor.run(DelegatingBuildOperationExecutor.java:31)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeAction(ExecuteActionsTaskExecuter.java:393)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:376)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.access$200(ExecuteActionsTaskExecuter.java:80)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter$TaskExecution.execute(ExecuteActionsTaskExecuter.java:213)
at org.gradle.internal.execution.steps.ExecuteStep.lambda$execute$0(ExecuteStep.java:32)
at org.gradle.internal.execution.steps.ExecuteStep.execute(ExecuteStep.java:32)
at org.gradle.internal.execution.steps.ExecuteStep.execute(ExecuteStep.java:26)
at org.gradle.internal.execution.steps.CleanupOutputsStep.execute(CleanupOutputsStep.java:58)
at org.gradle.internal.execution.steps.CleanupOutputsStep.execute(CleanupOutputsStep.java:35)
at org.gradle.internal.execution.steps.ResolveInputChangesStep.execute(ResolveInputChangesStep.java:48)
at org.gradle.internal.execution.steps.ResolveInputChangesStep.execute(ResolveInputChangesStep.java:33)
at org.gradle.internal.execution.steps.CancelExecutionStep.execute(CancelExecutionStep.java:39)
at org.gradle.internal.execution.steps.TimeoutStep.executeWithoutTimeout(TimeoutStep.java:73)
at org.gradle.internal.execution.steps.TimeoutStep.execute(TimeoutStep.java:54)
at org.gradle.internal.execution.steps.CatchExceptionStep.execute(CatchExceptionStep.java:35)
at org.gradle.internal.execution.steps.CreateOutputsStep.execute(CreateOutputsStep.java:51)
at org.gradle.internal.execution.steps.SnapshotOutputsStep.execute(SnapshotOutputsStep.java:45)
at org.gradle.internal.execution.steps.SnapshotOutputsStep.execute(SnapshotOutputsStep.java:31)
at org.gradle.internal.execution.steps.CacheStep.executeWithoutCache(CacheStep.java:201)
at org.gradle.internal.execution.steps.CacheStep.execute(CacheStep.java:70)
at org.gradle.internal.execution.steps.CacheStep.execute(CacheStep.java:45)
at org.gradle.internal.execution.steps.BroadcastChangingOutputsStep.execute(BroadcastChangingOutputsStep.java:49)
at org.gradle.internal.execution.steps.StoreSnapshotsStep.execute(StoreSnapshotsStep.java:43)
at org.gradle.internal.execution.steps.StoreSnapshotsStep.execute(StoreSnapshotsStep.java:32)
at org.gradle.internal.execution.steps.RecordOutputsStep.execute(RecordOutputsStep.java:38)
at org.gradle.internal.execution.steps.RecordOutputsStep.execute(RecordOutputsStep.java:24)
at org.gradle.internal.execution.steps.SkipUpToDateStep.executeBecause(SkipUpToDateStep.java:96)
at org.gradle.internal.execution.steps.SkipUpToDateStep.lambda$execute$0(SkipUpToDateStep.java:89)
at org.gradle.internal.execution.steps.SkipUpToDateStep.execute(SkipUpToDateStep.java:54)
at org.gradle.internal.execution.steps.SkipUpToDateStep.execute(SkipUpToDateStep.java:38)
at org.gradle.internal.execution.steps.ResolveChangesStep.execute(ResolveChangesStep.java:77)
at org.gradle.internal.execution.steps.ResolveChangesStep.execute(ResolveChangesStep.java:37)
at org.gradle.internal.execution.steps.legacy.MarkSnapshottingInputsFinishedStep.execute(MarkSnapshottingInputsFinishedStep.java:36)
at org.gradle.internal.execution.steps.legacy.MarkSnapshottingInputsFinishedStep.execute(MarkSnapshottingInputsFinishedStep.java:26)
at org.gradle.internal.execution.steps.ResolveCachingStateStep.execute(ResolveCachingStateStep.java:90)
at org.gradle.internal.execution.steps.ResolveCachingStateStep.execute(ResolveCachingStateStep.java:48)
at org.gradle.internal.execution.impl.DefaultWorkExecutor.execute(DefaultWorkExecutor.java:33)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:120)
... 36 more
Caused by: com.android.tools.r8.CompilationFailedException: Compilation failed to complete
at com.android.tools.r8.utils.t.a(:55)
at com.android.tools.r8.R8.runForTesting(:3)
at com.android.tools.r8.R8.run(:3)
at com.android.builder.dexing.R8Tool.runR8(r8Tool.kt:195)
at com.android.build.gradle.internal.transforms.R8Transform.transform(R8Transform.kt:261)
at com.android.build.gradle.internal.pipeline.TransformTask$2.call(TransformTask.java:239)
at com.android.build.gradle.internal.pipeline.TransformTask$2.call(TransformTask.java:235)
at com.android.builder.profile.ThreadRecorder.record(ThreadRecorder.java:106)
... 88 more
Caused by: com.android.tools.r8.utils.AbortException: Error: Undefined value encountered during compilation. This is typically caused by invalid dex input that uses a register that is not define on all control-flow paths leading to the use.
at com.android.tools.r8.utils.Reporter.a(:21)
at com.android.tools.r8.utils.Reporter.a(:7)
at com.android.tools.r8.utils.t.a(:36)
... 95 more
* Get more help at
BUILD FAILED in 58s
79 actionable tasks: 14 executed, 65 up-to-date
18:49:50: Task execution finished 'publishReleaseBundle'.