diff --git a/.circleci/config.yml b/.circleci/config.yml
index d24cc60..2a1d4f4 100644
--- a/.circleci/config.yml
+++ b/.circleci/config.yml
@@ -10,6 +10,7 @@ orbs:
# Define a job to be invoked later in a workflow.
# See: https://circleci.com/docs/configuration-reference/#jobs
+# ref: https://circleci.com/docs/guides/execution-managed/using-macos/
jobs:
build-android:
executor: java17
@@ -29,7 +30,8 @@ jobs:
build-ios:
macos:
- xcode: 15.0.0
+ xcode: 16.4.0
+ resource_class: macos.m1.medium.gen1
steps:
- checkout
- run:
diff --git a/.gitignore b/.gitignore
index d8e1a4c..7125ec7 100644
--- a/.gitignore
+++ b/.gitignore
@@ -230,30 +230,8 @@ obj/
/out/
# User-specific configurations
-.idea/caches/
-.idea/libraries/
-.idea/shelf/
-.idea/workspace.xml
-.idea/tasks.xml
-.idea/.name
-.idea/compiler.xml
-.idea/copyright/profiles_settings.xml
-.idea/encodings.xml
-.idea/misc.xml
-.idea/modules.xml
-.idea/scopes/scope_settings.xml
-.idea/dictionaries
-.idea/vcs.xml
-.idea/jsLibraryMappings.xml
-.idea/datasources.xml
-.idea/dataSources.ids
-.idea/sqlDataSources.xml
-.idea/dynamic.xml
-.idea/uiDesigner.xml
-.idea/assetWizardSettings.xml
-.idea/gradle.xml
-.idea/jarRepositories.xml
-.idea/navEditor.xml
+.idea
+.kotlin
# Legacy Eclipse project files
.classpath
diff --git a/.idea/.gitignore b/.idea/.gitignore
deleted file mode 100644
index 26d3352..0000000
--- a/.idea/.gitignore
+++ /dev/null
@@ -1,3 +0,0 @@
-# Default ignored files
-/shelf/
-/workspace.xml
diff --git a/.idea/codeStyles b/.idea/codeStyles
deleted file mode 100644
index 320a4bc..0000000
--- a/.idea/codeStyles
+++ /dev/null
@@ -1,137 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- xmlns:android
-
- ^$
-
-
-
-
-
-
-
-
- xmlns:.*
-
- ^$
-
-
- BY_NAME
-
-
-
-
-
-
- .*:id
-
- http://schemas.android.com/apk/res/android
-
-
-
-
-
-
-
-
- .*:name
-
- http://schemas.android.com/apk/res/android
-
-
-
-
-
-
-
-
- name
-
- ^$
-
-
-
-
-
-
-
-
- style
-
- ^$
-
-
-
-
-
-
-
-
- .*
-
- ^$
-
-
- BY_NAME
-
-
-
-
-
-
- .*
-
- http://schemas.android.com/apk/res/android
-
-
- ANDROID_ATTRIBUTE_ORDER
-
-
-
-
-
-
- .*
-
- .*
-
-
- BY_NAME
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/.idea/migrations.xml b/.idea/migrations.xml
deleted file mode 100644
index f8051a6..0000000
--- a/.idea/migrations.xml
+++ /dev/null
@@ -1,10 +0,0 @@
-
-
-
-
-
-
\ No newline at end of file
diff --git a/convention-plugins/build.gradle.kts b/convention-plugins/build.gradle.kts
index c5a80b7..4a42fdc 100644
--- a/convention-plugins/build.gradle.kts
+++ b/convention-plugins/build.gradle.kts
@@ -4,4 +4,14 @@ plugins {
repositories {
gradlePluginPortal() // To use 'maven-publish' and 'signing' plugins in our own plugin
+}
+
+java {
+ toolchain {
+ languageVersion.set(JavaLanguageVersion.of(17))
+ }
+}
+
+kotlin {
+ jvmToolchain(17)
}
\ No newline at end of file
diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml
index 67fee76..5ea7fb1 100644
--- a/gradle/libs.versions.toml
+++ b/gradle/libs.versions.toml
@@ -1,11 +1,11 @@
[versions]
agp = "8.2.0"
-kotlin = "1.9.20"
-compose = "1.5.4"
+kotlin = "2.2.21"
+compose = "1.9.5"
compose-compiler = "1.5.4"
-compose-material3 = "1.1.2"
-androidx-activityCompose = "1.8.0"
-kotlinxSerializationJson = "1.5.1"
+compose-material3 = "1.4.0"
+androidx-activityCompose = "1.12.0"
+kotlinxSerializationJson = "1.9.0"
[libraries]
kotlin-test = { module = "org.jetbrains.kotlin:kotlin-test", version.ref = "kotlin" }
@@ -22,4 +22,3 @@ androidApplication = { id = "com.android.application", version.ref = "agp" }
androidLibrary = { id = "com.android.library", version.ref = "agp" }
kotlinAndroid = { id = "org.jetbrains.kotlin.android", version.ref = "kotlin" }
kotlinMultiplatform = { id = "org.jetbrains.kotlin.multiplatform", version.ref = "kotlin" }
-kotlinCocoapods = { id = "org.jetbrains.kotlin.native.cocoapods", version.ref = "kotlin" }
diff --git a/kotlin-json-patch/build.gradle.kts b/kotlin-json-patch/build.gradle.kts
index f72267d..3153a8a 100644
--- a/kotlin-json-patch/build.gradle.kts
+++ b/kotlin-json-patch/build.gradle.kts
@@ -1,3 +1,6 @@
+import org.jetbrains.kotlin.gradle.ExperimentalWasmDsl
+import org.jetbrains.kotlin.gradle.dsl.JvmDefaultMode
+
plugins {
alias(libs.plugins.kotlinMultiplatform)
alias(libs.plugins.androidLibrary)
@@ -5,24 +8,26 @@ plugins {
}
group = "io.github.reidsync"
-version = "1.0.0"
+version = "1.1.0"
kotlin {
- jvm {
- // …
- }
- js(IR) {
- // …
- }
- ios()
- androidTarget {
- compilations.all {
- kotlinOptions {
- jvmTarget = "1.8"
- }
- }
+ jvmToolchain(8)
+
+ @OptIn(ExperimentalWasmDsl::class)
+ wasmJs {
+ browser()
+ nodejs()
+ }
+
+ androidTarget {
+ compilerOptions {
+ jvmTarget.set(org.jetbrains.kotlin.gradle.dsl.JvmTarget.JVM_1_8)
+ jvmDefault = JvmDefaultMode.DISABLE
+ }
publishLibraryVariants("release", "debug")
}
+
+ jvm("desktop")
listOf(
iosX64(),
diff --git a/kotlin-json-patch/src/commonMain/kotlin/com/reidsync/kxjsonpatch/Operations.kt b/kotlin-json-patch/src/commonMain/kotlin/com/reidsync/kxjsonpatch/Operations.kt
index d058196..1d43afa 100644
--- a/kotlin-json-patch/src/commonMain/kotlin/com/reidsync/kxjsonpatch/Operations.kt
+++ b/kotlin-json-patch/src/commonMain/kotlin/com/reidsync/kxjsonpatch/Operations.kt
@@ -30,7 +30,7 @@ internal open class Operations {
TEST to TEST_name)
fun opFromName(rfcName: String): Int {
- val res=OPS.get(rfcName.toLowerCase())
+ val res=OPS.get(rfcName.lowercase())
if(res==null) throw InvalidJsonPatchException("unknown / unsupported operation $rfcName")
return res
}