Update google.errorprone to v2.41.0#3116
Conversation
1f563f0 to
3559018
Compare
3559018 to
74026ef
Compare
74026ef to
98ad6f6
Compare
Edited/Blocked NotificationRenovate will not automatically rebase this PR, because it does not recognize the last commit author and assumes somebody else may have edited the PR. You can manually request rebase by checking the rebase/retry box above. |
|
Please see updated bug patterns in the diff. Consult https://github.com/google/error-prone/releases for the new ones. I used AI to diff our current config with the full list at https://errorprone.info/bugpatterns. I believe it is fairly up to date now. |
|
Some of the failures stem from How do we want to treat the new failures, do we want to disable most of the new rules and then do followup PRs enabling one at a time, including its fixes? We now have fails for |
There was a problem hiding this comment.
Looks good to me. 👍
How do we want to treat the new failures, do we want to disable most of the new rules and then do followup PRs enabling one at a time, including its fixes?
Yes, that was our previous approach too. Useful rules that required some refactoring were addressed in separate PRs.
I believe the formatting (tidy) is subject to be fixed, right? And the rule that fails can also be addressed in separate PR (ideally disabling it here?).
|
I have also not found these new rules in the changes, are they left out on purpose? 2.38 2.37 2.36 2.34 |
Move some rules to other section in file Comment out new rules that fail
# Conflicts: # solr/modules/sql/gradle.lockfile
|
Thanks for the review. I commented out rules, did tidy and write-locks |
# Conflicts: # solr/modules/gcs-repository/gradle.lockfile
# Conflicts: # solr/api/gradle.lockfile # solr/benchmark/gradle.lockfile # solr/core/gradle.lockfile # solr/cross-dc-manager/gradle.lockfile # solr/modules/analysis-extras/gradle.lockfile # solr/modules/clustering/gradle.lockfile # solr/modules/cross-dc/gradle.lockfile # solr/modules/extraction/gradle.lockfile # solr/modules/gcs-repository/gradle.lockfile # solr/modules/jwt-auth/gradle.lockfile # solr/modules/langid/gradle.lockfile # solr/modules/llm/gradle.lockfile # solr/modules/ltr/gradle.lockfile # solr/modules/opentelemetry/gradle.lockfile # solr/modules/s3-repository/gradle.lockfile # solr/modules/scripting/gradle.lockfile # solr/modules/sql/gradle.lockfile # solr/prometheus-exporter/gradle.lockfile # solr/server/gradle.lockfile # solr/solr-ref-guide/gradle.lockfile # solr/solrj-streaming/gradle.lockfile # solr/solrj-zookeeper/gradle.lockfile # solr/solrj/gradle.lockfile # solr/test-framework/gradle.lockfile # solr/ui/gradle.lockfile # solr/webapp/gradle.lockfile
This PR contains the following updates:
2.31.0->2.41.02.31.0->2.41.0Release Notes
google/error-prone (com.google.errorprone:error_prone_core)
v2.41.0: Error Prone 2.41.0New checks:
publicorprotectedmodifiers, but are effectively privateChanges:
Full changelog: google/error-prone@v2.40.0...v2.41.0
v2.40.0: Error Prone 2.40.0Changes:
Full changelog: google/error-prone@v2.39.0...v2.40.0
v2.39.0: Error Prone 2.39.0Changes:
Checks:
BooleanLiteral: PrefertruetoBoolean.TRUEExpensiveLenientFormatString: Renamed fromPreconditionsExpensiveString, detects unnecessary calls toString.formatin the arguments of lenient formatting methods.UnnecessaryQualifier: Detects@Qualifieror@BindingAnnotationannotations that have no effect, and can be removedIssues: #4996, #5045
Full changelog: google/error-prone@v2.38.0...v2.39.0
v2.38.0: Error Prone 2.38.0New checks:
AddNullMarkedToPackageInfo: adds@org.jspecify.annotations.NullMarkedannotation to package-info filesIntLiteralCast: Suggests a literal of the desired type instead of casting an int literal to a long, float, or doubleMisleadingEmptyVarargs: Discourages calling varargs methods that expect at least one argument with no arguments, like Mockito'sthenThrowPreconditionsExpensiveString: Discourages expensive string formatting in GuavaPreconditionschecksSelfSet: Detects mistakes likeproto.setFoo(proto.getFoo())UnnecessaryCopy: detect unnecessary copies of proto Lists and Maps.Closed issues: #4924, #4897, #4995
Full changelog: google/error-prone@v2.37.0...v2.38.0
v2.37.0: Error Prone 2.37.0Changes:
error_prone_type_annotationshave been been merged intoerror_prone_annotations.error_prone_type_annotationsis now deprecated, and will be removed in a future release.New checks:
AssignmentExpression- The use of an assignment expression can be surprising and hard to read; consider factoring out the assignment to a separate statement.IntFloatConversion- Detect calls toscalbthat should be using the double overload insteadInvalidSnippet- Detects snippets which omit the:required for inline code.JUnit4EmptyMethods- Detects empty JUnit4@Before,@After,@BeforeClass, and@AfterClassmethods.MockIllegalThrows- Detects cases where Mockito is configured to throw checked exception types which are impossible.NegativeBoolean- Prefer positive boolean names.RuleNotRun- DetectsTestRules not annotated with@Rule, that won't be run.StringConcatToTextBlock- Replaces concatenated multiline strings with text blocks.TimeInStaticInitializer- Detects accesses of the system time in static contexts.Closed issues:
@InlineMepatching ofStrings.repeatproduces broken code (#4819)_) variables (#4847)Full changelog: google/error-prone@v2.36.0...v2.37.0
v2.36.0: Error Prone 2.36.0Changes:
ErrorProneScannerfor AST nodes introduced after Java 11 (e5fd194)d67bc15)--should-stop=ifError=FLOWis set when using the-Xpluginintegration (e71db1f)New checks:
DuplicateBranches: Discourage conditional expressions and if statements where both branches are the sameRedundantControlFlow: Reports redundantcontinuestatements.Closed issues: #4633, #4646
Full changelog: google/error-prone@v2.35.1...v2.36.0
v2.35.1: Error Prone 2.35.1Error Prone's dependency on protobuf has been downgraded to 3.25.5 for this release.
Version 3.25.5 of protobuf still fixes CVE-2024-7254. This release is provided for users who aren't ready to update to 4.x, see also #4584 and #4634. Future versions of Error Prone will upgrade back to protobuf 4.x.
Full changelog: google/error-prone@v2.35.0...v2.35.1
v2.35.0: Error Prone 2.35.0Changes:
\sbefore the trailing delimiter inMisleadingEscapedSpaceTimeUnitMismatchimprovements: handle binary trees, consider trees likefooSeconds * 1000to have units of millisNew checks:
JavaDurationGetSecondsToToSeconds: Preferduration.toSeconds()overduration.getSeconds()Full changelog: google/error-prone@v2.34.0...v2.35.0
v2.34.0: Error Prone 2.34.0Changes:
--should-stop=ifError=FLOWis now required when running Error Prone (#4595)MemberNamecheck was renamed toIdentifierNameNew checks:
FutureTransformAsync: The usage of transformAsync is not necessary when all the return values of the transformation function are immediate futures.MisformattedTestData: Reformats Java source code inside Error Prone test cases.MisleadingEscapedSpace: Using\sanywhere except at the end of a line in a text block is potentially misleading.ThrowIfUncheckedKnownUnchecked:throwIfUnchecked(knownUnchecked)is equivalent tothrow knownUnchecked.Closed issues: #4595, #4598, #4620
Full changelog: google/error-prone@v2.33.0...v2.34.0
v2.33.0: Error Prone 2.33.0Similar to release 2.32.0, the minimum supported JDK version to run Error Prone is JDK 17 (#3803). Using Error Prone to compile code that is deployed to earlier versions is still fully supported, but will require using JDK 17 or newer for compilation and setting
--releaseor-source/-target/-bootclasspath.Changes:
New checks:
ArrayRecordComponent: Record components should not be arrays.Full changelog: google/error-prone@v2.32.0...v2.33.0
v2.32.0: Error Prone 2.32.0The minimum support JDK version to run Error Prone is now JDK 17 (#3803).
Using Error Prone to compile code that is deployed to earlier versions is still fully supported, but will requires using JDK 17 or newer for compilation and setting
--releaseor-source/-target/-bootclasspath.Full changelog: google/error-prone@v2.31.0...v2.32.0
Configuration
📅 Schedule: Branch creation - Every minute ( * * * * * ) (UTC), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about these updates again.
This PR has been generated by Renovate Bot