EllipsisMiddleTruncate exceeds requested width when only the ellipsis fits
@hugosmoreira đang làm issue này rồi.
Từ ngày 26/10/2026.
Đánh giá
- Độ khó
- 1/5
- Thời gian dự kiến
- 1-3 giờ
- Mức phù hợp với người mới
- 88/100
Hướng nghiên cứu
Bắt đầu với fire/formatting.py và kiểm tra EllipsisMiddleTruncate, tập trung vào nửa thứ hai có độ dài bằng không và ranh giới không cắt ngắn. Tái hiện hai ví dụ trong issue, sau đó xác minh rằng đầu ra không vượt quá độ rộng được yêu cầu và giữ nguyên các chuỗi vừa khít.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
EllipsisMiddleTruncate returns more characters than the requested width when available_space is 3. It also modifies strings that already fit exactly within the specified width.
Steps to reproduce
from fire import formatting
print(formatting.EllipsisMiddleTruncate('abcdefghij', 3, 80))
# Actual: '...abcdefghij'
# Expected: '...'
print(formatting.EllipsisMiddleTruncate('abcd', 4, 80))
# Actual: '...d'
# Expected: 'abcd'
Cause
The expression text[-second_half_len:] returns the entire string when second_half_len is zero. The no-truncation check also uses < instead of <=.
Expected behavior
Output should respect the available width, and strings that already fit should remain unchanged.
Verification
Reproduced using the implementation from fire/formatting.py.
- Ngôn ngữ chính
- Python
- Star
- 28.2k
- Fork
- 1.5k
- Chỉ số merge pull request
- Không có pull request nào được merge trong 30 ngày
Chuẩn bị môi trường
- Không có Dockerfile hay tệp Docker Compose
- Không có mẫu pull request
- Đọc 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/python-fire
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 70/100
google/python-fire#733 ·
-
External pager resets custom SIGINT handlers to SIG_DFLCó thể đã có người làm @hugosmoreira đã nhận 14 ngày trước. Đang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 82/100
google/python-fire#723 · 1 bình luận ·
-
Windows ANSI initialization uses nonexistent subprocess.STD_OUTPUT_HANDLECó thể đã có người làm @Fire162 đã nhận 11 ngày trước. Đang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
google/python-fire#721 · 1 bình luận ·
-
Setup docs still say `python setup.py install`, but `setup.py` was removedCó thể đã có người làm @GreedyC đã nhận 18 ngày trước. Đang mở
Độ khó 1/5 1-3 giờ Mức phù hợp với người mới 93/100
google/python-fire#718 · 1 bình luận ·
-
Calling an async command from an active event loop raises RuntimeError and leaves an unawaited coroutineCó thể đã có người làm @aashish254 đã nhận 20 ngày trước. Đang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
google/python-fire#716 ·
Tất cả issue của google/python-fire
Issue tương tự
-
`destroy` sans terminal répond « Aborted. » au lieu de réclamer `--yes` comme `clean` et `reset`Đang mởbug
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 85/100
stephrobert/dsoxlab#354 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 77/100
jasonacox/pypowerwall#472 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
[Bug]: DoubleMLRDDData accepts a score_col that is no data column (as in its docstring example); the running variable then becomes a covariate and RDFlex failsCó thể đã có người làm @vrjdev đã nhận hôm nay. Đang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
DoubleML/doubleml-for-py#455 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
[Bug]: Python mod.Box[T] annotation gets a false generic_arg edge that replaces the parameter_type one ('is' on tree-sitter nodes)Có thể đã có người làm @rohit-jsfreaky đã nhận hôm nay. Đang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 88/100
Graphify-Labs/graphify#5110 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 2 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
assafelovic/gpt-researcher#2277 ·
Maintainer thường phản hồi trong vòng 10 ngày