From 73a2d6cf173cedd4d6c85a9140b78c49e3e4bca8 Mon Sep 17 00:00:00 2001 From: Infi Date: Mon, 7 Jul 2025 21:45:48 +0200 Subject: [PATCH] feat: retry on 5xx and exceptions Signed-off-by: Infi --- app/src/main/java/chat/revolt/api/RevoltAPI.kt | 18 +++++++----------- 1 file changed, 7 insertions(+), 11 deletions(-) diff --git a/app/src/main/java/chat/revolt/api/RevoltAPI.kt b/app/src/main/java/chat/revolt/api/RevoltAPI.kt index 0e5b66ee..bdbc1e00 100644 --- a/app/src/main/java/chat/revolt/api/RevoltAPI.kt +++ b/app/src/main/java/chat/revolt/api/RevoltAPI.kt @@ -71,8 +71,6 @@ fun buildUserAgent(accessMethod: String = "Ktor"): String { return "$accessMethod RevoltAndroid/${BuildConfig.VERSION_NAME} ${BuildConfig.APPLICATION_ID} (Android ${android.os.Build.VERSION.SDK_INT}; ${android.os.Build.MANUFACTURER} ${android.os.Build.DEVICE}; (Kotlin ${KotlinVersion.CURRENT})" } -private const val BACKEND_IS_STABLE = false - @OptIn(ExperimentalSerializationApi::class) val RevoltJson = Json { ignoreUnknownKeys = true @@ -92,17 +90,15 @@ val RevoltHttp = HttpClient(OkHttp) { install(WebSockets) - if (BACKEND_IS_STABLE) { - install(HttpRequestRetry) { - retryOnServerErrors(maxRetries = 5) - retryOnException(maxRetries = 5) + install(HttpRequestRetry) { + retryOnServerErrors(maxRetries = 5) + retryOnException(maxRetries = 5) - modifyRequest { request -> - request.headers.append("x-retry-count", retryCount.toString()) - } - - exponentialDelay() + modifyRequest { request -> + request.headers.append("x-retry-count", retryCount.toString()) } + + exponentialDelay() } install(Logging) { level = LogLevel.INFO }