-
-
Notifications
You must be signed in to change notification settings - Fork 1k
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
Argument with default_values conflict when inside groups #1906
Comments
@CreepySkeleton You might want to look into this. |
There is one more snippet that is giving the same issue. Might be just common bug or different. use clap::{App, Arg};
fn main() {
let result = App::new("conflict")
.arg(
Arg::with_name("opt")
.long("opt")
.default_value("default")
.group("one"),
)
.arg(
Arg::with_name("bar")
.long("bar")
.default_value("foo")
.group("one")
)
.arg(Arg::with_name("flag").long("flag").conflicts_with("one"))
.get_matches_from(vec!["myprog", "--flag"]);
eprintln!("{:#?}", result);
} resulted in
Debug Output
|
I know what the problem is but fixing it would require changes in the way how the matches stored. Actually, I've been looking into many bugs here, and fixing them would require changes in In short, arguments, global arguments, and groups must be stored and processed separately. |
I think we would need to do it like that anyway to fix a few more global args bugs. |
Make sure you completed the following tasks
Code
Version
With
master
branch.Actual Behavior Summary
Expected Behavior Summary
Should work.
Additional context
Related to #1605 which was recently fixed.
Debug output
Compile clap with
debug
feature:The output may be very long, so feel free to link to a gist or attach a text file
Debug Output
The text was updated successfully, but these errors were encountered: