Skip to content

Commit

Permalink
Update Kotlin to 1.9.20
Browse files Browse the repository at this point in the history
  • Loading branch information
michaelbull committed Jan 23, 2024
1 parent 008cfab commit 05a1e91
Show file tree
Hide file tree
Showing 6 changed files with 45 additions and 191 deletions.
8 changes: 1 addition & 7 deletions .github/workflows/ci.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -102,25 +102,20 @@ jobs:
publishJsPublicationToMavenRepository
publishJvmPublicationToMavenRepository
publishKotlinMultiplatformPublicationToMavenRepository
publishLinuxArm32HfpPublicationToMavenRepository
publishLinuxArm64PublicationToMavenRepository
publishLinuxMips32PublicationToMavenRepository
publishLinuxMipsel32PublicationToMavenRepository
publishLinuxX64PublicationToMavenRepository
publishWasm32PublicationToMavenRepository
publishWasmJsPublicationToMavenRepository
# ./gradlew tasks | grep "PublicationToMavenRepository" | grep "publishMingw" | cut -d ' ' -f 1
- if: matrix.os == 'windows-latest'
run: >
./gradlew
publishMingwX64PublicationToMavenRepository
publishMingwX86PublicationToMavenRepository
# ./gradlew tasks | grep "PublicationToMavenRepository" | grep -e "publishIos" -e "publishMacos" -e "publishTvos" -e "publishWatchos" | cut -d ' ' -f 1
- if: matrix.os == 'macos-11'
run: >
./gradlew
publishIosArm32PublicationToMavenRepository
publishIosArm64PublicationToMavenRepository
publishIosSimulatorArm64PublicationToMavenRepository
publishIosX64PublicationToMavenRepository
Expand All @@ -133,5 +128,4 @@ jobs:
publishWatchosArm64PublicationToMavenRepository
publishWatchosSimulatorArm64PublicationToMavenRepository
publishWatchosX64PublicationToMavenRepository
publishWatchosX86PublicationToMavenRepository
14 changes: 8 additions & 6 deletions build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -81,19 +81,21 @@ subprojects {

mingwX64()

macosX64()
macosArm64()
macosX64()

ios()
iosArm32()
iosArm64()
iosSimulatorArm64()
iosX64()

tvos()
tvosArm64()
tvosSimulatorArm64()
tvosX64()

watchos()
watchosX86()
watchosArm32()
watchosArm64()
watchosSimulatorArm64()
watchosX64()
}
}

Expand Down
14 changes: 7 additions & 7 deletions gradle/libs.versions.toml
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
[versions]
dokka = "1.8.10"
kotlin = "1.8.10"
kotlin-benchmark = "0.4.7"
kotlin-coroutines = "1.6.4"
ktor = "2.2.4"
logback = "1.4.6"
versions-plugin = "0.46.0"
dokka = "1.9.10"
kotlin = "1.9.21"
kotlin-benchmark = "0.4.9"
kotlin-coroutines = "1.7.3"
ktor = "2.3.6"
logback = "1.4.12"
versions-plugin = "0.50.0"

[libraries]
logback = { module = "ch.qos.logback:logback-classic", version.ref = "logback" }
Expand Down
8 changes: 4 additions & 4 deletions kotlin-result-coroutines/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -13,29 +13,29 @@ kotlin {
}
}

val commonMain by getting {
commonMain {
dependencies {
implementation(libs.kotlin.coroutines.core)
api(project(":kotlin-result"))
}
}

val commonTest by getting {
commonTest {
dependencies {
implementation(kotlin("test-common"))
implementation(kotlin("test-annotations-common"))
implementation(libs.kotlin.coroutines.test)
}
}

val jvmTest by getting {
jvmTest {
dependencies {
implementation(kotlin("test-junit"))
implementation(kotlin("test"))
}
}

val jsTest by getting {
jsTest {
dependencies {
implementation(kotlin("test-js"))
}
Expand Down
189 changes: 22 additions & 167 deletions kotlin-result/build.gradle.kts
Original file line number Diff line number Diff line change
@@ -1,3 +1,6 @@
import org.jetbrains.kotlin.gradle.targets.js.nodejs.NodeJsRootExtension
import org.jetbrains.kotlin.gradle.targets.js.npm.tasks.KotlinNpmInstallTask

description = "A Result monad for modelling success or failure operations."

plugins {
Expand All @@ -14,14 +17,13 @@ kotlin {
androidNativeX64()
androidNativeX86()

linuxArm32Hfp()
linuxArm64()
linuxMips32()
linuxMipsel32()

mingwX86()

wasm32()
@OptIn(org.jetbrains.kotlin.gradle.targets.js.dsl.ExperimentalWasmDsl::class)
wasmJs {
binaries.executable()
nodejs()
}

sourceSets {
all {
Expand All @@ -30,180 +32,23 @@ kotlin {
}
}

val commonMain by getting {

}

val commonTest by getting {
commonTest {
dependencies {
implementation(kotlin("test-common"))
implementation(kotlin("test-annotations-common"))
implementation(kotlin("test"))
}
}

val jvmTest by getting {
jvmTest {
dependencies {
implementation(kotlin("test-junit"))
implementation(kotlin("test"))
}
}

val jsTest by getting {
jsTest {
dependencies {
implementation(kotlin("test-js"))
}
}

val nativeMain by creating {
dependsOn(commonMain)
}

val androidNativeMain by creating {
dependsOn(nativeMain)
}

val mingwMain by creating {
dependsOn(nativeMain)
}

val unixMain by creating {
dependsOn(nativeMain)
}

val linuxMain by creating {
dependsOn(unixMain)
}

val darwinMain by creating {
dependsOn(unixMain)
}

val macosMain by creating {
dependsOn(darwinMain)
}

val iosMain by getting {
dependsOn(darwinMain)
}

val tvosMain by getting {
dependsOn(darwinMain)
}

val watchosMain by getting {
dependsOn(darwinMain)
}

// Android Native
val androidNativeArm32Main by getting {
dependsOn(androidNativeMain)
}

val androidNativeArm64Main by getting {
dependsOn(androidNativeMain)
}

val androidNativeX64Main by getting {
dependsOn(androidNativeMain)
}

val androidNativeX86Main by getting {
dependsOn(androidNativeMain)
}

// Linux
val linuxArm32HfpMain by getting {
dependsOn(linuxMain)
}

val linuxArm64Main by getting {
dependsOn(linuxMain)
}

val linuxMips32Main by getting {
dependsOn(linuxMain)
}

val linuxMipsel32Main by getting {
dependsOn(linuxMain)
}

val linuxX64Main by getting {
dependsOn(linuxMain)
}

// Mingw
val mingwX64Main by getting {
dependsOn(mingwMain)
}

val mingwX86Main by getting {
dependsOn(mingwMain)
}

// Darwin [ macOS ]
val macosArm64Main by getting {
dependsOn(macosMain)
}

val macosX64Main by getting {
dependsOn(macosMain)
}

// Darwin [ iOS ]
val iosArm32Main by getting {
dependsOn(iosMain)
}

val iosArm64Main by getting {
dependsOn(iosMain)
}

val iosX64Main by getting {
dependsOn(iosMain)
}

val iosSimulatorArm64Main by getting {
dependsOn(iosMain)
}

// Darwin [ tvOS ]
val tvosArm64Main by getting {
dependsOn(tvosMain)
}

val tvosX64Main by getting {
dependsOn(tvosMain)
}

val tvosSimulatorArm64Main by getting {
dependsOn(tvosMain)
}

// Darwin [ watchOS ]
val watchosArm32Main by getting {
dependsOn(watchosMain)
}

val watchosArm64Main by getting {
dependsOn(watchosMain)
}

val watchosX64Main by getting {
dependsOn(watchosMain)
}

val watchosX86Main by getting {
dependsOn(watchosMain)
}

val watchosSimulatorArm64Main by getting {
dependsOn(watchosMain)
}

val wasm32Main by getting {
dependsOn(nativeMain)
}
}
}

Expand All @@ -214,3 +59,13 @@ publishing {
}
}
}

/* https://youtrack.jetbrains.com/issue/KT-63014/Running-tests-with-wasmJs-in-1.9.20-requires-Chrome-Canary#focus=Comments-27-8321383.0-0 */
rootProject.the<NodeJsRootExtension>().apply {
nodeVersion = "21.0.0-v8-canary202309143a48826a08"
nodeDownloadBaseUrl = "https://nodejs.org/download/v8-canary"
}

rootProject.tasks.withType<KotlinNpmInstallTask>().configureEach {
args.add("--ignore-engines")
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
package com.github.michaelbull.result

internal actual object BindException : Exception()

0 comments on commit 05a1e91

Please sign in to comment.