Remove Ktorfit

This commit is contained in:
Syer10
2025-10-03 21:26:29 -04:00
parent bdd4ef20cb
commit 9c8fd0257d
9 changed files with 0 additions and 96 deletions

View File

@@ -65,10 +65,6 @@ dependencies {
implementation(libs.ktor.websockets) implementation(libs.ktor.websockets)
implementation(libs.ktor.auth) implementation(libs.ktor.auth)
// Ktorfit
implementation(libs.ktorfit.lib)
ksp(libs.ktorfit.ksp)
// Apollo GraphQL // Apollo GraphQL
implementation(libs.apollo.runtime) implementation(libs.apollo.runtime)
implementation(libs.apollo.engine.ktor) implementation(libs.apollo.engine.ktor)

View File

@@ -2,7 +2,6 @@ import Config.migrationCode
import Config.serverCode import Config.serverCode
import Config.tachideskVersion import Config.tachideskVersion
import com.codingfeline.buildkonfig.compiler.FieldSpec.Type import com.codingfeline.buildkonfig.compiler.FieldSpec.Type
import de.jensklingenberg.ktorfit.gradle.ErrorCheckingMode
import org.jetbrains.compose.ComposeExtension import org.jetbrains.compose.ComposeExtension
import org.jetbrains.compose.ComposePlugin import org.jetbrains.compose.ComposePlugin
import org.jetbrains.kotlin.gradle.dsl.KotlinMultiplatformExtension import org.jetbrains.kotlin.gradle.dsl.KotlinMultiplatformExtension
@@ -17,7 +16,6 @@ plugins {
alias(libs.plugins.buildkonfig) apply false alias(libs.plugins.buildkonfig) apply false
alias(libs.plugins.moko.gradle) apply false alias(libs.plugins.moko.gradle) apply false
alias(libs.plugins.kotlinter) apply false alias(libs.plugins.kotlinter) apply false
alias(libs.plugins.ktorfit) apply false
alias(libs.plugins.aboutLibraries) apply false alias(libs.plugins.aboutLibraries) apply false
alias(libs.plugins.apollo) apply false alias(libs.plugins.apollo) apply false
alias(libs.plugins.versions) alias(libs.plugins.versions)
@@ -127,12 +125,6 @@ subprojects {
} }
} }
plugins.withType<de.jensklingenberg.ktorfit.gradle.KtorfitGradlePlugin> {
configure<de.jensklingenberg.ktorfit.gradle.KtorfitGradleConfiguration> {
errorCheckingMode = ErrorCheckingMode.WARNING
}
}
plugins.withType<JacocoPlugin> { plugins.withType<JacocoPlugin> {
configure<JacocoPluginExtension> { configure<JacocoPluginExtension> {
toolVersion = "0.8.10" toolVersion = "0.8.10"

View File

@@ -69,7 +69,6 @@ kotlin {
api(libs.dateTime) api(libs.dateTime)
implementation(libs.apollo.runtime) implementation(libs.apollo.runtime)
implementation(libs.apollo.engine.ktor) implementation(libs.apollo.engine.ktor)
implementation(libs.ktorfit.lib)
api(projects.core) api(projects.core)
api(projects.i18n) api(projects.i18n)
api(projects.domain) api(projects.domain)

View File

@@ -6,7 +6,6 @@
package ca.gosyer.jui.data package ca.gosyer.jui.data
import ca.gosyer.jui.core.lang.addSuffix
import ca.gosyer.jui.data.backup.BackupRepositoryImpl import ca.gosyer.jui.data.backup.BackupRepositoryImpl
import ca.gosyer.jui.data.category.CategoryRepositoryImpl import ca.gosyer.jui.data.category.CategoryRepositoryImpl
import ca.gosyer.jui.data.chapter.ChapterRepositoryImpl import ca.gosyer.jui.data.chapter.ChapterRepositoryImpl
@@ -34,7 +33,6 @@ import ca.gosyer.jui.domain.updates.service.UpdatesRepository
import com.apollographql.apollo.ApolloClient import com.apollographql.apollo.ApolloClient
import com.apollographql.apollo.network.ws.GraphQLWsProtocol import com.apollographql.apollo.network.ws.GraphQLWsProtocol
import com.apollographql.ktor.ktorClient import com.apollographql.ktor.ktorClient
import de.jensklingenberg.ktorfit.Ktorfit
import io.ktor.http.URLBuilder import io.ktor.http.URLBuilder
import io.ktor.http.appendPathSegments import io.ktor.http.appendPathSegments
import kotlinx.coroutines.Dispatchers import kotlinx.coroutines.Dispatchers
@@ -42,17 +40,6 @@ import kotlinx.coroutines.IO
import me.tatarka.inject.annotations.Provides import me.tatarka.inject.annotations.Provides
interface DataComponent : SharedDataComponent { interface DataComponent : SharedDataComponent {
@Provides
fun ktorfit(
http: Http,
serverPreferences: ServerPreferences,
) = Ktorfit
.Builder()
.httpClient(http)
.converterFactories(FlowConverterFactory())
.baseUrl(serverPreferences.serverUrl().get().toString().addSuffix('/'))
.build()
@Provides @Provides
fun apolloClient( fun apolloClient(
http: Http, http: Http,

View File

@@ -1,53 +0,0 @@
/*
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at https://mozilla.org/MPL/2.0/.
*/
package ca.gosyer.jui.data
import de.jensklingenberg.ktorfit.Ktorfit
import de.jensklingenberg.ktorfit.converter.Converter
import de.jensklingenberg.ktorfit.converter.KtorfitResult
import de.jensklingenberg.ktorfit.converter.TypeData
import io.ktor.client.call.body
import io.ktor.client.statement.HttpResponse
import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.IO
import kotlinx.coroutines.flow.Flow
import kotlinx.coroutines.flow.flow
import kotlinx.coroutines.flow.flowOn
class FlowConverterFactory : Converter.Factory {
private class FlowResponseConverter(
val typeData: TypeData,
val ktorfit: Ktorfit,
) : Converter.ResponseConverter<HttpResponse, Flow<Any?>> {
override fun convert(getResponse: suspend () -> HttpResponse): Flow<Any?> =
flow {
val response = getResponse()
val convertedBody = ktorfit.nextSuspendResponseConverter(
null,
typeData.typeArgs.first(),
)?.convert(KtorfitResult.Success(response))
?: response.body(typeData.typeArgs.first().typeInfo)
emit(convertedBody)
}.flowOn(Dispatchers.IO)
}
override fun responseConverter(
typeData: TypeData,
ktorfit: Ktorfit,
): Converter.ResponseConverter<HttpResponse, *>? {
if (typeData.typeInfo.type == Flow::class) {
return FlowResponseConverter(typeData, ktorfit)
}
return null
}
override fun suspendResponseConverter(
typeData: TypeData,
ktorfit: Ktorfit,
): Converter.SuspendResponseConverter<HttpResponse, *>? = null
}

View File

@@ -65,10 +65,6 @@ dependencies {
implementation(libs.ktor.websockets) implementation(libs.ktor.websockets)
implementation(libs.ktor.auth) implementation(libs.ktor.auth)
// Ktorfit
implementation(libs.ktorfit.lib)
ksp(libs.ktorfit.ksp)
// Apollo GraphQL // Apollo GraphQL
implementation(libs.apollo.runtime) implementation(libs.apollo.runtime)
implementation(libs.apollo.engine.ktor) implementation(libs.apollo.engine.ktor)

View File

@@ -7,7 +7,6 @@ plugins {
id(libs.plugins.ksp.get().pluginId) id(libs.plugins.ksp.get().pluginId)
id(libs.plugins.buildkonfig.get().pluginId) id(libs.plugins.buildkonfig.get().pluginId)
id(libs.plugins.kotlinter.get().pluginId) id(libs.plugins.kotlinter.get().pluginId)
id(libs.plugins.ktorfit.get().pluginId)
} }
kotlin { kotlin {
@@ -57,7 +56,6 @@ kotlin {
languageSettings { languageSettings {
optIn("kotlin.RequiresOptIn") optIn("kotlin.RequiresOptIn")
optIn("kotlinx.coroutines.ExperimentalCoroutinesApi") optIn("kotlinx.coroutines.ExperimentalCoroutinesApi")
optIn("de.jensklingenberg.ktorfit.internal.InternalKtorfitApi")
} }
} }
val commonMain by getting { val commonMain by getting {
@@ -72,7 +70,6 @@ kotlin {
api(libs.ktor.auth) api(libs.ktor.auth)
api(libs.ktor.logging) api(libs.ktor.logging)
api(libs.ktor.websockets) api(libs.ktor.websockets)
api(libs.ktorfit.lib)
api(libs.okio) api(libs.okio)
api(libs.dateTime) api(libs.dateTime)
api(compose("org.jetbrains.compose.runtime:runtime")) api(compose("org.jetbrains.compose.runtime:runtime"))

View File

@@ -38,8 +38,6 @@ kotlinInject = "0.7.2"
# Network # Network
ktor = "2.3.12" ktor = "2.3.12"
ktorfit = "2.1.0"
ktorfitKsp = "2.1.0-1.0.25"
apollo = "4.0.0" apollo = "4.0.0"
apolloKtor = "0.0.2" apolloKtor = "0.0.2"
@@ -131,8 +129,6 @@ ktor-serialization-json = { module = "io.ktor:ktor-serialization-kotlinx-json",
ktor-logging = { module = "io.ktor:ktor-client-logging", version.ref = "ktor" } ktor-logging = { module = "io.ktor:ktor-client-logging", version.ref = "ktor" }
ktor-websockets = { module = "io.ktor:ktor-client-websockets", version.ref = "ktor" } ktor-websockets = { module = "io.ktor:ktor-client-websockets", version.ref = "ktor" }
ktor-auth = { module = "io.ktor:ktor-client-auth", version.ref = "ktor" } ktor-auth = { module = "io.ktor:ktor-client-auth", version.ref = "ktor" }
ktorfit-lib = { module = "de.jensklingenberg.ktorfit:ktorfit-lib-light", version.ref = "ktorfit" }
ktorfit-ksp = { module = "de.jensklingenberg.ktorfit:ktorfit-ksp", version.ref = "ktorfitKsp" }
apollo-runtime = { module = "com.apollographql.apollo:apollo-runtime", version.ref = "apollo" } apollo-runtime = { module = "com.apollographql.apollo:apollo-runtime", version.ref = "apollo" }
apollo-engine-ktor = { module = "com.apollographql.ktor:apollo-engine-ktor", version.ref = "apolloKtor" } apollo-engine-ktor = { module = "com.apollographql.ktor:apollo-engine-ktor", version.ref = "apolloKtor" }
@@ -193,7 +189,6 @@ compose = { id = "org.jetbrains.compose", version.ref = "composeGradle" }
ksp = { id = "com.google.devtools.ksp", version.ref = "ksp" } ksp = { id = "com.google.devtools.ksp", version.ref = "ksp" }
# Network # Network
ktorfit = { id = "de.jensklingenberg.ktorfit", version.ref = "ktorfit" }
apollo = { id = "com.apollographql.apollo", version.ref = "apollo" } apollo = { id = "com.apollographql.apollo", version.ref = "apollo" }
# Localization # Localization

View File

@@ -9,7 +9,6 @@ plugins {
id(libs.plugins.buildkonfig.get().pluginId) id(libs.plugins.buildkonfig.get().pluginId)
id(libs.plugins.kotlinter.get().pluginId) id(libs.plugins.kotlinter.get().pluginId)
id(libs.plugins.aboutLibraries.get().pluginId) id(libs.plugins.aboutLibraries.get().pluginId)
id(libs.plugins.ktorfit.get().pluginId)
} }
kotlin { kotlin {
@@ -82,9 +81,6 @@ kotlin {
implementation(libs.ktor.websockets) implementation(libs.ktor.websockets)
implementation(libs.ktor.auth) implementation(libs.ktor.auth)
// Ktorfit
implementation(libs.ktorfit.lib)
// Apollo GraphQL // Apollo GraphQL
implementation(libs.apollo.runtime) implementation(libs.apollo.runtime)
implementation(libs.apollo.engine.ktor) implementation(libs.apollo.engine.ktor)
@@ -127,7 +123,6 @@ dependencies {
"kspUikitX64" "kspUikitX64"
).forEach { ).forEach {
add(it, libs.kotlinInject.compiler) add(it, libs.kotlinInject.compiler)
add(it, libs.ktorfit.ksp)
} }
} }