Spotless code autoformatting

This commit is contained in:
AnimeGitB 2022-07-09 14:20:25 +09:30
parent f1b63c56b1
commit 425590156c
3 changed files with 77 additions and 3 deletions

View File

@ -6,7 +6,6 @@ on:
- "**.java" - "**.java"
branches: branches:
- "stable" - "stable"
- "development"
pull_request: pull_request:
paths: paths:
- "**.java" - "**.java"

48
.github/workflows/build_lint.yml vendored Normal file
View File

@ -0,0 +1,48 @@
name: "Lint and Build"
on:
workflow_dispatch: ~
push:
paths:
- "**.java"
branches:
- "development"
jobs:
Build-Server-Jar:
runs-on: ubuntu-latest
steps:
- name: Checkout LintRatchet
uses: actions/checkout@v2
with:
ref: LintRatchet
- name: Checkout branch
uses: actions/checkout@v2
- name: Setup Java
uses: actions/setup-java@v3
with:
distribution: temurin
java-version: '17'
- name: Cache gradle files
uses: actions/cache@v2
with:
path: |
~/.gradle/caches
~/.gradle/wrapper
./.gradle/loom-cache
key: ${{ runner.os }}-gradle-${{ hashFiles('*.gradle', 'gradle.properties', '**/*.accesswidener') }}
restore-keys: |
${{ runner.os }}-gradle-
- name: Run Spotless
run: ./gradlew spotlessApply
- name: Run Gradle
run: ./gradlew && ./gradlew jar
- name: Upload build
uses: actions/upload-artifact@v3
with:
name: Grasscutter
path: grasscutter-*.jar
- name: Commit any Spotless changes
uses: EndBug/add-and-commit@v9
with:
add: '-u'
default_author: github_actions
message: 'Fix whitespace'

View File

@ -34,6 +34,9 @@ plugins {
// Maven // Maven
id 'maven-publish' id 'maven-publish'
id 'signing' id 'signing'
// Spotless formatter
id "com.diffplug.spotless" version "6.8.0"
} }
compileJava.options.encoding = "UTF-8" compileJava.options.encoding = "UTF-8"
@ -238,6 +241,30 @@ eclipse {
} }
} }
spotless {
// optional: limit format enforcement to just the files changed by this feature branch
ratchetFrom 'LintRatchet'
format 'misc', {
// define the files to apply `misc` to
target '*.gradle', '*.md', '.gitignore'
// define the steps to apply to those files
trimTrailingWhitespace()
indentWithSpaces() // or spaces. Takes an integer argument if you don't like 4
endWithNewline()
}
java {
// don't need to set target, it is inferred from java
// define the steps to apply to those files
trimTrailingWhitespace()
indentWithSpaces() // or spaces. Takes an integer argument if you don't like 4
endWithNewline()
replaceRegex('Force one space between if/etc. and ( or {', '(?<=\\b(?:if|for|while|switch|try|else|catch|finally|synchronized)) *(?=[\\(\\{])', ' ')
replaceRegex('Force one space between ) and {', '\\) *\\{(?!\\})', ') {')
}
}
signing { signing {
if(!version.endsWith('-dev')) { if(!version.endsWith('-dev')) {
sign publishing.publications.mavenJava sign publishing.publications.mavenJava