Caffeine is a current user of JSpecify mode, and also has a lot of interesting code patterns that may not be covered by our unit tests. It would be great if we could add a CI job that runs on PRs that would check that the latest Caffeine git SHA builds successfully. At first we could just make sure there are no crashes, though eventually it would be good to also somehow check to see that any new warnings are sensible.
@ben-manes any thoughts on this? Right now I do this testing locally by building a NullAway snapshot, changing the NullAway version to the snapshot version in Caffeine's libs.versions.toml, and patching errorprone.caffeine.gradle.kts to pick up the snapshot with:
repositories {
mavenCentral()
mavenLocal()
}
We could just do this patching in our CI job to start. But maybe there's a better way.
Caffeine is a current user of JSpecify mode, and also has a lot of interesting code patterns that may not be covered by our unit tests. It would be great if we could add a CI job that runs on PRs that would check that the latest Caffeine git SHA builds successfully. At first we could just make sure there are no crashes, though eventually it would be good to also somehow check to see that any new warnings are sensible.
@ben-manes any thoughts on this? Right now I do this testing locally by building a NullAway snapshot, changing the NullAway version to the snapshot version in Caffeine's
libs.versions.toml, and patchingerrorprone.caffeine.gradle.ktsto pick up the snapshot with:We could just do this patching in our CI job to start. But maybe there's a better way.