google / google/google-java-format

Removing unused imports leaves extra blank line after package statement, isn't idempotent

Abierto
#598 1 comentario 3 reacciones 0 asignados Ver en GitHub
bug
Lenguaje dominante
Java
Estrellas
6.2k
Forks
937
Merge medio
6 min
PR fusionados (30 d)
3

Descripción

I have a class that if I format it twice with google java formatter it will produce 2 different results. This is not what I would expect - I would think that you can format a file any number of times and google java formatter should always produce the exact same result. Is my assumption wrong ?

Here is an example:

original class:
```
$ cat inital_class.java
package com.sun.something;

import com.x;
import com.y;
import com.z;

public class MockedLiveServiceExecutionContext {

}
$
```

If I then format it I get this:
```
$ java -jar ./google-java-format-1.9-all-deps.jar --replace inital_class.java
$ cat inital_class.java
package com.sun.something;

public class MockedLiveServiceExecutionContext {}
$ cat inital_class.java | cksum
42955951 79
$
```

And if I format it again I get this (it's removed an extra space):
```
$ java -jar ./google-java-format-1.9-all-deps.jar --replace inital_class.java
$ cat inital_class.java
package com.sun.something;

public class MockedLiveServiceExecutionContext {}
$ cat inital_class.java | cksum
2486624596 78
$
```

Guía de contribución

Abrir la guía de contribución

Evaluación

Este issue todavía no se ha evaluado.

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.