fix(deps): stop Renovate bumping androidx past the compileSdk 36 pin - #2235
fix(deps): stop Renovate bumping androidx past the compileSdk 36 pin#2235willgriffin wants to merge 1 commit into
Conversation
androidx.core 1.18+ and androidx.lifecycle 2.11+ require compileSdk 37, and both seed apps are pinned to compileSdk 36. The catalogs recorded that coupling only in comments, which Renovate cannot read, so every weekly update bumped core-ktx and lifecycle straight past it and left :sample:checkDebugAarMetadata failing the whole PR. Encode the constraint as two allowedVersions rules so the pin survives the weekly run, matching how renovate.json already expresses the template-package pin. Closes #2234
|
You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard. |
There was a problem hiding this comment.
Pull request overview
Updates Renovate configuration to prevent weekly dependency PRs from bumping specific AndroidX dependencies past versions that require compileSdk 37, while the repo’s Android toolchain is intentionally pinned to compileSdk 36 (per packages/smrt-android/AGENTS.md and both Android version catalogs).
Changes:
- Add Renovate
packageRulesto capandroidx.core:core-ktxto<1.18. - Add Renovate
packageRulesto capandroidx.lifecycle:lifecycle-runtime-composeto<2.11. - Document the rationale inline in
renovate.jsonso the constraint is explicit and removable when the toolchain is bumped.
|
Superseded by #2245, which carries this commit cherry-picked verbatim alongside the other three patch-class changes. Consolidated to spend one validation pass instead of four. For #2205 and #2233 specifically it also resolves a real collision — both rewrite Branch preserved. |
{"schema":"hv-agent-run:v1","runtime":"claude","session":"8a94e288-0358-403f-a3a6-8e81a80e6c5d","issue":"2234","head_sha":"9689dd41c0716d4606ffa9dc55940078b87780bb","policy_revision":"1.0.0","status":"complete"}Summary
smrt-android library + samplefails on every weekly dependency PR because Renovate bumpstwo Gradle versions past a constraint that
libs.versions.tomlrecords only in a comment::sample:checkDebugAarMetadatathen fails withDependency 'androidx.core:core-ktx:1.19.0' requires ... version 37 or later of the Android APIs. :sample is currently compiled against android-36.Renovate cannot read the comments, so this recurs weekly — it is currently redon #2189.
Change
Two
allowedVersionsrules inrenovate.json, matched to exactly the two modules thecatalog declares (
androidx.core:core-ktx,androidx.lifecycle:lifecycle-runtime-compose).This mirrors how that file already encodes the starter-template pin: a
descriptiongivingthe reason, so the rule can be removed deliberately rather than guessed at later.
Why not raise compileSdk to 37
compileSdk 36 is an existing, recorded decision —
packages/smrt-android/AGENTS.mdstatesthe toolchain as "Gradle 9.6.1 / compileSdk 36 / minSdk 26 / JVM 21", and both catalogs pin
android-compile-sdk = "36". Moving to 37 is the mobile owner's call and would need the CIAndroid SDK platform to move with it. This PR only makes Renovate honour the decision that
is already made; the rules are removed in whichever change does raise the toolchain.
Validation
renovate-config-validator—Config validated successfully against 1 file(s)node -e "JSON.parse(...)"— valid JSONbiome check renovate.json— path is ignored by the repo's Biome config, so no diagnostics applyCloses #2234