unused import removal leaves extra blank line between package declaration and class Javadoc / declaration
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 3/5
- Thời gian dự kiến
- 1-2 ngày
- Mức phù hợp với người mới
- 62/100
Hướng nghiên cứu
Bắt đầu bằng cách tái hiện vấn đề với ví dụ TestBug.java và lệnh google-java-format. Truy vết lượt định dạng loại bỏ import không được sử dụng và xử lý khoảng trắng theo chiều dọc giữa khai báo package và Javadoc của lớp. Được xem là hoàn tất khi lượt định dạng đầu tiên tạo ra một dòng trống, khớp với đầu ra mong đợi, mà không cần lượt thứ hai.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
When google-java-format removes an unused import statement located between a package declaration and class Javadoc or class declaration, it does not collapse the vertical whitespace in the same formatting pass. As a result, the formatted output contains extra blank lines (two consecutive blank lines instead of one).
Running google-java-format a second time on the output collapses the extra blank line as expected. We observed this in generated code, more context here: https://github.com/googleapis/librarian/issues/7146
Environment
google-java-formatVersion: Tested on1.25.2through1.35.0(including recent builds).- Operating System: Linux / macOS / Cross-platform
Minimal Reproducible Example
Input Code (TestBug.java)
```java
package com.example;
import static io.grpc.MethodDescriptor.generateFullMethodName;
/**
* Javadoc for class.
*/
public class TestBug {
}
Command Executed
google-java-format TestBug.java
Actual Output (First Pass)
package com.example;
/** Javadoc for class. */
public class TestBug {}
(Notice the two consecutive empty lines between package com.example; and /** Javadoc for class. */.)
Expected Output
package com.example;
/** Javadoc for class. */
public class TestBug {}
Additional Context & Workaround
• Second Pass Result: Executing google-java-format a second time on the first pass output (google-java-format TestBug.java | google-java-format -) produces the correct output with a single blank line.
- Ngôn ngữ chính
- Java
- Star
- 6.2k
- Fork
- 936
- Merge trung bình
- 6 phút
- Pull request đã merge (30 ngày)
- 3
Hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của google/google-java-format
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
google/google-java-format#1094 · 1 bình luận ·
-
Complementary Teamups Đang mở
Độ khó 5/5 Hơn một tuần Mức phù hợp với người mới 15/100
google/google-java-format#1450 · 1 reaction ·
-
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 55/100
google/google-java-format#1439 · 1 bình luận ·
-
Độ khó 3/5 1-2 ngày Mức phù hợp với người mới 48/100
google/google-java-format#1428 · 3 bình luận ·
-
Eclipse
Độ khó 3/5 1-2 ngày Mức phù hợp với người mới 55/100
google/google-java-format#1417 ·
Tất cả issue của google/google-java-format
Issue tương tự
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 65/100
-
bug
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
elastic/gradle-plugins#157 ·
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
cryptomator/hub#497 ·
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
johanhaleby/occurrent#1120 ·