Hacktoberfest 2026 : les issues que les mainteneurs ont marquées pour octobre, ouvertes et accessibles aux débutants. Parcourir les issues Hacktoberfest

Linebreaks in generics

Ouverte
#526 13 commentaires 1 réaction 0 personnes assignées Voir sur GitHub

Les mainteneurs répondent en général sous 2 jours

Personne n'a encore pris cette issue.

Évaluation

Difficulté
3/5
Temps estimé
1-2 jours
Accessibilité débutants
45/100
Type d'issue
Bug
Clarté
Clairement spécifiée
Activité
À l'abandon
Stack technique
java
Domaine
tooling

Piste de recherche

Commencez par reproduire l’entrée Java fournie avec le formatter et comparez sa sortie au comportement attendu. Suivez le chemin de formatage des paramètres de type génériques des classes et des méthodes, puis ajoutez un test de régression pour les exemples ; le travail est terminé lorsque les listes génériques restent sur une seule ligne, tandis que le retour à la ligne existant des arguments reste inchangé.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Description

In testing an upgrade to 1.6.1, we're sometimes seeing line breaks introduced into generics. Seems like this is probably a result of #512. I can see this being useful in pathological cases with extremely long generic type lists, but the issue is that we run prettier with a pretty aggressive line length limit, so we end up seeing split generics even in relatively straight-forward code samples. And it's pretty jarring when you first see it, because as far as I know, splitting generics like this isn't an idiomatic way to format Java (at least I haven't seen it in the wild before).

I tested the prettier-java upgrade on ~1,500 of our internal GitHub repos, and it definitely seemed like, in most cases, this generic splitting was hurting the code readability more than it helped. But curious to get your thoughts on how attached you are to this feature.

Prettier-Java 1.6.1

# Options (if any):

Input:

public abstract class GenericWblGeneratorWithLongName<OBJECT_TYPE, RECORD_TYPE> {

  public static <RECORD, OFFSET> PagedResult<RECORD, OFFSET> appendCustomOffsets(
    Arg arg1,
    Arg arg2
  ) {
    // implementation
  }
}

Output:

public abstract class GenericWblGeneratorWithLongName<
  OBJECT_TYPE, RECORD_TYPE
> {

  public static <
    RECORD, OFFSET
  > PagedResult<RECORD, OFFSET> appendCustomOffsets(Arg arg1, Arg arg2) {
    // implementation
  }
}

Expected behavior:

public abstract class GenericWblGeneratorWithLongName<OBJECT_TYPE, RECORD_TYPE> {

  public static <RECORD, OFFSET> PagedResult<RECORD, OFFSET> appendCustomOffsets(
    Arg arg1,
    Arg arg2
  ) {
    // implementation
  }
}
Langage dominant
Java
Étoiles
1.2k
Forks
122
Merge moyen
2 j 10 h
PR mergées (30 j)
35

Préparer son environnement

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Autres issues de jhipster/prettier-java

Toutes les issues de jhipster/prettier-java

Issues similaires

Plus d'issues Java

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.