R-CMD-check #530
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# 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] | |
schedule: | |
- cron: '20 1 * * 1' | |
workflow_dispatch: | |
name: R-CMD-check | |
jobs: | |
R-CMD-check-standard: | |
runs-on: ${{ matrix.config.os }} | |
name: ${{ matrix.config.os }} (${{ matrix.config.r }} ${{ matrix.config.py }}) | |
strategy: | |
fail-fast: false | |
matrix: | |
config: | |
- {os: macos-latest, r: "release", py: "3.x" } | |
- {os: windows-latest, r: "release", py: "3.x" } | |
- {os: ubuntu-latest, r: "devel", py: "3.x", http-user-agent: "release"} | |
- {os: ubuntu-latest, r: "oldrel-1", py: "3.x" } | |
- {os: ubuntu-latest, r: "release", py: "3.9" } | |
- {os: ubuntu-latest, r: "release", py: "3.10"} | |
- {os: ubuntu-latest, r: "release", py: "3.11"} | |
- {os: ubuntu-latest, r: "release", py: "3.12"} | |
- {os: ubuntu-latest, r: "release", py: "3.13"} | |
env: | |
GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }} | |
R_KEEP_PKG_SOURCE: yes | |
steps: | |
- uses: actions/checkout@v3 | |
- 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: actions/setup-python@v5 | |
with: | |
python-version: ${{ matrix.config.py }} | |
- uses: r-lib/actions/setup-r-dependencies@v2 | |
with: | |
extra-packages: any::rcmdcheck | |
needs: check | |
- name: setup r-reticulate venv | |
shell: Rscript {0} | |
run: | | |
python_packages <- c("numpy", "fastf1") | |
library(reticulate) | |
virtualenv_create("r-reticulate", Sys.which("python")) | |
virtualenv_install("r-reticulate", python_packages) | |
path_to_python <- virtualenv_python("r-reticulate") | |
writeLines(sprintf("RETICULATE_PYTHON=%s", path_to_python), | |
Sys.getenv("GITHUB_ENV")) | |
- uses: r-lib/actions/check-r-package@v2 | |
with: | |
upload-snapshots: true | |
R-CMD-check-no-python: | |
runs-on: ${{ matrix.config.os }} | |
name: CHK no python | |
strategy: | |
fail-fast: false | |
matrix: | |
config: | |
- {os: ubuntu-latest, r: "release" } | |
env: | |
GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }} | |
R_KEEP_PKG_SOURCE: yes | |
steps: | |
- uses: actions/checkout@v3 | |
- 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-CMD-check-old-ff1: | |
runs-on: ${{ matrix.config.os }} | |
name: ${{ matrix.config.os }} (${{ matrix.config.r }}) old fastf1 | |
strategy: | |
fail-fast: false | |
matrix: | |
config: | |
- {os: ubuntu-latest, r: 'release'} | |
env: | |
GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }} | |
R_KEEP_PKG_SOURCE: yes | |
steps: | |
- uses: actions/checkout@v3 | |
- 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: actions/setup-python@v4 | |
with: | |
python-version: "3.x" | |
- uses: r-lib/actions/setup-r-dependencies@v2 | |
with: | |
extra-packages: any::rcmdcheck | |
needs: check | |
- name: setup r-reticulate venv | |
shell: Rscript {0} | |
run: | | |
python_packages <- c("urllib3", "fastf1==3.3.9") | |
library(reticulate) | |
virtualenv_create("r-reticulate", Sys.which("python")) | |
virtualenv_install("r-reticulate", python_packages) | |
path_to_python <- virtualenv_python("r-reticulate") | |
writeLines(sprintf("RETICULATE_PYTHON=%s", path_to_python), | |
Sys.getenv("GITHUB_ENV")) | |
- uses: r-lib/actions/check-r-package@v2 | |
with: | |
upload-snapshots: true | |
R-CMD-check-hard: | |
# NOTE: This workflow only directly installs "hard" dependencies, i.e. Depends, | |
# Imports, and LinkingTo dependencies. Notably, Suggests dependencies are never | |
# installed, with the exception of testthat, knitr, and rmarkdown. The cache is | |
# never used to avoid accidentally restoring a cache containing a suggested | |
# dependency. | |
runs-on: ${{ matrix.config.os }} | |
name: HARD ${{ matrix.config.os }} (${{ matrix.config.r }}) | |
strategy: | |
fail-fast: false | |
matrix: | |
config: | |
- {os: ubuntu-latest, r: 'release'} | |
env: | |
GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }} | |
R_KEEP_PKG_SOURCE: yes | |
steps: | |
- uses: actions/checkout@v3 | |
- 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: | |
dependencies: '"hard"' | |
cache: false | |
extra-packages: | | |
any::rcmdcheck | |
any::testthat | |
any::knitr | |
any::rmarkdown | |
any::markdown | |
needs: check | |
- uses: r-lib/actions/check-r-package@v2 | |
with: | |
upload-snapshots: true | |
R-CMD-check-dev-ff1: | |
runs-on: ${{ matrix.config.os }} | |
name: ${{ matrix.config.os }} (${{ matrix.config.r }}) dev fastf1 | |
strategy: | |
fail-fast: false | |
matrix: | |
config: | |
- {os: ubuntu-latest, r: 'release'} | |
env: | |
GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }} | |
R_KEEP_PKG_SOURCE: yes | |
steps: | |
- uses: actions/checkout@v3 | |
- 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: actions/setup-python@v4 | |
with: | |
python-version: "3.x" | |
- uses: r-lib/actions/setup-r-dependencies@v2 | |
with: | |
extra-packages: any::rcmdcheck | |
needs: check | |
- name: setup r-reticulate venv | |
shell: Rscript {0} | |
run: | | |
python_packages <- c("numpy") | |
library(reticulate) | |
virtualenv_create("r-reticulate", Sys.which("python")) | |
virtualenv_install("r-reticulate", python_packages) | |
#force dev version install with repl python from reticulate | |
repl_python(quiet = TRUE) | |
%pip install git+https://github.com/theOehrly/Fast-F1.git | |
exit | |
path_to_python <- virtualenv_python("r-reticulate") | |
writeLines(sprintf("RETICULATE_PYTHON=%s", path_to_python), | |
Sys.getenv("GITHUB_ENV")) | |
- uses: r-lib/actions/check-r-package@v2 | |
with: | |
upload-snapshots: true |