Repository navigation
[MS-1691] Clean up unused dependencies and build workarounds - #1861
meladRaouf wants to merge 8 commits into
Conversation
- repo1.maven.org duplicates mavenCentral() in pluginManagement - oss.sonatype.org snapshots: OSSRH was shut down; no snapshot deps - repo.commonsware.com: nothing resolves from it any more - NEC wrapper: NEC is unsupported since v2026.1.0 - Secugen wrapper: the secugen artifact is no longer used Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01XDdSwkCH2YzDmLynPhih3H
secugen, androidX-appcompat-resource, androidX-navigation-ui, testing-retrofit, testing-Robolectric-annotation and testing-Espresso-barista are not referenced by any module. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01XDdSwkCH2YzDmLynPhih3H
minSdk is 24 and Android supports multidex natively from API 21, so MultiDexApplication and the Robolectric MultiDex shadow are no longer needed. CoreApplication now extends android.app.Application. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01XDdSwkCH2YzDmLynPhih3H
No layout or class uses CoordinatorLayout. Material still brings it in transitively. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01XDdSwkCH2YzDmLynPhih3H
Only fingerprint:infra:scanner uses kotlin-reflect, and it already declares it as an implementation dependency, so it stays on fingerprint:capture's runtime classpath. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01XDdSwkCH2YzDmLynPhih3H
The app resolves lifecycle 2.11 everywhere, so the old lifecycle-viewmodel-ktx pulled in by Chucker and Preference is upgraded to the same version and no longer needs excluding. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01XDdSwkCH2YzDmLynPhih3H
-Xnew-inference has been the default since Kotlin 1.4, and the kotlin.Experimental marker no longer exists, so both only produced compiler warnings. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01XDdSwkCH2YzDmLynPhih3H
There was a problem hiding this comment.
🟡 Changes recommended
Dependabot still references the removed Sonatype and CommonsWare repositories, leaving the cleanup incomplete.
1 open finding
What changed in this PR
Cleans obsolete repositories, dependencies, and Kotlin compiler workarounds ahead of release 2027.1.0.
Changes:
- Removes unused repositories and catalog entries.
- Drops legacy multidex setup and test shadows.
- Simplifies dependency declarations and compiler options.
| File | Description |
|---|---|
settings.gradle.kts |
Removes obsolete Maven repositories. |
infra/ui-base/build.gradle.kts |
Removes direct CoordinatorLayout dependency. |
infra/test-tools/src/main/java/com/simprints/testtools/unit/robolectric/ShadowAndroidXMultiDex.kt |
Deletes obsolete multidex shadow. |
infra/test-tools/build.gradle.kts |
Removes multidex test dependency. |
infra/resources/build.gradle.kts |
Removes lifecycle exclusion from Preference. |
infra/network/build.gradle.kts |
Removes lifecycle exclusion from Chucker. |
infra/events/src/test/java/com/simprints/infra/events/event/local/migrations/EventMigration1to2Test.kt |
Removes multidex shadow configuration. |
infra/events/src/test/java/com/simprints/infra/events/event/local/EventLocalDataSourceTest.kt |
Removes multidex shadow configuration. |
infra/core/src/main/java/com/simprints/core/CoreApplication.kt |
Replaces MultiDexApplication with Application. |
infra/core/build.gradle.kts |
Removes multidex dependency. |
gradle/libs.versions.toml |
Removes unused catalog entries and versions. |
fingerprint/capture/build.gradle.kts |
Removes redundant Kotlin reflection dependency. |
build-logic/convention/src/main/kotlin/common/KotlinAndroid.kt |
Removes obsolete compiler arguments. |
🧠 Review effort: Balanced
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
These repositories were removed from settings.gradle.kts; drop them from Dependabot too so it stops querying them. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01XDdSwkCH2YzDmLynPhih3H
|
| google() | ||
| mavenCentral() | ||
| gradlePluginPortal() | ||
| maven(url = "https://oss.sonatype.org/content/repositories/snapshots/") |
There was a problem hiding this comment.
Can we keep this one for now? It is useful when adding changes to LibSimprints - we can create a "snapshot" release and use it in unreleased version of SID without pushing a full version to potential actual users (assuming there are any).
There was a problem hiding this comment.
Or even better we should switch to a correct mirror - https://central.sonatype.org/publish/publish-portal-snapshots/#consuming-via-gradle




JIRA ticket
Will be released in: 2027.1.0
Notable changes
secugen,androidX-appcompat-resource,androidX-navigation-ui,testing-retrofit,testing-Robolectric-annotationandtesting-Espresso-barista, plus their orphaned versions.androidx.multidex: minSdk 24 supports multidex natively.CoreApplicationnow extendsApplication, and the RobolectricShadowAndroidXMultiDexis removed.coordinatorlayoutfrominfra:ui-base. Material still brings it in.kotlin-reflectfromfingerprint:capture. It already reaches it at runtime throughfingerprint:infra:scanner.lifecycle-viewmodel-ktxexcludes on Chucker and Preference. Lifecycle is on 2.11 everywhere, so the old version gets upgraded anyway.Each change is its own commit, so any one can be reverted on its own.
Testing guidance
./gradlew assembleDebug testDebugUnitTestpasses.Additional work checklist