diff --git a/CHANGELOG.md b/CHANGELOG.md index d8f64900929..f656e7402d1 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,11 @@ # Changelog +## 0.9.24 + +* `Ktor`: + * `Common`: + * New extension fun `MPPFile#input` + ## 0.9.23 * `Repos`: diff --git a/gradle.properties b/gradle.properties index 05b78a91bb6..7b86c0ae8a7 100644 --- a/gradle.properties +++ b/gradle.properties @@ -14,5 +14,5 @@ crypto_js_version=4.1.1 # Project data group=dev.inmo -version=0.9.23 -android_code_version=113 +version=0.9.24 +android_code_version=114 diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index c31524d819f..e269769e4c8 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -39,6 +39,7 @@ kt-coroutines = { module = "org.jetbrains.kotlinx:kotlinx-coroutines-core", vers kt-coroutines-android = { module = "org.jetbrains.kotlinx:kotlinx-coroutines-android", version.ref = "kt-coroutines" } +ktor-io = { module = "io.ktor:ktor-io", version.ref = "ktor" } ktor-client = { module = "io.ktor:ktor-client-core", version.ref = "ktor" } ktor-client-java = { module = "io.ktor:ktor-client-java", version.ref = "ktor" } ktor-server = { module = "io.ktor:ktor-server", version.ref = "ktor" } diff --git a/ktor/common/build.gradle b/ktor/common/build.gradle index 7446daad0c7..6b1c636a8a9 100644 --- a/ktor/common/build.gradle +++ b/ktor/common/build.gradle @@ -14,6 +14,7 @@ kotlin { api libs.kt.serialization.cbor api libs.klock api libs.uuid + api libs.ktor.io } } } diff --git a/ktor/common/src/commonMain/kotlin/dev/inmo/micro_utils/ktor/common/MPPFileInput.kt b/ktor/common/src/commonMain/kotlin/dev/inmo/micro_utils/ktor/common/MPPFileInput.kt new file mode 100644 index 00000000000..3d1c742fb73 --- /dev/null +++ b/ktor/common/src/commonMain/kotlin/dev/inmo/micro_utils/ktor/common/MPPFileInput.kt @@ -0,0 +1,6 @@ +package dev.inmo.micro_utils.ktor.common + +import dev.inmo.micro_utils.common.MPPFile +import io.ktor.utils.io.core.Input + +expect fun MPPFile.input(): Input diff --git a/ktor/common/src/jsMain/kotlin/dev/inmo/micro_utils/ktor/common/ActualMPPFileInput.kt b/ktor/common/src/jsMain/kotlin/dev/inmo/micro_utils/ktor/common/ActualMPPFileInput.kt new file mode 100644 index 00000000000..8144362a2d9 --- /dev/null +++ b/ktor/common/src/jsMain/kotlin/dev/inmo/micro_utils/ktor/common/ActualMPPFileInput.kt @@ -0,0 +1,7 @@ +package dev.inmo.micro_utils.ktor.common + +import dev.inmo.micro_utils.common.* +import io.ktor.utils.io.core.ByteReadPacket +import io.ktor.utils.io.core.Input + +actual fun MPPFile.input(): Input = ByteReadPacket(readBytes()) diff --git a/ktor/common/src/jvmMain/kotlin/dev/inmo/micro_utils/ktor/common/ActualMPPFileInput.kt b/ktor/common/src/jvmMain/kotlin/dev/inmo/micro_utils/ktor/common/ActualMPPFileInput.kt new file mode 100644 index 00000000000..10865adc6cc --- /dev/null +++ b/ktor/common/src/jvmMain/kotlin/dev/inmo/micro_utils/ktor/common/ActualMPPFileInput.kt @@ -0,0 +1,7 @@ +package dev.inmo.micro_utils.ktor.common + +import dev.inmo.micro_utils.common.MPPFile +import io.ktor.utils.io.core.Input +import io.ktor.utils.io.streams.asInput + +actual fun MPPFile.input(): Input = inputStream().asInput()