Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 0 additions & 1 deletion .Rbuildignore
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@
^Meta$
^doc$
^data-raw$
^memcheck$
^CRAN-RELEASE$
^src\-
CONTRIBUTING
Expand Down
64 changes: 5 additions & 59 deletions .github/workflows/memcheck.yml
Original file line number Diff line number Diff line change
@@ -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
Expand Down Expand Up @@ -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
Expand All @@ -49,65 +45,15 @@ jobs:
- {test: 'tests'}
- {test: 'examples'}
- {test: 'vignettes'}

env:
R_REMOTES_NO_ERRORS_FROM_WARNINGS: true
_R_CHECK_FORCE_SUGGESTS_: false
RSPM: https://packagemanager.rstudio.com/cran/__linux__/focal/latest
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}}
2 changes: 1 addition & 1 deletion memcheck/all.R
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
devtools::load_all()
devtools::run_examples()
devtools::build_vignettes()
devtools::test()
devtools::test()
Loading