Skip to content

CRAN submission

CRAN submission #23

Workflow file for this run

# Workflow derived from https://github.com/r-lib/actions/tree/v2/examples
# Need help debugging build failures? Start at https://github.com/r-lib/actions#where-to-find-help
on:
push:
branches: [main, master]
pull_request:
branches: [main, master]
name: R-CMD-check
jobs:
R-CMD-check:
runs-on: ${{ matrix.config.os }}
name: ${{ matrix.config.os }} (${{ matrix.config.r }})
strategy:
fail-fast: false
matrix:
config:
- {os: macOS-latest, r: 'release'}
- {os: windows-latest, r: 'release'}
- {os: ubuntu-latest, r: 'devel', http-user-agent: 'release'}
- {os: ubuntu-latest, r: 'release'}
- {os: ubuntu-latest, r: 'oldrel-1'}
env:
GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }}
R_KEEP_PKG_SOURCE: yes
steps:
- uses: actions/checkout@v2
- uses: r-lib/actions/setup-pandoc@v2
- uses: r-lib/actions/setup-r@v2
with:
r-version: ${{ matrix.config.r }}
http-user-agent: ${{ matrix.config.http-user-agent }}
use-public-rspm: true
- uses: r-lib/actions/setup-r-dependencies@v2
with:
extra-packages: any::rcmdcheck
needs: check
- uses: r-lib/actions/check-r-package@v2
with:
upload-snapshots: true
R-test-ubsan:
name: R unit tests with sanitizers (${{ matrix.compiler }})
runs-on: ubuntu-latest
container: wch1/r-debug
strategy:
fail-fast: false
matrix:
include:
- sanitizer: san
compiler: gcc
- sanitizer: csan
compiler: clang
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Install packages
shell: bash
run: |
RDscript${{ matrix.sanitizer }} -e "install.packages(c('testthat'))"
RDscript${{ matrix.sanitizer }} -e "install.packages(c('Matrix'))"
RDscript${{ matrix.sanitizer }} -e "install.packages(c('Rcpp'))"
RD${{ matrix.sanitizer }} CMD build .
RD${{ matrix.sanitizer }} CMD INSTALL aricode_*.tar.gz || exit -1
- name: Run tests with sanitizer
shell: bash
run: |
cd tests
exit_code=0
RDscript${{ matrix.sanitizer }} testthat.R >> tests.log 2>&1 || exit_code=-1
cat ./tests.log
(! grep -q 'undefined-behavior' tests.log)
exit_code=$?
exit ${exit_code}