update versions

This commit is contained in:
2020-08-18 10:53:53 +06:00
parent 3ab7451b2e
commit fc8c0cfc73
33 changed files with 70 additions and 96 deletions
core
api
build.gradle
src
commonTest
kotlin
com
insanusmokrassar
postssystem
ktor
client
common
server
src
main
kotlin
com
insanusmokrassar
gradle.properties
gradle/wrapper
ktor
client
build.gradle
src
commonMain
kotlin
com
insanusmokrassar
postssystem
common
server
tests
src
test
kotlin
com
insanusmokrassar
postssystem
markups
publishing
utils
common
build.gradle
src
commonMain
kotlin
com
insanusmokrassar
jsMain
kotlin
com
insanusmokrassar
postssystem
utils
jvmMain
kotlin
com
insanusmokrassar
postssystem
utils
repos

@ -31,12 +31,13 @@ repositories {
kotlin {
jvm()
js()
js { browser() }
sourceSets {
commonMain {
dependencies {
implementation kotlin('stdlib')
api kotlin('reflect')
if ((project.hasProperty('RELEASE_MODE') && project.property('RELEASE_MODE') == "true") || System.getenv('RELEASE_MODE') == "true") {
api "com.insanusmokrassar:postssystem.utils.common:$core_version"

@ -26,11 +26,11 @@ class ContentSerialization {
}
val stringified = registeredContentFakes.map {
Json.stringify(RegisteredContent.serializer(), it)
Json.encodeToString(RegisteredContent.serializer(), it)
}
val parsed = stringified.map {
Json.parse(RegisteredContent.serializer(), it)
Json.decodeFromString(RegisteredContent.serializer(), it)
}
parsed.forEachIndexed { i, registeredContent -> assertEquals(registeredContentFakes[i], registeredContent) }

@ -31,7 +31,7 @@ repositories {
kotlin {
jvm()
js()
js { browser() }
sourceSets {
commonMain {

@ -19,7 +19,7 @@ class ReadContentRepoKtorClient(
override suspend fun getContentsIds(): Set<ContentId> = client.get<ByteArray>(
"$baseUrl/$getContentsIdsRoute"
).let {
standardKtorSerialFormat.load(contentIdsSerializer, it)
standardKtorSerialFormat.decodeFromByteArray(contentIdsSerializer, it)
}
override suspend fun getContentById(id: ContentId): RegisteredContent? = client.uniget(

@ -17,13 +17,13 @@ class WriteContentRepoKtorClient(
override val contentCreatedFlow: Flow<RegisteredContent> = client.createStandardWebsocketFlow(
"$baseUrl/$contentCreatedFlowRoute"
) {
standardKtorSerialFormat.load(RegisteredContent.serializer(), it)
standardKtorSerialFormat.decodeFromByteArray(RegisteredContent.serializer(), it)
}
override val contentDeletedFlow: Flow<RegisteredContent> = client.createStandardWebsocketFlow(
"$baseUrl/$contentDeletedFlowRoute"
) {
standardKtorSerialFormat.load(RegisteredContent.serializer(), it)
standardKtorSerialFormat.decodeFromByteArray(RegisteredContent.serializer(), it)
}
override suspend fun registerContent(content: Content): RegisteredContent? = client.unipost(

@ -21,7 +21,7 @@ class ReadPostsRepoKtorClient(
override suspend fun getPostsIds(): Set<PostId> = client.get<ByteArray>(
"$baseUrl/$getPostsIdsRoute"
).let {
standardKtorSerialFormat.load(postIdsSerializer, it)
standardKtorSerialFormat.decodeFromByteArray(postIdsSerializer, it)
}
override suspend fun getPostById(id: PostId): RegisteredPost? = client.uniget(

@ -20,17 +20,17 @@ class WritePostsRepoKtorClient (
override val postCreatedFlow: Flow<RegisteredPost> = client.createStandardWebsocketFlow(
"$baseUrl/$postCreatedFlowRoute"
) {
standardKtorSerialFormat.load(RegisteredPost.serializer(), it)
standardKtorSerialFormat.decodeFromByteArray(RegisteredPost.serializer(), it)
}
override val postDeletedFlow: Flow<RegisteredPost> = client.createStandardWebsocketFlow(
"$baseUrl/$postDeletedFlowRoute"
) {
standardKtorSerialFormat.load(RegisteredPost.serializer(), it)
standardKtorSerialFormat.decodeFromByteArray(RegisteredPost.serializer(), it)
}
override val postUpdatedFlow: Flow<RegisteredPost> = client.createStandardWebsocketFlow(
"$baseUrl/$postUpdatedFlowRoute"
) {
standardKtorSerialFormat.load(RegisteredPost.serializer(), it)
standardKtorSerialFormat.decodeFromByteArray(RegisteredPost.serializer(), it)
}
override suspend fun createPost(post: Post): RegisteredPost? = client.unipost(

@ -31,7 +31,7 @@ repositories {
kotlin {
jvm()
js()
js { browser() }
sourceSets {
commonMain {

@ -16,10 +16,10 @@ fun Route.configureWriteContentRepoRoutes(
proxyTo: WriteContentRepo
) {
includeWebsocketHandling(contentCreatedFlowRoute, proxyTo.contentCreatedFlow) {
standardKtorSerialFormat.dump(RegisteredContent.serializer(), it)
standardKtorSerialFormat.encodeToByteArray(RegisteredContent.serializer(), it)
}
includeWebsocketHandling(contentDeletedFlowRoute, proxyTo.contentDeletedFlow) {
standardKtorSerialFormat.dump(RegisteredContent.serializer(), it)
standardKtorSerialFormat.encodeToByteArray(RegisteredContent.serializer(), it)
}
post(registerContentRoute) {
val content = call.uniload(Content.serializer())

@ -16,13 +16,13 @@ fun Route.configureWritePostsRepoRoutes(
proxyTo: WritePostsRepo
) {
includeWebsocketHandling(postCreatedFlowRoute, proxyTo.postCreatedFlow) {
standardKtorSerialFormat.dump(RegisteredPost.serializer(), it)
standardKtorSerialFormat.encodeToByteArray(RegisteredPost.serializer(), it)
}
includeWebsocketHandling(postDeletedFlowRoute, proxyTo.postDeletedFlow) {
standardKtorSerialFormat.dump(RegisteredPost.serializer(), it)
standardKtorSerialFormat.encodeToByteArray(RegisteredPost.serializer(), it)
}
includeWebsocketHandling(postUpdatedFlowRoute, proxyTo.postUpdatedFlow) {
standardKtorSerialFormat.dump(RegisteredPost.serializer(), it)
standardKtorSerialFormat.encodeToByteArray(RegisteredPost.serializer(), it)
}
post(createPostRoute) {

@ -1,19 +1,19 @@
kotlin.code.style=official
org.gradle.parallel=true
kotlin_version=1.3.72
kotlin_coroutines_version=1.3.8
kotlin_serialisation_runtime_version=0.20.0
kotlin_version=1.4.0
kotlin_coroutines_version=1.3.9
kotlin_serialisation_core_version=1.0.0-RC
ktor_version=1.3.2
ktor_version=1.3.2-1.4.0-rc
klockVersion=1.11.14
uuidVersion=0.1.1
klockVersion=1.12.0
uuidVersion=0.2.0
exposed_version=0.26.2
test_sqlite_version=3.32.3.2
javax_activation_version=1.1.1
gradle_bintray_plugin_version=1.8.4
gradle_bintray_plugin_version=1.8.5
core_version=0.4.2
core_version=0.5.0

@ -1,4 +1,4 @@
distributionUrl=https\://services.gradle.org/distributions/gradle-6.5.1-bin.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-6.6-bin.zip
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStorePath=wrapper/dists

@ -31,7 +31,7 @@ repositories {
kotlin {
jvm()
js()
js { browser() }
sourceSets {
commonMain {

@ -15,7 +15,7 @@ suspend fun <ResultType> HttpClient.uniget(
) = get<ByteArray>(
url
).let {
standardKtorSerialFormat.load(resultDeserializer, it)
standardKtorSerialFormat.decodeFromByteArray(resultDeserializer, it)
}
suspend fun <BodyType, ResultType> HttpClient.unipost(
@ -23,7 +23,7 @@ suspend fun <BodyType, ResultType> HttpClient.unipost(
bodyInfo: BodyPair<BodyType>,
resultDeserializer: DeserializationStrategy<ResultType>
) = post<ByteArray>(url) {
body = standardKtorSerialFormat.dump(bodyInfo.first, bodyInfo.second)
body = standardKtorSerialFormat.encodeToByteArray(bodyInfo.first, bodyInfo.second)
}.let {
standardKtorSerialFormat.load(resultDeserializer, it)
standardKtorSerialFormat.decodeFromByteArray(resultDeserializer, it)
}

@ -31,14 +31,14 @@ repositories {
kotlin {
jvm()
js()
js { browser() }
sourceSets {
commonMain {
dependencies {
implementation kotlin('stdlib')
api "org.jetbrains.kotlinx:kotlinx-serialization-runtime-common:$kotlin_serialisation_runtime_version"
api "org.jetbrains.kotlinx:kotlinx-serialization-cbor-common:$kotlin_serialisation_runtime_version"
api "org.jetbrains.kotlinx:kotlinx-serialization-core:$kotlin_serialisation_core_version"
api "org.jetbrains.kotlinx:kotlinx-serialization-cbor:$kotlin_serialisation_core_version"
api projectByName("postssystem.utils.common")
}
@ -52,8 +52,7 @@ kotlin {
jvmMain {
dependencies {
implementation kotlin('stdlib-jdk8')
api "org.jetbrains.kotlinx:kotlinx-serialization-runtime:$kotlin_serialisation_runtime_version"
api "org.jetbrains.kotlinx:kotlinx-serialization-cbor:$kotlin_serialisation_runtime_version"
// api "org.jetbrains.kotlinx:kotlinx-serialization-cbor:$kotlin_serialisation_core_version"
}
}
jvmTest {
@ -64,8 +63,7 @@ kotlin {
jsMain {
dependencies {
implementation kotlin('stdlib-js')
api "org.jetbrains.kotlinx:kotlinx-serialization-runtime-js:$kotlin_serialisation_runtime_version"
api "org.jetbrains.kotlinx:kotlinx-serialization-cbor-js:$kotlin_serialisation_runtime_version"
// api "org.jetbrains.kotlinx:kotlinx-serialization-cbor-js:$kotlin_serialisation_core_version"
}
}
jsTest {

@ -36,7 +36,7 @@ kotlin {
commonMain {
dependencies {
implementation kotlin('stdlib')
api "org.jetbrains.kotlinx:kotlinx-coroutines-core-common:$kotlin_coroutines_version"
api "org.jetbrains.kotlinx:kotlinx-coroutines-core:$kotlin_coroutines_version"
api projectByName("postssystem.ktor.common")
}
@ -50,9 +50,6 @@ kotlin {
jvmMain {
dependencies {
api "org.jetbrains.kotlinx:kotlinx-serialization-runtime:$kotlin_serialisation_runtime_version"
api "org.jetbrains.kotlinx:kotlinx-serialization-properties:$kotlin_serialisation_runtime_version"
api "io.ktor:ktor-server:$ktor_version"
api "io.ktor:ktor-server-host-common:$ktor_version"
api "io.ktor:ktor-server-netty:$ktor_version"

@ -14,14 +14,14 @@ suspend fun <T> ApplicationCall.unianswer(
answer: T
) {
respondBytes(
standardKtorSerialFormat.dump(answerSerializer, answer),
standardKtorSerialFormat.encodeToByteArray(answerSerializer, answer),
standardKtorSerialFormatContentType
)
}
suspend fun <T> ApplicationCall.uniload(
deserializer: DeserializationStrategy<T>
) = standardKtorSerialFormat.load(
) = standardKtorSerialFormat.decodeFromByteArray(
deserializer,
request.receiveChannel().toByteArray()
)

@ -3,10 +3,10 @@ package com.insanusmokrassar.postssystem.ktor.server.configurators
import io.ktor.application.Application
import io.ktor.application.install
import io.ktor.features.CachingHeaders
import kotlinx.serialization.ContextualSerialization
import kotlinx.serialization.Contextual
data class ApplicationCachingHeadersConfigurator(
private val elements: List<@ContextualSerialization Element>
private val elements: List<@Contextual Element>
) : KtorApplicationConfigurator{
interface Element { operator fun CachingHeaders.Configuration.invoke() }

@ -3,12 +3,12 @@ package com.insanusmokrassar.postssystem.ktor.server.configurators
import io.ktor.application.*
import io.ktor.routing.Route
import io.ktor.routing.Routing
import kotlinx.serialization.ContextualSerialization
import kotlinx.serialization.Contextual
import kotlinx.serialization.Serializable
@Serializable
class ApplicationRoutingConfigurator(
private val elements: List<@ContextualSerialization Element>
private val elements: List<@Contextual Element>
) : KtorApplicationConfigurator {
interface Element { operator fun Route.invoke() }

@ -3,10 +3,10 @@ package com.insanusmokrassar.postssystem.ktor.server.configurators
import io.ktor.application.Application
import io.ktor.application.install
import io.ktor.sessions.Sessions
import kotlinx.serialization.ContextualSerialization
import kotlinx.serialization.Contextual
class ApplicationSessionsConfigurator(
private val elements: List<@ContextualSerialization Element>
private val elements: List<@Contextual Element>
) : KtorApplicationConfigurator {
interface Element { operator fun Sessions.Configuration.invoke() }

@ -3,10 +3,10 @@ package com.insanusmokrassar.postssystem.ktor.server.configurators
import io.ktor.application.Application
import io.ktor.application.install
import io.ktor.features.StatusPages
import kotlinx.serialization.ContextualSerialization
import kotlinx.serialization.*
class StatusPagesConfigurator(
private val elements: List<@ContextualSerialization Element>
private val elements: List<@Contextual Element>
) : KtorApplicationConfigurator {
interface Element { operator fun StatusPages.Configuration.invoke() }

@ -28,7 +28,7 @@ class WebsocketsTest {
install(WebSockets)
routing {
includeWebsocketHandling(suburl, dataFlow) {
standardKtorSerialFormat.dump(Int.serializer(), it)
standardKtorSerialFormat.encodeToByteArray(Int.serializer(), it)
}
}
}.also {
@ -44,7 +44,7 @@ class WebsocketsTest {
"$serverUrl/$suburl",
{ false } // always skip reconnection
) {
standardKtorSerialFormat.load(Int.serializer(), it)
standardKtorSerialFormat.decodeFromByteArray(Int.serializer(), it)
}
var currentlyCheckingData: Int? = null

@ -31,14 +31,14 @@ repositories {
kotlin {
jvm()
js()
js { browser() }
sourceSets {
commonMain {
dependencies {
implementation kotlin('stdlib')
api "org.jetbrains.kotlinx:kotlinx-coroutines-core-common:$kotlin_coroutines_version"
api "org.jetbrains.kotlinx:kotlinx-serialization-runtime-common:$kotlin_serialisation_runtime_version"
api "org.jetbrains.kotlinx:kotlinx-coroutines-core:$kotlin_coroutines_version"
api "org.jetbrains.kotlinx:kotlinx-serialization-core:$kotlin_serialisation_core_version"
if ((project.hasProperty('RELEASE_MODE') && project.property('RELEASE_MODE') == "true") || System.getenv('RELEASE_MODE') == "true") {
api "com.insanusmokrassar:postssystem.core.api:$core_version"
@ -59,8 +59,6 @@ kotlin {
jvmMain {
dependencies {
implementation kotlin('stdlib-jdk8')
api "org.jetbrains.kotlinx:kotlinx-coroutines-core:$kotlin_coroutines_version"
api "org.jetbrains.kotlinx:kotlinx-serialization-runtime:$kotlin_serialisation_runtime_version"
}
}
jvmTest {
@ -71,8 +69,6 @@ kotlin {
jsMain {
dependencies {
implementation kotlin('stdlib-js')
api "org.jetbrains.kotlinx:kotlinx-coroutines-core-js:$kotlin_coroutines_version"
api "org.jetbrains.kotlinx:kotlinx-serialization-runtime-js:$kotlin_serialisation_runtime_version"
}
}
jsTest {

@ -31,14 +31,14 @@ repositories {
kotlin {
jvm()
js()
js { browser() }
sourceSets {
commonMain {
dependencies {
implementation kotlin('stdlib')
api "org.jetbrains.kotlinx:kotlinx-coroutines-core-common:$kotlin_coroutines_version"
api "org.jetbrains.kotlinx:kotlinx-serialization-runtime-common:$kotlin_serialisation_runtime_version"
api "org.jetbrains.kotlinx:kotlinx-coroutines-core:$kotlin_coroutines_version"
api "org.jetbrains.kotlinx:kotlinx-serialization-core:$kotlin_serialisation_core_version"
if ((project.hasProperty('RELEASE_MODE') && project.property('RELEASE_MODE') == "true") || System.getenv('RELEASE_MODE') == "true") {
api "com.insanusmokrassar:postssystem.markups.core:$core_version"
@ -56,9 +56,6 @@ kotlin {
jvmMain {
dependencies {
implementation kotlin('stdlib-jdk8')
api "org.jetbrains.kotlinx:kotlinx-coroutines-core:$kotlin_coroutines_version"
api "org.jetbrains.kotlinx:kotlinx-serialization-runtime:$kotlin_serialisation_runtime_version"
api "org.jetbrains.kotlinx:kotlinx-html-jvm:$kotlinx_html_version"
}
}
@ -70,9 +67,6 @@ kotlin {
jsMain {
dependencies {
implementation kotlin('stdlib-js')
api "org.jetbrains.kotlinx:kotlinx-coroutines-core-js:$kotlin_coroutines_version"
api "org.jetbrains.kotlinx:kotlinx-serialization-runtime-js:$kotlin_serialisation_runtime_version"
api "org.jetbrains.kotlinx:kotlinx-html-js:$kotlinx_html_version"
}
}

@ -31,7 +31,7 @@ repositories {
kotlin {
jvm()
js()
js { browser() }
sourceSets {
commonMain {

@ -31,7 +31,7 @@ repositories {
kotlin {
jvm()
js()
js { browser() }
sourceSets {
commonMain {

@ -29,7 +29,7 @@ repositories {
kotlin {
jvm()
js()
js { browser() }
sourceSets {
commonMain {

@ -31,14 +31,14 @@ repositories {
kotlin {
jvm()
js()
js { browser() }
sourceSets {
commonMain {
dependencies {
implementation kotlin('stdlib')
api "org.jetbrains.kotlinx:kotlinx-coroutines-core-common:$kotlin_coroutines_version"
api "org.jetbrains.kotlinx:kotlinx-serialization-runtime-common:$kotlin_serialisation_runtime_version"
api "org.jetbrains.kotlinx:kotlinx-coroutines-core:$kotlin_coroutines_version"
api "org.jetbrains.kotlinx:kotlinx-serialization-core:$kotlin_serialisation_core_version"
api "com.soywiz.korlibs.klock:klock:$klockVersion"
api "com.benasher44:uuid:$uuidVersion"
@ -53,10 +53,6 @@ kotlin {
jvmMain {
dependencies {
implementation kotlin('stdlib-jdk8')
api "org.jetbrains.kotlinx:kotlinx-coroutines-core:$kotlin_coroutines_version"
api "org.jetbrains.kotlinx:kotlinx-serialization-runtime:$kotlin_serialisation_runtime_version"
api "javax.activation:activation:$javax_activation_version"
}
}
jvmTest {
@ -67,8 +63,6 @@ kotlin {
jsMain {
dependencies {
implementation kotlin('stdlib-js')
api "org.jetbrains.kotlinx:kotlinx-coroutines-core-js:$kotlin_coroutines_version"
api "org.jetbrains.kotlinx:kotlinx-serialization-runtime-js:$kotlin_serialisation_runtime_version"
}
}
jsTest {

@ -2,6 +2,9 @@ package com.insanusmokrassar.postssystem.utils.common
import kotlinx.serialization.*
import kotlinx.serialization.builtins.ByteArraySerializer
import kotlinx.serialization.descriptors.SerialDescriptor
import kotlinx.serialization.encoding.Decoder
import kotlinx.serialization.encoding.Encoder
typealias ByteArrayAllocator = () -> ByteArray
@ -10,7 +13,7 @@ object ByteArrayAllocatorSerializer : KSerializer<ByteArrayAllocator> {
override val descriptor: SerialDescriptor = realSerializer.descriptor
override fun deserialize(decoder: Decoder): ByteArrayAllocator {
val bytes = decoder.decode(realSerializer)
val bytes = realSerializer.deserialize(decoder)
return { bytes }
}

@ -1,6 +1,9 @@
package com.insanusmokrassar.postssystem.utils.common
import kotlinx.serialization.*
import kotlinx.serialization.descriptors.*
import kotlinx.serialization.encoding.Decoder
import kotlinx.serialization.encoding.Encoder
private val mimesCache = mutableMapOf<String, MimeType>().also {
knownMimeTypes.forEach { mimeType -> it[mimeType.raw] = mimeType }
@ -14,7 +17,7 @@ internal fun parseMimeType(raw: String): MimeType = findBuiltinMimeType(raw) ?:
@Serializer(MimeType::class)
internal object MimeTypeSerializer : KSerializer<MimeType> {
override val descriptor: SerialDescriptor = PrimitiveDescriptor("mimeType", PrimitiveKind.STRING)
override val descriptor: SerialDescriptor = PrimitiveSerialDescriptor("mimeType", PrimitiveKind.STRING)
override fun deserialize(decoder: Decoder): MimeType {
val mimeType = decoder.decodeString()

@ -1,7 +0,0 @@
package com.insanusmokrassar.postssystem.utils.common
import org.w3c.dom.get
import kotlin.browser.window
val MimeType.jsMimeType
get() = window.navigator.mimeTypes[raw]

@ -1,5 +0,0 @@
package com.insanusmokrassar.postssystem.utils.common
val MimeType.asActivationMimeType: javax.activation.MimeType
get() = javax.activation.MimeType(raw)

@ -31,7 +31,7 @@ repositories {
kotlin {
jvm()
js()
js { browser() }
sourceSets {
commonMain {