2025-05-26 21:26:46 -05:00
|
|
|
/*
|
|
|
|
|
* Copyright (c) 2025 Meshtastic LLC
|
|
|
|
|
*
|
|
|
|
|
* This program is free software: you can redistribute it and/or modify
|
|
|
|
|
* it under the terms of the GNU General Public License as published by
|
|
|
|
|
* the Free Software Foundation, either version 3 of the License, or
|
|
|
|
|
* (at your option) any later version.
|
|
|
|
|
*
|
|
|
|
|
* This program is distributed in the hope that it will be useful,
|
|
|
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
|
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
|
|
|
* GNU General Public License for more details.
|
|
|
|
|
*
|
|
|
|
|
* You should have received a copy of the GNU General Public License
|
|
|
|
|
* along with this program. If not, see <https://www.gnu.org/licenses/>.
|
|
|
|
|
*/
|
|
|
|
|
|
2025-09-15 05:47:03 -05:00
|
|
|
|
|
|
|
|
|
2025-05-26 21:26:46 -05:00
|
|
|
plugins {
|
2025-08-26 17:00:32 -05:00
|
|
|
alias(libs.plugins.android.application) apply false
|
|
|
|
|
alias(libs.plugins.android.library) apply false
|
2025-10-06 13:59:07 -05:00
|
|
|
alias(libs.plugins.compose) apply false
|
|
|
|
|
alias(libs.plugins.datadog) apply false
|
2025-08-26 17:00:32 -05:00
|
|
|
alias(libs.plugins.devtools.ksp) apply false
|
2025-10-06 13:59:07 -05:00
|
|
|
alias(libs.plugins.firebase.crashlytics) apply false
|
|
|
|
|
alias(libs.plugins.firebase.perf) apply false
|
|
|
|
|
alias(libs.plugins.google.services) apply false
|
2025-08-26 17:00:32 -05:00
|
|
|
alias(libs.plugins.hilt) apply false
|
2025-10-06 13:59:07 -05:00
|
|
|
alias(libs.plugins.room) apply false
|
|
|
|
|
alias(libs.plugins.kotlin.android) apply false
|
2025-08-26 17:00:32 -05:00
|
|
|
alias(libs.plugins.kotlin.jvm) apply false
|
|
|
|
|
alias(libs.plugins.kotlin.parcelize) apply false
|
2025-10-06 13:59:07 -05:00
|
|
|
alias(libs.plugins.kotlin.serialization) apply false
|
2025-09-16 14:45:59 -04:00
|
|
|
alias(libs.plugins.ktorfit) apply false
|
2025-08-26 17:00:32 -05:00
|
|
|
alias(libs.plugins.protobuf) apply false
|
2025-10-06 13:59:07 -05:00
|
|
|
alias(libs.plugins.secrets) apply false
|
2025-09-15 16:48:27 -05:00
|
|
|
alias(libs.plugins.dependency.analysis)
|
2025-10-06 13:59:07 -05:00
|
|
|
alias(libs.plugins.detekt) apply false
|
2025-09-10 10:30:47 -05:00
|
|
|
alias(libs.plugins.kover)
|
2025-10-06 13:59:07 -05:00
|
|
|
alias(libs.plugins.spotless) apply false
|
2025-09-10 10:30:47 -05:00
|
|
|
}
|
|
|
|
|
|
2025-09-15 05:47:03 -05:00
|
|
|
|
|
|
|
|
|
2025-09-10 10:30:47 -05:00
|
|
|
kover {
|
|
|
|
|
reports {
|
|
|
|
|
total {
|
|
|
|
|
filters {
|
|
|
|
|
excludes {
|
|
|
|
|
// Exclude generated classes
|
|
|
|
|
classes("*_Impl")
|
|
|
|
|
classes("*Binding")
|
|
|
|
|
classes("*Factory")
|
|
|
|
|
classes("*.BuildConfig")
|
|
|
|
|
classes("*.R")
|
|
|
|
|
classes("*.R$*")
|
|
|
|
|
|
|
|
|
|
// Exclude UI components
|
|
|
|
|
annotatedBy("*Preview")
|
|
|
|
|
|
|
|
|
|
// Exclude declarations
|
|
|
|
|
annotatedBy(
|
|
|
|
|
"*.HiltAndroidApp",
|
|
|
|
|
"*.AndroidEntryPoint",
|
|
|
|
|
"*.Module",
|
|
|
|
|
"*.Provides",
|
|
|
|
|
"*.Binds",
|
|
|
|
|
"*.Composable",
|
|
|
|
|
)
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
dependencies {
|
2025-09-19 08:16:36 -04:00
|
|
|
kover(projects.app)
|
|
|
|
|
kover(projects.meshServiceExample)
|
|
|
|
|
|
2025-09-30 18:22:22 -05:00
|
|
|
kover(projects.core.analytics)
|
2025-10-03 17:24:52 -04:00
|
|
|
kover(projects.core.common)
|
2025-09-22 23:49:28 -04:00
|
|
|
kover(projects.core.data)
|
|
|
|
|
kover(projects.core.datastore)
|
2025-09-19 08:16:36 -04:00
|
|
|
kover(projects.core.model)
|
|
|
|
|
kover(projects.core.navigation)
|
|
|
|
|
kover(projects.core.network)
|
|
|
|
|
kover(projects.core.prefs)
|
2025-10-22 16:10:09 -04:00
|
|
|
kover(projects.core.ui)
|
2025-10-04 21:15:55 -04:00
|
|
|
kover(projects.feature.intro)
|
2025-10-12 13:07:03 -04:00
|
|
|
kover(projects.feature.messaging)
|
2025-09-19 19:12:26 -04:00
|
|
|
kover(projects.feature.map)
|
2025-10-01 19:26:41 -04:00
|
|
|
kover(projects.feature.node)
|
2025-10-06 13:20:03 -04:00
|
|
|
kover(projects.feature.settings)
|
2025-10-06 22:14:25 -04:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
dependencyAnalysis {
|
|
|
|
|
structure {
|
|
|
|
|
ignoreKtx(true)
|
2025-10-07 17:37:03 -04:00
|
|
|
|
|
|
|
|
// Hilt Android is required by the Hilt plugin, but isn't directly used in many cases. Group
|
2025-10-07 23:04:20 -04:00
|
|
|
// these dependencies together so warnings aren't triggered. If neither of these are being
|
|
|
|
|
// used, the module likely shouldn't be applying the Hilt plugin.
|
2025-10-07 17:37:03 -04:00
|
|
|
bundle("hilt-core") {
|
|
|
|
|
includeDependency("com.google.dagger:hilt-core")
|
|
|
|
|
includeDependency(libs.hilt.android)
|
|
|
|
|
}
|
2025-10-07 20:08:48 -04:00
|
|
|
|
|
|
|
|
bundle("ktorfit") {
|
|
|
|
|
includeDependency("de.jensklingenberg.ktorfit:ktorfit-lib")
|
|
|
|
|
includeDependency("de.jensklingenberg.ktorfit:ktorfit-annotations")
|
|
|
|
|
}
|
2025-10-06 22:14:25 -04:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
issues {
|
|
|
|
|
all {
|
|
|
|
|
onUnusedDependencies {
|
2025-10-07 23:04:20 -04:00
|
|
|
severity("fail")
|
2025-10-06 22:14:25 -04:00
|
|
|
exclude("androidx.compose.ui:ui-test-manifest")
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
2025-09-15 05:47:03 -05:00
|
|
|
}
|