Skip to content

Commit e31bf5d

Browse files
committed
fix the odd info '1 tries remaining'
1 parent ee85ada commit e31bf5d

File tree

4 files changed

+47
-23
lines changed

4 files changed

+47
-23
lines changed

src/cargo/util/network/retry.rs

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -108,9 +108,11 @@ impl<'a> Retry<'a> {
108108
.downcast_ref::<HttpNotSuccessful>()
109109
.map(|http_err| http_err.display_short())
110110
.unwrap_or_else(|| e.root_cause().to_string());
111+
let left_retries = self.max_retries - self.retries;
111112
let msg = format!(
112-
"spurious network error ({} tries remaining): {err_msg}",
113-
self.max_retries - self.retries,
113+
"spurious network error ({} {} remaining): {err_msg}",
114+
left_retries,
115+
if left_retries != 1 { "tries" } else { "try" }
114116
);
115117
if let Err(e) = self.gctx.shell().warn(msg) {
116118
return RetryResult::Err(e);

tests/testsuite/git_auth.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -372,7 +372,7 @@ fn net_err_suggests_fetch_with_cli() {
372372
[UPDATING] git repository `ssh://needs-proxy.invalid/git`
373373
[WARNING] spurious network error (3 tries remaining): [..] resolve [..] needs-proxy.invalid: [..] known[..]
374374
[WARNING] spurious network error (2 tries remaining): [..] resolve [..] needs-proxy.invalid: [..] known[..]
375-
[WARNING] spurious network error (1 tries remaining): [..] resolve [..] needs-proxy.invalid: [..] known[..]
375+
[WARNING] spurious network error (1 try remaining): [..] resolve [..] needs-proxy.invalid: [..] known[..]
376376
[ERROR] failed to get `foo` as a dependency of package `foo v0.0.0 ([ROOT]/foo)`
377377
378378
Caused by:

tests/testsuite/net_config.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ fn net_retry_loads_from_config() {
3535
.with_status(101)
3636
.with_stderr_data(str![[r#"
3737
...
38-
[WARNING] spurious network error (1 tries remaining): [..]
38+
[WARNING] spurious network error (1 try remaining): [..]
3939
...
4040
"#]])
4141
.run();
@@ -71,7 +71,7 @@ fn net_retry_git_outputs_warning() {
7171
.with_stderr_data(str![[r#"
7272
...
7373
[WARNING] spurious network error (2 tries remaining): [..]
74-
[WARNING] spurious network error (1 tries remaining): [..]
74+
[WARNING] spurious network error (1 try remaining): [..]
7575
...
7676
"#]])
7777
.run();

tests/testsuite/registry.rs

Lines changed: 40 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -3693,14 +3693,25 @@ fn sparse_retry_multiple() {
36933693
write!(&mut cargo_toml, "{name} = \"1.0.0\"\n").unwrap();
36943694
for retry in 0..retries {
36953695
let remain = 3 - retry;
3696-
write!(
3697-
&mut expected,
3698-
"[WARNING] spurious network error ({remain} tries remaining): \
3699-
failed to get successful HTTP response from \
3700-
`http://127.0.0.1:[..]/{ab}/{cd}/{name}` (127.0.0.1), got 500\n\
3701-
body:\n\
3702-
internal server error\n"
3703-
)
3696+
if remain != 1 {
3697+
write!(
3698+
&mut expected,
3699+
"[WARNING] spurious network error ({remain} tries remaining): \
3700+
failed to get successful HTTP response from \
3701+
`http://127.0.0.1:[..]/{ab}/{cd}/{name}` (127.0.0.1), got 500\n\
3702+
body:\n\
3703+
internal server error\n"
3704+
)
3705+
} else {
3706+
write!(
3707+
&mut expected,
3708+
"[WARNING] spurious network error ({remain} try remaining): \
3709+
failed to get successful HTTP response from \
3710+
`http://127.0.0.1:[..]/{ab}/{cd}/{name}` (127.0.0.1), got 500\n\
3711+
body:\n\
3712+
internal server error\n"
3713+
)
3714+
}
37043715
.unwrap();
37053716
}
37063717
write!(
@@ -3845,14 +3856,25 @@ fn dl_retry_multiple() {
38453856
write!(&mut cargo_toml, "{name} = \"1.0.0\"\n").unwrap();
38463857
for retry in 0..retries {
38473858
let remain = 3 - retry;
3848-
write!(
3849-
&mut expected,
3850-
"[WARNING] spurious network error ({remain} tries remaining): \
3851-
failed to get successful HTTP response from \
3852-
`http://127.0.0.1:[..]/dl/{name}/1.0.0/download` (127.0.0.1), got 500\n\
3853-
body:\n\
3854-
internal server error\n"
3855-
)
3859+
if remain != 1 {
3860+
write!(
3861+
&mut expected,
3862+
"[WARNING] spurious network error ({remain} tries remaining): \
3863+
failed to get successful HTTP response from \
3864+
`http://127.0.0.1:[..]/dl/{name}/1.0.0/download` (127.0.0.1), got 500\n\
3865+
body:\n\
3866+
internal server error\n"
3867+
)
3868+
} else {
3869+
write!(
3870+
&mut expected,
3871+
"[WARNING] spurious network error ({remain} try remaining): \
3872+
failed to get successful HTTP response from \
3873+
`http://127.0.0.1:[..]/dl/{name}/1.0.0/download` (127.0.0.1), got 500\n\
3874+
body:\n\
3875+
internal server error\n"
3876+
)
3877+
}
38563878
.unwrap();
38573879
}
38583880
write!(
@@ -4220,7 +4242,7 @@ Please slow down
42204242
[WARNING] spurious network error (2 tries remaining): failed to get successful HTTP response from `http://127.0.0.1:[..]/index/3/b/bar` (127.0.0.1), got 503
42214243
body:
42224244
Please slow down
4223-
[WARNING] spurious network error (1 tries remaining): failed to get successful HTTP response from `http://127.0.0.1:[..]/index/3/b/bar` (127.0.0.1), got 503
4245+
[WARNING] spurious network error (1 try remaining): failed to get successful HTTP response from `http://127.0.0.1:[..]/index/3/b/bar` (127.0.0.1), got 503
42244246
body:
42254247
Please slow down
42264248
[ERROR] failed to get `bar` as a dependency of package `foo v0.1.0 ([ROOT]/foo)`
@@ -4285,7 +4307,7 @@ Please slow down
42854307
[WARNING] spurious network error (2 tries remaining): failed to get successful HTTP response from `http://127.0.0.1:[..]/dl/bar/1.0.0/download` (127.0.0.1), got 503
42864308
body:
42874309
Please slow down
4288-
[WARNING] spurious network error (1 tries remaining): failed to get successful HTTP response from `http://127.0.0.1:[..]/dl/bar/1.0.0/download` (127.0.0.1), got 503
4310+
[WARNING] spurious network error (1 try remaining): failed to get successful HTTP response from `http://127.0.0.1:[..]/dl/bar/1.0.0/download` (127.0.0.1), got 503
42894311
body:
42904312
Please slow down
42914313
[ERROR] failed to download from `http://127.0.0.1:[..]/dl/bar/1.0.0/download`

0 commit comments

Comments
 (0)