From 693d552ad23625d5451e4f75ecb0f554a80141ea Mon Sep 17 00:00:00 2001 From: InsanusMokrassar Date: Thu, 19 Mar 2026 16:49:21 +0600 Subject: [PATCH] fix of HttpClient setup in PlaguBot --- CHANGELOG.md | 3 +++ .../main/kotlin/dev/inmo/plagubot/PlaguBot.kt | 18 ++++++++++-------- 2 files changed, 13 insertions(+), 8 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 724b74e..6a2eb16 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,9 @@ ## 11.1.1 +* `Bot`: + * Logic of creating `HttpClient` now works even if proxy is ommited + ## 11.1.0 * `Bot`: diff --git a/bot/src/main/kotlin/dev/inmo/plagubot/PlaguBot.kt b/bot/src/main/kotlin/dev/inmo/plagubot/PlaguBot.kt index 610c5e5..198676e 100644 --- a/bot/src/main/kotlin/dev/inmo/plagubot/PlaguBot.kt +++ b/bot/src/main/kotlin/dev/inmo/plagubot/PlaguBot.kt @@ -62,17 +62,19 @@ object PlaguBot : Plugin { */ override fun KtorRequestsExecutorBuilder.setupBotClient(scope: Scope, params: JsonObject) { val config = scope.get() - if (config.proxy != null) { + val clientFromHttpClientEngine = scope.getOrNull() ?.let { + HttpClient(it) + } + val clientFromKoin = clientFromHttpClientEngine ?: (scope.getOrNull>() ?: OkHttp).let { + HttpClient(it) + } + this@setupBotClient.client = if (config.proxy != null) { val initialClient = config.proxy.createDefaultClient() - val clientFromHttpClientEngine = scope.getOrNull() ?.let { - HttpClient(it) - } - val clientFromKoin = clientFromHttpClientEngine ?: (scope.getOrNull>() ?: OkHttp).let { - HttpClient(it) - } - this@setupBotClient.client = initialClient.config { + initialClient.config { install(clientFromKoin) } + } else { + clientFromKoin } scope.plugins.filter { it !== this@PlaguBot }.forEach { with(it) {