Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 3 additions & 1 deletion build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -52,14 +52,16 @@ allprojects {

tasks.withType<KotlinCompile>().configureEach {
kotlinOptions {
jvmTarget = "1.8"
allWarningsAsErrors = true
useIR = true

val arguments = mutableListOf("-progressive", "-Xopt-in=kotlin.RequiresOptIn")
if (project.name != "coil-test") {
arguments += "-Xopt-in=coil.annotation.ExperimentalCoilApi"
arguments += "-Xopt-in=coil.annotation.InternalCoilApi"
}
freeCompilerArgs = arguments
jvmTarget = "1.8"
}
}

Expand Down
20 changes: 18 additions & 2 deletions coil-base/api/coil-base.api
Original file line number Diff line number Diff line change
Expand Up @@ -347,6 +347,22 @@ public final class coil/memory/MemoryCache$Key$Companion {
public final fun create (Ljava/lang/String;)Lcoil/memory/MemoryCache$Key;
}

public final class coil/memory/MemoryCache$Key$Complex$Creator : android/os/Parcelable$Creator {
public fun <init> ()V
public final fun createFromParcel (Landroid/os/Parcel;)Lcoil/memory/MemoryCache$Key$Complex;
public synthetic fun createFromParcel (Landroid/os/Parcel;)Ljava/lang/Object;
public final fun newArray (I)[Lcoil/memory/MemoryCache$Key$Complex;
public synthetic fun newArray (I)[Ljava/lang/Object;
}

public final class coil/memory/MemoryCache$Key$Simple$Creator : android/os/Parcelable$Creator {
public fun <init> ()V
public final fun createFromParcel (Landroid/os/Parcel;)Lcoil/memory/MemoryCache$Key$Simple;
public synthetic fun createFromParcel (Landroid/os/Parcel;)Ljava/lang/Object;
public final fun newArray (I)[Lcoil/memory/MemoryCache$Key$Simple;
public synthetic fun newArray (I)[Ljava/lang/Object;
}

public final class coil/network/HttpException : java/lang/RuntimeException {
public fun <init> (Lokhttp3/Response;)V
public final fun getResponse ()Lokhttp3/Response;
Expand Down Expand Up @@ -660,7 +676,7 @@ public final class coil/size/OriginalSize : coil/size/Size {
public fun writeToParcel (Landroid/os/Parcel;I)V
}

public class coil/size/OriginalSize$Creator : android/os/Parcelable$Creator {
public final class coil/size/OriginalSize$Creator : android/os/Parcelable$Creator {
Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Interestingly this is not a binary incompatible change, however classes that extend this class with throw a VerifyError when instantiated. Assuming the Kotlin team has taken this into account.

public fun <init> ()V
public final fun createFromParcel (Landroid/os/Parcel;)Lcoil/size/OriginalSize;
public synthetic fun createFromParcel (Landroid/os/Parcel;)Ljava/lang/Object;
Expand All @@ -684,7 +700,7 @@ public final class coil/size/PixelSize : coil/size/Size {
public fun writeToParcel (Landroid/os/Parcel;I)V
}

public class coil/size/PixelSize$Creator : android/os/Parcelable$Creator {
public final class coil/size/PixelSize$Creator : android/os/Parcelable$Creator {
public fun <init> ()V
public final fun createFromParcel (Landroid/os/Parcel;)Lcoil/size/PixelSize;
public synthetic fun createFromParcel (Landroid/os/Parcel;)Ljava/lang/Object;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -336,7 +336,7 @@ internal class EngineInterceptor(

/** Apply any [Transformation]s and return an updated [DrawableResult]. */
@VisibleForTesting
internal suspend inline fun applyTransformations(
suspend inline fun applyTransformations(
result: DrawableResult,
request: ImageRequest,
size: Size,
Expand Down
1 change: 1 addition & 0 deletions coil-video/api/coil-video.api
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ public abstract class coil/fetch/VideoFrameFetcher : coil/fetch/Fetcher {
public static final field VIDEO_FRAME_OPTION_KEY Ljava/lang/String;
public fun <init> (Landroid/content/Context;)V
public fun fetch (Lcoil/bitmap/BitmapPool;Ljava/lang/Object;Lcoil/size/Size;Lcoil/decode/Options;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
public static final synthetic fun fetch$suspendImpl (Lcoil/fetch/VideoFrameFetcher;Lcoil/bitmap/BitmapPool;Ljava/lang/Object;Lcoil/size/Size;Lcoil/decode/Options;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It's a bug in 1.4.31 that this is declared public, but it can't be called by Java and it's a Kotlin implementation detail so I wouldn't consider it part of the public API.

public fun handles (Ljava/lang/Object;)Z
protected abstract fun setDataSource (Landroid/media/MediaMetadataRetriever;Ljava/lang/Object;)V
}
Expand Down