Skip to content

Commit 1b98b50

Browse files
0xadam-brownOpenCode
andcommitted
feat(android-nav3): Create the navigation3 module
Establish the new Android Navigation 3 integration module and register it with the build and publication metadata. This keeps the first step focused on the module boundary itself, without introducing generated API surface or implementation code yet. Co-Authored-By: OpenCode <noreply@opencode>
1 parent df8e13a commit 1b98b50

4 files changed

Lines changed: 59 additions & 0 deletions

File tree

‎buildSrc/src/main/java/Config.kt‎

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -98,6 +98,7 @@ object Config {
9898
"sentry-android-ndk",
9999
"sentry-android-fragment",
100100
"sentry-android-navigation",
101+
"sentry-android-navigation3",
101102
"sentry-android-timber",
102103
"sentry-compose-android",
103104
"sentry-android-sqlite",
Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
import io.gitlab.arturbosch.detekt.Detekt
2+
import org.jetbrains.kotlin.gradle.dsl.JvmTarget.JVM_1_8
3+
import org.jetbrains.kotlin.gradle.dsl.KotlinVersion
4+
5+
plugins {
6+
id("com.android.library")
7+
alias(libs.plugins.kotlin.android)
8+
alias(libs.plugins.kotlin.compose)
9+
alias(libs.plugins.gradle.versions)
10+
alias(libs.plugins.detekt)
11+
}
12+
13+
android {
14+
compileSdk = libs.versions.compileSdk.get().toInt()
15+
namespace = "io.sentry.compose.navigation3"
16+
17+
defaultConfig {
18+
minSdk = libs.versions.minSdk.get().toInt()
19+
}
20+
21+
buildTypes {
22+
getByName("debug") { consumerProguardFiles("proguard-rules.pro") }
23+
getByName("release") { consumerProguardFiles("proguard-rules.pro") }
24+
}
25+
26+
kotlin {
27+
compilerOptions.jvmTarget = JVM_1_8
28+
compilerOptions.languageVersion = KotlinVersion.KOTLIN_1_9
29+
compilerOptions.apiVersion = KotlinVersion.KOTLIN_1_9
30+
}
31+
32+
lint {
33+
warningsAsErrors = true
34+
checkDependencies = true
35+
36+
// We run a full lint analysis as build part in CI, so skip vital checks for assemble tasks.
37+
checkReleaseBuilds = false
38+
}
39+
40+
androidComponents.beforeVariants {
41+
it.enable = !Config.Android.shouldSkipDebugVariant(it.buildType)
42+
}
43+
}
44+
45+
kotlin { explicitApi() }
46+
47+
tasks.withType<Detekt>().configureEach {
48+
// Target version of the generated JVM bytecode. It is used for type resolution.
49+
jvmTarget = JavaVersion.VERSION_1_8.toString()
50+
}
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
##---------------Begin: proguard configuration for Compose ----------
2+
3+
# To ensure that stack traces is unambiguous
4+
# https://developer.android.com/studio/build/shrink-code#decode-stack-trace
5+
-keepattributes LineNumberTable,SourceFile
6+
7+
##---------------End: proguard configuration for Compose ----------

‎settings.gradle.kts‎

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,7 @@ include(
5151
"sentry-android-timber",
5252
"sentry-android-fragment",
5353
"sentry-android-navigation",
54+
"sentry-android-navigation3",
5455
"sentry-android-sqlite",
5556
"sentry-android-replay",
5657
"sentry-compose",

0 commit comments

Comments
 (0)