Compare commits

..

17 Commits

Author SHA1 Message Date
1f52bc7c99 restore gradle wrapper scripts 2026-10-10 20:03:49 +06:00
ec2568b988 Update dependencies and rewrite SmartSemaphore docs
Updated version numbers and modified documentation for SmartSemaphore.
2026-10-10 19:54:06 +06:00
d082e8bdba Clean up gradle-wrapper.properties
Removed network configuration settings for Gradle wrapper.
2026-10-10 19:53:31 +06:00
71e0bf214e update dependencies 2026-10-10 15:32:26 +06:00
761b14dc65 preserve concurrency constructor validation 2026-10-10 14:25:54 +06:00
63d66228ab start 0.32.0 2026-10-10 14:25:48 +06:00
c4f15c32ea Merge pull request #679 from InsanusMokrassar/0.31.1
0.31.1
2026-09-23 23:21:27 +06:00
a070f7d2f3 update changelog 2026-09-23 22:50:39 +06:00
74501079c3 fix of smart lockers 2026-09-23 22:49:30 +06:00
761cfffae1 start 0.31.1 2026-09-23 22:41:41 +06:00
f26fb352e5 Update dependencies in CHANGELOG.md for version 0.31.0 2026-08-31 10:51:21 +06:00
b71781727a Merge pull request #678 from InsanusMokrassar/0.31.0
0.31.0
2026-08-30 17:31:34 +06:00
6c843c4dd4 migrate onto new android dsl 2026-08-28 23:04:25 +06:00
9381e7d057 migrate build toolchain 2026-08-28 22:12:57 +06:00
9ffc171c04 update dependencies 2026-08-28 14:03:40 +06:00
6104d4917c start 0.31.0 2026-08-28 12:55:11 +06:00
faa3ac728f Merge pull request #677 from InsanusMokrassar/0.30.1
0.30.1
2026-08-13 13:26:20 +06:00
61 changed files with 183 additions and 148 deletions

View File

@@ -1,6 +1,33 @@
# Changelog # Changelog
## 0.30.2 ## 0.32.0
* `Versions`:
* `crypto-js`: `4.1.1` -> `4.2.0`
* `AndroidX Fragment`: `1.9.0` -> `1.9.1`
* `AndroidX Core KTX`: `1.19.0` -> `1.19.1`
* `NMCP`: `1.6.1` -> `1.6.2`
* `Gradle Versions`: `0.61.0` -> `0.65.0`
* `KotlinPoet`: `2.3.0` -> `2.4.0`
* `Okio`: `3.18.1` -> `3.18.2`
* `Ktor`: `3.5.2` -> `3.6.0`
* `Exposed`: `1.5.0` -> `1.5.1`
* `Compose Material3`: `1.11.0-alpha07` -> `1.9.0`
* `KSLog`: `1.7.0` -> `2.1.0`
* `Kotlin`: `2.4.10` -> `2.4.21`
* `Compose`: `1.12.0` -> `1.12.1`
* `Gradle wrapper`: `9.3.1` -> `9.7.0`
* `Coroutines`:
* `SmartSemaphore`:
* Rewrite docs for `freePermits` property.
* Add constructor arguments requirements to fail on invalid `permits` and `acquiredPermits` values.
* `SmartRWLocker`:
* Add constructor arguments requirements to fail on invalid `readPermits` values.
* `SmartKeyRWLocker`:
* Add constructor arguments requirements to fail on invalid `globalLockerReadPermits` and `perKeyReadPermits` values.
## 0.31.1
* `Coroutines`: * `Coroutines`:
* `SmartRWLocker`: * `SmartRWLocker`:
@@ -10,6 +37,17 @@
* `SmartSemaphore`: * `SmartSemaphore`:
* Fix same issues to avoid cancellation exceptions handling errors and several other problems * Fix same issues to avoid cancellation exceptions handling errors and several other problems
## 0.31.0
* `Versions`:
* `Kotlin`: `2.3.21` -> `2.4.10`
* `SQLite`: `3.53.2.1` -> `3.53.4.0`
* `KSP`: `2.3.9` -> `2.3.11`
* `Exposed`: `1.3.0` -> `1.5.0`
* `NMCP`: `1.5.0` -> `1.6.1`
* `AndroidX AppCompat`: `1.7.1` -> `1.8.0`
* `AndroidX Fragment`: `1.8.9` -> `1.9.0`
## 0.30.1 ## 0.30.1
* `Versions`: * `Versions`:

View File

@@ -1,7 +1,7 @@
plugins { plugins {
id "org.jetbrains.kotlin.multiplatform" id "org.jetbrains.kotlin.multiplatform"
id "org.jetbrains.kotlin.plugin.serialization" id "org.jetbrains.kotlin.plugin.serialization"
id "com.android.library" id "com.android.kotlin.multiplatform.library"
} }
apply from: "$mppAndroidProject" apply from: "$mppAndroidProject"

View File

@@ -1,7 +1,7 @@
plugins { plugins {
id "org.jetbrains.kotlin.multiplatform" id "org.jetbrains.kotlin.multiplatform"
id "org.jetbrains.kotlin.plugin.serialization" id "org.jetbrains.kotlin.plugin.serialization"
id "com.android.library" id "com.android.kotlin.multiplatform.library"
} }
apply from: "$mppAndroidProject" apply from: "$mppAndroidProject"

View File

@@ -1,7 +1,7 @@
plugins { plugins {
id "org.jetbrains.kotlin.multiplatform" id "org.jetbrains.kotlin.multiplatform"
id "org.jetbrains.kotlin.plugin.serialization" id "org.jetbrains.kotlin.plugin.serialization"
id "com.android.library" id "com.android.kotlin.multiplatform.library"
alias(libs.plugins.jb.compose) alias(libs.plugins.jb.compose)
alias(libs.plugins.kt.jb.compose) alias(libs.plugins.kt.jb.compose)
} }

View File

@@ -1,7 +1,7 @@
plugins { plugins {
id "org.jetbrains.kotlin.multiplatform" id "org.jetbrains.kotlin.multiplatform"
id "org.jetbrains.kotlin.plugin.serialization" id "org.jetbrains.kotlin.plugin.serialization"
id "com.android.library" id "com.android.kotlin.multiplatform.library"
} }
apply from: "$mppAndroidProject" apply from: "$mppAndroidProject"

View File

@@ -1,7 +1,7 @@
plugins { plugins {
id "org.jetbrains.kotlin.multiplatform" id "org.jetbrains.kotlin.multiplatform"
id "org.jetbrains.kotlin.plugin.serialization" id "org.jetbrains.kotlin.plugin.serialization"
id "com.android.library" id "com.android.kotlin.multiplatform.library"
alias(libs.plugins.jb.compose) alias(libs.plugins.jb.compose)
alias(libs.plugins.kt.jb.compose) alias(libs.plugins.kt.jb.compose)
} }

View File

@@ -1,7 +1,7 @@
plugins { plugins {
id "org.jetbrains.kotlin.multiplatform" id "org.jetbrains.kotlin.multiplatform"
id "org.jetbrains.kotlin.plugin.serialization" id "org.jetbrains.kotlin.plugin.serialization"
id "com.android.library" id "com.android.kotlin.multiplatform.library"
} }
apply from: "$mppJvmJsWasmJsAndroidLinuxMingwLinuxArm64Project" apply from: "$mppJvmJsWasmJsAndroidLinuxMingwLinuxArm64Project"

View File

@@ -1,7 +1,7 @@
plugins { plugins {
id "org.jetbrains.kotlin.multiplatform" id "org.jetbrains.kotlin.multiplatform"
id "org.jetbrains.kotlin.plugin.serialization" id "org.jetbrains.kotlin.plugin.serialization"
id "com.android.library" id "com.android.kotlin.multiplatform.library"
} }
apply from: "$mppJvmJsWasmJsAndroidLinuxMingwLinuxArm64Project" apply from: "$mppJvmJsWasmJsAndroidLinuxMingwLinuxArm64Project"

View File

@@ -1,7 +1,7 @@
plugins { plugins {
id "org.jetbrains.kotlin.multiplatform" id "org.jetbrains.kotlin.multiplatform"
id "org.jetbrains.kotlin.plugin.serialization" id "org.jetbrains.kotlin.plugin.serialization"
id "com.android.library" id "com.android.kotlin.multiplatform.library"
} }
apply from: "$mppJvmJsWasmJsAndroidLinuxMingwLinuxArm64Project" apply from: "$mppJvmJsWasmJsAndroidLinuxMingwLinuxArm64Project"
@@ -13,7 +13,7 @@ kotlin {
api libs.klock api libs.klock
} }
} }
jvmMain { jvmAndAndroidMain {
dependencies { dependencies {
api project(":micro_utils.coroutines") api project(":micro_utils.coroutines")
} }

View File

@@ -1,7 +1,7 @@
plugins { plugins {
id "org.jetbrains.kotlin.multiplatform" id "org.jetbrains.kotlin.multiplatform"
id "org.jetbrains.kotlin.plugin.serialization" id "org.jetbrains.kotlin.plugin.serialization"
id "com.android.library" id "com.android.kotlin.multiplatform.library"
alias(libs.plugins.jb.compose) alias(libs.plugins.jb.compose)
alias(libs.plugins.kt.jb.compose) alias(libs.plugins.kt.jb.compose)
} }

View File

@@ -1,7 +1,7 @@
plugins { plugins {
id "org.jetbrains.kotlin.multiplatform" id "org.jetbrains.kotlin.multiplatform"
id "org.jetbrains.kotlin.plugin.serialization" id "org.jetbrains.kotlin.plugin.serialization"
id "com.android.library" id "com.android.kotlin.multiplatform.library"
} }
apply from: "$mppJvmJsWasmJsAndroidLinuxMingwLinuxArm64Project" apply from: "$mppJvmJsWasmJsAndroidLinuxMingwLinuxArm64Project"

View File

@@ -1,7 +1,7 @@
plugins { plugins {
id "org.jetbrains.kotlin.multiplatform" id "org.jetbrains.kotlin.multiplatform"
id "org.jetbrains.kotlin.plugin.serialization" id "org.jetbrains.kotlin.plugin.serialization"
id "com.android.library" id "com.android.kotlin.multiplatform.library"
alias(libs.plugins.jb.compose) alias(libs.plugins.jb.compose)
alias(libs.plugins.kt.jb.compose) alias(libs.plugins.kt.jb.compose)
} }

View File

@@ -28,6 +28,11 @@ class SmartKeyRWLocker<T>(
globalLockerWriteIsLocked: Boolean = false, globalLockerWriteIsLocked: Boolean = false,
private val perKeyReadPermits: Int = Int.MAX_VALUE private val perKeyReadPermits: Int = Int.MAX_VALUE
) { ) {
init {
require(globalLockerReadPermits > 0) { "The maximal number 'globalLockerReadPermits' of global permits on reading ($globalLockerReadPermits) must be positive." }
require(perKeyReadPermits > 0) { "The maximal number 'perKeyReadPermits' of permits on reading per key ($perKeyReadPermits) must be positive." }
}
private val globalRWLocker: SmartRWLocker = SmartRWLocker( private val globalRWLocker: SmartRWLocker = SmartRWLocker(
readPermits = globalLockerReadPermits, readPermits = globalLockerReadPermits,
writeIsLocked = globalLockerWriteIsLocked writeIsLocked = globalLockerWriteIsLocked

View File

@@ -17,6 +17,10 @@ import kotlin.contracts.contract
* * [unlockWrite] will just unlock [writeMutex] * * [unlockWrite] will just unlock [writeMutex]
*/ */
class SmartRWLocker(private val readPermits: Int = Int.MAX_VALUE, writeIsLocked: Boolean = false) { class SmartRWLocker(private val readPermits: Int = Int.MAX_VALUE, writeIsLocked: Boolean = false) {
init {
require(readPermits > 0) { "The maximal number 'readPermits' of permits on reading ($readPermits) must be positive." }
}
private val _readSemaphore = SmartSemaphore.Mutable(permits = readPermits, acquiredPermits = if (writeIsLocked) readPermits else 0) private val _readSemaphore = SmartSemaphore.Mutable(permits = readPermits, acquiredPermits = if (writeIsLocked) readPermits else 0)
private val _writeMutex = SmartMutex.Mutable(locked = writeIsLocked) private val _writeMutex = SmartMutex.Mutable(locked = writeIsLocked)

View File

@@ -29,8 +29,10 @@ sealed interface SmartSemaphore {
val permitsStateFlow: StateFlow<Int> val permitsStateFlow: StateFlow<Int>
/** /**
* * True - locked * The number of the available permits.
* * False - unlocked *
* If returns `0`, it is fully acquired (locked).
* If it returns the same value as `maxPermits`, it is fully released (unlocked).
*/ */
val freePermits: Int val freePermits: Int
get() = permitsStateFlow.value get() = permitsStateFlow.value
@@ -47,6 +49,12 @@ sealed interface SmartSemaphore {
* @param locked Preset state of [freePermits] and its internal [_freePermitsStateFlow] * @param locked Preset state of [freePermits] and its internal [_freePermitsStateFlow]
*/ */
class Mutable(permits: Int, acquiredPermits: Int = 0) : SmartSemaphore { class Mutable(permits: Int, acquiredPermits: Int = 0) : SmartSemaphore {
init {
require(permits > 0) { "The maximal number 'permits' of permits ($permits) must be positive." }
require(acquiredPermits >= 0) { "The number 'acquiredPermits' of initially acquired permits ($acquiredPermits) must be non-negative." }
require(permits >= acquiredPermits) { "The number 'acquiredPermits' of acquired initially permits ($acquiredPermits) must not exceed the maximal number 'permits' of permits ($permits)." }
}
override val maxPermits: Int = permits override val maxPermits: Int = permits
private val _freePermitsStateFlow = MutableRedeliverStateFlow<Int>(permits - acquiredPermits) private val _freePermitsStateFlow = MutableRedeliverStateFlow<Int>(permits - acquiredPermits)
override val permitsStateFlow: StateFlow<Int> = _freePermitsStateFlow.asStateFlow() override val permitsStateFlow: StateFlow<Int> = _freePermitsStateFlow.asStateFlow()

View File

@@ -1,7 +1,7 @@
plugins { plugins {
id "org.jetbrains.kotlin.multiplatform" id "org.jetbrains.kotlin.multiplatform"
id "org.jetbrains.kotlin.plugin.serialization" id "org.jetbrains.kotlin.plugin.serialization"
id "com.android.library" id "com.android.kotlin.multiplatform.library"
} }
apply from: "$mppJvmJsWasmJsAndroidLinuxMingwLinuxArm64Project" apply from: "$mppJvmJsWasmJsAndroidLinuxMingwLinuxArm64Project"
@@ -21,11 +21,3 @@ kotlin {
} }
} }
} }
android {
sourceSets {
main {
java.srcDirs += [ "src/jvmMain/kotlin" ]
}
}
}

View File

@@ -1,7 +1,7 @@
plugins { plugins {
id "org.jetbrains.kotlin.multiplatform" id "org.jetbrains.kotlin.multiplatform"
id "org.jetbrains.kotlin.plugin.serialization" id "org.jetbrains.kotlin.plugin.serialization"
id "com.android.library" id "com.android.kotlin.multiplatform.library"
id "org.jetbrains.dokka" id "org.jetbrains.dokka"
} }
@@ -11,13 +11,17 @@ repositories {
mavenCentral() mavenCentral()
} }
apply from: "$defaultAndroidSettings"
kotlin { kotlin {
jvm() jvm()
js(IR) { js(IR) {
browser() browser()
nodejs() nodejs()
} }
androidTarget {} android {
project.ext.configureAndroidTarget(delegate)
}
sourceSets { sourceSets {
commonMain { commonMain {
@@ -137,5 +141,3 @@ dokka {
// } // }
// } // }
//} //}
apply from: "$defaultAndroidSettings"

View File

@@ -1,7 +1,7 @@
plugins { plugins {
id "org.jetbrains.kotlin.multiplatform" id "org.jetbrains.kotlin.multiplatform"
id "org.jetbrains.kotlin.plugin.serialization" id "org.jetbrains.kotlin.plugin.serialization"
id "com.android.library" id "com.android.kotlin.multiplatform.library"
} }
apply from: "$mppJvmJsWasmJsAndroidLinuxMingwLinuxArm64Project" apply from: "$mppJvmJsWasmJsAndroidLinuxMingwLinuxArm64Project"

View File

@@ -1,7 +1,7 @@
plugins { plugins {
id "org.jetbrains.kotlin.multiplatform" id "org.jetbrains.kotlin.multiplatform"
id "org.jetbrains.kotlin.plugin.serialization" id "org.jetbrains.kotlin.plugin.serialization"
id "com.android.library" id "com.android.kotlin.multiplatform.library"
} }
apply from: "$mppJvmJsWasmJsAndroidLinuxMingwLinuxArm64Project" apply from: "$mppJvmJsWasmJsAndroidLinuxMingwLinuxArm64Project"

View File

@@ -1,11 +1,9 @@
kotlin.code.style=official kotlin.code.style=official
org.gradle.parallel=true org.gradle.parallel=true
kotlin.js.generate.externals=true
kotlin.incremental=true kotlin.incremental=true
kotlin.incremental.js=true kotlin.incremental.js=true
#kotlin.experimental.tryK2=true #kotlin.experimental.tryK2=true
android.useAndroidX=true android.useAndroidX=true
android.enableJetifier=true
org.gradle.jvmargs=-Xmx2g -XX:MaxMetaspaceSize=2g org.gradle.jvmargs=-Xmx2g -XX:MaxMetaspaceSize=2g
## https://github.com/google/ksp/issues/2491 ## https://github.com/google/ksp/issues/2491
@@ -13,10 +11,10 @@ org.gradle.jvmargs=-Xmx2g -XX:MaxMetaspaceSize=2g
# JS NPM # JS NPM
crypto_js_version=4.1.1 crypto_js_version=4.2.0
# Project data # Project data
group=dev.inmo group=dev.inmo
version=0.30.2 version=0.32.0
android_code_version=316 android_code_version=319

View File

@@ -1,51 +1,51 @@
[versions] [versions]
kt = "2.3.21" kt = "2.4.21"
kt-serialization = "1.11.0" kt-serialization = "1.11.0"
kt-coroutines = "1.11.0" kt-coroutines = "1.11.0"
kotlinx-browser = "0.5.0" kotlinx-browser = "0.5.0"
kslog = "1.7.0" kslog = "2.1.0"
jb-compose = "1.11.1" jb-compose = "1.12.1"
jb-compose-material3 = "1.11.0-alpha07" jb-compose-material3 = "1.9.0"
jb-compose-icons = "1.7.8" jb-compose-icons = "1.7.8"
jb-exposed = "1.3.0" jb-exposed = "1.5.1"
jb-dokka = "2.2.0" jb-dokka = "2.2.0"
sqlite = "3.53.2.1" sqlite = "3.53.4.0"
korlibs = "5.4.0" korlibs = "5.4.0"
uuid = "0.8.4" uuid = "0.8.4"
ktor = "3.5.2" ktor = "3.6.0"
gh-release = "2.5.2" gh-release = "2.5.2"
koin = "4.2.2" koin = "4.2.2"
okio = "3.18.1" okio = "3.18.2"
ksp = "2.3.9" ksp = "2.3.11"
kotlin-poet = "2.3.0" kotlin-poet = "2.4.0"
versions = "0.54.0" versions = "0.65.0"
nmcp = "1.5.0" nmcp = "1.6.2"
android-gradle = "8.12.+" android-gradle = "9.1.1"
dexcount = "4.0.0" dexcount = "4.0.0"
android-coreKtx = "1.19.0" android-coreKtx = "1.19.1"
android-recyclerView = "1.4.0" android-recyclerView = "1.4.0"
android-appCompat = "1.7.1" android-appCompat = "1.8.0"
android-fragment = "1.8.9" android-fragment = "1.9.1"
android-espresso = "3.7.0" android-espresso = "3.7.0"
android-test = "1.3.0" android-test = "1.3.0"
android-props-minSdk = "21" android-props-minSdk = "21"
android-props-compileSdk = "36" android-props-compileSdk = "37"
android-props-buildTools = "36.0.0" android-props-buildTools = "37.0.0"
[libraries] [libraries]
@@ -126,5 +126,5 @@ buildscript-android-dexcount = { module = "com.getkeepsafe.dexcount:dexcount-gra
jb-compose = { id = "org.jetbrains.compose", version.ref = "jb-compose" } jb-compose = { id = "org.jetbrains.compose", version.ref = "jb-compose" }
kt-jb-compose = { id = "org.jetbrains.kotlin.plugin.compose", version.ref = "kt" } kt-jb-compose = { id = "org.jetbrains.kotlin.plugin.compose", version.ref = "kt" }
versions = { id = "com.github.ben-manes.versions", version.ref = "versions" } versions = { id = "io.github.ben-manes.versions", version.ref = "versions" }
nmcp-aggregation = { id = "com.gradleup.nmcp.aggregation", version.ref = "nmcp" } nmcp-aggregation = { id = "com.gradleup.nmcp.aggregation", version.ref = "nmcp" }

View File

@@ -1,6 +1,6 @@
kotlin { kotlin {
sourceSets { sourceSets {
androidUnitTest { androidHostTest {
dependencies { dependencies {
implementation compose.uiTest implementation compose.uiTest
} }

View File

@@ -1,34 +1,18 @@
apply plugin: 'com.getkeepsafe.dexcount' apply plugin: 'com.getkeepsafe.dexcount'
android { ext.configureAndroidTarget = { target ->
compileSdkVersion libs.versions.android.props.compileSdk.get().toInteger() target.compileSdk = libs.versions.android.props.compileSdk.get().toInteger()
buildToolsVersion libs.versions.android.props.buildTools.get() target.buildToolsVersion = libs.versions.android.props.buildTools.get()
target.minSdk = libs.versions.android.props.minSdk.get().toInteger()
defaultConfig { target.namespace = "${project.group}.${project.name}"
minSdkVersion libs.versions.android.props.minSdk.get().toInteger() target.packaging {
compileSdkVersion libs.versions.android.props.compileSdk.get().toInteger() resources {
targetSdkVersion libs.versions.android.props.compileSdk.get().toInteger() excludes.add 'META-INF/kotlinx-serialization-runtime.kotlin_module'
versionCode "${android_code_version}".toInteger() excludes.add 'META-INF/kotlinx-serialization-cbor.kotlin_module'
versionName "$version" excludes.add 'META-INF/kotlinx-serialization-properties.kotlin_module'
namespace "${project.group}.${project.name}"
}
buildTypes {
release {
minifyEnabled false
}
debug {
debuggable true
} }
} }
target.compilerOptions.jvmTarget.set(
packagingOptions { target.compilerOptions.jvmTarget.get().class.fromTarget("17")
exclude 'META-INF/kotlinx-serialization-runtime.kotlin_module' )
exclude 'META-INF/kotlinx-serialization-cbor.kotlin_module'
exclude 'META-INF/kotlinx-serialization-properties.kotlin_module'
}
compileOptions {
sourceCompatibility JavaVersion.VERSION_17
targetCompatibility JavaVersion.VERSION_17
}
} }

View File

@@ -1,25 +1,31 @@
apply from: "$defaultAndroidSettings"
kotlin { kotlin {
androidTarget { android {
publishLibraryVariants( project.ext.configureAndroidTarget(delegate)
"release", withHostTest {}
"debug", withDeviceTest {}
)
compilations.all {
kotlinOptions {
jvmTarget = "17"
}
}
} }
sourceSets { sourceSets {
androidUnitTest { jvmAndAndroidMain {
dependsOn commonMain
kotlin.srcDir("src/jvmMain/kotlin")
resources.srcDir("src/jvmMain/resources")
}
jvmMain {
dependsOn jvmAndAndroidMain
kotlin.setSrcDirs([])
resources.setSrcDirs([])
}
androidHostTest {
dependencies { dependencies {
implementation kotlin('test-junit') implementation kotlin('test-junit')
implementation libs.android.test.junit implementation libs.android.test.junit
implementation libs.android.espresso implementation libs.android.espresso
} }
} }
androidInstrumentedTest { androidDeviceTest {
dependencies { dependencies {
implementation kotlin('test-junit') implementation kotlin('test-junit')
implementation libs.android.test.junit implementation libs.android.test.junit
@@ -27,8 +33,6 @@ kotlin {
} }
} }
androidMain.dependsOn jvmMain androidMain.dependsOn jvmAndAndroidMain
} }
} }
apply from: "$defaultAndroidSettings"

Binary file not shown.

View File

@@ -1,5 +1,5 @@
distributionBase=GRADLE_USER_HOME distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-9.3.0-bin.zip distributionUrl=https\://services.gradle.org/distributions/gradle-9.7.0-bin.zip
zipStoreBase=GRADLE_USER_HOME zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists zipStorePath=wrapper/dists

View File

@@ -1,7 +1,7 @@
plugins { plugins {
id "org.jetbrains.kotlin.multiplatform" id "org.jetbrains.kotlin.multiplatform"
id "org.jetbrains.kotlin.plugin.serialization" id "org.jetbrains.kotlin.plugin.serialization"
id "com.android.library" id "com.android.kotlin.multiplatform.library"
} }
apply from: "$mppJvmJsWasmJsAndroidLinuxMingwLinuxArm64Project" apply from: "$mppJvmJsWasmJsAndroidLinuxMingwLinuxArm64Project"
@@ -14,7 +14,7 @@ kotlin {
api libs.uuid api libs.uuid
} }
} }
jvmMain { jvmAndAndroidMain {
dependencies { dependencies {
api libs.kt.reflect api libs.kt.reflect
api project(":micro_utils.coroutines") api project(":micro_utils.coroutines")

View File

@@ -1,7 +1,7 @@
plugins { plugins {
id "org.jetbrains.kotlin.multiplatform" id "org.jetbrains.kotlin.multiplatform"
id "org.jetbrains.kotlin.plugin.serialization" id "org.jetbrains.kotlin.plugin.serialization"
id "com.android.library" id "com.android.kotlin.multiplatform.library"
id "com.google.devtools.ksp" id "com.google.devtools.ksp"
} }

View File

@@ -1,7 +1,7 @@
plugins { plugins {
id "org.jetbrains.kotlin.multiplatform" id "org.jetbrains.kotlin.multiplatform"
id "org.jetbrains.kotlin.plugin.serialization" id "org.jetbrains.kotlin.plugin.serialization"
id "com.android.library" id "com.android.kotlin.multiplatform.library"
} }
apply from: "$mppJvmJsWasmJsAndroidLinuxMingwLinuxArm64Project" apply from: "$mppJvmJsWasmJsAndroidLinuxMingwLinuxArm64Project"

View File

@@ -1,7 +1,7 @@
plugins { plugins {
id "org.jetbrains.kotlin.multiplatform" id "org.jetbrains.kotlin.multiplatform"
id "org.jetbrains.kotlin.plugin.serialization" id "org.jetbrains.kotlin.plugin.serialization"
id "com.android.library" id "com.android.kotlin.multiplatform.library"
id "com.google.devtools.ksp" id "com.google.devtools.ksp"
} }

View File

@@ -1,7 +1,7 @@
plugins { plugins {
id "org.jetbrains.kotlin.multiplatform" id "org.jetbrains.kotlin.multiplatform"
id "org.jetbrains.kotlin.plugin.serialization" id "org.jetbrains.kotlin.plugin.serialization"
id "com.android.library" id "com.android.kotlin.multiplatform.library"
} }
apply from: "$mppJvmJsWasmJsAndroidLinuxMingwLinuxArm64Project" apply from: "$mppJvmJsWasmJsAndroidLinuxMingwLinuxArm64Project"

View File

@@ -1,7 +1,7 @@
plugins { plugins {
id "org.jetbrains.kotlin.multiplatform" id "org.jetbrains.kotlin.multiplatform"
id "org.jetbrains.kotlin.plugin.serialization" id "org.jetbrains.kotlin.plugin.serialization"
id "com.android.library" id "com.android.kotlin.multiplatform.library"
id "com.google.devtools.ksp" id "com.google.devtools.ksp"
} }

View File

@@ -1,7 +1,7 @@
plugins { plugins {
id "org.jetbrains.kotlin.multiplatform" id "org.jetbrains.kotlin.multiplatform"
id "org.jetbrains.kotlin.plugin.serialization" id "org.jetbrains.kotlin.plugin.serialization"
id "com.android.library" id "com.android.kotlin.multiplatform.library"
} }
apply from: "$mppJvmJsWasmJsAndroidLinuxMingwLinuxArm64Project" apply from: "$mppJvmJsWasmJsAndroidLinuxMingwLinuxArm64Project"

View File

@@ -1,7 +1,7 @@
plugins { plugins {
id "org.jetbrains.kotlin.multiplatform" id "org.jetbrains.kotlin.multiplatform"
id "org.jetbrains.kotlin.plugin.serialization" id "org.jetbrains.kotlin.plugin.serialization"
id "com.android.library" id "com.android.kotlin.multiplatform.library"
id "com.google.devtools.ksp" id "com.google.devtools.ksp"
} }

View File

@@ -1,7 +1,7 @@
plugins { plugins {
id "org.jetbrains.kotlin.multiplatform" id "org.jetbrains.kotlin.multiplatform"
id "org.jetbrains.kotlin.plugin.serialization" id "org.jetbrains.kotlin.plugin.serialization"
id "com.android.library" id "com.android.kotlin.multiplatform.library"
} }
apply from: "$mppJvmJsWasmJsAndroidLinuxMingwLinuxArm64Project" apply from: "$mppJvmJsWasmJsAndroidLinuxMingwLinuxArm64Project"

View File

@@ -1,7 +1,7 @@
plugins { plugins {
id "org.jetbrains.kotlin.multiplatform" id "org.jetbrains.kotlin.multiplatform"
id "org.jetbrains.kotlin.plugin.serialization" id "org.jetbrains.kotlin.plugin.serialization"
id "com.android.library" id "com.android.kotlin.multiplatform.library"
} }
apply from: "$mppJvmJsWasmJsAndroidLinuxMingwLinuxArm64Project" apply from: "$mppJvmJsWasmJsAndroidLinuxMingwLinuxArm64Project"

View File

@@ -1,7 +1,7 @@
plugins { plugins {
id "org.jetbrains.kotlin.multiplatform" id "org.jetbrains.kotlin.multiplatform"
id "org.jetbrains.kotlin.plugin.serialization" id "org.jetbrains.kotlin.plugin.serialization"
id "com.android.library" id "com.android.kotlin.multiplatform.library"
} }
apply from: "$mppJvmJsWasmJsAndroidLinuxMingwLinuxArm64Project" apply from: "$mppJvmJsWasmJsAndroidLinuxMingwLinuxArm64Project"

View File

@@ -1,7 +1,7 @@
plugins { plugins {
id "org.jetbrains.kotlin.multiplatform" id "org.jetbrains.kotlin.multiplatform"
id "org.jetbrains.kotlin.plugin.serialization" id "org.jetbrains.kotlin.plugin.serialization"
id "com.android.library" id "com.android.kotlin.multiplatform.library"
} }
apply from: "$mppJvmJsWasmJsAndroidLinuxMingwLinuxArm64Project" apply from: "$mppJvmJsWasmJsAndroidLinuxMingwLinuxArm64Project"

View File

@@ -1,7 +1,7 @@
plugins { plugins {
id "org.jetbrains.kotlin.multiplatform" id "org.jetbrains.kotlin.multiplatform"
id "org.jetbrains.kotlin.plugin.serialization" id "org.jetbrains.kotlin.plugin.serialization"
id "com.android.library" id "com.android.kotlin.multiplatform.library"
} }
apply from: "$mppJvmJsWasmJsAndroidLinuxMingwLinuxArm64Project" apply from: "$mppJvmJsWasmJsAndroidLinuxMingwLinuxArm64Project"

View File

@@ -11,7 +11,7 @@ package dev.inmo.micro_utils.meta
RequiresOptIn.Level.WARNING RequiresOptIn.Level.WARNING
) )
@Target( @Target(
AnnotationTarget.FIELD, AnnotationTarget.PROPERTY,
) )
@Retention(AnnotationRetention.BINARY) @Retention(AnnotationRetention.BINARY)
annotation class MetaContainerRootMapWarning annotation class MetaContainerRootMapWarning

View File

@@ -1,7 +1,7 @@
plugins { plugins {
id "org.jetbrains.kotlin.multiplatform" id "org.jetbrains.kotlin.multiplatform"
id "org.jetbrains.kotlin.plugin.serialization" id "org.jetbrains.kotlin.plugin.serialization"
id "com.android.library" id "com.android.kotlin.multiplatform.library"
} }
apply from: "$mppJvmJsWasmJsAndroidLinuxMingwLinuxArm64Project" apply from: "$mppJvmJsWasmJsAndroidLinuxMingwLinuxArm64Project"

View File

@@ -1,7 +1,7 @@
plugins { plugins {
id "org.jetbrains.kotlin.multiplatform" id "org.jetbrains.kotlin.multiplatform"
id "org.jetbrains.kotlin.plugin.serialization" id "org.jetbrains.kotlin.plugin.serialization"
id "com.android.library" id "com.android.kotlin.multiplatform.library"
} }
apply from: "$mppJvmJsWasmJsAndroidLinuxMingwLinuxArm64Project" apply from: "$mppJvmJsWasmJsAndroidLinuxMingwLinuxArm64Project"

View File

@@ -1,7 +1,7 @@
plugins { plugins {
id "org.jetbrains.kotlin.multiplatform" id "org.jetbrains.kotlin.multiplatform"
id "org.jetbrains.kotlin.plugin.serialization" id "org.jetbrains.kotlin.plugin.serialization"
id "com.android.library" id "com.android.kotlin.multiplatform.library"
alias(libs.plugins.jb.compose) alias(libs.plugins.jb.compose)
alias(libs.plugins.kt.jb.compose) alias(libs.plugins.kt.jb.compose)
} }

View File

@@ -1,7 +1,7 @@
plugins { plugins {
id "org.jetbrains.kotlin.multiplatform" id "org.jetbrains.kotlin.multiplatform"
id "org.jetbrains.kotlin.plugin.serialization" id "org.jetbrains.kotlin.plugin.serialization"
id "com.android.library" id "com.android.kotlin.multiplatform.library"
} }
apply from: "$mppJvmJsWasmJsAndroidLinuxMingwLinuxArm64Project" apply from: "$mppJvmJsWasmJsAndroidLinuxMingwLinuxArm64Project"

View File

@@ -1,7 +1,7 @@
plugins { plugins {
id "org.jetbrains.kotlin.multiplatform" id "org.jetbrains.kotlin.multiplatform"
id "org.jetbrains.kotlin.plugin.serialization" id "org.jetbrains.kotlin.plugin.serialization"
id "com.android.library" id "com.android.kotlin.multiplatform.library"
} }
apply from: "$mppJvmJsWasmJsAndroidLinuxMingwLinuxArm64Project" apply from: "$mppJvmJsWasmJsAndroidLinuxMingwLinuxArm64Project"

View File

@@ -1,7 +1,7 @@
plugins { plugins {
id "org.jetbrains.kotlin.multiplatform" id "org.jetbrains.kotlin.multiplatform"
id "org.jetbrains.kotlin.plugin.serialization" id "org.jetbrains.kotlin.plugin.serialization"
id "com.android.library" id "com.android.kotlin.multiplatform.library"
} }
apply from: "$mppJvmJsWasmJsAndroidLinuxMingwLinuxArm64Project" apply from: "$mppJvmJsWasmJsAndroidLinuxMingwLinuxArm64Project"
@@ -17,7 +17,7 @@ kotlin {
} }
} }
jvmMain { jvmAndAndroidMain {
dependencies { dependencies {
api internalProject("micro_utils.common") api internalProject("micro_utils.common")
} }

View File

@@ -1,12 +1,14 @@
plugins { plugins {
id "org.jetbrains.kotlin.multiplatform" id "org.jetbrains.kotlin.multiplatform"
id "org.jetbrains.kotlin.plugin.serialization" id "org.jetbrains.kotlin.plugin.serialization"
id "com.android.library" id "com.android.kotlin.multiplatform.library"
} }
project.version = "$version" project.version = "$version"
project.group = "$group" project.group = "$group"
apply from: "$defaultAndroidSettings"
kotlin { kotlin {
jvm { jvm {
compilations.main { compilations.main {
@@ -23,12 +25,8 @@ kotlin {
browser() browser()
nodejs() nodejs()
} }
androidTarget { android {
compilations.all { project.ext.configureAndroidTarget(delegate)
kotlinOptions {
jvmTarget = "17"
}
}
} }
linuxX64() linuxX64()
mingwX64() mingwX64()
@@ -51,6 +49,11 @@ kotlin {
implementation kotlin('test-junit') implementation kotlin('test-junit')
} }
} }
androidMain {
dependencies {
implementation kotlin('test-junit')
}
}
jsMain { jsMain {
dependencies { dependencies {
implementation kotlin('test-js') implementation kotlin('test-js')
@@ -61,13 +64,10 @@ kotlin {
mingwX64Main.dependsOn nativeMain mingwX64Main.dependsOn nativeMain
linuxArm64Main.dependsOn nativeMain linuxArm64Main.dependsOn nativeMain
androidMain.dependsOn jvmMain
} }
} }
apply from: "$defaultAndroidSettings"
java { java {
sourceCompatibility = JavaVersion.VERSION_17 sourceCompatibility = JavaVersion.VERSION_17
targetCompatibility = JavaVersion.VERSION_17 targetCompatibility = JavaVersion.VERSION_17
} }

View File

@@ -1,7 +1,7 @@
plugins { plugins {
id "org.jetbrains.kotlin.multiplatform" id "org.jetbrains.kotlin.multiplatform"
id "org.jetbrains.kotlin.plugin.serialization" id "org.jetbrains.kotlin.plugin.serialization"
id "com.android.library" id "com.android.kotlin.multiplatform.library"
id "com.google.devtools.ksp" id "com.google.devtools.ksp"
} }

View File

@@ -1,7 +1,7 @@
plugins { plugins {
id "org.jetbrains.kotlin.multiplatform" id "org.jetbrains.kotlin.multiplatform"
id "org.jetbrains.kotlin.plugin.serialization" id "org.jetbrains.kotlin.plugin.serialization"
id "com.android.library" id "com.android.kotlin.multiplatform.library"
} }
apply from: "$mppJvmJsWasmJsAndroidLinuxMingwLinuxArm64Project" apply from: "$mppJvmJsWasmJsAndroidLinuxMingwLinuxArm64Project"
@@ -20,4 +20,4 @@ kotlin {
} }
} }
} }
} }

View File

@@ -1,7 +1,7 @@
plugins { plugins {
id "org.jetbrains.kotlin.multiplatform" id "org.jetbrains.kotlin.multiplatform"
id "org.jetbrains.kotlin.plugin.serialization" id "org.jetbrains.kotlin.plugin.serialization"
id "com.android.library" id "com.android.kotlin.multiplatform.library"
} }
apply from: "$mppJvmJsWasmJsAndroidLinuxMingwLinuxArm64Project" apply from: "$mppJvmJsWasmJsAndroidLinuxMingwLinuxArm64Project"

View File

@@ -1,7 +1,7 @@
plugins { plugins {
id "org.jetbrains.kotlin.multiplatform" id "org.jetbrains.kotlin.multiplatform"
id "org.jetbrains.kotlin.plugin.serialization" id "org.jetbrains.kotlin.plugin.serialization"
id "com.android.library" id "com.android.kotlin.multiplatform.library"
} }
apply from: "$mppJvmJsWasmJsAndroidLinuxMingwLinuxArm64Project" apply from: "$mppJvmJsWasmJsAndroidLinuxMingwLinuxArm64Project"

View File

@@ -1,7 +1,7 @@
plugins { plugins {
id "org.jetbrains.kotlin.multiplatform" id "org.jetbrains.kotlin.multiplatform"
id "org.jetbrains.kotlin.plugin.serialization" id "org.jetbrains.kotlin.plugin.serialization"
id "com.android.library" id "com.android.kotlin.multiplatform.library"
} }
apply from: "$mppJvmJsWasmJsAndroidLinuxMingwLinuxArm64Project" apply from: "$mppJvmJsWasmJsAndroidLinuxMingwLinuxArm64Project"

View File

@@ -1,7 +1,7 @@
plugins { plugins {
id "org.jetbrains.kotlin.multiplatform" id "org.jetbrains.kotlin.multiplatform"
id "org.jetbrains.kotlin.plugin.serialization" id "org.jetbrains.kotlin.plugin.serialization"
id "com.android.library" id "com.android.kotlin.multiplatform.library"
} }
apply from: "$mppJvmJsWasmJsAndroidLinuxMingwLinuxArm64Project" apply from: "$mppJvmJsWasmJsAndroidLinuxMingwLinuxArm64Project"

View File

@@ -1,7 +1,7 @@
plugins { plugins {
id "org.jetbrains.kotlin.multiplatform" id "org.jetbrains.kotlin.multiplatform"
id "org.jetbrains.kotlin.plugin.serialization" id "org.jetbrains.kotlin.plugin.serialization"
id "com.android.library" id "com.android.kotlin.multiplatform.library"
} }
apply from: "$mppJvmJsWasmJsAndroidLinuxMingwLinuxArm64Project" apply from: "$mppJvmJsWasmJsAndroidLinuxMingwLinuxArm64Project"

View File

@@ -1,7 +1,7 @@
plugins { plugins {
id "org.jetbrains.kotlin.multiplatform" id "org.jetbrains.kotlin.multiplatform"
id "org.jetbrains.kotlin.plugin.serialization" id "org.jetbrains.kotlin.plugin.serialization"
id "com.android.library" id "com.android.kotlin.multiplatform.library"
} }
apply from: "$mppJvmJsWasmJsAndroidLinuxMingwLinuxArm64Project" apply from: "$mppJvmJsWasmJsAndroidLinuxMingwLinuxArm64Project"

View File

@@ -1,7 +1,7 @@
plugins { plugins {
id "org.jetbrains.kotlin.multiplatform" id "org.jetbrains.kotlin.multiplatform"
id "org.jetbrains.kotlin.plugin.serialization" id "org.jetbrains.kotlin.plugin.serialization"
id "com.android.library" id "com.android.kotlin.multiplatform.library"
} }
apply from: "$mppJvmJsWasmJsAndroidLinuxMingwLinuxArm64Project" apply from: "$mppJvmJsWasmJsAndroidLinuxMingwLinuxArm64Project"

View File

@@ -1,7 +1,7 @@
plugins { plugins {
id "org.jetbrains.kotlin.multiplatform" id "org.jetbrains.kotlin.multiplatform"
id "org.jetbrains.kotlin.plugin.serialization" id "org.jetbrains.kotlin.plugin.serialization"
id "com.android.library" id "com.android.kotlin.multiplatform.library"
} }
apply from: "$mppJvmJsWasmJsAndroidLinuxMingwLinuxArm64Project" apply from: "$mppJvmJsWasmJsAndroidLinuxMingwLinuxArm64Project"

View File

@@ -1,7 +1,7 @@
plugins { plugins {
id "org.jetbrains.kotlin.multiplatform" id "org.jetbrains.kotlin.multiplatform"
id "org.jetbrains.kotlin.plugin.serialization" id "org.jetbrains.kotlin.plugin.serialization"
id "com.android.library" id "com.android.kotlin.multiplatform.library"
} }
apply from: "$mppJvmJsWasmJsAndroidLinuxMingwLinuxArm64Project" apply from: "$mppJvmJsWasmJsAndroidLinuxMingwLinuxArm64Project"

View File

@@ -1,7 +1,7 @@
plugins { plugins {
id "org.jetbrains.kotlin.multiplatform" id "org.jetbrains.kotlin.multiplatform"
id "org.jetbrains.kotlin.plugin.serialization" id "org.jetbrains.kotlin.plugin.serialization"
id "com.android.library" id "com.android.kotlin.multiplatform.library"
alias(libs.plugins.compose) alias(libs.plugins.compose)
} }

View File

@@ -1,7 +1,7 @@
plugins { plugins {
id "org.jetbrains.kotlin.multiplatform" id "org.jetbrains.kotlin.multiplatform"
id "org.jetbrains.kotlin.plugin.serialization" id "org.jetbrains.kotlin.plugin.serialization"
id "com.android.library" id "com.android.kotlin.multiplatform.library"
} }
apply from: "$mppJvmJsWasmJsAndroidLinuxMingwLinuxArm64Project" apply from: "$mppJvmJsWasmJsAndroidLinuxMingwLinuxArm64Project"

View File

@@ -1,7 +1,7 @@
plugins { plugins {
id "org.jetbrains.kotlin.multiplatform" id "org.jetbrains.kotlin.multiplatform"
id "org.jetbrains.kotlin.plugin.serialization" id "org.jetbrains.kotlin.plugin.serialization"
id "com.android.library" id "com.android.kotlin.multiplatform.library"
} }
apply from: "$mppJvmJsWasmJsAndroidLinuxMingwLinuxArm64Project" apply from: "$mppJvmJsWasmJsAndroidLinuxMingwLinuxArm64Project"