Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Arguments that start with '-' not parsed correctly #264

Open
reflog opened this issue Aug 14, 2024 · 2 comments
Open

Arguments that start with '-' not parsed correctly #264

reflog opened this issue Aug 14, 2024 · 2 comments

Comments

@reflog
Copy link

reflog commented Aug 14, 2024

Hi!
Here's a small issue I came across:

var args struct {
  Param string
}

./main --param A works
./main --param="-1h" works
./main --param "-1h" causes "error: missing value for -s"

Our CLI passes hour-differences this way and this used to work for us when using Go's flags, but unfortunately doesn't work with go-arg.

I understand that this is rather an edge case, but wanted to report it anyways.

Thanks for the great library!

@davidjb
Copy link

davidjb commented Oct 21, 2024

I'm experiencing this as well when trying to supply negative numbers as arguments and seeing the same error message.

@zanvd
Copy link
Contributor

zanvd commented Dec 5, 2024

@alexflint, would it make sense to drop these checks?

if !nextIsNumeric(spec.field.Type, args[i+1]) && isFlag(args[i+1]) {
	return fmt.Errorf("missing value for %s", arg)
}

The only downside, I can think of, would be failed commands due to incorrect user input when a value is in fact forgotten.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants