EllipsisMiddleTruncate exceeds requested width when only the ellipsis fits
@hugosmoreira ci sta già lavorando.
Dal 26/10/2026.
Valutazione
- Difficoltà
- 1/5
- Tempo stimato
- 1-3 ore
- Idoneità per principianti
- 88/100
Direzione di ricerca
Inizia con fire/formatting.py ed esamina EllipsisMiddleTruncate, concentrandoti sulla seconda metà di lunghezza zero e sul limite in cui non avviene alcun troncamento. Riproduci i due esempi nell’issue, poi verifica che l’output rispetti la larghezza richiesta e conservi le stringhe che vi rientrano esattamente.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
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.
- Lingua principale
- Python
- Stelle
- 28.2k
- Fork
- 1.5k
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
Preparare l'ambiente
- Nessun Dockerfile né file Docker Compose
- Nessun modello di pull request
- Leggi la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di google/python-fire
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
google/python-fire#733 ·
-
External pager resets custom SIGINT handlers to SIG_DFLForse già presa @hugosmoreira l’ha presa 14 giorni fa. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
google/python-fire#723 · 1 commento ·
-
Windows ANSI initialization uses nonexistent subprocess.STD_OUTPUT_HANDLEForse già presa @Fire162 l’ha presa 11 giorni fa. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
google/python-fire#721 · 1 commento ·
-
Setup docs still say `python setup.py install`, but `setup.py` was removedForse già presa @GreedyC l’ha presa 18 giorni fa. Aperta
Difficoltà 1/5 1-3 ore Idoneità per principianti 93/100
google/python-fire#718 · 1 commento ·
-
Calling an async command from an active event loop raises RuntimeError and leaves an unawaited coroutineForse già presa @aashish254 l’ha presa 20 giorni fa. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
google/python-fire#716 ·
Tutte le issue di google/python-fire
Issue simili
-
`destroy` sans terminal répond « Aborted. » au lieu de réclamer `--yes` comme `clean` et `reset`Apertabug
Difficoltà 2/5 1-3 ore Idoneità per principianti 85/100
stephrobert/dsoxlab#354 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 77/100
jasonacox/pypowerwall#472 ·
I maintainer di solito rispondono entro 1 giorno
-
[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 failsForse già presa @vrjdev l’ha presa oggi. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
DoubleML/doubleml-for-py#455 ·
I maintainer di solito rispondono entro 1 giorno
-
[Bug]: Python mod.Box[T] annotation gets a false generic_arg edge that replaces the parameter_type one ('is' on tree-sitter nodes)Forse già presa @rohit-jsfreaky l’ha presa oggi. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 88/100
Graphify-Labs/graphify#5110 · 1 commento ·
I maintainer di solito rispondono entro 2 giorni
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
assafelovic/gpt-researcher#2277 ·
I maintainer di solito rispondono entro 10 giorni