swiftlang/swift-package-manager

[SR-7831] `ArgumentParser` parses short option and option-argument without delimiting space as a single (likely unrecognised) option

Ouverte

#4 800 ouverte le 31 mai 2018

 (6 commentaires) (0 réaction) (0 personne assignée)Swift (1 462 forks)batch import
buggood first issue

Métriques du dépôt

Stars
 (10 145 étoiles)
Métriques de merge PR
 (Métriques PR en attente)

Description

Previous ID SR-7831
Radar rdar://problem/36340481
Original Reporter @aciidb0mb3r
Type Bug
Votes 0
Component/s Package Manager
Labels Bug, StarterBug
Assignee None
Priority Medium

md5: 96d5acc7cd3ec4326fc64597be212962

Issue Description:

`ArgumentParser` parses short option and option-argument without delimiting space as a single (likely unrecognised) option.

For example, if an option is added to the parser with a short name of `-n`, `ArgumentParser` parses `-n 2` as the “n” option with “2” as its option-argument.

But it parses `-n2` as the unknown option `n2`.

Where long options are prefixed with `--`, it is common for CLI to treat `-n2` and `-n 2` identically.

This probably also implies `ArgumentParser` doesn’t handle adjoining flags (e.g. parsing `-abc` identically to `-a -b -c`) — but I haven’t tested this.

Guide contributeur