Files
allwpilib/shared/java/javastyle.gradle
Tyler Veness 9ac7e286f5 [build] Upgrade Gradle plugins (#8166)
I upgraded all plugins I could see except org.ysb33r.doxygen. 2.0 made
breaking changes, and I couldn't figure out how to migrate.

Most of the changes are for suppressing new linter purification rites.
2025-08-08 23:04:02 -07:00

90 lines
2.3 KiB
Groovy

if (project.hasProperty('skipJavaFormat')) {
return;
}
apply plugin: 'checkstyle'
checkstyle {
toolVersion = "11.0.0"
configDirectory = file("${project.rootDir}/styleguide")
config = resources.text.fromFile(new File(configDirectory.get().getAsFile(), "checkstyle.xml"))
}
apply plugin: 'pmd'
pmd {
toolVersion = '7.16.0'
consoleOutput = true
reportsDir = file("$project.buildDir/reports/pmd")
ruleSetFiles = files(new File(rootDir, "styleguide/pmd-ruleset.xml"))
ruleSets = []
}
apply plugin: 'com.diffplug.spotless'
spotless {
java {
target fileTree('.') {
include '**/*.java'
exclude '**/build/**', '**/build-*/**', '**/bin/**', "src/generated/**"
}
toggleOffOn()
googleJavaFormat()
removeUnusedImports()
trimTrailingWhitespace()
endWithNewline()
}
groovyGradle {
target fileTree('.') {
include '**/*.gradle'
exclude '**/build/**', '**/build-*/**', '**/bin/**'
}
greclipse()
leadingTabsToSpaces(4)
trimTrailingWhitespace()
endWithNewline()
}
json {
target fileTree('.') {
include '**/*.json'
exclude '**/build/**', '**/build-*/**', '**/bin/**'
exclude '**/simgui-ds.json', '**/simgui-window.json', '**/simgui.json', '**/networktables.json', '**/*test.json'
}
gson()
.indentWithSpaces(2)
}
format 'xml', {
target fileTree('.') {
include '**/*.xml'
exclude '**/build/**', '**/build-*/**', '**/bin/**', '**/.idea/**', '**/.run/**'
}
eclipseWtp('xml')
trimTrailingWhitespace()
leadingTabsToSpaces(2)
endWithNewline()
}
format 'misc', {
target fileTree('.') {
include '**/*.md', '**/.gitignore'
exclude '**/build/**', '**/build-*/**', '**/bin/**'
}
trimTrailingWhitespace()
leadingTabsToSpaces(2)
endWithNewline()
}
}
apply plugin: 'com.github.spotbugs'
spotbugs {
ignoreFailures = false
effort = spotbugsEffort
excludeFilter = file("${project.rootDir}/styleguide/spotbugs-exclude.xml")
}
task javaFormat {
dependsOn(tasks.withType(Checkstyle))
dependsOn(tasks.withType(Pmd))
}
javaFormat.dependsOn 'spotlessApply'