Make Kotlin JVM annotations available and use in ExoPlayer.

NoExternal

PiperOrigin-RevId: 262316962
This commit is contained in:
tonihei 2019-08-08 11:09:33 +01:00 committed by Oliver Woodman
parent 313bd10951
commit bbe681a904
4 changed files with 7 additions and 8 deletions

View File

@ -25,6 +25,7 @@ project.ext {
autoServiceVersion = '1.0-rc4' autoServiceVersion = '1.0-rc4'
checkerframeworkVersion = '2.5.0' checkerframeworkVersion = '2.5.0'
jsr305Version = '3.0.2' jsr305Version = '3.0.2'
kotlinAnnotationsVersion = '1.3.31'
androidXTestVersion = '1.1.0' androidXTestVersion = '1.1.0'
truthVersion = '0.44' truthVersion = '0.44'
modulePrefix = ':' modulePrefix = ':'

View File

@ -62,8 +62,7 @@ dependencies {
compileOnly 'com.google.code.findbugs:jsr305:' + jsr305Version compileOnly 'com.google.code.findbugs:jsr305:' + jsr305Version
compileOnly 'org.checkerframework:checker-qual:' + checkerframeworkVersion compileOnly 'org.checkerframework:checker-qual:' + checkerframeworkVersion
compileOnly 'org.checkerframework:checker-compat-qual:' + checkerframeworkVersion compileOnly 'org.checkerframework:checker-compat-qual:' + checkerframeworkVersion
// Uncomment to enable Kotlin non-null strict mode. See [internal: b/138703808]. compileOnly 'org.jetbrains.kotlin:kotlin-annotations-jvm:' + kotlinAnnotationsVersion
// compileOnly "org.jetbrains.kotlin:kotlin-annotations-jvm:1.1.60"
androidTestImplementation 'androidx.test:runner:' + androidXTestVersion androidTestImplementation 'androidx.test:runner:' + androidXTestVersion
androidTestImplementation 'androidx.test.ext:junit:' + androidXTestVersion androidTestImplementation 'androidx.test.ext:junit:' + androidXTestVersion
androidTestImplementation 'com.google.truth:truth:' + truthVersion androidTestImplementation 'com.google.truth:truth:' + truthVersion

View File

@ -58,5 +58,6 @@
<init>(com.google.android.exoplayer2.upstream.DataSource$Factory); <init>(com.google.android.exoplayer2.upstream.DataSource$Factory);
} }
# Don't warn about checkerframework # Don't warn about checkerframework and Kotlin annotations
-dontwarn org.checkerframework.** -dontwarn org.checkerframework.**
-dontwarn kotlin.annotations.jvm.**

View File

@ -20,8 +20,8 @@ import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy; import java.lang.annotation.RetentionPolicy;
import javax.annotation.Nonnull; import javax.annotation.Nonnull;
import javax.annotation.meta.TypeQualifierDefault; import javax.annotation.meta.TypeQualifierDefault;
// import kotlin.annotations.jvm.MigrationStatus; import kotlin.annotations.jvm.MigrationStatus;
// import kotlin.annotations.jvm.UnderMigration; import kotlin.annotations.jvm.UnderMigration;
/** /**
* Annotation to declare all type usages in the annotated instance as {@link Nonnull}, unless * Annotation to declare all type usages in the annotated instance as {@link Nonnull}, unless
@ -29,8 +29,6 @@ import javax.annotation.meta.TypeQualifierDefault;
*/ */
@Nonnull @Nonnull
@TypeQualifierDefault(ElementType.TYPE_USE) @TypeQualifierDefault(ElementType.TYPE_USE)
// TODO(internal: b/138703808): Uncomment to ensure Kotlin issues compiler errors when non-null @UnderMigration(status = MigrationStatus.STRICT)
// types are used incorrectly.
// @UnderMigration(status = MigrationStatus.STRICT)
@Retention(RetentionPolicy.CLASS) @Retention(RetentionPolicy.CLASS)
public @interface NonNullApi {} public @interface NonNullApi {}