[build] Enable spotbugs (#3601)

Benign spotbugs warnings were suppressed, and all others were fixed. Bug
descriptions are documented here:
https://spotbugs.readthedocs.io/en/stable/bugDescriptions.html

Co-authored-by: Austin Shalit <austinshalit@gmail.com>
This commit is contained in:
Tyler Veness
2021-09-24 16:04:02 -07:00
committed by GitHub
parent b65fce86bf
commit 95dd20a151
73 changed files with 356 additions and 558 deletions

View File

@@ -13,6 +13,8 @@ import org.ejml.simple.SimpleMatrix;
@SuppressWarnings("ParameterName")
public final class StateSpaceUtil {
private static Random rand = new Random();
private StateSpaceUtil() {
// Utility class
}
@@ -49,8 +51,6 @@ public final class StateSpaceUtil {
* @return White noise vector.
*/
public static <N extends Num> Matrix<N, N1> makeWhiteNoiseVector(Matrix<N, N1> stdDevs) {
var rand = new Random();
Matrix<N, N1> result = new Matrix<>(new SimpleMatrix(stdDevs.getNumRows(), 1));
for (int i = 0; i < stdDevs.getNumRows(); i++) {
result.set(i, 0, rand.nextGaussian() * stdDevs.get(i, 0));

View File

@@ -57,13 +57,13 @@ public class MedianFilter {
// and remove from ordered list
if (curSize > m_size) {
m_orderedValues.remove(m_valueBuffer.removeLast());
curSize = curSize - 1;
--curSize;
}
// Add next value to circular buffer
m_valueBuffer.addFirst(next);
if (curSize % 2 == 1) {
if (curSize % 2 != 0) {
// If size is odd, return middle element of sorted list
return m_orderedValues.get(curSize / 2);
} else {

View File

@@ -5,6 +5,7 @@
package edu.wpi.first.math.kinematics;
import edu.wpi.first.math.geometry.Rotation2d;
import java.util.Objects;
/** Represents the state of one swerve module. */
@SuppressWarnings("MemberName")
@@ -29,17 +30,30 @@ public class SwerveModuleState implements Comparable<SwerveModuleState> {
this.angle = angle;
}
@Override
public boolean equals(Object obj) {
if (obj instanceof SwerveModuleState) {
return Double.compare(speedMetersPerSecond, ((SwerveModuleState) obj).speedMetersPerSecond)
== 0;
}
return false;
}
@Override
public int hashCode() {
return Objects.hash(speedMetersPerSecond);
}
/**
* Compares two swerve module states. One swerve module is "greater" than the other if its speed
* is higher than the other.
*
* @param o The other swerve module.
* @param other The other swerve module.
* @return 1 if this is greater, 0 if both are equal, -1 if other is greater.
*/
@Override
@SuppressWarnings("ParameterName")
public int compareTo(SwerveModuleState o) {
return Double.compare(this.speedMetersPerSecond, o.speedMetersPerSecond);
public int compareTo(SwerveModuleState other) {
return Double.compare(this.speedMetersPerSecond, other.speedMetersPerSecond);
}
@Override