autonomousapps / autonomousapps/dependency-analysis-gradle-plugin
Cache misses between CI and local
- Dominant language
- Kotlin
- Stars
- 2.2k
- Forks
- 158
- Avg merge
- 16h 25m
- Merged PRs (30d)
- 46
Description
**Build scan link**
**Plugin version**
1.28.0
**Gradle version**
8,5
**JDK version**
17
**(Optional) Kotlin and Kotlin Gradle Plugin (KGP) version**
1.9.21
**(Optional) Android Gradle Plugin (AGP) version**
N/a
**Describe the bug**
The buildHealth task and all its deps are not being cached properly and we get cache misses more often than ideal.
The cause seems to be not using PathSenstivity.Relative in all cases. The reason we get cache misses is because the absolute paths of input dependencies of many of the tasks created by the plugin use absolute or none path sensitivity. See image for one such example
**To Reproduce**
Steps to reproduce the behavior:
1. ...
**Expected behavior**
If the code hasn't change I expect cache hits for all the tasks that this plugin creates in CI.
**Additional context**
Contributor guide
Research direction
Start with the buildHealth task and the other tasks created by the plugin, then reproduce the reported cache misses between CI and a local build using Gradle 8.5, JDK 17, and plugin 1.28.0. Inspect the input dependency path-sensitivity settings, especially cases using absolute or no sensitivity; done means unchanged code produces cache hits for the plugin-created tasks.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- kotlin
- Domain
- build-system, ci-cd, performance
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 42/100