You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Removing unused imports leaves extra blank line after package statement, isn't idempotent #598
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 {
}
$
changed the title [-]edge case where google java formatter not Idempotence[/-][+]edge case where google java formatter is not idempotence[/+]on Apr 22, 2021
changed the title [-]edge case where google java formatter is not idempotence[/-][+]edge case where google java formatter is not idempotent[/+]on Apr 22, 2021
Thanks for finding this. We would agree that any non-idempotence is a bug. Since it at least reaches a fixed point quickly (it's like "idempotence, once removed") it might not be a high-priority fix, but we're glad to keep this open until then.
changed the title [-]edge case where google java formatter is not idempotent[/-][+]Removing unused imports leaves extra blank line after package statement, isn't idempotent[/+]on Dec 11, 2023
Activity
[-]edge case where google java formatter not Idempotence[/-][+]edge case where google java formatter is not idempotence[/+][-]edge case where google java formatter is not idempotence[/-][+]edge case where google java formatter is not idempotent[/+]kevinb9n commentedon Jun 14, 2021
Thanks for finding this. We would agree that any non-idempotence is a bug. Since it at least reaches a fixed point quickly (it's like "idempotence, once removed") it might not be a high-priority fix, but we're glad to keep this open until then.
[-]edge case where google java formatter is not idempotent[/-][+]Removing unused imports leaves extra blank line after package statement, isn't idempotent[/+]cushon commentedon Oct 29, 2026
Fixed in 633ce6b and f7eeb77, which will be included in the next release.