Scripts/jfmod/src/main/kotlin/io/gitlab/jfronny/scripts/JfModLegacyChecker.kt

64 lines
2.9 KiB
Kotlin

package io.gitlab.jfronny.scripts
import org.gradle.api.Project
import org.gradle.api.plugins.BasePluginExtension
fun Project.legacyCheck(jfMod: JfModExtension) {
val splitRegex = Regex(", ?")
fun String.splitByComma() = splitRegex.split(this).filter { it.isNotBlank() }
if (hasProperty("maven_group")) {
logger.warn("Using maven_group is deprecated, please use group on rootProject")
group = prop("maven_group")
}
if (hasProperty("archives_base_name")) {
logger.warn("Using archives_base_name is deprecated, please use base.archivesName on allprojects")
allprojects {
extensions.configure<BasePluginExtension>("base") {
archivesName.set(prop("archives_base_name"))
}
}
}
if (hasProperty("dev_only_module")) {
logger.error("Using dev_only_module is deprecated, please use the DSL")
}
if (hasProperty("non_mod_project")) {
logger.error("Using non_mod_project is deprecated, please use the DSL")
}
if (hasProperty("minecraft_version")) {
logger.warn("Using minecraft_version is deprecated, please use the DSL")
jfMod.minecraftVersion.set(prop("minecraft_version"))
}
if (hasProperty("loader_version")) {
logger.warn("Using loader_version is deprecated, please use the DSL")
jfMod.loaderVersion.set(prop("loader_version"))
}
if (hasProperty("yarn_mappings")) {
logger.warn("Using yarn_mappings is deprecated, please use the DSL")
jfMod.yarn(prop("yarn_mappings"))
}
if (hasProperty("curseforge_id")) {
logger.warn("Using curseforge_id is deprecated, please use the DSL")
jfMod.curseforge.projectId.set(prop("curseforge_id"))
}
if (hasProperty("curseforge_required_dependencies")) {
logger.warn("Using curseforge_required_dependencies is deprecated, please use the DSL")
jfMod.curseforge.requiredDependencies.addAll(prop("curseforge_required_dependencies").splitByComma())
}
if (hasProperty("curseforge_optional_dependencies")) {
logger.warn("Using curseforge_optional_dependencies is deprecated, please use the DSL")
jfMod.curseforge.optionalDependencies.addAll(prop("curseforge_optional_dependencies").splitByComma())
}
if (hasProperty("modrinth_id")) {
logger.warn("Using modrinth_id is deprecated, please use the DSL")
jfMod.curseforge.projectId.set(prop("modrinth_id"))
}
if (hasProperty("modrinth_required_dependencies")) {
logger.warn("Using modrinth_required_dependencies is deprecated, please use the DSL")
jfMod.modrinth.requiredDependencies.addAll(prop("modrinth_required_dependencies").splitByComma())
}
if (hasProperty("modrinth_optional_dependencies")) {
logger.warn("Using modrinth_optional_dependencies is deprecated, please use the DSL")
jfMod.modrinth.optionalDependencies.addAll(prop("modrinth_optional_dependencies").splitByComma())
}
}