I just submitted usethis v3.0.0 to CRAN and test failures in f1dataR showed up in their reverse dependencies checks (although not in mine).
I don't think this package needs to list usethis in DESCRIPTION, since I think usethis is only used below data-raw/, i.e. a user never needs usethis installed to use f1dataR. Even a developer only needs it when updating the data in the package. I just thought I would point this out, since false reverse dependencies just increase the chance of failing CRAN's submission checks.
Below I show the check failure for f1dataR. It looks like the tests try to obtain data from the internet and then test against it. I would avoid running "live internet" tests on CRAN, because it's just too risky.
Package: f1dataR
Check: tests
New result: ERROR
Running ‘testthat.R’ [0m/12m]
Running the tests in ‘tests/testthat.R’ failed.
Complete output:
> # This file is part of the standard setup for testthat.
> # It is recommended that you do not modify it.
> #
> # Where should you do additional test configuration?
> # Learn more about the roles of various files in:
> # * https://r-pkgs.org/tests.html
> # * https://testthat.r-lib.org/reference/test_package.html#special-files
>
> library(testthat)
> library(f1dataR)
Loading required package: reticulate
>
> test_check("f1dataR")
Waiting 5s for retry backoff =====>-------------------------
Waiting 5s for retry backoff ==================>------------
Waiting 5s for retry backoff ==============================>
Waiting 5s for retry backoff =====>-------------------------
Waiting 5s for retry backoff =======================>-------
Waiting 5s for retry backoff ==============================>
Waiting 5s for retry backoff =====>-------------------------
Waiting 5s for retry backoff =======>-----------------------
Waiting 5s for retry backoff =========================>-----
Waiting 5s for retry backoff ==============================>
Waiting 5s for retry backoff =====>-------------------------
Waiting 5s for retry backoff =========>---------------------
Waiting 5s for retry backoff ===========================>---
Waiting 5s for retry backoff ==============================>
! Failure at Ergast with https:// connection. Retrying as http://.
Waiting 5s for retry backoff =====>-------------------------
Waiting 5s for retry backoff ==========>--------------------
Waiting 5s for retry backoff ============================>--
Waiting 5s for retry backoff =============================>-
Waiting 5s for retry backoff ======>------------------------
Waiting 5s for retry backoff ======================>--------
Waiting 5s for retry backoff ==============================>
Waiting 5s for retry backoff =====>-------------------------
Waiting 5s for retry backoff ======>------------------------
Waiting 5s for retry backoff ========================>------
Waiting 5s for retry backoff ==============================>
Waiting 5s for retry backoff =====>-------------------------
Waiting 5s for retry backoff ==========>--------------------
Waiting 5s for retry backoff ============================>--
Waiting 5s for retry backoff =============================>-
Waiting 5s for retry backoff =====>-------------------------
Waiting 5s for retry backoff ===============>---------------
Waiting 5s for retry backoff ==============================>
! Failure at Ergast with https:// connection. Retrying as http://.
Waiting 5s for retry backoff =====>-------------------------
Waiting 5s for retry backoff =============>-----------------
Waiting 5s for retry backoff ==============================>
Waiting 5s for retry backoff =====>-------------------------
Waiting 5s for retry backoff ============>------------------
Waiting 5s for retry backoff ==============================>
Waiting 5s for retry backoff =====>-------------------------
Waiting 5s for retry backoff ===============>---------------
Waiting 5s for retry backoff ==============================>
Waiting 5s for retry backoff =====>-------------------------
Waiting 5s for retry backoff ===================>-----------
Waiting 5s for retry backoff ==============================>
x Error getting Ergast data, http status code 503.
Service Unavailable
[ FAIL 9 | WARN 2 | SKIP 21 | PASS 41 ]
══ Skipped tests (21) ══════════════════════════════════════════════════════════
• On CRAN (10): 'test-load_circuits.R:10:3', 'test-load_constructors.R:10:3',
'test-load_drivers.R:9:3', 'test-load_laps.R:10:3',
'test-load_pitstops.R:10:3', 'test-load_quali.R:10:3',
'test-load_results.R:10:3', 'test-load_schedule.R:10:3',
'test-load_sprint.R:9:3', 'test-load_standings.R:9:3'
• fastf1 not available for testing (11): 'test-load_circuit_details.R:3:3',
'test-load_circuit_details.R:52:3', 'test-load_driver_telemetry.R:3:3',
'test-load_driver_telemetry.R:66:3', 'test-load_race_session.R:3:3',
'test-load_race_session.R:69:3', 'test-load_race_session.R:92:3',
'test-load_session_laps.R:3:3', 'test-load_session_laps.R:52:3',
'test-plot_fastest.R:3:3', 'test-plot_fastest.R:74:3'
══ Failed tests ════════════════════════════════════════════════════════════════
── Failure ('test-clear_f1_cache.R:27:3'): load_ciruits (off cache) works ──────
nrow(ciruits_2021) (`actual`) not equal to 21 (`expected`).
`actual` is NULL
`expected` is a double vector (21)
── Failure ('test-clear_f1_cache.R:28:3'): load_ciruits (off cache) works ──────
ciruits_2021$circuit_id[3] (`actual`) not equal to "baku" (`expected`).
`actual` is NULL
`expected` is a character vector ('baku')
── Failure ('test-clear_f1_cache.R:29:3'): load_ciruits (off cache) works ──────
ciruits_2021$locality[1] (`actual`) not equal to "Austin" (`expected`).
`actual` is NULL
`expected` is a character vector ('Austin')
── Failure ('test-clear_f1_cache.R:41:3'): load_ciruits (memory cache) works ───
nrow(ciruits_2021) (`actual`) not equal to 21 (`expected`).
`actual` is NULL
`expected` is a double vector (21)
── Failure ('test-clear_f1_cache.R:42:3'): load_ciruits (memory cache) works ───
ciruits_2021$circuit_id[3] (`actual`) not equal to "baku" (`expected`).
`actual` is NULL
`expected` is a character vector ('baku')
── Failure ('test-clear_f1_cache.R:43:3'): load_ciruits (memory cache) works ───
ciruits_2021$locality[1] (`actual`) not equal to "Austin" (`expected`).
`actual` is NULL
`expected` is a character vector ('Austin')
── Failure ('test-clear_f1_cache.R:60:3'): load_ciruits (filesystem cache) works ──
nrow(ciruits_2021) (`actual`) not equal to 21 (`expected`).
`actual` is NULL
`expected` is a double vector (21)
── Failure ('test-clear_f1_cache.R:61:3'): load_ciruits (filesystem cache) works ──
ciruits_2021$circuit_id[3] (`actual`) not equal to "baku" (`expected`).
`actual` is NULL
`expected` is a character vector ('baku')
── Failure ('test-clear_f1_cache.R:62:3'): load_ciruits (filesystem cache) works ──
ciruits_2021$locality[1] (`actual`) not equal to "Austin" (`expected`).
`actual` is NULL
`expected` is a character vector ('Austin')
[ FAIL 9 | WARN 2 | SKIP 21 | PASS 41 ]
Error: Test failures
Execution halted
I just submitted usethis v3.0.0 to CRAN and test failures in f1dataR showed up in their reverse dependencies checks (although not in mine).
I don't think this package needs to list usethis in DESCRIPTION, since I think usethis is only used below
data-raw/
, i.e. a user never needs usethis installed to use f1dataR. Even a developer only needs it when updating the data in the package. I just thought I would point this out, since false reverse dependencies just increase the chance of failing CRAN's submission checks.Below I show the check failure for f1dataR. It looks like the tests try to obtain data from the internet and then test against it. I would avoid running "live internet" tests on CRAN, because it's just too risky.