cloudfoundry / cloudfoundry/cf-java-client

Which version of "googleJavaFormat" to use?

Offen
#1,316 1 Kommentar 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

Vorherrschende Sprache
Java
Sterne
334
Forks
319
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Beschreibung

Currently we are using spotless-maven-plugin:2.44.4 together with googleJavaFormat 1.19.1 to format the java sources. This does not work in JDK8 but all later versions.
With JDK25, spotless-maven-plugin:3.0.0 and googleJavaFormat 1.27.0 are the minimal versions. Older versions will simply fail when ./mvnw spotless:check is executed.
This version does require JDK17 or higher.
I see three options to continue:
a) Stick with 2.44.4 and 1.19.1 and do not run spotless in JDK25 and later.
b) Upgrade to 3.00 and 1.27.0 and do not run spotless in JDK16 and earlier.
c) Choose the spotless version depending on the JDK version.

a) Is least effort for existing developers, but makes onboarding for new contributors more complicated.
b) Is least effort for new developers, might be a problem if someone is required to use a JDK before 17.
c) At the moment, the differences in the formatters (mostly indenting in comments) have no impact on existing code. That might change with added documentation in the future, resulting in formatters changing back and forth.

My prefered solution is b). Are there any showstoppers?
Alternatively we could go for c) until we have see a problem and switch to b) then.

What are your thoughts?

Beitragsleitfaden

Für dieses Repository ist kein Beitragsleitfaden indexiert

Erste Schritte

  1. Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
  3. Forke das Repository und arbeite in einem Branch.
  4. Öffne einen Pull Request, der die Issue-Nummer nennt.

Rechercherichtung

Beginne mit der Überprüfung der aktuellen Einrichtung von spotless-maven-plugin und googleJavaFormat und führe anschließend ./mvnw spotless:check mit den relevanten JDK-Versionen aus. Erledigt bedeutet, eine unterstützte Versionsstrategie auszuwählen und zu dokumentieren, die Konfiguration bei Bedarf zu aktualisieren und zu bestätigen, dass die Formatierungsprüfungen für den vorgesehenen JDK-Bereich funktionieren.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
java
Bereich
build-system
Issue-Typ
Refactoring
Schwierigkeit
5/5
Geschätzter Aufwand
Über eine Woche
Aktivitätsstatus
Veraltet
Klarheit
Muss geklärt werden
Anfängerfreundlichkeit
25/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.