Closed strubium closed 1 week ago
20869 new problems were found
Inspection name | Severity | Problems |
---|---|---|
Unchecked warning |
🔶 Warning | 10585 |
Unnecessary 'this' qualifier |
🔶 Warning | 2514 |
Deprecated API usage |
🔶 Warning | 1493 |
Auto-boxing |
🔶 Warning | 731 |
Lombok @Getter may be used |
🔶 Warning | 389 |
Statement with empty body |
🔶 Warning | 361 |
Field can be local |
🔶 Warning | 313 |
Lombok @Setter may be used |
🔶 Warning | 143 |
Unused assignment |
🔶 Warning | 136 |
Nullability and data flow problems |
🔶 Warning | 128 |
Auto-unboxing |
🔶 Warning | 126 |
Non-constant field with upper-case name |
🔶 Warning | 114 |
Redundant local variable |
🔶 Warning | 103 |
Javadoc declaration problems |
🔶 Warning | 100 |
Questionable name |
🔶 Warning | 79 |
Constant values |
🔶 Warning | 62 |
Call to 'printStackTrace()' |
🔶 Warning | 38 |
Declaration has problems in Javadoc references |
🔶 Warning | 27 |
Possibly lossy implicit cast in compound assignment |
🔶 Warning | 27 |
Result of method call ignored |
🔶 Warning | 18 |
Deprecated member is still used |
🔶 Warning | 14 |
Dynamic regular expression can be replaced by compiled 'Pattern' |
🔶 Warning | 13 |
Link specified as plain text |
🔶 Warning | 13 |
Condition is covered by further condition |
🔶 Warning | 12 |
Mismatched query and update of collection |
🔶 Warning | 11 |
'Set' can be replaced with 'EnumSet' |
🔶 Warning | 11 |
'size() == 0' can be replaced with 'isEmpty()' |
🔶 Warning | 11 |
String concatenation as argument to 'StringBuilder.append()' call |
🔶 Warning | 8 |
Class is exposed outside of its visibility scope |
🔶 Warning | 7 |
'Map' can be replaced with 'EnumMap' |
🔶 Warning | 7 |
Octal integer |
🔶 Warning | 7 |
Suspicious collection method call |
🔶 Warning | 7 |
Vulnerable imported dependency |
🔶 Warning | 7 |
Functional expression can be folded |
🔶 Warning | 6 |
Unnecessary unary minus |
🔶 Warning | 6 |
Unstable API Usage |
🔶 Warning | 6 |
Bulk operation can be used instead of iteration |
🔶 Warning | 6 |
Catch block may ignore exception |
🔶 Warning | 5 |
Variable is assigned to itself |
🔶 Warning | 5 |
Stream API call chain can be simplified |
🔶 Warning | 5 |
Dangling Javadoc comment |
🔶 Warning | 4 |
Inner class may be 'static' |
🔶 Warning | 4 |
Integer division in floating-point context |
🔶 Warning | 4 |
Copy of existing static method body |
🔶 Warning | 4 |
Manual min/max calculation |
🔶 Warning | 4 |
AutoCloseable used without 'try'-with-resources |
🔶 Warning | 3 |
Mismatched read and write of array |
🔶 Warning | 3 |
Value passed as parameter never read |
🔶 Warning | 3 |
Method is identical to its super method |
🔶 Warning | 3 |
String concatenation in loop |
🔶 Warning | 3 |
Local variable used and declared in different 'switch' branches |
🔶 Warning | 3 |
Unnecessary 'continue' statement |
🔶 Warning | 3 |
'default' not last case in 'switch' |
🔶 Warning | 2 |
Duplicate condition |
🔶 Warning | 2 |
Call math rounding with 'int' argument |
🔶 Warning | 2 |
@NotNull/@Nullable problems |
🔶 Warning | 2 |
Redundant type cast |
🔶 Warning | 2 |
Redundant operation on empty container |
🔶 Warning | 2 |
Redundant usage of unmodifiable collection wrappers |
🔶 Warning | 2 |
Method does not call super method |
🔶 Warning | 2 |
Call to 'Arrays.asList()' with too few arguments |
🔶 Warning | 1 |
Caught exception is immediately rethrown |
🔶 Warning | 1 |
Redundant 'Collection.addAll()' call |
🔶 Warning | 1 |
'static' method declared 'final' |
🔶 Warning | 1 |
Call to 'toString()' on array |
🔶 Warning | 1 |
Infinite recursion |
🔶 Warning | 1 |
Method name same as class name |
🔶 Warning | 1 |
'protected' member in 'final' class |
🔶 Warning | 1 |
String comparison using '==', instead of 'equals()' |
🔶 Warning | 1 |
'String.equals()' can be replaced with 'String.isEmpty()' |
🔶 Warning | 1 |
Suspicious variable/parameter name combination |
🔶 Warning | 1 |
Minimum 'switch' branches |
🔶 Warning | 1 |
Unused import |
🔶 Warning | 1 |
Unary plus |
🔶 Warning | 1 |
Constant values |
◽️ Notice | 1351 |
Commented out code |
◽️ Notice | 1007 |
Duplicated code fragment |
◽️ Notice | 684 |
Duplicate branches in 'switch' |
◽️ Notice | 81 |
'if' statement with identical branches or common parts |
◽️ Notice | 9 |
Method can be extracted |
◽️ Notice | 7 |
Multiple occurrences of the same expression |
◽️ Notice | 4 |
Non-strict inequality '>=' or '<=' can be replaced with '==' |
◽️ Notice | 1 |
☁️ View the detailed Qodana report
[!WARNING]
Rate limit exceeded
@strubium has exceeded the limit for the number of commits or files that can be reviewed per hour. Please wait 11 minutes and 51 seconds before requesting another review.
⌛ How to resolve this issue?
After the wait time has elapsed, a review can be triggered using the `@coderabbitai review` command as a PR comment. Alternatively, push new commits to this PR. We recommend that you space out your commits to avoid hitting the rate limit.🚦 How do rate limits work?
CodeRabbit enforces hourly rate limits for each developer per organization. Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout. Please see our [FAQ](https://coderabbit.ai/docs/faq) for further information.📥 Commits
Reviewing files that changed from the base of the PR and between 4c1da2ab9573e3958f72c54efcd0c57b72593132 and 850b4a658ceac54e9b2d7b46f64e82bbbf4ac22c.
Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media?
20860 new problems were found
Inspection name | Severity | Problems |
---|---|---|
Unchecked warning |
🔶 Warning | 10585 |
Unnecessary 'this' qualifier |
🔶 Warning | 2515 |
Deprecated API usage |
🔶 Warning | 1493 |
Auto-boxing |
🔶 Warning | 731 |
Lombok @Getter may be used |
🔶 Warning | 386 |
Statement with empty body |
🔶 Warning | 361 |
Field can be local |
🔶 Warning | 313 |
Lombok @Setter may be used |
🔶 Warning | 140 |
Unused assignment |
🔶 Warning | 134 |
Nullability and data flow problems |
🔶 Warning | 127 |
Auto-unboxing |
🔶 Warning | 126 |
Non-constant field with upper-case name |
🔶 Warning | 114 |
Redundant local variable |
🔶 Warning | 103 |
Javadoc declaration problems |
🔶 Warning | 100 |
Questionable name |
🔶 Warning | 77 |
Constant values |
🔶 Warning | 62 |
Call to 'printStackTrace()' |
🔶 Warning | 36 |
Declaration has problems in Javadoc references |
🔶 Warning | 27 |
Possibly lossy implicit cast in compound assignment |
🔶 Warning | 27 |
Result of method call ignored |
🔶 Warning | 18 |
Deprecated member is still used |
🔶 Warning | 14 |
Dynamic regular expression can be replaced by compiled 'Pattern' |
🔶 Warning | 13 |
Link specified as plain text |
🔶 Warning | 13 |
Condition is covered by further condition |
🔶 Warning | 12 |
Mismatched query and update of collection |
🔶 Warning | 11 |
'Set' can be replaced with 'EnumSet' |
🔶 Warning | 11 |
'size() == 0' can be replaced with 'isEmpty()' |
🔶 Warning | 11 |
String concatenation as argument to 'StringBuilder.append()' call |
🔶 Warning | 8 |
Class is exposed outside of its visibility scope |
🔶 Warning | 7 |
'Map' can be replaced with 'EnumMap' |
🔶 Warning | 7 |
Octal integer |
🔶 Warning | 7 |
Suspicious collection method call |
🔶 Warning | 7 |
Vulnerable imported dependency |
🔶 Warning | 7 |
Functional expression can be folded |
🔶 Warning | 6 |
Unused import |
🔶 Warning | 6 |
Unnecessary unary minus |
🔶 Warning | 6 |
Unstable API Usage |
🔶 Warning | 6 |
Bulk operation can be used instead of iteration |
🔶 Warning | 6 |
Catch block may ignore exception |
🔶 Warning | 5 |
Variable is assigned to itself |
🔶 Warning | 5 |
Stream API call chain can be simplified |
🔶 Warning | 5 |
Dangling Javadoc comment |
🔶 Warning | 4 |
Inner class may be 'static' |
🔶 Warning | 4 |
Integer division in floating-point context |
🔶 Warning | 4 |
Copy of existing static method body |
🔶 Warning | 4 |
Manual min/max calculation |
🔶 Warning | 4 |
AutoCloseable used without 'try'-with-resources |
🔶 Warning | 3 |
Mismatched read and write of array |
🔶 Warning | 3 |
Value passed as parameter never read |
🔶 Warning | 3 |
Method is identical to its super method |
🔶 Warning | 3 |
String concatenation in loop |
🔶 Warning | 3 |
Local variable used and declared in different 'switch' branches |
🔶 Warning | 3 |
Unnecessary 'continue' statement |
🔶 Warning | 3 |
'default' not last case in 'switch' |
🔶 Warning | 2 |
Duplicate condition |
🔶 Warning | 2 |
Call math rounding with 'int' argument |
🔶 Warning | 2 |
@NotNull/@Nullable problems |
🔶 Warning | 2 |
Redundant type cast |
🔶 Warning | 2 |
Redundant operation on empty container |
🔶 Warning | 2 |
Redundant usage of unmodifiable collection wrappers |
🔶 Warning | 2 |
Method does not call super method |
🔶 Warning | 2 |
Call to 'Arrays.asList()' with too few arguments |
🔶 Warning | 1 |
Caught exception is immediately rethrown |
🔶 Warning | 1 |
Redundant 'Collection.addAll()' call |
🔶 Warning | 1 |
'static' method declared 'final' |
🔶 Warning | 1 |
Call to 'toString()' on array |
🔶 Warning | 1 |
Infinite recursion |
🔶 Warning | 1 |
Method name same as class name |
🔶 Warning | 1 |
'protected' member in 'final' class |
🔶 Warning | 1 |
String comparison using '==', instead of 'equals()' |
🔶 Warning | 1 |
'String.equals()' can be replaced with 'String.isEmpty()' |
🔶 Warning | 1 |
Suspicious variable/parameter name combination |
🔶 Warning | 1 |
Minimum 'switch' branches |
🔶 Warning | 1 |
Unary plus |
🔶 Warning | 1 |
Constant values |
◽️ Notice | 1351 |
Commented out code |
◽️ Notice | 1005 |
Duplicated code fragment |
◽️ Notice | 684 |
Duplicate branches in 'switch' |
◽️ Notice | 81 |
'if' statement with identical branches or common parts |
◽️ Notice | 9 |
Method can be extracted |
◽️ Notice | 7 |
Multiple occurrences of the same expression |
◽️ Notice | 4 |
Non-strict inequality '>=' or '<=' can be replaced with '==' |
◽️ Notice | 1 |
☁️ View the detailed Qodana report
I've decided to rename WorldGeneratorEventHandler to ModernWorldGenerator, because it isn't a event handler. I've also made an EquipmentFactory interface, it is like VehicleFactory and TileEntityFactory
This PR also lowers the total number of Qodana problems from 21,962 to 20,866
📝 Description
Cleanup the various things that annoy me in weaponlib
🎯 Goals
❌ Non Goals
🚦 Testing
👍
⏮️ Backwards Compatibility
1.12.2
📚 Related Issues & Documents
N/A
📖 Added to documentation?
😄 [optional] What gif best describes this PR or how it makes you feel?