-
Notifications
You must be signed in to change notification settings - Fork 11.1k
Open
Labels
P3no SLOno SLOpackage=generaltype=enhancementMake an existing feature betterMake an existing feature better
Description
When we upgraded Truth we started getting crashes like this:
java.lang.NoSuchMethodError: 'java.util.stream.Collector com.google.common.collect.Sets.toImmutableEnumSet()'
at com.android.resources.ResourceType.<clinit>(ResourceType.java:175)
at app.cash.paparazzi.internal.DynamicResourceIdManager$IdProvider.<init>(DynamicResourceIdManager.kt:14)
at app.cash.paparazzi.internal.DynamicResourceIdManager.<init>(DynamicResourceIdManager.kt:28)
at app.cash.paparazzi.internal.PaparazziCallback.<init>(PaparazziCallback.kt:52)
at app.cash.paparazzi.Paparazzi.prepare(Paparazzi.kt:145)
at app.cash.paparazzi.Paparazzi$apply$statement$1.evaluate(Paparazzi.kt:116)
As @TWiStErRob explains on Paparazzi #906:
This came back in Truth 1.1.5 because Paparazzi depends on 32.0.0-jre vs Truth uses 32.0.1-android, and the higher version number wins. Looks like the workaround has to stay.
A very simple fix for our problem is for Guava to support the toImmutableEnumSet()
function on all platforms. I don’t believe this function needs the same implementation on all platforms; it just needs something so we don’t crash at runtime.
Egorand, jrodbx, oldergod, TWiStErRob, illarionov and 2 more
Metadata
Metadata
Assignees
Labels
P3no SLOno SLOpackage=generaltype=enhancementMake an existing feature betterMake an existing feature better