Skip to content

Commit

Permalink
Merge pull request #1377 from rstudio/r2.14
Browse files Browse the repository at this point in the history
  • Loading branch information
t-kalinowski authored Sep 29, 2023
2 parents 8eb3050 + 900af16 commit 05cf376
Show file tree
Hide file tree
Showing 3 changed files with 35 additions and 59 deletions.
85 changes: 28 additions & 57 deletions .github/workflows/R-CMD-check.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -21,51 +21,57 @@ jobs:
fail-fast: false
matrix:
include:

## the happy path - default everything
- {os: 'ubuntu-latest' , tf: 'default', r: 'release'}
- {os: 'windows-latest', tf: 'default', r: 'release'}
- {os: 'macOS-latest' , tf: 'default', r: 'release'}

- {os: 'ubuntu-latest' , tf: 'default', r: 'oldrel'}
## old R versions
- {os: 'windows-latest', tf: 'default', r: 'oldrel'}
- {os: 'macOS-latest' , tf: 'default', r: 'oldrel'}
- {os: 'ubuntu-latest' , tf: 'default', r: 'oldrel'}
- {os: 'ubuntu-latest' , tf: 'default', r: 'oldrel-1'}
- {os: 'ubuntu-latest' , tf: 'default', r: 'oldrel-2'}
- {os: 'ubuntu-20.04' , tf: 'default', r: '3.6'} # default R in ubuntu-20.04

- {os: 'ubuntu-latest', tf: 'default', r: 'oldrel-1'}
- {os: 'ubuntu-latest', tf: 'default', r: '3.6'} # default R in ubuntu-20.04

- {os: 'ubuntu-20.04' , tf: 'release', r: 'release'}
- {os: 'windows-latest', tf: 'release', r: 'release'}
- {os: 'macOS-latest' , tf: 'release', r: 'release'}
## release keras/tf version (if different from 'default')
# - {os: 'ubuntu-latest' , tf: 'release', r: 'release'}
# - {os: 'windows-latest', tf: 'release', r: 'release'}
# - {os: 'macOS-latest' , tf: 'release', r: 'release'}

## old keras/tf versions
- {os: 'ubuntu-latest', tf: '2.14', r: 'release'}
- {os: 'ubuntu-latest', tf: '2.13', r: 'release'}
- {os: 'ubuntu-latest', tf: '2.12', r: 'release'}
- {os: 'ubuntu-latest', tf: '2.11', r: 'release'}
- {os: 'ubuntu-latest', tf: '2.10', r: 'release'}
- {os: 'ubuntu-latest', tf: '2.8', r: 'release'}
- {os: 'ubuntu-latest', tf: '2.9' , r: 'release'}

# these are allowed to fail
# - {os: 'ubuntu-latest', tf: '2.14.0rc1', r: 'release'}
# - {os: 'ubuntu-20.04', tf: 'default', r: 'devel'}
# - {os: 'ubuntu-20.04', tf: '2.7.0rc1', r: 'release'}
# - {os: 'ubuntu-20.04', tf: 'nightly' , r: 'release'}

runs-on: ${{ matrix.os }}
continue-on-error: ${{ matrix.tf == 'nightly' || contains(matrix.tf, 'rc') || matrix.r == 'devel' }}
env:
R_REMOTES_NO_ERRORS_FROM_WARNINGS: 'true'
R_KEEP_PKG_SOURCE: yes
# R_REMOTES_NO_ERRORS_FROM_WARNINGS: 'true'
# R_COMPILE_AND_INSTALL_PACKAGES: 'never' # commented out until CRAN builds TF 2.8
GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }}

steps:

- uses: actions/checkout@v2
- uses: actions/checkout@v3

- uses: r-lib/actions/setup-pandoc@v2

- uses: r-lib/actions/setup-r@v2
id: setup-r
with:
r-version: ${{ matrix.r }}
Ncpus: '2L'
use-public-rspm: true

- uses: r-lib/actions/setup-pandoc@v2
Ncpus: '2L'

- name: Get Date
id: get-date
Expand All @@ -74,60 +80,25 @@ jobs:
echo "year-week=$(date -u "+%Y-%U")" >> $GITHUB_OUTPUT
echo "date=$(date -u "+%F")" >> $GITHUB_OUTPUT
# echo "::set-output name=year-week::$(date -u "+%Y-%U")"
# echo "::set-output name=date::$(date -u "+%F")"

- name: Restore R package cache
uses: actions/cache@v2
uses: actions/cache@v3
id: r-package-cache
with:
path: ${{ env.R_LIBS_USER }}
key: ${{ matrix.os }}-${{ steps.setup-r.outputs.installed-r-version }}-${{ steps.get-date.outputs.year-week }}-4

# - name: Install remotes
# if: steps.r-package-cache.outputs.cache-hit != 'true'
# run: install.packages("remotes")
key: ${{ matrix.os }}-${{ steps.setup-r.outputs.installed-r-version }}-${{ steps.get-date.outputs.year-week }}-1

- uses: r-lib/actions/setup-r-dependencies@v2
with:
extra-packages: rcmdcheck remotes local::.
cache-version: 4
extra-packages: any::rcmdcheck local::.
cache-version: 1
upgrade: 'TRUE'

- name: Install system dependencies
if: runner.os == 'Linux'
shell: bash
run: |
. /etc/os-release
while read -r cmd
do
echo "$cmd"
sudo $cmd
done < <(Rscript -e "writeLines(remotes::system_requirements('$ID-$VERSION_ID'))")
# - name: Install Package + deps
# run: remotes::install_local(dependencies = TRUE, force = TRUE)
#
# - name: Install Miniconda
# run: reticulate::install_miniconda()

- name: Install Tensorflow + Keras deps
run: keras::install_keras(tensorflow = '${{ matrix.tf }}-cpu')

# - name: Install rcmdcheck
# run: remotes::install_cran("rcmdcheck")

- name: Check
run: rcmdcheck::rcmdcheck(args = '--no-manual', error_on = 'warning', check_dir = 'check')

- name: Show testthat output
if: always()
shell: bash
run: find check -name 'testthat.Rout*' -exec cat '{}' \; || true

- name: Don't use tar from old Rtools to store the cache
if: ${{ runner.os == 'Windows' && startsWith(steps.install-r.outputs.installed-r-version, '3') }}
shell: bash
run: echo "C:/Program Files/Git/usr/bin" >> $GITHUB_PATH
- uses: r-lib/actions/check-r-package@v2
with:
upload-snapshots: true
4 changes: 3 additions & 1 deletion DESCRIPTION
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ Depends:
Imports:
generics (>= 0.0.1),
reticulate (>= 1.31),
tensorflow (>= 2.8.0),
tensorflow (>= 2.13.0.9000),
tfruns (>= 1.0),
magrittr,
zeallot,
Expand All @@ -51,3 +51,5 @@ Suggests:
Roxygen: list(markdown = TRUE, r6 = FALSE)
RoxygenNote: 7.2.3
VignetteBuilder: knitr
Remotes:
rstudio/tensorflow
5 changes: 4 additions & 1 deletion tools/find-api-diffs.R
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ library(dplyr, warn.conflicts = FALSE)
library(reticulate)
library(envir)

use_virtualenv("r-keras")
use_virtualenv("r-tensorflow")
# tools/setup-test-envs.R


Expand Down Expand Up @@ -80,6 +80,9 @@ DF %>%
select(r_func_nm, missing_in_r_func_args) %>%
print(n = Inf)

# tf 2.14
# A tibble: 0 × 2
# ℹ 2 variables: r_func_nm <chr>, missing_in_r_func_args <chr>

# tf 2.13
# # A tibble: 4 × 2
Expand Down

0 comments on commit 05cf376

Please sign in to comment.