0.4.1: performance, incompatible keys ID (as of crypto2 upgrade), fixed tests to properly run on Macos on arm64 target

This commit is contained in:
Sergey Chernov 2024-08-19 18:34:11 +02:00
parent 9ddb1209c9
commit 26564b6081
4 changed files with 13 additions and 10 deletions

View File

@ -1,7 +1,7 @@
# Kiloparsec # Kiloparsec
__Recommended version is `0.3.3`: to keep the code compatible with current and further versions we __Recommended version is `0.4.1`: to keep the code compatible with current and further versions we
ask to upgrade to `0.3.2` at least.__ Starting from this version some pacakage names are changed for ask to upgrade to `0.4.2` at least.__ Starting from this version some pacakage names are changed for
better clarity and fast UDP endpoints are added. better clarity and fast UDP endpoints are added.
The new generation of __PARanoid SECurity__ protocol, advanced, faster, more secure. It also allows connecting any " The new generation of __PARanoid SECurity__ protocol, advanced, faster, more secure. It also allows connecting any "
@ -22,6 +22,10 @@ provides the following transports:
Protocols >= 0.3.0 are not binary compatible with previous version due to more compact binary Protocols >= 0.3.0 are not binary compatible with previous version due to more compact binary
format. The format from 0.3.0 onwards is supposed to keep compatible. format. The format from 0.3.0 onwards is supposed to keep compatible.
#### ID calculation algorithm is changed since 0.4.1
We recommend to upgrade to 0.4+ ASAP as public/shared key id derivation method was changed for even higher security.
### Supported native targets ### Supported native targets
- iosArm64, iosX64 - iosArm64, iosX64
@ -76,7 +80,7 @@ It could be, depending on your project structure, something like:
```kotlin ```kotlin
val commonMain by getting { val commonMain by getting {
dependencies { dependencies {
api("net.sergeych:kiloparsec:0.3.2") api("net.sergeych:kiloparsec:0.4.1")
} }
} }
``` ```

View File

@ -6,7 +6,7 @@ plugins {
} }
group = "net.sergeych" group = "net.sergeych"
version = "0.3.3" version = "0.4.1"
repositories { repositories {
mavenCentral() mavenCentral()
@ -44,7 +44,7 @@ kotlin {
implementation("org.jetbrains.kotlinx:kotlinx-coroutines-core:1.7.3") implementation("org.jetbrains.kotlinx:kotlinx-coroutines-core:1.7.3")
implementation("org.jetbrains.kotlinx:kotlinx-serialization-json:1.7.1") implementation("org.jetbrains.kotlinx:kotlinx-serialization-json:1.7.1")
api("io.ktor:ktor-client-core:$ktor_version") api("io.ktor:ktor-client-core:$ktor_version")
api("net.sergeych:crypto2:0.4.2") api("net.sergeych:crypto2:0.5.3")
} }
} }
val ktorSocketMain by creating { val ktorSocketMain by creating {

View File

@ -231,7 +231,6 @@ class Transport<S>(
.also { debug { "command executed: ${b.name}" } } .also { debug { "command executed: ${b.name}" } }
} }
} }
debug { "=---------------------------------------------" }
} }
debug { "input step performed closed=$isClosed active=$isActive" } debug { "input step performed closed=$isClosed active=$isActive" }
} catch (_: ClosedSendChannelException) { } catch (_: ClosedSendChannelException) {

View File

@ -104,7 +104,7 @@ class InternetrTest {
val client = KiloClient<Unit>() { val client = KiloClient<Unit>() {
addErrors(cli) addErrors(cli)
connect { connectUdpDevice("localhost:$port") } connect { connectUdpDevice("127.0.0.1:$port") }
} }
assertEquals("start", client.call(cmdLoad)) assertEquals("start", client.call(cmdLoad))
@ -132,7 +132,7 @@ class InternetrTest {
var data: String, var data: String,
) )
val port = 27170 + Random.nextInt(1, 200) val port = 27170 + Random.nextInt(1, 900)
val cmdSave by command<String, Unit>() val cmdSave by command<String, Unit>()
val cmdLoad by command<Unit, String>() val cmdLoad by command<Unit, String>()
@ -165,9 +165,9 @@ class InternetrTest {
val client = KiloClient<Unit>() { val client = KiloClient<Unit>() {
addErrors(cli) addErrors(cli)
connect { connectUdpDevice("localhost:$port") } connect { connectUdpDevice("127.0.0.1:$port") }
} }
val client2 = KiloClient<Unit>() { connect { connectUdpDevice("localhost:${port+1}") } } val client2 = KiloClient<Unit>() { connect { connectUdpDevice("127.0.0.1:${port+1}") } }
assertEquals("start", client.call(cmdLoad)) assertEquals("start", client.call(cmdLoad))
assertEquals("start", client2.call(cmdLoad)) assertEquals("start", client2.call(cmdLoad))