From dba47b698d89fe1e4c9356e1644ad462ded77fe4 Mon Sep 17 00:00:00 2001 From: Anton Shestak Date: Mon, 21 Jun 2021 18:12:39 +0700 Subject: [PATCH 01/10] #13 sync and help successful --- build.gradle.kts | 34 +++++++------- buildSrc/build.gradle.kts | 20 --------- buildSrc/src/main/kotlin/Deps.kt | 57 ------------------------ gradle/libs.versions.toml | 18 ++++++++ gradle/wrapper/gradle-wrapper.properties | 2 +- sample/android-app/build.gradle.kts | 14 +++--- sample/build.gradle.kts | 12 ----- sample/mpp-library/build.gradle.kts | 15 +++---- settings.gradle.kts | 27 +++++++++++ socket-io/build.gradle.kts | 20 ++++----- 10 files changed, 88 insertions(+), 131 deletions(-) delete mode 100644 buildSrc/build.gradle.kts delete mode 100755 buildSrc/src/main/kotlin/Deps.kt create mode 100644 gradle/libs.versions.toml delete mode 100644 sample/build.gradle.kts diff --git a/build.gradle.kts b/build.gradle.kts index e1bb68e..e862efa 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -3,43 +3,47 @@ */ plugins { - plugin(Deps.Plugins.detekt) apply false + id("io.gitlab.arturbosch.detekt") version("1.15.0") apply(false) } -allprojects { +buildscript { repositories { mavenCentral() google() - jcenter { - content { - includeGroup("org.jetbrains.trove4j") - includeGroup("org.jetbrains.kotlinx") - } - } + gradlePluginPortal() + } + dependencies { + classpath("dev.icerock.moko:resources-generator:0.15.1") + + classpath("dev.icerock:mobile-multiplatform:0.10.0") + classpath("org.jetbrains.kotlin:kotlin-gradle-plugin:1.5.10") + classpath("com.android.tools.build:gradle:4.2.1") } +} - apply(plugin = Deps.Plugins.detekt.id) +allprojects { + + apply(plugin = "io.gitlab.arturbosch.detekt") configure { input.setFrom("src/commonMain/kotlin", "src/androidMain/kotlin", "src/iosMain/kotlin") } dependencies { - "detektPlugins"(Deps.Libs.Jvm.detektFormatting) + "detektPlugins"(rootProject.libs.detektFormatting) } - plugins.withId(Deps.Plugins.androidLibrary.id) { + plugins.withId("com.android.library") { configure { - compileSdkVersion(Deps.Android.compileSdk) + compileSdkVersion(libs.versions.compileSdk.get().toInt()) defaultConfig { - minSdkVersion(Deps.Android.minSdk) - targetSdkVersion(Deps.Android.targetSdk) + minSdkVersion(libs.versions.minSdk.get().toInt()) + targetSdkVersion(libs.versions.targetSdk.get().toInt()) } } } - } tasks.register("clean", Delete::class).configure { diff --git a/buildSrc/build.gradle.kts b/buildSrc/build.gradle.kts deleted file mode 100644 index 0372d49..0000000 --- a/buildSrc/build.gradle.kts +++ /dev/null @@ -1,20 +0,0 @@ -plugins { - id("org.jetbrains.kotlin.jvm") version("1.4.31") -} - -repositories { - mavenCentral() - google() - - jcenter { - content { - includeGroup("org.jetbrains.trove4j") - } - } -} - -dependencies { - implementation("dev.icerock:mobile-multiplatform:0.9.1") - implementation("org.jetbrains.kotlin:kotlin-gradle-plugin:1.4.31") - implementation("com.android.tools.build:gradle:4.0.1") -} \ No newline at end of file diff --git a/buildSrc/src/main/kotlin/Deps.kt b/buildSrc/src/main/kotlin/Deps.kt deleted file mode 100755 index 2c41340..0000000 --- a/buildSrc/src/main/kotlin/Deps.kt +++ /dev/null @@ -1,57 +0,0 @@ -/* - * Copyright 2020 IceRock MAG Inc. Use of this source code is governed by the Apache 2.0 license. - */ - -object Deps { - - private const val kotlinVersion = "1.4.31" - private const val detektVersion = "1.15.0" - - private const val androidAppCompatVersion = "1.1.0" - private const val androidSocketIoVersion = "1.0.0" - private const val kotlinxSerializationVersion = "1.0.0-RC" - - const val mokoSocketIoVersion = "0.2.1" - - - object Android { - const val compileSdk = 28 - const val targetSdk = 28 - const val minSdk = 16 - } - - object Plugins { - val androidApplication = GradlePlugin(id = "com.android.application") - val androidLibrary = GradlePlugin(id = "com.android.library") - - val kotlinMultiplatform = GradlePlugin(id = "org.jetbrains.kotlin.multiplatform") - val kotlinAndroid = GradlePlugin(id = "kotlin-android") - val kotlinAndroidExtensions = GradlePlugin(id = "kotlin-android-extensions") - - val mobileMultiplatform = GradlePlugin(id = "dev.icerock.mobile.multiplatform") - val mavenPublish = GradlePlugin(id = "org.gradle.maven-publish") - val signing = GradlePlugin(id = "signing") - - val detekt = GradlePlugin(id = "io.gitlab.arturbosch.detekt", version = detektVersion) - val iosFramework = GradlePlugin(id = "dev.icerock.mobile.multiplatform.ios-framework") - } - - object Libs { - object Android { - const val appCompat = "androidx.appcompat:appcompat:$androidAppCompatVersion" - - const val socketIo = "io.socket:socket.io-client:$androidSocketIoVersion" - } - - object MultiPlatform { - - const val serialization = "org.jetbrains.kotlinx:kotlinx-serialization-core:$kotlinxSerializationVersion" - const val mokoSocketIo = "dev.icerock.moko:socket-io:$mokoSocketIoVersion" - } - - object Jvm { - const val detektFormatting = - "io.gitlab.arturbosch.detekt:detekt-formatting:$detektVersion" - } - } -} diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml new file mode 100644 index 0000000..93a1ef1 --- /dev/null +++ b/gradle/libs.versions.toml @@ -0,0 +1,18 @@ +[versions] +kotlinVersion = "1.5.10" +detektVersion = "1.15.0" +androidAppCompatVersion = "1.2.0" +androidSocketIoVersion = "1.0.0" +kotlinxSerializationVersion = "1.0.0-RC" +mokoSocketIoVersion = "0.3.0" +compileSdk = "28" +targetSdk = "28" +minSdk = "16" + +[libraries] +appCompat = { module = "androidx.appcompat:appcompat", version.ref = "androidAppCompatVersion" } +socketIo = { module = "io.socket:socket.io-client", version.ref = "androidSocketIoVersion" } +serialization = { module = "org.jetbrains.kotlinx:kotlinx-serialization-core", version.ref = "kotlinxSerializationVersion" } +mokoSocketIo = { module = "dev.icerock.moko:socket-io", version.ref = "mokoSocketIoVersion" } +detektFormatting ={ module = "io.gitlab.arturbosch.detekt:detekt-formatting", version.ref = "detektVersion" } + diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 442d913..0f80bbf 100755 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,5 +1,5 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-6.8.3-bin.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-7.0.2-bin.zip zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists diff --git a/sample/android-app/build.gradle.kts b/sample/android-app/build.gradle.kts index 86cdf35..86c4c4a 100644 --- a/sample/android-app/build.gradle.kts +++ b/sample/android-app/build.gradle.kts @@ -3,20 +3,20 @@ */ plugins { - plugin(Deps.Plugins.androidApplication) - plugin(Deps.Plugins.kotlinAndroid) + id("com.android.application") + id("kotlin-android") } android { - compileSdkVersion(Deps.Android.compileSdk) + compileSdkVersion(libs.versions.compileSdk.get().toInt()) dexOptions { javaMaxHeapSize = "2g" } defaultConfig { - minSdkVersion(Deps.Android.minSdk) - targetSdkVersion(Deps.Android.targetSdk) + minSdkVersion(libs.versions.minSdk.get().toInt()) + targetSdkVersion(libs.versions.targetSdk.get().toInt()) applicationId = "dev.icerock.moko.samples.socketio" @@ -45,7 +45,7 @@ android { dependencies { - implementation(Deps.Libs.Android.appCompat) + implementation(libs.appCompat) - implementation(project("${parent!!.path}:mpp-library")) + implementation(projects.sample.mppLibrary) } diff --git a/sample/build.gradle.kts b/sample/build.gradle.kts deleted file mode 100644 index 19987e9..0000000 --- a/sample/build.gradle.kts +++ /dev/null @@ -1,12 +0,0 @@ -/* - * Copyright 2020 IceRock MAG Inc. Use of this source code is governed by the Apache 2.0 license. - */ - -subprojects { - configurations.all { - resolutionStrategy.dependencySubstitution { - substitute(module(Deps.Libs.MultiPlatform.mokoSocketIo)) - .with(project(":socket-io")) - } - } -} \ No newline at end of file diff --git a/sample/mpp-library/build.gradle.kts b/sample/mpp-library/build.gradle.kts index c74b607..9ecf302 100644 --- a/sample/mpp-library/build.gradle.kts +++ b/sample/mpp-library/build.gradle.kts @@ -3,20 +3,17 @@ */ plugins { - plugin(Deps.Plugins.androidLibrary) - plugin(Deps.Plugins.kotlinMultiplatform) - plugin(Deps.Plugins.mobileMultiplatform) - plugin(Deps.Plugins.iosFramework) + id("com.android.library") + id("org.jetbrains.kotlin.multiplatform") + id("dev.icerock.mobile.multiplatform") + id("dev.icerock.mobile.multiplatform.ios-framework") } dependencies { - commonMainImplementation(Deps.Libs.MultiPlatform.serialization) - commonMainApi(Deps.Libs.MultiPlatform.mokoSocketIo) + commonMainImplementation(libs.serialization) + commonMainApi(projects.socketIo) } -framework { - export(project(":socket-io")) -} cocoaPods { podsProject = file("../ios-app/Pods/Pods.xcodeproj") diff --git a/settings.gradle.kts b/settings.gradle.kts index 691cdc1..766a9da 100644 --- a/settings.gradle.kts +++ b/settings.gradle.kts @@ -2,6 +2,33 @@ * Copyright 2020 IceRock MAG Inc. Use of this source code is governed by the Apache 2.0 license. */ +enableFeaturePreview("VERSION_CATALOGS") +enableFeaturePreview("TYPESAFE_PROJECT_ACCESSORS") + +pluginManagement { + repositories { + mavenCentral() + google() + + gradlePluginPortal() + } +} + +dependencyResolutionManagement { + repositories { + mavenCentral() + google() + + jcenter { + content { + includeGroup("org.jetbrains.trove4j") + includeGroup("org.jetbrains.kotlinx") + } + } + } +} + + include(":socket-io") include(":sample:android-app") include(":sample:mpp-library") \ No newline at end of file diff --git a/socket-io/build.gradle.kts b/socket-io/build.gradle.kts index 440e36c..8ac84df 100644 --- a/socket-io/build.gradle.kts +++ b/socket-io/build.gradle.kts @@ -6,22 +6,22 @@ import java.util.Base64 import kotlin.text.String plugins { - plugin(Deps.Plugins.androidLibrary) - plugin(Deps.Plugins.kotlinMultiplatform) - plugin(Deps.Plugins.kotlinAndroidExtensions) - plugin(Deps.Plugins.mobileMultiplatform) - plugin(Deps.Plugins.mavenPublish) - plugin(Deps.Plugins.signing) + id("com.android.library") + id("org.jetbrains.kotlin.multiplatform") + id("kotlin-android-extensions") + id("dev.icerock.mobile.multiplatform") + id("org.gradle.maven-publish") + id("signing") } group = "dev.icerock.moko" -version = Deps.mokoSocketIoVersion +version = libs.versions.mokoSocketIoVersion.get() dependencies { - commonMainImplementation(Deps.Libs.MultiPlatform.serialization) + commonMainImplementation(libs.serialization) - androidMainImplementation(Deps.Libs.Android.appCompat) - androidMainImplementation(Deps.Libs.Android.socketIo) { + androidMainImplementation(libs.appCompat) + androidMainImplementation(libs.socketIo) { exclude(group = "org.json", module = "json") } } From b0a7cb76cab5271567cef17e948f16647d7e6a19 Mon Sep 17 00:00:00 2001 From: Anton Shestak Date: Mon, 21 Jun 2021 18:36:08 +0700 Subject: [PATCH 02/10] #13 updated kotlinx-serialization version --- gradle/libs.versions.toml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index 93a1ef1..3e33712 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -3,7 +3,7 @@ kotlinVersion = "1.5.10" detektVersion = "1.15.0" androidAppCompatVersion = "1.2.0" androidSocketIoVersion = "1.0.0" -kotlinxSerializationVersion = "1.0.0-RC" +kotlinxSerializationVersion = "1.2.1" mokoSocketIoVersion = "0.3.0" compileSdk = "28" targetSdk = "28" @@ -12,7 +12,7 @@ minSdk = "16" [libraries] appCompat = { module = "androidx.appcompat:appcompat", version.ref = "androidAppCompatVersion" } socketIo = { module = "io.socket:socket.io-client", version.ref = "androidSocketIoVersion" } -serialization = { module = "org.jetbrains.kotlinx:kotlinx-serialization-core", version.ref = "kotlinxSerializationVersion" } +serialization = { module = "org.jetbrains.kotlinx:kotlinx-serialization-json", version.ref = "kotlinxSerializationVersion" } mokoSocketIo = { module = "dev.icerock.moko:socket-io", version.ref = "mokoSocketIoVersion" } -detektFormatting ={ module = "io.gitlab.arturbosch.detekt:detekt-formatting", version.ref = "detektVersion" } +detektFormatting = { module = "io.gitlab.arturbosch.detekt:detekt-formatting", version.ref = "detektVersion" } From 63c29bf2231f76678bdf36a5a4ed8d5787c516e5 Mon Sep 17 00:00:00 2001 From: Anton Shestak Date: Wed, 23 Jun 2021 12:23:00 +0700 Subject: [PATCH 03/10] #8 add jvm support --- README.md | 18 +++------- build.gradle.kts | 4 +-- socket-io/build.gradle.kts | 34 +++++++++++++++++-- .../kotlin/dev/icerock/moko/socket/Mapper.kt | 0 .../kotlin/dev/icerock/moko/socket/Socket.kt | 0 .../dev/icerock/moko/socket/SocketEvent.kt | 0 6 files changed, 37 insertions(+), 19 deletions(-) rename socket-io/src/{androidMain => commonJvm}/kotlin/dev/icerock/moko/socket/Mapper.kt (100%) rename socket-io/src/{androidMain => commonJvm}/kotlin/dev/icerock/moko/socket/Socket.kt (100%) rename socket-io/src/{androidMain => commonJvm}/kotlin/dev/icerock/moko/socket/SocketEvent.kt (100%) diff --git a/README.md b/README.md index 03da3e5..4557f72 100755 --- a/README.md +++ b/README.md @@ -1,5 +1,5 @@ ![moko-socket-io](https://user-images.githubusercontent.com/5010169/80988267-712b7e80-8e5d-11ea-955e-c788a567c64e.png) -[![GitHub license](https://img.shields.io/badge/license-Apache%20License%202.0-blue.svg?style=flat)](http://www.apache.org/licenses/LICENSE-2.0) [![Download](https://img.shields.io/maven-central/v/dev.icerock.moko/socket-io) ](https://repo1.maven.org/maven2/dev/icerock/moko/socket-io) ![kotlin-version](https://img.shields.io/badge/kotlin-1.4.31-orange) +[![GitHub license](https://img.shields.io/badge/license-Apache%20License%202.0-blue.svg?style=flat)](http://www.apache.org/licenses/LICENSE-2.0) [![Download](https://img.shields.io/maven-central/v/dev.icerock.moko/socket-io) ](https://repo1.maven.org/maven2/dev/icerock/moko/socket-io) ![kotlin-version](https://img.shields.io/badge/kotlin-1.5.10-orange) # Mobile Kotlin socket io This is a Kotlin MultiPlatform library that provides real-time, event-based communication for iOS and Android. @@ -23,16 +23,6 @@ This is a Kotlin MultiPlatform library that provides real-time, event-based comm - Android API 16+ - iOS version 9.0+ -## Versions -### Bintray -- kotlin 1.3.72 - - 0.1.0 -- kotlin 1.4.10 - - 0.2.0 -### mavenCentral -- kotlin 1.4.31 - - 0.2.1 - ## Installation root build.gradle ```groovy @@ -46,8 +36,8 @@ allprojects { project build.gradle ```groovy dependencies { - commonMainApi("dev.icerock.moko:socket-io:0.2.1") - commonMainApi("org.jetbrains.kotlinx:kotlinx-serialization-core:1.0.0-RC") + commonMainApi("dev.icerock.moko:socket-io:0.3.0") + commonMainApi("org.jetbrains.kotlinx:kotlinx-serialization-json:1.2.1") } cocoaPods { @@ -59,7 +49,7 @@ cocoaPods { Podfile ```ruby -pod 'mokoSocketIo', :git => 'https://github.com/icerockdev/moko-socket-io.git', :tag => 'release/0.2.1' +pod 'mokoSocketIo', :git => 'https://github.com/icerockdev/moko-socket-io.git', :tag => 'release/0.3.0' ``` ## Usage diff --git a/build.gradle.kts b/build.gradle.kts index e862efa..5eb2044 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -16,7 +16,7 @@ buildscript { dependencies { classpath("dev.icerock.moko:resources-generator:0.15.1") - classpath("dev.icerock:mobile-multiplatform:0.10.0") + classpath("dev.icerock:mobile-multiplatform:0.10.1") classpath("org.jetbrains.kotlin:kotlin-gradle-plugin:1.5.10") classpath("com.android.tools.build:gradle:4.2.1") } @@ -27,7 +27,7 @@ allprojects { apply(plugin = "io.gitlab.arturbosch.detekt") configure { - input.setFrom("src/commonMain/kotlin", "src/androidMain/kotlin", "src/iosMain/kotlin") + input.setFrom("src/commonMain/kotlin", "src/androidMain/kotlin", "src/iosMain/kotlin", "src/commonJvm/kotlin") } dependencies { diff --git a/socket-io/build.gradle.kts b/socket-io/build.gradle.kts index 8ac84df..fd63550 100644 --- a/socket-io/build.gradle.kts +++ b/socket-io/build.gradle.kts @@ -17,12 +17,40 @@ plugins { group = "dev.icerock.moko" version = libs.versions.mokoSocketIoVersion.get() +kotlin { + jvm() + + sourceSets { + val commonMain by getting + + val commonJvm = create("commonJvm") { + dependsOn(commonMain) + dependencies { + implementation(libs.appCompat) + implementation(libs.socketIo) + } + } + + val androidMain by getting { + dependsOn(commonJvm) + } + + val jvmMain by getting { + dependsOn(commonJvm) + } + + } +} + dependencies { commonMainImplementation(libs.serialization) +} - androidMainImplementation(libs.appCompat) - androidMainImplementation(libs.socketIo) { - exclude(group = "org.json", module = "json") +configurations.all { + resolutionStrategy.eachDependency { + if (requested.name == "socket.io-client") { + exclude(group = "org.json", module = "json") + } } } diff --git a/socket-io/src/androidMain/kotlin/dev/icerock/moko/socket/Mapper.kt b/socket-io/src/commonJvm/kotlin/dev/icerock/moko/socket/Mapper.kt similarity index 100% rename from socket-io/src/androidMain/kotlin/dev/icerock/moko/socket/Mapper.kt rename to socket-io/src/commonJvm/kotlin/dev/icerock/moko/socket/Mapper.kt diff --git a/socket-io/src/androidMain/kotlin/dev/icerock/moko/socket/Socket.kt b/socket-io/src/commonJvm/kotlin/dev/icerock/moko/socket/Socket.kt similarity index 100% rename from socket-io/src/androidMain/kotlin/dev/icerock/moko/socket/Socket.kt rename to socket-io/src/commonJvm/kotlin/dev/icerock/moko/socket/Socket.kt diff --git a/socket-io/src/androidMain/kotlin/dev/icerock/moko/socket/SocketEvent.kt b/socket-io/src/commonJvm/kotlin/dev/icerock/moko/socket/SocketEvent.kt similarity index 100% rename from socket-io/src/androidMain/kotlin/dev/icerock/moko/socket/SocketEvent.kt rename to socket-io/src/commonJvm/kotlin/dev/icerock/moko/socket/SocketEvent.kt From c4913439330205a19b99f9e06535a4815fdc0497 Mon Sep 17 00:00:00 2001 From: Anton Shestak Date: Wed, 23 Jun 2021 12:39:38 +0700 Subject: [PATCH 04/10] #8 fixes --- build.gradle.kts | 6 ------ socket-io/build.gradle.kts | 14 +++----------- 2 files changed, 3 insertions(+), 17 deletions(-) diff --git a/build.gradle.kts b/build.gradle.kts index 5eb2044..f572a36 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -7,12 +7,6 @@ plugins { } buildscript { - repositories { - mavenCentral() - google() - - gradlePluginPortal() - } dependencies { classpath("dev.icerock.moko:resources-generator:0.15.1") diff --git a/socket-io/build.gradle.kts b/socket-io/build.gradle.kts index fd63550..dbde86e 100644 --- a/socket-io/build.gradle.kts +++ b/socket-io/build.gradle.kts @@ -25,10 +25,6 @@ kotlin { val commonJvm = create("commonJvm") { dependsOn(commonMain) - dependencies { - implementation(libs.appCompat) - implementation(libs.socketIo) - } } val androidMain by getting { @@ -44,13 +40,9 @@ kotlin { dependencies { commonMainImplementation(libs.serialization) -} - -configurations.all { - resolutionStrategy.eachDependency { - if (requested.name == "socket.io-client") { - exclude(group = "org.json", module = "json") - } + "commonJvmImplementation"(libs.appCompat) + "commonJvmImplementation"(libs.socketIo) { + exclude(group = "org.json", module = "json") } } From e53486452f7a19af8740675d3aa5b45be8734d57 Mon Sep 17 00:00:00 2001 From: Anton Shestak Date: Wed, 23 Jun 2021 13:13:03 +0700 Subject: [PATCH 05/10] #8 fixes --- sample/ios-app/Podfile.lock | 2 +- .../xcshareddata/IDEWorkspaceChecks.plist | 8 ++++++++ 2 files changed, 9 insertions(+), 1 deletion(-) create mode 100644 sample/ios-app/TestProj.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist diff --git a/sample/ios-app/Podfile.lock b/sample/ios-app/Podfile.lock index a4590dd..a678e9f 100644 --- a/sample/ios-app/Podfile.lock +++ b/sample/ios-app/Podfile.lock @@ -29,4 +29,4 @@ SPEC CHECKSUMS: PODFILE CHECKSUM: f881c83f3f3582ddcc6b0f6d9bb6323f43a7082a -COCOAPODS: 1.9.3 +COCOAPODS: 1.10.1 diff --git a/sample/ios-app/TestProj.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/sample/ios-app/TestProj.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist new file mode 100644 index 0000000..18d9810 --- /dev/null +++ b/sample/ios-app/TestProj.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist @@ -0,0 +1,8 @@ + + + + + IDEDidComputeMac32BitWarning + + + From 7a1fdc554070454a9a61e3fd27788201b12aa745 Mon Sep 17 00:00:00 2001 From: Anton Shestak Date: Wed, 23 Jun 2021 14:56:50 +0700 Subject: [PATCH 06/10] #8 fixes --- build.gradle.kts | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/build.gradle.kts b/build.gradle.kts index f572a36..9319b47 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -7,6 +7,13 @@ plugins { } buildscript { + repositories { + mavenCentral() + google() + + gradlePluginPortal() + } + dependencies { classpath("dev.icerock.moko:resources-generator:0.15.1") From 43acfc56d585a868832b5480d53a7c03342d5da6 Mon Sep 17 00:00:00 2001 From: Anton Shestak Date: Wed, 23 Jun 2021 15:10:45 +0700 Subject: [PATCH 07/10] #8 test --- build.gradle.kts | 7 ------- socket-io/build.gradle.kts | 14 +++++++++++--- 2 files changed, 11 insertions(+), 10 deletions(-) diff --git a/build.gradle.kts b/build.gradle.kts index 9319b47..f572a36 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -7,13 +7,6 @@ plugins { } buildscript { - repositories { - mavenCentral() - google() - - gradlePluginPortal() - } - dependencies { classpath("dev.icerock.moko:resources-generator:0.15.1") diff --git a/socket-io/build.gradle.kts b/socket-io/build.gradle.kts index dbde86e..e28bf2b 100644 --- a/socket-io/build.gradle.kts +++ b/socket-io/build.gradle.kts @@ -40,9 +40,17 @@ kotlin { dependencies { commonMainImplementation(libs.serialization) - "commonJvmImplementation"(libs.appCompat) - "commonJvmImplementation"(libs.socketIo) { - exclude(group = "org.json", module = "json") +// "commonJvmImplementation"(libs.appCompat) +// "commonJvmImplementation"(libs.socketIo) { +// exclude(group = "org.json", module = "json") +// } +} + +configurations.all { + resolutionStrategy.eachDependency { + if (requested.name == "socket.io-client") { + exclude(group = "org.json", module = "json") + } } } From 6bf007e26f22f8f64f6d5d3a9e1159286df5c3b5 Mon Sep 17 00:00:00 2001 From: Anton Shestak Date: Wed, 23 Jun 2021 15:14:31 +0700 Subject: [PATCH 08/10] #8 test --- socket-io/build.gradle.kts | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/socket-io/build.gradle.kts b/socket-io/build.gradle.kts index e28bf2b..1ae5d8c 100644 --- a/socket-io/build.gradle.kts +++ b/socket-io/build.gradle.kts @@ -25,6 +25,10 @@ kotlin { val commonJvm = create("commonJvm") { dependsOn(commonMain) + dependencies{ + implementation(libs.appCompat) + implementation(libs.socketIo) + } } val androidMain by getting { From faa1fbe289a189c9bf86dc0224b0c931fdb39665 Mon Sep 17 00:00:00 2001 From: Anton Shestak Date: Wed, 23 Jun 2021 17:38:11 +0700 Subject: [PATCH 09/10] #8 fixes --- socket-io/build.gradle.kts | 19 ++++--------------- 1 file changed, 4 insertions(+), 15 deletions(-) diff --git a/socket-io/build.gradle.kts b/socket-io/build.gradle.kts index 1ae5d8c..d11871b 100644 --- a/socket-io/build.gradle.kts +++ b/socket-io/build.gradle.kts @@ -25,10 +25,6 @@ kotlin { val commonJvm = create("commonJvm") { dependsOn(commonMain) - dependencies{ - implementation(libs.appCompat) - implementation(libs.socketIo) - } } val androidMain by getting { @@ -44,18 +40,11 @@ kotlin { dependencies { commonMainImplementation(libs.serialization) -// "commonJvmImplementation"(libs.appCompat) -// "commonJvmImplementation"(libs.socketIo) { -// exclude(group = "org.json", module = "json") -// } -} - -configurations.all { - resolutionStrategy.eachDependency { - if (requested.name == "socket.io-client") { - exclude(group = "org.json", module = "json") - } + androidMainImplementation(libs.appCompat) + "commonJvmImplementation"(libs.socketIo) { + exclude(group = "org.json", module = "json") } + "jvmMainImplementation"(libs.socketIo) } val javadocJar by tasks.registering(Jar::class) { From 0d2bd9e1e21d1b3a2d684fb13beaca6cc93d3bdc Mon Sep 17 00:00:00 2001 From: Anton Shestak Date: Wed, 23 Jun 2021 18:46:00 +0700 Subject: [PATCH 10/10] #8 removed error-generating useless method --- .../kotlin/dev/icerock/moko/socket/Socket.kt | 29 ------------------- 1 file changed, 29 deletions(-) diff --git a/socket-io/src/commonJvm/kotlin/dev/icerock/moko/socket/Socket.kt b/socket-io/src/commonJvm/kotlin/dev/icerock/moko/socket/Socket.kt index bd169e0..3f000c0 100644 --- a/socket-io/src/commonJvm/kotlin/dev/icerock/moko/socket/Socket.kt +++ b/socket-io/src/commonJvm/kotlin/dev/icerock/moko/socket/Socket.kt @@ -11,11 +11,6 @@ import kotlinx.serialization.json.JsonArray import kotlinx.serialization.json.JsonObject import org.json.JSONArray import org.json.JSONObject -import java.lang.reflect.Field -import java.net.URL -import java.net.URLConnection -import java.net.URLStreamHandler -import java.util.Hashtable import io.socket.client.Socket as SocketIo actual class Socket actual constructor( @@ -26,7 +21,6 @@ actual class Socket actual constructor( private val socketIo: SocketIo init { - addURLProtocols() socketIo = IO.socket(endpoint, IO.Options().apply { transports = config?.transport?.let { @@ -89,29 +83,6 @@ actual class Socket actual constructor( return socketIo.connected() } - private fun addURLProtocols() { - @Suppress("TooGenericExceptionCaught") - try { - val field: Field = URL::class.java.getDeclaredField("streamHandlers") - field.isAccessible = true - val handler: URLStreamHandler = object : URLStreamHandler() { - override fun openConnection(u: URL?): URLConnection { - return object : URLConnection(u) { - @Suppress("EmptyFunctionBlock") - override fun connect() { - } - } - } - } - val handlers: Hashtable = - field.get(null) as Hashtable - handlers["wss"] = handler - handlers["ws"] = handler - } catch (ex: Exception) { - ex.printStackTrace() - } - } - private companion object { fun rawDataToString(data: Array): String { return data.last().toString()