Skip to content
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

GitHub actions fix: r-cmd-check #316

Merged
merged 92 commits into from
Oct 2, 2024
Merged

GitHub actions fix: r-cmd-check #316

merged 92 commits into from
Oct 2, 2024

Conversation

evaham1
Copy link
Collaborator

@evaham1 evaham1 commented Oct 2, 2024

Issue:

Github actions have been failing on scheduled weekly triggers and everytime a branch is pulled or PRs made for the last few months.

Changes to github actions:

Refactored the code in github actions to ensure tests run properly across macOS, windows and linux github runners:

  • Uncommented the windows and macOS matrix configurations so tests run on all three operating systems
  • Install system dependencies step changed because r-hub/sysreqs doesn’t work anymore:
    • The GitHub repo for sysreqs was archived on 15th April 2024 (https://github.com/r-hub/sysreqs), plus the server which sysreqs needs to access isn't avaliable (sysreqs.r-hub.io). This caused an error when sysreqs was triggered in the GitHub action SSL peer certificate or SSH remote key was not OK
  • Installing things without using sysreqs:
    • First used GitHub action to install system and package dependencies r-lib/actions/setup-r-dependencies@v2
    • Then there were still some additional dependences missing so:
      • Install xquartz and gcc for macOS (NB also had to do this locally when working on a mac)
      • Install pandoc and qpdf for linux
  • R CMD check: changed rmcdcheck to devtools::check() because the former was failing on windows runner
    • Basically on windows the issue seemed to be during vignette building when parallelisation was used workers couldn’t access mixOmics functions. This was probably due to fact that windows (unlike Mac and linux) can’t do FORK clusters so workers do not share memory/workspaces, so somehow not all the functions can be accessed. This was fixed by running devtools::install() and then devtools::check, so for this reason we have swapped from rmdcheck to devtools to perform the check. Check should still be performed in the same way.
    • Params have been kept the same for the normal r-cmd-check:
      • rcmdcheck::rcmdcheck(args = c("--no-manual"), error_on = "warning", check_dir = "check")
      • devtools::check(args = c("--no-manual"), error_on = "warning", check_dir = "check")
    • Params have been kept the same for the cran r-cmd-check check:
      • rcmdcheck::rcmdcheck(args = c("--no-manual", "--as-cran", "--ignore-vignettes", "--run-dontrun"), error_on = "never", check_dir = "check/asCRAN", build_args = c("--no-build-vignettes"))
      • options(devtools.check.dir = "check/asCRAN", devtools.check.warning = "never") devtools::check(args = c("--no-manual", "--as-cran", "--ignore-vignettes", "--run-dontrun"), build_args = c("--no-build-vignettes"))
  • Commented out notify slack because it didn’t work

Additional changes

As well as the github changes, changes to update dependencies to latest R version and new tensor methods were performed by Brendan Lu see:
#313
#314
#315

 - updated R to 4.4.1
 - updated renv version
 - updated all dependencies in renv.lock to latest versions and updated
   renv.lock
 - commit updated configuration files in renv/ folder
 - added Saritha's algorithm alongside a BiocParallel implementation
   which shows reasonable use-cases for certain input sizes
 - delete old dtt based implementation
 - updat dep's with gsignal and remove dtt
 - move old validated function to testing module for later comparison
 - TODO: write some sensible tests in the testing file....
LABWORK - 7/08/2024
brendanlu and others added 24 commits September 27, 2024 00:26
need to worry about writing better tensor docs in the future...
finnicky - allow specification of multiple observations of categorical
label across time points, with potentially new classes introduced that
were not present in previous time points
Devtools::check() working on Windows! (+ add / fix some tensor stuff)
need to really really fix these later
Write some rough placeholder docstrings
@evaham1 evaham1 added the refactorisation For improvements to the package which don't change functionality, just improve backend structure label Oct 2, 2024
@evaham1 evaham1 self-assigned this Oct 2, 2024
@evaham1 evaham1 merged commit 01c2576 into master Oct 2, 2024
10 checks passed
@evaham1 evaham1 deleted the github-actions-fix branch October 20, 2024 22:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
refactorisation For improvements to the package which don't change functionality, just improve backend structure
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants