-
Notifications
You must be signed in to change notification settings - Fork 299
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Update minimum Error Prone version and Guava version #843
Conversation
Codecov ReportAll modified lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## master #843 +/- ##
============================================
- Coverage 86.84% 86.83% -0.02%
+ Complexity 1878 1877 -1
============================================
Files 74 74
Lines 6189 6189
Branches 1201 1201
============================================
- Hits 5375 5374 -1
Misses 406 406
- Partials 408 409 +1 ☔ View full report in Codecov by Sentry. |
Note that we'll have to update our required CI jobs before landing this change. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Releasing doc needs to be updated, all else are comments/reminders for myself :)
} | ||
} | ||
|
||
apply plugin: 'net.ltgt.errorprone' |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I presume this is no longer supported?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
So I was following the style of other READMEs I've seen recently, including the Gradle Error Prone plugin. None of them even document this possibility anymore; it was outdated years ago. I think it's not worth the space here.
} | ||
|
||
dependencies { | ||
annotationProcessor "com.uber.nullaway:nullaway:0.10.13" | ||
errorprone "com.uber.nullaway:nullaway:<NullAway version>" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Do we want to remove version numbers from here or just adding the version of the plugin to the set of things to update when releasing? Either way, releasing instructions might need updating too!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think we should be consistent and not have the version here. It hinders copy-paste-ability, but before we were just updating the NullAway version and not versions of other related plugins, and stuff got out of date. So I propose leaving the version out here and updating the releasing instructions. WDYT?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fine by me. Another option is to have some script to update the readme that fetches these from our own configuration, or add steps to the release instructions, but that is a bit of work and might not be super reliable anyways (will break if the README ever changes shape significantly). Let's go with these placeholders for now, then.
@@ -72,7 +72,7 @@ def build = [ | |||
errorProneJavac : "com.google.errorprone:javac:9+181-r4173-1", | |||
errorProneTestHelpers : "com.google.errorprone:error_prone_test_helpers:${versions.errorProneApi}", | |||
checkerDataflow : "org.checkerframework:dataflow-nullaway:${versions.checkerFramework}", | |||
guava : "com.google.guava:guava:24.1.1-jre", | |||
guava : "com.google.guava:guava:30.1-jre", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This will need some internal testing before release. I do believe we have a later version of Guava in the annotation processor path for at least Java monorepo, but we need to test this for both internal monorepos.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM!
Fixes #842. Updating the minimum supported Error Prone version to 2.10.0 allows for some code cleanup in tests.
We also update our
README.md
(finally!) to mention the new minimum version, to use the Gradle Error Prone plugin correctly, to mention the Gradle NullAway plugin, and to not mention so many specific versions so it doesn't get out of date so quickly in the future. This fixes #466.