message: Remove unnecessary loop in `maybe_spurious`
  The `anyhow` library's error already does a recursive check when we use
  `Error::downcast_ref`, so there's no need to explicitly do this on the
  `chain` of errors.
diff: @@ -34,14 +34,13 @@ impl<'a> Retry<'a> {
  }
  fn maybe_spurious(err: &Error) -> bool {
  - for e in err.chain() {
  - if let Some(git_err) = e.downcast_ref::<git2::Error>() {
  + if let Some(git_err) = err.downcast_ref::<git2::Error>() {
  match git_err.class() {
  git2::ErrorClass::Net | git2::ErrorClass::Os => return true,
  _ => (),
  }
  }
  - if let Some(curl_err) = e.downcast_ref::<curl::Error>() {
  + if let Some(curl_err) = err.downcast_ref::<curl::Error>() {
  if curl_err.is_couldnt_connect()
  || curl_err.is_couldnt_resolve_proxy()
  || curl_err.is_couldnt_resolve_host()
  @@ -55,12 +54,11 @@ fn maybe_spurious(err: &Error) -> bool {
  return true;
  }
  }
  - if let Some(not_200) = e.downcast_ref::<HttpNot200>() {
  + if let Some(not_200) = err.downcast_ref::<HttpNot200>() {
  if 500 <= not_200.code && not_200.code < 600 {
  return true;
  }
  }
  - }
  false
  }
  