diff --git a/buildSrc/src/main/kotlin/kotlin-conventions.gradle.kts b/buildSrc/src/main/kotlin/kotlin-conventions.gradle.kts index 27253dc..06f52a3 100644 --- a/buildSrc/src/main/kotlin/kotlin-conventions.gradle.kts +++ b/buildSrc/src/main/kotlin/kotlin-conventions.gradle.kts @@ -30,6 +30,7 @@ tasks.withType { jvmTarget = "11" languageVersion = "1.6" apiVersion = "1.6" + freeCompilerArgs += "-opt-in=kotlin.RequiresOptIn" } } diff --git a/model/src/main/kotlin/com/toasttab/expediter/issue/IssueReport.kt b/model/src/main/kotlin/com/toasttab/expediter/issue/IssueReport.kt index f3fc13c..cfa0ea8 100644 --- a/model/src/main/kotlin/com/toasttab/expediter/issue/IssueReport.kt +++ b/model/src/main/kotlin/com/toasttab/expediter/issue/IssueReport.kt @@ -15,6 +15,7 @@ package com.toasttab.expediter.issue +import kotlinx.serialization.ExperimentalSerializationApi import kotlinx.serialization.Serializable import kotlinx.serialization.encodeToString import kotlinx.serialization.json.Json @@ -34,9 +35,13 @@ class IssueReport( } fun fromJson(string: String) = JSON.decodeFromString(string) + + @OptIn(ExperimentalSerializationApi::class) fun fromJson(stream: InputStream) = JSON.decodeFromStream(stream) } fun toJson() = JSON.encodeToString(this) + + @OptIn(ExperimentalSerializationApi::class) fun toJson(stream: OutputStream) = JSON.encodeToStream(this, stream) } diff --git a/plugin/src/main/kotlin/com/toasttab/expediter/gradle/ExpediterPlugin.kt b/plugin/src/main/kotlin/com/toasttab/expediter/gradle/ExpediterPlugin.kt index 96a4d58..35916dd 100644 --- a/plugin/src/main/kotlin/com/toasttab/expediter/gradle/ExpediterPlugin.kt +++ b/plugin/src/main/kotlin/com/toasttab/expediter/gradle/ExpediterPlugin.kt @@ -73,6 +73,7 @@ class ExpediterPlugin : Plugin { ignore = extension.ignoreSpec.buildIgnore() + @Suppress("DEPRECATION") ignoreFile = (extension.ignoreSpec.file ?: extension.ignoreFile)?.let { project.file(it) } report = project.layout.buildDirectory.file("expediter.json").get().asFile