Skip to content

Commit 55cdb12

Browse files
authored
Merge pull request #23 from conbench/sam/add-retries
Add retries to all API calls
2 parents 3afd01b + 8c6ab59 commit 55cdb12

7 files changed

+56
-1
lines changed

DESCRIPTION

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
Package: conbenchcoms
22
Title: An API wrapper for conbench communications
3-
Version: 0.0.9
3+
Version: 0.0.10
44
Authors@R: c(
55
person("Jonathan", "Keane", , "[email protected]", role = c("aut", "ctb"),
66
comment = c(ORCID = "0000-0001-7087-9776")),

NAMESPACE

+1
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ export(benchmark_results)
44
export(benchmarks)
55
export(compare_results)
66
export(compare_runs)
7+
export(conbench_info)
78
export(conbench_perform)
89
export(conbench_request)
910
export(hardware)

NEWS.md

+3
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,6 @@
1+
# combenchcoms 0.0.10
2+
* Add httr2's baked in retry strategy to all api calls
3+
14
# conbenchcoms 0.0.9
25
* Remove `compare` function
36
* Add `compare_results` function (similar to old `compare` but only works for comparing benchmark results)

R/conbench_info.R

+16
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
#' Get a list of conbench info
2+
#'
3+
#' @return the response
4+
#' @export
5+
6+
conbench_info <- function() {
7+
req <- req_url_path_append(conbench_request(), "ping")
8+
9+
resp <- conbench_perform(req)
10+
11+
dat <- resp_body_json(resp, simplifyVector = TRUE, flatten = TRUE)
12+
13+
dat[["date"]] <- NULL
14+
15+
dat
16+
}

R/session.R

+2
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ conbench_perform <- function(data, ...) {
1616
resp <- data |>
1717
req_error(is_error = function(resp) FALSE) |>
1818
req_headers(cookie = .conbench_session$cookie) |>
19+
req_retry(max_tries = 5) |>
1920
req_perform(...)
2021

2122
# Authenticate if we need to
@@ -25,6 +26,7 @@ conbench_perform <- function(data, ...) {
2526
resp <- data |>
2627
req_error(body = error_body) |>
2728
req_headers(cookie = .conbench_session$cookie) |>
29+
req_retry(max_tries = 5) |>
2830
req_perform(...)
2931

3032
resp

R/zzz.R

+19
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
.onAttach <- function(libname, pkgname) {
2+
if (interactive()) {
3+
load_msg <- tryCatch(
4+
{
5+
msg <- conbench_info()
6+
packageStartupMessage(
7+
paste0(
8+
"Conbench server information\n",
9+
paste0(" - ", names(msg), ": ", msg, collapse = "\n")
10+
),
11+
"\n"
12+
)
13+
},
14+
error = function(e) {
15+
packageStartupMessage("No available conbench info")
16+
}
17+
)
18+
}
19+
}

man/conbench_info.Rd

+14
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)