Convert from Groovy to Kotlin DSL for Gradle, focused on Android.
Thanks to all contributors that made this even better in the past year!
Also, working fine without Kscript (already was, but I only noticed now).
The script can now identify multiple plugins that are together and group them into a plugins block. This solves a lot of issues from Kotlin DSL and is the 'recommended' way of doing things.
apply(...)
apply(...)
apply(...)
now becomes
plugins {
id(...)
id(...)
id(...)
}
Additionally, there is now conversion for all org.jetbrains.kotlin:kotlin
dependencies:
implementation("org.jetbrains.kotlin:kotlin-reflect")
now becomes
implementation(kotlin("reflect"))
There is now conversion for id(..)
which might be inside plugins.
plugins {
id "io.gitlab.arturbosch.detekt" version "1.0"
}
now becomes
plugins {
id("io.gitlab.arturbosch.detekt") version "1.0"
}
This also fixes some issues, like one with classpath exclude and another with kapt "...".
[NEW] "check", "debugImplementation", "compileOnly", "testInstrumentationRunner", "signingConfig signingConfigs.release" and "ext.enableCrashlytics = true" conversions.
[Improved] Conversion for implementation/kapt/etc doesn't require the dependencies { } block anymore. Which means, you can now copy implementation '...' from GitHub and run the script without any parameters; it will read the clipboard, convert and save back the converted value (which should be implementation("...")).
[Fixed] few issues like closing the wrong number of parentheses on proguardFiles(...).
[NEW] Kotlin stdlib, classpath and class.exclude group conversions (useful for lombok). Updated README to show all the new powers. Also, fixes a typo.
If you have any issue, please let me know!