-
Notifications
You must be signed in to change notification settings - Fork 8
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Review of scripts and env. variables provided by members of CRAN #17
Comments
Why ? - Received link to CRAN check scripts - Need an exploration and tests on different flavours What? - Scripts and env. variables for package incoming checks by Kurt - Scripts and env. variables for CRAN regular checks of all packages issue issue #17
I added what I could in {checkhelper} for tests Experimental: Check as CRAN with CRAN global variablesUse the exploration of CRAN scripts by the RConsortium to check a package as CRAN does it with their env. variables. See #17 for more details. install.packages('checkhelper', repos = 'https://thinkr-open.r-universe.dev')
check_dir <- tempfile("example")
# Check the current directory
check_as_cran(check_dir = check_dir)
# Open directory with all outputs
utils::browseURL(check_dir) |
Thanks @statnmap! Would you mind tweaking your links to use https://github.com/r-devel/r-dev-web? That's a bit easier to navigate interactively. |
I started putting together a brief big picture overview at https://docs.google.com/document/d/1H41Jjuj6T7o7zdhe4mh2rPyIi76YkpnY4Jd48tBBy_Q/edit?usp=sharing |
Also, I was wondering. |
As already mention I don't find clear when are the regular checks run: I know the incoming tests are not performed all at the same time: windows checks are done later after a package is already accepted to CRAN. That's why sometimes maintainers get a message accepting their package and shortly after a notice to update their package to keep them in CRAN. However, how does this happens for packages that are already in CRAN? How/when are the test run? Presumably there is some cron jobs (or similar) that would start checks or the scripts will decide which packages to test for instance based on change in dependencies, or updates in r-devel or machine changes. Let me give an example (Perhaps it should be also added to #20 ) : lifecycle 1.0.3 has recently (2022-10-07) updated the messages output. The package is already in CRAN so presumably the reverse check dependencies were successfully. rtweet (which I maintain) uses it and has snapshots tests with the old output, so now checks should fail as I found out this via github checks. However, after 3 days none of the checks display any ERROR about said change (the webpage says it was updated today 2022-10-10 08:49:29 CEST). Looking at the individual check pages of rtweet, at the moment of posting this says:
It is not clear to me when test were started for r-release, r-oldrel and r-patched version, and even with r-devel there are checks that haven't been run in a couple of days. |
@llrs snapshot tests aren't run on CRAN |
Context
In August 2022, we received some links pointing to resources run by the CRAN team to (1) check incoming tar.gz packages, (2) regularly check all packages on CRAN.
The answers are there: https://github.com/RConsortium/r-repositories-wg/blob/main/Documents/Proposal%20to%20CRAN.md
In this issue, we can discuss the test of the scripts received:
Scripts
Let's start with the incoming check as there are the first step to pass to go to CRAN.
Then, we may explore regular checks.
Incoming checks
=> It seems that each member of CRAN runs a different set of test, depending on their OS
Scripts are:
=> It seems that they do not use the
--as-cran
tag to run the check.✔️ Tests on Ubuntu 22.04 LTS
Extra steps needed on local computer:
getIncoming
is used in the R file but does not exist on my system.=> Need to comment the
getIncoming
part (L173-182)=> Put the tar.gz of your package inside the
check_dir
, which by default is "~/tmp/CRAN"=> Run the R code
=> The output looks like what we receive by email
The full check directory is stored in the
check_dir
, which by default is "~/tmp/CRAN"✔️ it works on Ubuntu 20.04 LTS as is
Regular checks
Scripts are:
=> This builds the R-devel version
=> This builds all R base packages
Tests on Ubuntu 22.04 LTS
Define these two directories inside file "check-R-ng"
R scripts directory :
=> Need to be tested inside a Docker container
The text was updated successfully, but these errors were encountered: