diff --git a/.Rbuildignore b/.Rbuildignore index 25ec6e45..2e186c26 100644 --- a/.Rbuildignore +++ b/.Rbuildignore @@ -2,7 +2,6 @@ ^Meta$ ^doc$ ^data-raw$ -^memcheck$ ^CRAN-RELEASE$ ^src\- CONTRIBUTING diff --git a/.github/workflows/memcheck.yml b/.github/workflows/memcheck.yml index 4c1693a0..2837c209 100644 --- a/.github/workflows/memcheck.yml +++ b/.github/workflows/memcheck.yml @@ -1,7 +1,6 @@ # For help debugging build failures open an issue on the RStudio community with the 'github-actions' tag. # https://community.rstudio.com/new-topic?category=Package%20development&tags=github-actions on: - workflow_dispatch: push: branches: - main @@ -36,11 +35,8 @@ name: mem-check jobs: mem-check: runs-on: ubuntu-20.04 - # stringi requires libicui18n - apt get libicu-dev too recent, - # libicu66 deprecated in ubuntu 22.04 - # Reinstalling stringi seems not to help - name: valgrind ${{ matrix.config.test }}, ubuntu, R release + name: valgrind ${{ matrix.config.test }} strategy: fail-fast: false @@ -49,7 +45,7 @@ jobs: - {test: 'tests'} - {test: 'examples'} - {test: 'vignettes'} - + env: R_REMOTES_NO_ERRORS_FROM_WARNINGS: true _R_CHECK_FORCE_SUGGESTS_: false @@ -57,57 +53,7 @@ jobs: GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }} steps: - - uses: actions/checkout@v4 - - - uses: r-lib/actions/setup-r@v2 - with: - r-version: release - - - uses: r-lib/actions/setup-pandoc@v2 - - - name: Query dependencies - run: | - install.packages('remotes') - saveRDS(remotes::dev_package_deps(dependencies = TRUE), ".github/depends.Rds", version = 2) - writeLines(sprintf("R-%i.%i", getRversion()$major, getRversion()$minor), ".github/R-version") - shell: Rscript {0} - - - name: Install additional dependencies - run: | - sudo apt-get update - sudo apt-get install -y texlive-latex-base texlive-fonts-recommended libglpk40 wget valgrind - sudo apt-get install -y valgrind texlive-latex-base - - - name: Install system dependencies - run: | - while read -r cmd - do - eval sudo $cmd - done < <(Rscript -e 'writeLines(remotes::system_requirements("ubuntu", gsub("#\\d+~(\\d{2}\\.\\d{2}).*", "\\1", Sys.info()[["version"]]))') - - - name: Cache R packages - uses: actions/cache@v4 + - uses: ms609/actions/memcheck@main with: - path: ${{ env.R_LIBS_USER }} - key: ${{ runner.os }}-${{ hashFiles('.github/R-version') }}-1-${{ hashFiles('.github/depends.Rds') }} - restore-keys: ${{ runner.os }}-${{ hashFiles('.github/R-version') }}-1- - - - name: Install dependencies - run: | - remotes::install_github('RcppCore/Rcpp') - remotes::install_github('ms609/TreeTools') - remotes::install_github('ms609/TreeDistData') - remotes::install_deps(dependencies = TRUE) - remotes::install_cran("devtools") - shell: Rscript {0} - - - name: Install TreeDist - run: | - cd .. - R CMD build --no-manual --no-resave-data TreeDist - R CMD INSTALL TreeDist*.tar.gz - cd TreeDist - - - name: valgrind - memcheck ${{ matrix.config.test }} - run: | - R -d "valgrind --tool=memcheck --leak-check=full --errors-for-leak-kinds=definite --error-exitcode=1" --vanilla < memcheck/${{ matrix.config.test }}.R + extra-repositories: "https://ms609.github.io/packages/" + test: ${{ matrix.config.test}} diff --git a/memcheck/all.R b/memcheck/all.R index 622f618f..75506a41 100644 --- a/memcheck/all.R +++ b/memcheck/all.R @@ -1,4 +1,4 @@ devtools::load_all() devtools::run_examples() devtools::build_vignettes() -devtools::test() \ No newline at end of file +devtools::test()