First Android-library module in the kit. Privacy-respecting crash capture (writes a self-contained, allowlist-only report to private storage, chains to the platform handler, uploads nothing), startup crash-loop detection, a report dialog showing the full text before it leaves the device, and an issue-tracker hand-off. Extracted from Calendula and generalised: app label + issue URLs come from a CrashConfig supplied at install(); each app keeps its own thin themed CrashReportActivity. Lean deps (Compose + core-ktx). 3 unit tests on the pure report builder. Adds AGP/android-library + compose plugins and the compose/core-ktx libs to the kit catalog; core-time stays a plain JVM module. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
36 lines
1.2 KiB
Kotlin
36 lines
1.2 KiB
Kotlin
pluginManagement {
|
|
repositories {
|
|
google {
|
|
content {
|
|
includeGroupByRegex("com\\.android.*")
|
|
includeGroupByRegex("com\\.google.*")
|
|
includeGroupByRegex("androidx.*")
|
|
}
|
|
}
|
|
mavenCentral()
|
|
gradlePluginPortal()
|
|
}
|
|
}
|
|
|
|
// NB: deliberately NO Gradle Java-toolchain auto-download resolver plugin here.
|
|
// Consuming apps build this as an included build, and Calendula publishes via
|
|
// official F-Droid reproducible builds whose offline source scanner rejects any
|
|
// toolchain resolver that can fetch a JDK at build time. Modules set jvmTarget
|
|
// directly and must not add a Java toolchain block that needs such a resolver.
|
|
|
|
dependencyResolutionManagement {
|
|
repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
|
|
repositories {
|
|
google()
|
|
mavenCentral()
|
|
}
|
|
}
|
|
|
|
// floret-kit — the shared Material 3 Expressive design system + plumbing for the
|
|
// Floret family of apps (Calendula, Agendula, …). Consumed by each app as a git
|
|
// submodule wired in via Gradle `includeBuild`, built from source (F-Droid-safe).
|
|
rootProject.name = "floret-kit"
|
|
|
|
include(":core-time")
|
|
include(":core-crash")
|