CLI: an empty numeric flag value is read as 0
I maintainer di solito rispondono entro 1 giorno
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 2/5
- Tempo stimato
- 1-3 ore
- Idoneità per principianti
- 83/100
- Tipo di issue
- Bug
- Chiarezza
- Specificata chiaramente
- Stato di attività
- Attiva
- Stack tecnologico
- node.js, typescript
- Ambito
- cli
Direzione di ricerca
Inizia da parseFlagValue in src/cli/parser/args.ts, dove l’issue indica Number(value) e il controllo dei numeri finiti come causa. Confronta la gestione degli input vuoti con il comportamento esistente per i valori mancanti e con booleanOrString. Il lavoro è completato quando i valori numerici vuoti delle flag vengono rifiutati con il messaggio previsto che indica che è richiesto un valore, mentre i valori numerici validi continuano a essere analizzati correttamente.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
What happens
An int or number flag given an empty or blank value is accepted as 0. For flags with a minimum of 0, the command runs with no error:
agent-device test ./suite --retries= # runs with retries 0
agent-device test ./suite --retries "" # same
RETRIES= ; agent-device test ./suite --retries="$RETRIES"
The same applies to --hold-ms, --delay-ms, --pause-ms, --interval-ms, --duration-ms, --jitter-px, and --settle-quiet. For flags with a minimum of 1 or more, such as --count=, the error is Invalid count: with an empty value, which does not name the cause.
Expected
The parser refuses the flag with Flag --retries requires a value., as it already does for a missing value and for an empty booleanOrString inline value.
Cause
parseFlagValue in src/cli/parser/args.ts converts the value with Number(value) and checks only Number.isFinite. Number('') and Number(' ') are 0.
Environment
main at 6e8c2a0, Node 22.22.0, Linux.
- Lingua principale
- TypeScript
- Stelle
- 5k
- Fork
- 334
- Merge medio
- 12h 2m
- PR unite (30g)
- 706
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 callstack/agent-device
-
macOS helper audio-probe always reports -90 dBFS: AVAudioPCMBuffer frameLength set after the copyApertabug ready-for-agent
Difficoltà 2/5 1-3 ore Idoneità per principianti 88/100
callstack/agent-device#3771 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
callstack/agent-device#1869 ·
I maintainer di solito rispondono entro 1 giorno
-
refactor(host): explicit host for configuration reads and one entered runtime storeForse già presa Una pull request collegata a questa issue è aperta o già unita. Apertaready-for-agent refactor
Difficoltà 5/5 Più di una settimana Idoneità per principianti 25/100
callstack/agent-device#3794 ·
I maintainer di solito rispondono entro 1 giorno
-
check:affected: a changed test file must run the test-file size ratchetForse già presa Una pull request collegata a questa issue è aperta o già unita. Apertabug in-progress ready-for-agent
Difficoltà 3/5 1-2 giorni Idoneità per principianti 72/100
callstack/agent-device#3787 ·
I maintainer di solito rispondono entro 1 giorno
-
Daemon startup: wait for a live daemon instead of a fixed 15 s deadline on slow or overloaded hostsForse già presa @thymikee l’ha presa 1 giorno fa. Apertaneeds-triage
Difficoltà 5/5 Più di una settimana Idoneità per principianti 35/100
callstack/agent-device#3782 ·
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di callstack/agent-device
Issue simili
-
freshness freshness:observed-only
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
thoroc/context-radar#280 ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 66/100
-
documentation story
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 74/100
I maintainer di solito rispondono entro 1 giorno
-
Billing: computeBundleEconomicsFrom treats a NULL component cost as 0, inflating bundle marginApertabug category:billing priority:p3 track:fast
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
LanternOps/breeze#9223 ·
I maintainer di solito rispondono entro 1 giorno