115 Commits

Author SHA1 Message Date
renovate[bot]
9e7bc5e1d4 Update dependency com.android.tools.build:gradle to v8.13.0 2025-09-02 20:33:30 +00:00
373906e156 rework templates 2025-04-30 14:39:12 +06:00
5fe23903a4 Merge pull request #23 from InsanusMokrassar/renovate/kotlin.serialization
Update dependency org.jetbrains.kotlinx:kotlinx-serialization-json to v1.8.1
2025-04-30 14:23:47 +06:00
renovate[bot]
ecf1238085 Update dependency org.jetbrains.kotlinx:kotlinx-serialization-json to v1.8.1 2025-04-30 08:23:38 +00:00
fdde796281 Merge pull request #22 from InsanusMokrassar/renovate/kotlin
Update kotlin to v2.1.20
2025-04-30 14:22:50 +06:00
renovate[bot]
4cc23d72bf Update kotlin to v2.1.20 2025-03-20 11:46:45 +00:00
b29e381ee3 Update libs.versions.toml 2025-02-16 10:48:32 +06:00
d388806d3b Update gradle-wrapper.properties 2025-01-29 11:00:16 +06:00
185285c1ca Merge pull request #19 from InsanusMokrassar/renovate/kotlin
Update kotlin to v2.1.10
2025-01-29 10:59:37 +06:00
renovate[bot]
23cc432d21 Update kotlin to v2.1.10 2025-01-29 04:59:25 +00:00
005491c256 Merge pull request #17 from InsanusMokrassar/renovate/kotlin.serialization
Update dependency org.jetbrains.kotlinx:kotlinx-serialization-json to v1.8.0
2025-01-29 10:58:58 +06:00
renovate[bot]
0ad128a11a Update dependency org.jetbrains.kotlinx:kotlinx-serialization-json to v1.8.0 2025-01-29 04:58:19 +00:00
ab7f703227 Merge pull request #16 from InsanusMokrassar/renovate/major-dokka
Update dependency org.jetbrains.dokka:dokka-gradle-plugin to v2
2024-12-27 10:04:13 +06:00
66b55947ae Merge pull request #15 from InsanusMokrassar/renovate/kotlin
Update kotlin to v2.1.0
2024-12-27 10:03:53 +06:00
renovate[bot]
b5230087da Update dependency org.jetbrains.dokka:dokka-gradle-plugin to v2 2024-12-16 15:36:43 +00:00
renovate[bot]
0b2be65b9e Update kotlin to v2.1.0 2024-11-27 16:36:51 +00:00
896028d0bb migrate onto new templates-oriented in gradle model 2024-11-11 16:49:11 +06:00
6dced2d86e Update gradle-wrapper.properties 2024-10-22 16:41:17 +06:00
29a4154490 Merge pull request #12 from InsanusMokrassar/renovate/kotlin
Update kotlin to v2.0.21
2024-10-22 16:40:39 +06:00
renovate[bot]
4f524ebf1b Update kotlin to v2.0.21 2024-10-10 10:42:30 +00:00
1d2cf6025d Merge pull request #10 from InsanusMokrassar/renovate/kotlin.serialization
Update dependency org.jetbrains.kotlinx:kotlinx-serialization-json to v1.7.3
2024-09-26 08:00:17 +06:00
renovate[bot]
00aab9e228 Update dependency org.jetbrains.kotlinx:kotlinx-serialization-json to v1.7.3 2024-09-19 17:02:44 +00:00
375e3c1d6e Merge pull request #7 from InsanusMokrassar/renovate/test.ext.junit.version
Update dependency androidx.test.ext:junit to v1.2.1
2024-09-06 16:51:06 +06:00
renovate[bot]
d7b5ea6d83 Update dependency androidx.test.ext:junit to v1.2.1 2024-09-06 10:50:38 +00:00
4d8992e86f Merge pull request #6 from InsanusMokrassar/renovate/espresso.core
Update dependency androidx.test.espresso:espresso-core to v3.6.1
2024-09-06 16:50:14 +06:00
renovate[bot]
1b113fe006 Update dependency androidx.test.espresso:espresso-core to v3.6.1 2024-09-06 10:50:01 +00:00
3c8822e3e7 Merge pull request #4 from InsanusMokrassar/renovate/kotlin-monorepo
Update kotlin monorepo to v2.0.20
2024-09-06 16:42:12 +06:00
renovate[bot]
f7d115c624 Update kotlin monorepo to v2.0.20 2024-09-06 10:42:04 +00:00
bb798ccc67 Merge pull request #3 from InsanusMokrassar/renovate/kotlin.serialization
Update dependency org.jetbrains.kotlinx:kotlinx-serialization-json to v1.7.2
2024-09-06 16:40:50 +06:00
renovate[bot]
c4f147df83 Update dependency org.jetbrains.kotlinx:kotlinx-serialization-json to v1.7.2 2024-09-06 10:40:29 +00:00
c2fed22e80 Merge pull request #2 from InsanusMokrassar/renovate/configure
Configure Renovate
2024-09-06 16:39:55 +06:00
renovate[bot]
ec8915aed1 Add renovate.json 2024-09-06 10:37:23 +00:00
1d602c5d26 add .kotlin in .gitignore 2024-08-14 16:31:34 +06:00
2d36722c37 update template 2024-08-14 16:23:54 +06:00
37763d2221 Update libs.versions.toml 2024-04-02 22:10:50 +06:00
3ae29248af Update gradle-wrapper.properties 2024-04-02 22:09:19 +06:00
8f81904cdb update templates 2024-01-17 19:35:06 +06:00
33782f0cdb update dependencies 2024-01-17 19:15:48 +06:00
3bab6a95b2 Update libs.versions.toml 2023-11-29 02:55:39 +06:00
a757c4cf06 Update AndroidManifest.xml 2023-11-02 19:27:24 +06:00
453ae19a49 Update defaultAndroidSettings.gradle 2023-11-02 19:27:02 +06:00
631d74dc6b Update mppAndroidProject.gradle 2023-11-02 19:25:34 +06:00
bd455bebba Update mppProjectWithSerialization.gradle 2023-11-02 19:25:17 +06:00
bd07fb382e Update build.yml 2023-11-02 19:23:14 +06:00
297114273f Update settings.gradle 2023-11-02 19:22:12 +06:00
05f029c257 Update mppProjectWithSerialization.gradle 2023-11-02 19:21:20 +06:00
11ac3aebda Update mppAndroidProject.gradle 2023-11-02 19:20:55 +06:00
c5c7fd26e4 Update mppJavaProject.gradle 2023-11-02 19:20:45 +06:00
ce0aea6b77 Update defaultAndroidSettings.gradle 2023-11-02 19:19:33 +06:00
9d7955b9b0 Update libs.versions.toml 2023-11-02 19:19:01 +06:00
18b84216a5 Update gradle-wrapper.properties 2023-11-02 19:18:39 +06:00
1366dd55c2 Update libs.versions.toml 2023-10-31 17:33:03 +06:00
049dc8f5d7 Update libs.versions.toml 2023-10-16 13:13:56 +06:00
dac20a8a02 Update gradle-wrapper.properties 2023-10-16 13:13:13 +06:00
c1d6dae359 fix of build and templates 2023-08-24 14:22:43 +06:00
4ed6f8e104 Update mppProjectWithSerialization.gradle 2023-08-24 09:58:09 +06:00
dc07633928 Update mppAndroidProject.gradle 2023-08-24 09:57:37 +06:00
be7fa9241f Delete AndroidManifest.xml 2023-08-24 09:57:03 +06:00
df6c8b8358 Create AndroidManifest.xml 2023-08-24 09:56:44 +06:00
ca1ec3f208 Update libs.versions.toml 2023-08-24 09:50:34 +06:00
deba42332a Update libs.versions.toml 2023-05-20 22:18:47 +06:00
e0bce311d5 remove redundant template 2023-05-01 23:17:48 +06:00
ebc07f5c3d update dependencies and add ModuleGenerator templates 2023-05-01 23:13:49 +06:00
488e4b283d Update build.yml 2023-04-20 01:05:57 +06:00
c55087ce1b Update libs.versions.toml 2023-04-20 01:03:15 +06:00
80eb5bb6ba Update libs.versions.toml 2023-03-13 10:07:44 +06:00
8f1bd13ac5 Update libs.versions.toml 2023-03-01 15:39:09 +06:00
12220fab46 Update libs.versions.toml 2023-02-24 16:24:08 +06:00
263ee6475c Update libs.versions.toml 2022-12-18 10:09:09 +06:00
33b25af9a4 Update gradle-wrapper.properties 2022-12-09 21:32:57 +06:00
8f716be674 update android part 2022-11-21 21:21:05 +06:00
3de2e1ceb5 Update libs.versions.toml 2022-11-21 10:45:52 +06:00
836e768705 Update libs.versions.toml 2022-11-21 10:38:10 +06:00
c4ab6cbf74 Update libs.versions.toml 2022-09-26 03:51:16 +06:00
c881165417 improve lib and add template for libs 2022-09-12 14:32:45 +06:00
0ba983cf94 Update libs.versions.toml 2022-08-19 21:48:58 +06:00
04be74561d Update libs.versions.toml 2022-08-06 08:44:01 +06:00
37fe3701fb Update libs.versions.toml 2022-08-06 08:38:08 +06:00
9022faa898 Update gradle-wrapper.properties 2022-08-06 08:35:52 +06:00
e053157dd4 Update libs.versions.toml 2022-08-06 08:35:34 +06:00
7f6e9ae5e4 Update gradle-wrapper.properties 2022-07-22 20:23:30 +06:00
8339c290b9 Update mppProjectWithSerialization.gradle 2022-06-29 13:36:42 +06:00
b575a2ca2f Update mppJavaProject.gradle 2022-06-29 13:36:15 +06:00
71effb81c2 fixes 2022-06-01 01:29:44 +06:00
c2dce5f0b5 Update gradle-wrapper.properties 2022-05-22 23:10:04 +06:00
3974a48d93 Update libs.versions.toml 2022-05-16 17:39:26 +06:00
a964864c58 Update libs.versions.toml 2022-05-12 15:55:18 +06:00
bbfd5886d3 Update libs.versions.toml 2022-04-26 15:49:17 +06:00
323d7c9ee3 Update gradle-wrapper.properties 2022-02-12 12:57:53 +06:00
b7b6f4f7e2 Update libs.versions.toml 2022-02-12 12:57:34 +06:00
5494671ee1 updates and migration onto toml 2022-01-29 21:47:34 +06:00
052072dd5a Update build.yml 2022-01-14 23:22:26 +06:00
ffdfd4b4c5 Update gradle-wrapper.properties 2022-01-14 23:21:52 +06:00
a3cb678f76 Update gradle.properties 2022-01-14 23:21:27 +06:00
36de2d7082 Update gradle.properties 2021-11-26 14:28:17 +06:00
bda4913bf2 Update gradle.properties 2021-11-16 23:26:00 +06:00
acdb9d573e Update mppJsProject.gradle 2021-10-25 15:16:16 +06:00
3a2fda60ed Update mppJavaProject.gradle 2021-10-25 15:16:07 +06:00
da7aefa8ce Update mppProjectWithSerialization.gradle 2021-10-25 15:15:50 +06:00
4ac954d05f Update gradle.properties 2021-10-23 21:59:49 +06:00
c0bbaf0578 update serialization 2021-09-30 12:18:38 +06:00
d1c63deaec add java toolchain setup 2021-09-23 13:20:20 +06:00
e96207516f Update build.yml 2021-09-22 20:23:28 +06:00
adae653e33 Update gradle.properties 2021-09-22 19:48:29 +06:00
9d220c91e3 Update build.gradle 2021-09-04 18:54:59 +06:00
9bc410ccf8 Update gradle-wrapper.properties 2021-09-04 18:51:58 +06:00
018df3cd55 Update gradle.properties 2021-08-25 15:51:33 +06:00
20b356a22c Update gradle.properties 2021-08-17 09:25:09 +06:00
4816349d2d updates 2021-07-03 13:53:30 +06:00
6e7ea5688f Update gradle.properties 2021-07-03 13:25:25 +06:00
9aebefa6cd Update gradle.properties 2021-05-29 17:23:23 +06:00
5aa6388883 Update gradle-wrapper.properties 2021-05-18 11:58:37 +06:00
7e059271c2 Update build.gradle 2021-05-18 11:58:21 +06:00
4decf1ff0a Update gradle.properties 2021-05-06 17:56:28 +06:00
3eaeaf284e Merge pull request #1 from InsanusMokrassar/kotlin/1.5.0
Update gradle.properties
2021-05-02 00:49:19 +06:00
47 changed files with 354 additions and 234 deletions

View File

@@ -5,12 +5,11 @@ on: [push]
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Set up JDK 1.8
- name: Set up JDK 17
uses: actions/setup-java@v1
with:
java-version: 1.8
java-version: 17
- name: Build with Gradle
run: ./gradlew build

5
.gitignore vendored
View File

@@ -1,4 +1,5 @@
.idea
.kotlin
out/*
*.iml
target
@@ -10,6 +11,8 @@ build/
out/
secret.gradle
local.properties
local.*
local/
kotlin-js-store/
publishing.sh

4
.templates/README.md Normal file
View File

@@ -0,0 +1,4 @@
# Templates
This folder contains templates to generate your modules in Intellij Idea with plugin
[ModuleGenerator](https://plugins.jetbrains.com/plugin/21100-segment-generator)

View File

@@ -0,0 +1,5 @@
{
"module_name": "sample",
"module_package": "feature.{{.module_name}}",
"full_module_package": "project_group.project_name.{{.module_package}}"
}

View File

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

View File

@@ -0,0 +1 @@
package {{.full_module_package}}

View File

@@ -0,0 +1 @@
package {{.full_module_package}}

View File

@@ -0,0 +1,5 @@
{
"module_name": "sample",
"module_package": "feature.{{.module_name}}",
"full_module_package": "project_group.project_name.{{.module_package}}"
}

View File

@@ -0,0 +1,7 @@
plugins {
id "org.jetbrains.kotlin.multiplatform"
id "org.jetbrains.kotlin.plugin.serialization"
}
apply from: "$mppJavaProject"

View File

@@ -0,0 +1 @@
package {{.full_module_package}}

View File

@@ -0,0 +1 @@
package {{.full_module_package}}

View File

@@ -0,0 +1,5 @@
{
"module_name": "sample",
"module_package": "feature.{{.module_name}}",
"full_module_package": "project_group.project_name.{{.module_package}}"
}

View File

@@ -0,0 +1,7 @@
plugins {
id "org.jetbrains.kotlin.multiplatform"
id "org.jetbrains.kotlin.plugin.serialization"
}
apply from: "$mppJsProject"

View File

@@ -0,0 +1 @@
package {{.full_module_package}}

View File

@@ -0,0 +1 @@
package {{.full_module_package}}

View File

@@ -0,0 +1,5 @@
{
"module_name": "sample",
"module_package": "feature.{{.module_name}}",
"full_module_package": "project_group.project_name.{{.module_package}}"
}

View File

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

View File

@@ -0,0 +1 @@
package {{.full_module_package}}

View File

@@ -0,0 +1 @@
package {{.full_module_package}}

View File

@@ -26,17 +26,21 @@ this case you must rename it in `settings.gradle` file.
## JVM sources in Android target
By default JVM code is not included in Android target. In case you wish to include JVM sources in Android build, use
next method in the end of your `build.gradle`:
next method in the `sourceSets` section of your `build.gradle`:
```groovy
enableIncludingJvmCodeInAndroidPart()
kotlin {
sourceSets {
// Some other code
androidMain {
// Some other code (like dependencies)
dependsOn jvmMain
}
}
}
```
In case when you need to be sure that JVM sources are not included in Android part, use this snippet:
```groovy
disableIncludingJvmCodeInAndroidPart()
```
In case when you need to be sure that JVM sources are not included in Android part, just remove line with `dependsOn jvmMain`
## Types of projects

View File

@@ -1,6 +1,5 @@
buildscript {
repositories {
jcenter()
google()
mavenCentral()
mavenLocal()
@@ -8,21 +7,19 @@ buildscript {
}
dependencies {
classpath 'com.android.tools.build:gradle:4.0.2'
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
classpath "org.jetbrains.kotlin:kotlin-serialization:$kotlin_version"
classpath "com.getkeepsafe.dexcount:dexcount-gradle-plugin:$dexcount_version"
classpath "org.jetbrains.dokka:dokka-gradle-plugin:$dokka_version"
classpath libs.android.tools.build
classpath libs.android.dexcount
classpath libs.kotlin.gradle.plugin
classpath libs.kotlin.serialization.plugin
classpath libs.kotlin.dokka.plugin
}
}
allprojects {
repositories {
mavenLocal()
jcenter()
mavenCentral()
google()
maven { url "https://kotlin.bintray.com/kotlinx" }
}
}

View File

@@ -1,66 +0,0 @@
apply plugin: 'com.getkeepsafe.dexcount'
android {
ext {
jvmKotlinFolderFile = {
String sep = File.separator
return new File("${project.projectDir}${sep}src${sep}jvmMain${sep}kotlin")
}
enableIncludingJvmCodeInAndroidPart = {
File jvmKotlinFolder = jvmKotlinFolderFile()
if (jvmKotlinFolder.exists()) {
android.sourceSets.main.java.srcDirs += jvmKotlinFolder.path
}
}
disableIncludingJvmCodeInAndroidPart = {
File jvmKotlinFolder = jvmKotlinFolderFile()
String[] oldDirs = android.sourceSets.main.java.srcDirs
android.sourceSets.main.java.srcDirs = []
for (oldDir in oldDirs) {
if (oldDir != jvmKotlinFolder.path) {
android.sourceSets.main.java.srcDirs += oldDir
}
}
}
}
compileSdkVersion "$android_compileSdkVersion".toInteger()
buildToolsVersion "$android_buildToolsVersion"
defaultConfig {
minSdkVersion "$android_minSdkVersion".toInteger()
targetSdkVersion "$android_compileSdkVersion".toInteger()
versionCode "${android_code_version}".toInteger()
versionName "$version"
}
buildTypes {
release {
minifyEnabled false
}
debug {
debuggable true
}
}
packagingOptions {
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_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
kotlinOptions {
jvmTarget = JavaVersion.VERSION_1_8.toString()
}
sourceSets {
String sep = File.separator
main.java.srcDirs += "src${sep}main${sep}kotlin"
}
}

View File

@@ -1,25 +1,32 @@
allprojects {
ext {
projectByName = { String name ->
for (subproject in rootProject.subprojects) {
if (subproject.name == name) {
return subproject
}
}
return null
}
File templatesFolder = new File("$rootProject.projectDir.absolutePath${File.separatorChar}gradle${File.separatorChar}templates")
internalProject = { String name ->
projectByName(name)
}
Map properties = new HashMap<String, String>()
mppProjectWithSerializationPresetPath = "${rootProject.projectDir.absolutePath}/mppProjectWithSerialization.gradle"
mppJavaProjectPresetPath = "${rootProject.projectDir.absolutePath}/mppJavaProject.gradle"
mppJsProjectPresetPath = "${rootProject.projectDir.absolutePath}/mppJsProject.gradle"
mppAndroidProjectPresetPath = "${rootProject.projectDir.absolutePath}/mppAndroidProject.gradle"
defaultAndroidSettingsPresetPath = "${rootProject.projectDir.absolutePath}/defaultAndroidSettings.gradle"
// publishGradlePath = "${rootProject.projectDir.absolutePath}/publish.gradle"
if (templatesFolder.exists() && templatesFolder.isDirectory()) {
templatesFolder.listFiles().each {
properties[it.name - ".gradle"] = it.absolutePath
}
}
properties["projectByName"] = { name ->
for (subproject in rootProject.subprojects) {
if (subproject.name == name) {
return subproject
}
}
return null
}
properties["internalProject"] = { name ->
projectByName("$name")
}
allprojects {
ext {
releaseMode = (project.hasProperty('RELEASE_MODE') && project.property('RELEASE_MODE') == "true") || System.getenv('RELEASE_MODE') == "true"
properties.forEach { k, v ->
it[k] = v
}
}
}

View File

@@ -6,25 +6,6 @@ kotlin.incremental.js=true
android.useAndroidX=true
android.enableJetifier=true
kotlin_version=1.5.0
kotlin_serialisation_core_version=1.2.0
# github_release_plugin_version=2.2.12
# ANDROID
android_minSdkVersion=21
android_compileSdkVersion=30
android_buildToolsVersion=30.0.2
dexcount_version=2.0.0
junit_version=4.12
test_ext_junit_version=1.1.2
espresso_core=3.3.0
# Dokka
dokka_version=1.4.30
# Project data
group=project_group

43
gradle/libs.versions.toml Normal file
View File

@@ -0,0 +1,43 @@
[versions]
kotlin = "2.1.20"
kotlin-serialization = "1.8.1"
kotlin-coroutines = "1.10.2"
dokka = "2.0.0"
dexcount = "4.0.0"
junit_version = "4.12"
test_ext_junit_version = "1.2.1"
espresso_core = "3.6.1"
android-gradle-plugin = "8.13.0"
android-minSdk = "21"
android-compileSdk = "35"
android-buildTools = "35.0.0"
[libraries]
kotlin = { module = "org.jetbrains.kotlin:kotlin-stdlib", version.ref = "kotlin" }
kotlin-serialization = { module = "org.jetbrains.kotlinx:kotlinx-serialization-json", version.ref = "kotlin-serialization" }
kotlin-coroutines = { module = "org.jetbrains.kotlinx:kotlinx-coroutines-core", version.ref = "kotlin-coroutines" }
kotlin-coroutines-test = { module = "org.jetbrains.kotlinx:kotlinx-coroutines-test", version.ref = "kotlin-coroutines" }
kotlin-test-common = { module = "org.jetbrains.kotlin:kotlin-test-common", version.ref = "kotlin" }
kotlin-test-annotations-common = { module = "org.jetbrains.kotlin:kotlin-test-annotations-common", version.ref = "kotlin" }
kotlin-test-junit = { module = "org.jetbrains.kotlin:kotlin-test-junit", version.ref = "kotlin" }
kotlin-test-js = { module = "org.jetbrains.kotlin:kotlin-test-js", version.ref = "kotlin" }
android-test-junit = { module = "androidx.test.ext:junit", version.ref = "test_ext_junit_version" }
android-test-espresso = { module = "androidx.test.espresso:espresso-core", version.ref = "espresso_core" }
# buildscript classpaths
android-tools-build = { module = "com.android.tools.build:gradle", version.ref = "android-gradle-plugin" }
android-dexcount = { module = "com.getkeepsafe.dexcount:dexcount-gradle-plugin", version.ref = "dexcount" }
kotlin-gradle-plugin = { module = "org.jetbrains.kotlin:kotlin-gradle-plugin", version.ref = "kotlin" }
kotlin-serialization-plugin = { module = "org.jetbrains.kotlin:kotlin-serialization", version.ref = "kotlin" }
kotlin-dokka-plugin = { module = "org.jetbrains.dokka:dokka-gradle-plugin", version.ref = "dokka" }
[plugins]
kotlin-multiplatform = { id = "org.jetbrains.kotlin.multiplatform", version.ref = "kotlin" }
kotlin-serialization = { id = "org.jetbrains.kotlin.plugin.serialization", version.ref = "kotlin" }

View File

@@ -0,0 +1,34 @@
apply plugin: 'com.getkeepsafe.dexcount'
android {
compileSdkVersion libs.versions.android.compileSdk.get().toInteger()
buildToolsVersion libs.versions.android.buildTools.get()
defaultConfig {
minSdkVersion libs.versions.android.minSdk.get().toInteger()
compileSdkVersion libs.versions.android.compileSdk.get().toInteger()
targetSdkVersion libs.versions.android.compileSdk.get().toInteger()
versionCode "${android_code_version}".toInteger()
versionName "$version"
namespace "${project.group}.${project.name}"
}
buildTypes {
release {
minifyEnabled false
}
debug {
debuggable true
}
}
packagingOptions {
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,13 +1,7 @@
project.version = "$version"
project.group = "$group"
// apply from: "$publishGradlePath"
kotlin {
android {
publishAllLibraryVariants()
}
sourceSets {
commonMain {
dependencies {
@@ -18,9 +12,13 @@ kotlin {
dependencies {
implementation kotlin('test-common')
implementation kotlin('test-annotations-common')
implementation libs.kotlin.coroutines.test
}
}
}
}
apply from: "$defaultAndroidSettingsPresetPath"
java {
sourceCompatibility = JavaVersion.VERSION_17
targetCompatibility = JavaVersion.VERSION_17
}

View File

@@ -1,30 +1,25 @@
project.version = "$version"
project.group = "$group"
// apply from: "$publishGradlePath"
kotlin {
jvm {
compilations.main.kotlinOptions.useIR = true
}
sourceSets {
commonMain {
dependencies {
implementation kotlin('stdlib')
api libs.kotlin.serialization
}
}
commonTest {
dependencies {
implementation kotlin('test-common')
implementation kotlin('test-annotations-common')
}
}
jvmTest {
dependencies {
implementation kotlin('test-junit')
implementation libs.kotlin.coroutines.test
}
}
}
}
java {
sourceCompatibility = JavaVersion.VERSION_17
targetCompatibility = JavaVersion.VERSION_17
}

View File

@@ -0,0 +1,31 @@
kotlin {
androidTarget {
publishAllLibraryVariants()
compilations.all {
kotlinOptions {
jvmTarget = "17"
}
}
}
sourceSets {
androidUnitTest {
dependencies {
implementation kotlin('test-junit')
implementation libs.android.test.junit
implementation libs.android.test.espresso
}
}
androidInstrumentedTest {
dependencies {
implementation kotlin('test-junit')
implementation libs.android.test.junit
implementation libs.android.test.espresso
}
}
androidMain.dependsOn jvmMain
}
}
apply from: "$defaultAndroidSettings"

View File

@@ -0,0 +1,30 @@
kotlin {
js (IR) {
browser {
testTask {
useMocha {
timeout = "240000"
}
}
}
nodejs {
testTask {
useMocha {
timeout = "240000"
}
}
}
}
sourceSets {
jsMain {
dependencies {
}
}
jsTest {
dependencies {
implementation kotlin('test-js')
}
}
}
}

View File

@@ -0,0 +1,21 @@
kotlin {
jvm {
compilations.main {
kotlinOptions {
jvmTarget = "17"
}
}
}
sourceSets {
jvmMain {
dependencies {
}
}
jvmTest {
dependencies {
implementation kotlin('test-junit')
}
}
}
}

View File

@@ -0,0 +1,8 @@
kotlin {
linuxArm64()
sourceSets {
nativeMain.dependsOn commonMain
linuxArm64Main.dependsOn nativeMain
}
}

View File

@@ -0,0 +1,10 @@
kotlin {
linuxX64()
mingwX64()
sourceSets {
nativeMain.dependsOn commonMain
linuxX64Main.dependsOn nativeMain
mingwX64Main.dependsOn nativeMain
}
}

View File

@@ -0,0 +1,27 @@
kotlin {
wasmJs {
browser {
testTask {
useKarma {
useChromeHeadless()
useConfigDirectory(rootProject.relativeProjectPath("gradle/karma.config.d"))
}
}
}
nodejs {
testTask {
timeout = Duration.ofSeconds(240)
nodeJsArgs.add("--unhandled-rejections=warn")
nodeJsArgs.add("--trace-warnings")
}
}
}
sourceSets {
wasmJsTest {
dependencies {
implementation kotlin('test-wasm-js')
}
}
}
}

View File

@@ -0,0 +1,5 @@
apply from: "$defaultProject"
apply from: "$enableMPPJvm"
apply from: "$enableMPPJs"
apply from: "$enableMPPWasmJs"
apply from: "$enableMPPAndroid"

View File

@@ -0,0 +1,2 @@
apply from: "$defaultProject"
apply from: "$enableMPPJvm"

View File

@@ -0,0 +1,2 @@
apply from: "$defaultProject"
apply from: "$enableMPPJs"

View File

@@ -0,0 +1,5 @@
apply from: "$defaultProjectWithSerialization"
apply from: "$enableMPPJvm"
apply from: "$enableMPPJs"
apply from: "$enableMPPWasmJs"
apply from: "$enableMPPAndroid"

View File

@@ -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-8.13-bin.zip
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists

View File

@@ -4,5 +4,5 @@ plugins {
id "com.android.library"
}
apply from: "$mppProjectWithSerializationPresetPath"
apply from: "$mppProjectWithSerialization"

View File

@@ -1,4 +1,4 @@
package project_group
package project_group.project_name.lib
class Library {
fun someLibraryMethod(): Boolean {

View File

@@ -1,7 +1,7 @@
/*
* This Kotlin source file was generated by the Gradle 'init' task.
*/
package project_group
package project_group.project_name.lib
import kotlin.test.Test
import kotlin.test.assertTrue

View File

@@ -1 +0,0 @@
<manifest package="project_group.lib"/>

View File

@@ -1,31 +0,0 @@
project.version = "$version"
project.group = "$group"
// apply from: "$publishGradlePath"
kotlin {
js (BOTH) {
browser()
nodejs()
}
sourceSets {
commonMain {
dependencies {
implementation kotlin('stdlib')
}
}
commonTest {
dependencies {
implementation kotlin('test-common')
implementation kotlin('test-annotations-common')
}
}
jsTest {
dependencies {
implementation kotlin('test-js')
implementation kotlin('test-junit')
}
}
}
}

View File

@@ -1,52 +0,0 @@
project.version = "$version"
project.group = "$group"
// apply from: "$publishGradlePath"
kotlin {
jvm {
compilations.main.kotlinOptions.useIR = true
}
js (BOTH) {
browser()
nodejs()
}
android {
publishAllLibraryVariants()
}
sourceSets {
commonMain {
dependencies {
implementation kotlin('stdlib')
api "org.jetbrains.kotlinx:kotlinx-serialization-json:$kotlin_serialisation_core_version"
}
}
commonTest {
dependencies {
implementation kotlin('test-common')
implementation kotlin('test-annotations-common')
}
}
jvmTest {
dependencies {
implementation kotlin('test-junit')
}
}
jsTest {
dependencies {
implementation kotlin('test-js')
implementation kotlin('test-junit')
}
}
androidTest {
dependencies {
implementation kotlin('test-junit')
implementation "androidx.test.ext:junit:$test_ext_junit_version"
implementation "androidx.test.espresso:espresso-core:$espresso_core"
}
}
}
}
apply from: "$defaultAndroidSettingsPresetPath"

6
renovate.json Normal file
View File

@@ -0,0 +1,6 @@
{
"$schema": "https://docs.renovatebot.com/renovate-schema.json",
"extends": [
"config:recommended"
]
}

View File

@@ -6,8 +6,8 @@ String[] includes = [
includes.each { originalName ->
String projectDirectory = "${rootProject.projectDir.getAbsolutePath()}${originalName.replaceAll(":", File.separator)}"
String projectName = "${rootProject.name}${originalName.replaceAll(":", ".")}"
String projectDirectory = "${rootProject.projectDir.getAbsolutePath()}${originalName.replace(":", File.separator)}"
String projectName = "${rootProject.name}${originalName.replace(":", ".")}"
String projectIdentifier = ":${projectName}"
include projectIdentifier
ProjectDescriptor project = project(projectIdentifier)