Hacktoberfest 2026: die Issues, die Maintainer für den Oktober markiert haben – offen und einsteigerfreundlich. Hacktoberfest-Issues durchsuchen

CLI: an empty numeric flag value is read as 0

Geschlossen Anfängerfreundlich
#3,792 1 Kommentar 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Maintainer antworten meist innerhalb von 1 Tag

Dieses Issue hat noch niemand übernommen.

Bewertung

Schwierigkeit
2/5
Geschätzter Aufwand
1-3 Stunden
Anfängerfreundlichkeit
83/100
Issue-Typ
Bug
Klarheit
Klar beschrieben
Aktivitätsstatus
Aktiv
Tech-Stack
node.js, typescript
Bereich
cli

Rechercherichtung

Beginne mit parseFlagValue in src/cli/parser/args.ts, wo das Issue Number(value) und die Prüfung auf endliche Zahlen als Ursache nennt. Vergleiche, wie leere Eingaben im Vergleich zum bestehenden Verhalten bei fehlenden Werten und zu booleanOrString behandelt werden. Fertig ist die Änderung, wenn leere numerische Flag-Werte mit der erwarteten Meldung, dass ein Wert erforderlich ist, zurückgewiesen werden, während gültige numerische Werte weiterhin korrekt geparst werden.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Beschreibung

bug

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.

Vorherrschende Sprache
TypeScript
Sterne
5.2k
Forks
359
Ø Merge
12 Std. 54 Min.
Gemergte PRs (30 T.)
637

Entwicklungsumgebung

Erste Schritte

  1. Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
  3. Forken Sie das Repository und arbeiten Sie in einem Branch.
  4. Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.

Mehr aus callstack/agent-device

Alle Issues in callstack/agent-device

Ähnliche Issues

Weitere Issues zu TypeScript

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.