22 Commits

Author SHA1 Message Date
Robert Muir
62286fe680
Upgrade to errorprone 2.18 (#12086) 2023-01-14 14:39:59 -05:00
Robert Muir
f22fc96fd6
Update to error-prone 2.17 (#12056) 2023-01-14 11:39:03 -05:00
Robert Muir
f57e48ba45
Enable LongDoubleConversion error-prone check (#12010) 2022-12-12 20:56:13 -05:00
Robert Muir
4eddd29bd9
fix wrong serialization by ShapeDocValues (#11974)
Closes #11973
2022-12-01 20:33:11 -05:00
Robert Muir
aaf2f5880c
Disable useless error-prone checks (libraries/frameworks we do not use) (#11971)
These are easy/obvious ones to disable since we don't use the
functionality at all: the checks are literally useless.

This gives some performance boost to the error-prone, although it is
still pretty slow.

triage most of the previously disabled checks into TODO, noisy, etc
2022-12-01 08:47:41 -05:00
Robert Muir
95d3df8484
fix bad shift amounts and enable check (#11979) 2022-11-25 11:52:28 -05:00
Robert Muir
b84a269197
fix use of wrong array toString() method in test, enable check (#11978) 2022-11-25 11:52:28 -05:00
Robert Muir
2f74ac46e8
fix use of wrong array equals() method in test, enable check (#11977) 2022-11-25 11:52:28 -05:00
Robert Muir
6249b9ab2c
fix variable assigned to itself in test and enable check (#11980) 2022-11-25 11:52:28 -05:00
Robert Muir
15a403404b
Invert error-prone configuration to be allow-list vs deny-list (#11970)
This does not change the semantics or performance of our setup.

Instead, it explicitly enables checks that we want vs disabling checks
that we don't want.

Also reordered checks to match the error-prone website list of checks
for easier maintenance.

It is now clear that many useless checks are enabled, we can disable
some of them and try to get the performance reasonable.
2022-11-23 15:07:14 -05:00
Robert Muir
2364f5809a
enable error-prone "narrow calculation" check (#11923)
This check finds bugs such as https://github.com/apache/lucene/pull/11905.

See https://errorprone.info/bugpattern/NarrowCalculation
2022-11-15 06:45:55 -05:00
Uwe Schindler
3f42e23d06 Clean up MR-JAR build, so we do not have hardcoded "19" everywhere in validation tasks (#11835)
As long as soureSets are named "mainXX", with XX a feature version, we check everything automatically:
- ECJ is disabled (we can't do a check without forking ECJ as a separate process using toolkit, we may support this later)
- forbiddenapis (we disable checks for missing classes)
- errorprone is disabled (errorprone does not work correctly at moment with forked compiler)
2022-10-02 20:42:44 +02:00
Uwe Schindler
5ffd6c0590 MR-JAR rewrite of MMapDirectory with JDK-19 preview Panama APIs (>= JDK-19-ea+23) (#912)
This uses Gradle's auto-provisioning to compile Java 19 classes and build a multi-release JAR from them. Please make sure to regenerate gradle.properties (delete it) or change "org.gradle.java.installations.auto-download" to "true"
# Conflicts:
#	lucene/core/src/java/org/apache/lucene/store/MMapDirectory.java
2022-09-26 15:25:10 +02:00
Dawid Weiss
8ccb59eb03
Upgrade several build dependencies and regenerate sources (#11812) (#11816) 2022-09-25 17:58:55 +02:00
Uwe Schindler
fbb3bd56c9 Detect CI builds and enable errorprone by default for those CI builds (#890) 2022-05-14 20:50:57 +02:00
Dawid Weiss
825e38e152 LUCENE-10510: Check module access prior to running gjf/spotless tasks (#802) 2022-04-10 20:36:23 +02:00
Uwe Schindler
964006360c LUCENE-10364: Prepare and update errorprone plugin for Java 17 (#590) 2022-01-07 19:21:05 +01:00
Dawid Weiss
f02799c511
Skip errorprone on non-nightlies. (#45) 2021-03-26 21:42:15 +01:00
Dawid Weiss
f8040c0ecf LUCENE-9650: errorprone plugin doesn't work on jdk16. A different workaround that keeps the dependency. 2021-03-15 10:19:27 +01:00
Dawid Weiss
8bbcc39583 Always include errorprone dependency, even if we're not checking. This ensures consistent use patterns across JVMs. 2021-03-11 22:27:25 +01:00
Dawid Weiss
38c9d2ab76
LUCENE-9650: disable errorprone on jdk16+ (#2171) 2020-12-28 23:20:52 +01:00
Varun Thacker
121b262389
LUCENE-9497: Integerate Error Prone ( Static Analysis Tool ) during compilation (#1816)
LUCENE-9497:  Integrate Error Prone, a static analysis tool during compilation
2020-09-07 14:42:48 -07:00