Skip to content

Update dependencies to latest stable versions#107

Open
sdeff wants to merge 2 commits intoSuddenH4X:developfrom
sdeff:feature/update-dependencies
Open

Update dependencies to latest stable versions#107
sdeff wants to merge 2 commits intoSuddenH4X:developfrom
sdeff:feature/update-dependencies

Conversation

@sdeff
Copy link

@sdeff sdeff commented Feb 3, 2026

Summary

  • Update to AGP 9.0, Kotlin 2.3.0, Gradle 9.1.0
  • Update compileSdk/targetSdk to 36
  • Update AndroidX dependencies:
    • core-ktx 1.15.0 → 1.17.0
    • activity-compose 1.10.0 → 1.12.3
    • compose-material3 1.3.1 → 1.4.0
    • compose-ui-tooling 1.7.6 → 1.10.2
    • appcompat 1.7.0 → 1.7.1
    • constraintlayout 2.2.0 → 2.2.1
  • Update Google Material 1.12.0 → 1.13.0
  • Update ktlint-gradle 12.1.2 → 14.0.1
  • Update test dependencies:
    • JUnit 5.11.4 → 6.0.2
    • MockK 1.13.14 → 1.14.9
    • AssertJ 3.26.3 → 3.27.7
    • mannodermaus-junit5 1.11.2.0 → 2.0.1
  • Add material-icons-core 1.7.8 (required for Material3 1.4.0+)
  • Migrate to Compose BOM 2026.01.01 for centralized version management

AGP 9.0 Migration

  • Remove kotlin-android plugin (AGP 9.0 provides built-in Kotlin support)
  • Remove deprecated composeOptions block
  • Move kotlin {} block to project level (outside android {})

Compose BOM Migration

  • Replace explicit Compose dependency versions with Compose BOM 2026.01.01
  • Ensures version compatibility across all Compose libraries
  • BOM maps to identical versions (material-icons-core 1.7.8, material3 1.4.0, ui-tooling 1.10.2)

JUnit 5 → 6 Migration

JUnit 6 breaking changes verified as not affecting this project:

  • ✅ Java 17 baseline - project uses JVM 21
  • ✅ Kotlin 2.2 required - project uses Kotlin 2.3.0
  • ✅ CSV parsing changes - @CsvSource/@CsvFileSource not used
  • ✅ junit-platform-runner removed - not used
  • ✅ JUnit Vintage deprecated - no JUnit 4 tests
  • ✅ Maven Surefire 3.0.0+ - uses Gradle

Breaking Changes

  • Example app minSdk updated from 21 to 23 (required by Compose Foundation 1.10.x)

Test plan

  • Library builds successfully (./gradlew :library:assembleRelease)
  • Library tests pass (./gradlew :library:test)
  • Example app builds (./gradlew :exampleapp:assembleDebug)
  • ktlint check passes
  • Android lint passes

- Migrate to AGP 9.0 with built-in Kotlin support
- Update Kotlin to 2.3.0
- Update Gradle wrapper to 9.1.0
- Update compileSdk/targetSdk to 36
- Update AndroidX dependencies (core-ktx 1.17.0, activity-compose 1.12.3,
  compose-material3 1.4.0, appcompat 1.7.1, constraintlayout 2.2.1)
- Update Google Material to 1.13.0
- Update test dependencies (JUnit 6.0.2, MockK 1.14.9, mannodermaus 2.0.1)
- Add material-icons-core dependency (required for Material3 1.4.0+)
- Remove kotlin-android plugin (AGP 9.0 provides built-in Kotlin)
- Remove deprecated composeOptions block
- Move kotlin {} block to project level
- Update example app minSdk to 23 (required by Compose 1.10.x)
@sdeff sdeff changed the title chore: update dependencies to latest stable versions Update dependencies to latest stable versions Feb 3, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant