diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/bin/ngit/sub_commands/init.rs | 23 |
1 files changed, 11 insertions, 12 deletions
diff --git a/src/bin/ngit/sub_commands/init.rs b/src/bin/ngit/sub_commands/init.rs index 3fa67ba..ab14cb9 100644 --- a/src/bin/ngit/sub_commands/init.rs +++ b/src/bin/ngit/sub_commands/init.rs | |||
| @@ -308,7 +308,7 @@ fn resolve_grasp_servers( | |||
| 308 | return Ok(args.grasp_server.clone()); | 308 | return Ok(args.grasp_server.clone()); |
| 309 | } | 309 | } |
| 310 | 310 | ||
| 311 | let has_both_relays_and_clone_url = !args.relays.is_empty() && !args.clone.is_empty(); | 311 | let has_both_relays_and_clone_url = !args.relay.is_empty() && !args.clone.is_empty(); |
| 312 | if has_both_relays_and_clone_url { | 312 | if has_both_relays_and_clone_url { |
| 313 | return Ok(vec![]); | 313 | return Ok(vec![]); |
| 314 | } | 314 | } |
| @@ -320,7 +320,7 @@ fn resolve_grasp_servers( | |||
| 320 | if !args.clone.is_empty() { | 320 | if !args.clone.is_empty() { |
| 321 | return Ok(detect_existing_grasp_servers( | 321 | return Ok(detect_existing_grasp_servers( |
| 322 | my_ref.as_ref(), | 322 | my_ref.as_ref(), |
| 323 | &args.relays, | 323 | &args.relay, |
| 324 | &args.clone, | 324 | &args.clone, |
| 325 | identifier, | 325 | identifier, |
| 326 | )); | 326 | )); |
| @@ -329,8 +329,7 @@ fn resolve_grasp_servers( | |||
| 329 | if !interactive || cli.defaults || state.has_coordinate() || cli.force { | 329 | if !interactive || cli.defaults || state.has_coordinate() || cli.force { |
| 330 | // Prefer grasp servers from my existing announcement, then user's grasp | 330 | // Prefer grasp servers from my existing announcement, then user's grasp |
| 331 | // list, then system fallbacks | 331 | // list, then system fallbacks |
| 332 | let existing = | 332 | let existing = detect_existing_grasp_servers(my_ref.as_ref(), &args.relay, &[], identifier); |
| 333 | detect_existing_grasp_servers(my_ref.as_ref(), &args.relays, &[], identifier); | ||
| 334 | if !existing.is_empty() { | 333 | if !existing.is_empty() { |
| 335 | return Ok(existing); | 334 | return Ok(existing); |
| 336 | } | 335 | } |
| @@ -339,7 +338,7 @@ fn resolve_grasp_servers( | |||
| 339 | 338 | ||
| 340 | // Interactive prompt | 339 | // Interactive prompt |
| 341 | let mut options: Vec<String> = | 340 | let mut options: Vec<String> = |
| 342 | detect_existing_grasp_servers(my_ref.as_ref(), &args.relays, &args.clone, identifier); | 341 | detect_existing_grasp_servers(my_ref.as_ref(), &args.relay, &args.clone, identifier); |
| 343 | let mut selections: Vec<bool> = vec![true; options.len()]; | 342 | let mut selections: Vec<bool> = vec![true; options.len()]; |
| 344 | let empty = options.is_empty(); | 343 | let empty = options.is_empty(); |
| 345 | for user_grasp_option in &user_ref.grasp_list.urls { | 344 | for user_grasp_option in &user_ref.grasp_list.urls { |
| @@ -415,7 +414,7 @@ fn validate_fresh(cli: &Cli, args: &SubCommandArgs, user_has_grasp_list: bool) - | |||
| 415 | } | 414 | } |
| 416 | 415 | ||
| 417 | let has_grasp_servers = !args.grasp_server.is_empty(); | 416 | let has_grasp_servers = !args.grasp_server.is_empty(); |
| 418 | let has_both_relays_and_clone_url = !args.relays.is_empty() && !args.clone.is_empty(); | 417 | let has_both_relays_and_clone_url = !args.relay.is_empty() && !args.clone.is_empty(); |
| 419 | let missing_servers = | 418 | let missing_servers = |
| 420 | !has_grasp_servers && !user_has_grasp_list && !has_both_relays_and_clone_url; | 419 | !has_grasp_servers && !user_has_grasp_list && !has_both_relays_and_clone_url; |
| 421 | if missing_servers { | 420 | if missing_servers { |
| @@ -470,7 +469,7 @@ pub struct SubCommandArgs { | |||
| 470 | grasp_server: Vec<String>, | 469 | grasp_server: Vec<String>, |
| 471 | #[clap(long, value_parser, num_args = 1..)] | 470 | #[clap(long, value_parser, num_args = 1..)] |
| 472 | /// additional relays beyond grasp servers | 471 | /// additional relays beyond grasp servers |
| 473 | relays: Vec<String>, | 472 | relay: Vec<String>, |
| 474 | #[clap(long)] | 473 | #[clap(long)] |
| 475 | /// additional git server URLs beyond grasp servers | 474 | /// additional git server URLs beyond grasp servers |
| 476 | clone: Vec<String>, | 475 | clone: Vec<String>, |
| @@ -494,7 +493,7 @@ impl SubCommandArgs { | |||
| 494 | || self.identifier.is_some() | 493 | || self.identifier.is_some() |
| 495 | || self.description.is_some() | 494 | || self.description.is_some() |
| 496 | || !self.clone.is_empty() | 495 | || !self.clone.is_empty() |
| 497 | || !self.relays.is_empty() | 496 | || !self.relay.is_empty() |
| 498 | || !self.grasp_server.is_empty() | 497 | || !self.grasp_server.is_empty() |
| 499 | || !self.web.is_empty() | 498 | || !self.web.is_empty() |
| 500 | || !self.blossoms.is_empty() | 499 | || !self.blossoms.is_empty() |
| @@ -675,7 +674,7 @@ fn resolve_fields( | |||
| 675 | }; | 674 | }; |
| 676 | 675 | ||
| 677 | // --- Simple mode (interactive only) --- | 676 | // --- Simple mode (interactive only) --- |
| 678 | let simple_mode = if !interactive || (!args.clone.is_empty() && !args.relays.is_empty()) { | 677 | let simple_mode = if !interactive || (!args.clone.is_empty() && !args.relay.is_empty()) { |
| 679 | false // not used in non-interactive, but avoids Option | 678 | false // not used in non-interactive, but avoids Option |
| 680 | } else { | 679 | } else { |
| 681 | Interactor::default().choice( | 680 | Interactor::default().choice( |
| @@ -796,10 +795,10 @@ fn resolve_fields( | |||
| 796 | } else { | 795 | } else { |
| 797 | args.clone.clone() | 796 | args.clone.clone() |
| 798 | }; | 797 | }; |
| 799 | let mut relay_strings = if args.relays.is_empty() { | 798 | let mut relay_strings = if args.relay.is_empty() { |
| 800 | relays_default | 799 | relays_default |
| 801 | } else { | 800 | } else { |
| 802 | args.relays.clone() | 801 | args.relay.clone() |
| 803 | }; | 802 | }; |
| 804 | let mut blossom_strings = if args.blossoms.is_empty() { | 803 | let mut blossom_strings = if args.blossoms.is_empty() { |
| 805 | blossoms_default | 804 | blossoms_default |
| @@ -844,7 +843,7 @@ fn resolve_fields( | |||
| 844 | }; | 843 | }; |
| 845 | 844 | ||
| 846 | // --- Relays --- | 845 | // --- Relays --- |
| 847 | let relays: Vec<RelayUrl> = if !args.relays.is_empty() || !interactive { | 846 | let relays: Vec<RelayUrl> = if !args.relay.is_empty() || !interactive { |
| 848 | relay_strings | 847 | relay_strings |
| 849 | .iter() | 848 | .iter() |
| 850 | .filter_map(|r| parse_relay_url(r).ok()) | 849 | .filter_map(|r| parse_relay_url(r).ok()) |