tomasbjerre / Violations Lib
Licence: apache-2.0
Java library for parsing report files from static code analysis.
Stars: ✭ 94
Programming Languages
java
68154 projects - #9 most used programming language
Projects that are alternatives of or similar to Violations Lib
static-code-analysis-plugin
A plugin to simplify Static Code Analysis on Gradle. Not restricted to, but specially useful, in Android projects, by making sure all analysis can access the SDK classes.
Stars: ✭ 36 (-61.7%)
Mutual labels: static-code-analysis, findbugs, checkstyle
Warnings Ng Plugin
Jenkins Warnings Plugin - Next Generation
Stars: ✭ 248 (+163.83%)
Mutual labels: static-code-analysis, checkstyle, findbugs
analysis-model
A library to read static analysis reports into a Java object model
Stars: ✭ 74 (-21.28%)
Mutual labels: eslint, static-code-analysis, checkstyle
Awesome Standard
Documenting the explosion of packages in the standard ecosystem!
Stars: ✭ 300 (+219.15%)
Mutual labels: eslint, static-code-analysis
standard-packages
List of packages that use `standard`
Stars: ✭ 32 (-65.96%)
Mutual labels: eslint, static-code-analysis
Gradle Code Quality Tools Plugin
Gradle plugin that generates ErrorProne, Findbugs, Checkstyle, PMD, CPD, Lint, Detekt & Ktlint Tasks for every subproject.
Stars: ✭ 282 (+200%)
Mutual labels: checkstyle, findbugs
JSR305CheckstylePlugin
a plugin which ensures nullness annotations on methods and constructors
Stars: ✭ 19 (-79.79%)
Mutual labels: findbugs, checkstyle
Eslint Config Standard React
ESLint Shareable Config for React/JSX support in JavaScript Standard Style
Stars: ✭ 416 (+342.55%)
Mutual labels: eslint, static-code-analysis
Eslint
Find and fix problems in your JavaScript code.
Stars: ✭ 19,665 (+20820.21%)
Mutual labels: eslint, static-code-analysis
Android Starter
[Android Architecture] Android starter based on MVP/Dagger2/RxJava2/Robolectric/Espresso/Mockito. It provides a generator to fast create a Android template project.
Stars: ✭ 522 (+455.32%)
Mutual labels: checkstyle, findbugs
Eslint Plugin Node
Additional ESLint's rules for Node.js
Stars: ✭ 740 (+687.23%)
Mutual labels: eslint, static-code-analysis
Standard
🌟 JavaScript Style Guide, with linter & automatic code fixer
Stars: ✭ 26,433 (+28020.21%)
Mutual labels: eslint, static-code-analysis
Eslint Plugin
ESLint configurations and additional rules for me
Stars: ✭ 19 (-79.79%)
Mutual labels: eslint, static-code-analysis
codeclimate-eslint
Code Climate Engine for ESLint
Stars: ✭ 86 (-8.51%)
Mutual labels: eslint, static-code-analysis
Okcheck
Incremental scan,integrate Lint、KtLint、UnitTest、Checkstyle、Findbugs、Pmd, powerful and easy to use
Stars: ✭ 285 (+203.19%)
Mutual labels: checkstyle, findbugs
Debt-Manager
A personal app to store people that owe you money or you owe money to. "Mo Money Mo Problems" 🎵 - The Notorious B.I.G. 😎
Stars: ✭ 22 (-76.6%)
Mutual labels: findbugs, checkstyle
Gradle Static Analysis Plugin
Easy setup of static analysis tools for Android and Java projects.
Stars: ✭ 398 (+323.4%)
Mutual labels: checkstyle, findbugs
Quality Checks
Gradle plugin which includes Checkstyle, FindBugs, and PMD basic configuration.
Stars: ✭ 38 (-59.57%)
Mutual labels: checkstyle, findbugs
spring-boot-java-swing-reservations
The project aims to present how to connect Spring Boot 2 and Java Swing GUI widget toolkit. All application dependencies are provided by Docker Compose. There are also static code analysis tools like FindBugs and Checkstyle.
Stars: ✭ 86 (-8.51%)
Mutual labels: findbugs, checkstyle
arcanist-linters
A collection of custom Arcanist linters
Stars: ✭ 64 (-31.91%)
Mutual labels: eslint, checkstyle
Violations Lib
This is a Java library for parsing report files like static code analysis.
Example of supported reports are available here.
A number of parsers have been implemented. Some parsers can parse output from several reporters.
Reporter | Parser | Notes |
---|---|---|
ARM-GCC | CLANG |
|
AndroidLint | ANDROIDLINT |
|
AnsibleLint | FLAKE8 |
With -p
|
Bandit | CLANG |
With bandit -r examples/ -f custom -o bandit.out --msg-template "{abspath}:{line}: {severity}: {test_id}: {msg}"
|
CLang | CLANG |
|
CPD | CPD |
|
CPPCheck | CPPCHECK |
With cppcheck test.cpp --output-file=cppcheck.xml --xml
|
CPPLint | CPPLINT |
|
CSSLint | CSSLINT |
|
Checkstyle | CHECKSTYLE |
|
CodeClimate | CODECLIMATE |
|
CodeNarc | CODENARC |
|
Detekt | CHECKSTYLE |
With --output-format xml . |
DocFX | DOCFX |
|
Doxygen | CLANG |
|
ERB | CLANG |
With erb -P -x -T '-' "${it}" | ruby -c 2>&1 >/dev/null | grep '^-' | sed -E 's/^-([a-zA-Z0-9:]+)/${filename}\1 ERROR:/p' > erbfiles.out . |
ESLint | CHECKSTYLE |
With format: 'checkstyle' . |
Findbugs | FINDBUGS |
|
Flake8 | FLAKE8 |
|
FxCop | FXCOP |
|
GCC | CLANG |
|
Gendarme | GENDARME |
|
Generic reporter | GENERIC |
Will create one single violation with all the content as message. |
GoLint | GOLINT |
|
GoVet | GOLINT |
Same format as GoLint. |
GolangCI-Lint | CHECKSTYLE |
With --out-format=checkstyle . |
GoogleErrorProne | GOOGLEERRORPRONE |
|
HadoLint | CHECKSTYLE |
With -f checkstyle
|
IAR | IAR |
With --no_wrap_diagnostics
|
Infer | PMD |
Facebook Infer. With --pmd-xml . |
JCReport | JCREPORT |
|
JSHint | JSLINT |
With --reporter=jslint or the CHECKSTYLE parser with --reporter=checkstyle
|
JUnit | JUNIT |
It only contains the failures. |
KTLint | CHECKSTYLE |
|
Klocwork | KLOCWORK |
|
KotlinGradle | KOTLINGRADLE |
Output from Kotlin Gradle Plugin. |
KotlinMaven | KOTLINMAVEN |
Output from Kotlin Maven Plugin. |
Lint | LINT |
A common XML format, used by different linters. |
MSCpp | MSCPP |
|
Mccabe | FLAKE8 |
|
MyPy | MYPY |
|
NullAway | GOOGLEERRORPRONE |
Same format as Google Error Prone. |
PCLint | PCLINT |
PC-Lint using the same output format as the Jenkins warnings plugin, details here |
PHPCS | CHECKSTYLE |
With phpcs api.php --report=checkstyle . |
PHPPMD | PMD |
With phpmd api.php xml ruleset.xml . |
PMD | PMD |
|
Pep8 | FLAKE8 |
|
PerlCritic | PERLCRITIC |
|
PiTest | PITEST |
|
ProtoLint | PROTOLINT |
|
Puppet-Lint | CLANG |
With -log-format %{fullpath}:%{line}:%{column}: %{kind}: %{message}
|
PyDocStyle | PYDOCSTYLE |
|
PyFlakes | FLAKE8 |
|
PyLint | PYLINT |
With pylint --output-format=parseable . |
ReSharper | RESHARPER |
|
RubyCop | CLANG |
With rubycop -f clang file.rb
|
SbtScalac | SBTSCALAC |
|
Scalastyle | CHECKSTYLE |
|
Simian | SIMIAN |
|
Sonar | SONAR |
With mvn sonar:sonar -Dsonar.analysis.mode=preview -Dsonar.report.export.path=sonar-report.json . Removed in 7.7, see SONAR-11670 but can be retrieved with: curl --silent 'http://sonar-server/api/issues/search?componentKeys=unique-key&resolved=false' | jq -f sonar-report-builder.jq > sonar-report.json . |
Spotbugs | FINDBUGS |
|
StyleCop | STYLECOP |
|
SwiftLint | CHECKSTYLE |
With --reporter checkstyle . |
TSLint | CHECKSTYLE |
With -t checkstyle
|
XMLLint | XMLLINT |
|
XUnit | XUNIT |
It only contains the failures. |
YAMLLint | YAMLLINT |
With -f parsable
|
ZPTLint | ZPTLINT |
Missing a format? Open an issue here!
Usage
Very easy to use with a nice builder pattern
List<Violation> violations = violationsReporterApi() //
.withPattern(".*/findbugs/.*\\.xml$") //
.inFolder(rootFolder) //
.findAll(FINDBUGS) //
.violations();
It can also export the violations to the CodeClimate format with:
List<CodeClimate> violations = violationsReporterApi() //
.withPattern(".*/findbugs/.*\\.xml$") //
.inFolder(rootFolder) //
.findAll(FINDBUGS) //
.codeClimate();
The library is used in a bunch of other projects, these are some of them.
Command line:
- Violations Command Line
- Violation Comments to GitLab Command Line
- Violation Comments to GitHub Command Line
- Violation Comments to Bitbucket Server Command Line
- Violation Comments to Bitbucket Cloud Command Line
Gradle:
- Violation Comments to GitHub Gradle Plugin.
- Violation Comments to GitLab Gradle Plugin.
- Violations Gradle Plugin.
Maven:
- Violation Comments to GitHub Maven Plugin.
- Violation Comments to GitLab Maven Plugin.
- Violations Maven Plugin.
Jenkins:
- Violation Comments to GitHub Jenkins Plugin.
- Violation Comments to GitLab Jenkins Plugin.
- Violation Comments to Bitbucket Server Jenkins Plugin.
And these supporting libraries:
Note that the project description data, including the texts, logos, images, and/or trademarks,
for each open source project belongs to its rightful owner.
If you wish to add or remove any projects, please contact us at [email protected].