@@ -236,7 +236,7 @@ jobs:
236236 name : AMD64 Windows R ${{ matrix.config.rversion }} RTools ${{ matrix.config.rtools }}
237237 runs-on : windows-2019
238238 if : ${{ !contains(github.event.pull_request.title, 'WIP') }}
239- timeout-minutes : 60
239+ timeout-minutes : 75
240240 strategy :
241241 fail-fast : false
242242 matrix :
@@ -329,12 +329,37 @@ jobs:
329329 if : ${{ matrix.config.rtools == 35 }}
330330 shell : Rscript {0}
331331 run : install.packages("cpp11", type = "source")
332+ - name : Prune dependencies (on R 3.6)
333+ if : ${{ matrix.config.rtools == 35 }}
334+ shell : Rscript {0}
335+ run : |
336+ # To prevent the build from timing out, let's prune some optional deps (and their possible version requirements)
337+ setwd("r")
338+ # create a backup to use later
339+ file.copy("DESCRIPTION", "DESCRIPTION.bak")
340+ d <- read.dcf("DESCRIPTION")
341+ to_prune <- c("duckdb", "DBI", "dbplyr", "decor", "knitr", "rmarkdown", "pkgload", "reticulate")
342+ pattern <- paste0("\\n?", to_prune, "( \\([^,]*\\))?,?", collapse = "|")
343+ d[,"Suggests"] <- gsub(pattern, "", d[,"Suggests"])
344+ write.dcf(d, "DESCRIPTION")
345+ - name : R package cache
346+ uses : actions/cache@v2
347+ with :
348+ path : |
349+ ${{ env.R_LIBS_USER }}/*
350+ key : r-${{ matrix.config.rtools }}-R-LIBS-${{ hashFiles('r/DESCRIPTION') }}
351+ restore-keys : r-${{ matrix.config.rtools }}-R-LIBS-
332352 - name : Install R package dependencies
333353 shell : Rscript {0}
334354 run : |
335355 # options(pkgType="win.binary") # processx doesn't have a binary for UCRT yet
336356 install.packages(c("remotes", "rcmdcheck"))
337357 remotes::install_deps("r", dependencies = TRUE)
358+ - name : Restore DESCRIPTION for 3.6
359+ if : ${{ matrix.config.rtools == 35 }}
360+ run : |
361+ rm r/DESCRIPTION
362+ mv r/DESCRIPTION.bak r/DESCRIPTION
338363 - name : Check
339364 shell : Rscript {0}
340365 run : |
@@ -357,6 +382,15 @@ jobs:
357382 check_dir = 'check',
358383 timeout = 3600
359384 )
385+ - name : Run lintr
386+ env :
387+ NOT_CRAN : " true"
388+ GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
389+ shell : Rscript {0}
390+ working-directory : r
391+ run : |
392+ remotes::install_github("jonkeane/lintr@arrow-branch")
393+ lintr::expect_lint_free()
360394 - name : Dump install logs
361395 shell : cmd
362396 run : cat r/check/arrow.Rcheck/00install.out
0 commit comments