All Projects → krlmlr → R Appveyor

krlmlr / R Appveyor

Tools for using R with AppVeyor (https://appveyor.com)

Programming Languages

shell
77523 projects
r
7636 projects

Projects that are alternatives of or similar to R Appveyor

base
Scripts used to build R 3.3 - 3.6 on Windows (retired)
Stars: ✭ 42 (-68.42%)
Mutual labels:  cran, appveyor
Qqman
An R package for creating Q-Q and manhattan plots from GWAS results
Stars: ✭ 115 (-13.53%)
Mutual labels:  cran
Refinr
Cluster and merge similar char values: an R implementation of Open Refine clustering algorithms
Stars: ✭ 91 (-31.58%)
Mutual labels:  cran
Manipulatewidget
Add More Interactivity to htmlwidgets
Stars: ✭ 110 (-17.29%)
Mutual labels:  cran
Colourlovers
🎨 📦 R Client for the COLOURlovers API
Stars: ✭ 92 (-30.83%)
Mutual labels:  cran
Localappveyor
Run your AppVeyor builds, locally
Stars: ✭ 112 (-15.79%)
Mutual labels:  appveyor
Wooldridge
The official R data package for "Introductory Econometrics: A Modern Approach". A vignette contains example models from each chapter.
Stars: ✭ 90 (-32.33%)
Mutual labels:  cran
Batchtools
Tools for computation on batch systems
Stars: ✭ 127 (-4.51%)
Mutual labels:  cran
Imputets
CRAN R Package: Time Series Missing Value Imputation
Stars: ✭ 114 (-14.29%)
Mutual labels:  cran
Startup
🔧 R package: startup - Friendly R Startup Configuration
Stars: ✭ 107 (-19.55%)
Mutual labels:  cran
Shiny.i18n
Shiny applications internationalisation made easy
Stars: ✭ 104 (-21.8%)
Mutual labels:  cran
Mschart
📊 mschart: office charts from R
Stars: ✭ 94 (-29.32%)
Mutual labels:  cran
Rinside
Seamless embedding of R in C++ programs
Stars: ✭ 112 (-15.79%)
Mutual labels:  cran
Changepoint
A place for the development version of the changepoint package on CRAN.
Stars: ✭ 90 (-32.33%)
Mutual labels:  cran
Minicran
R package to create internally consistent, mini version of CRAN
Stars: ✭ 123 (-7.52%)
Mutual labels:  cran
Openxlsx
openxlsx - a fast way to read and write complex xslx files
Stars: ✭ 91 (-31.58%)
Mutual labels:  cran
Rintrojs
Wrapper for the Intro.js library
Stars: ✭ 96 (-27.82%)
Mutual labels:  cran
Crypto
Cryptocurrency Historical Market Data R Package
Stars: ✭ 112 (-15.79%)
Mutual labels:  cran
Drat
Drat R Archive Template
Stars: ✭ 127 (-4.51%)
Mutual labels:  cran
Dharma
Diagnostics for HierArchical Regession Models
Stars: ✭ 124 (-6.77%)
Mutual labels:  cran

R + AppVeyor AppVeyor build status Travis-CI Build Status

This is a solution for continuous integration for R projects on Windows, using AppVeyor -- a CI testing service similar to Travis-CI. Under the hood, r-travis is used to perform the testing; this works even on Windows thanks to MinGW and MSYS.

Usage

  1. Sign up to AppVeyor.
  2. Enable testing for your project.
  3. Run usethis::use_appveyor() in your project.
  4. (Optional) Adapt appveyor.yml to your needs according to the documentation.
  5. (Optional) Add a badge as described by the output of usethis::use_appveyor().
  6. Be sure to supply a .gitattributes file that takes care of fixing CRLF conversion settings that are relevant on Windows. The one in this repo can be used for starters.
  7. Push to your repo to start building.
  8. Enjoy!

Build and test commands

The travis-tool used in appveyor.yml is a modified copy of the r-travis project, documentation is available on its wiki.

Environment variables

These can be set in the appveyor.yml, overriding the defaults. This repo tests several configurations at once in a build matrix, see also the build status.

Example:

environment:
  VARIABLE: value
  • R_VERSION: The version of R to be used for testing. Specify devel, patched, stable (or release), oldrel, or a version number.
  • R_ARCH: The architecture to be used for testing, one of x64 (default) or i386.
  • RTOOLS_VERSION: The version of Rtools to be used for testing, defaults to the most recent Rtools. Specify e.g. 33 for Rtools 3.3.
  • USE_RTOOLS: Set USE_RTOOLS: true (or USE_RTOOLS: yes) if Rtools needs to be installed. Defaults to true if your package has a src/ directory and false otherwise. Rtools may be needed if you use install_github(), if there are packages in Remotes: in your DESCRIPTION file, or if one of your dependencies has updated, but the associated Windows binary is not yet available from CRAN. (Set PKGTYPE=binary to avoid installing packages from source.)
  • GCC_PATH: The path to GCC in the Rtools installation, currently one of gcc-4.6.3 (default), mingw_32 or mingw_64.
  • WARNINGS_ARE_ERRORS: Set to 1 to treat all warnings as errors, otherwise leave empty.
  • CRAN: The CRAN mirror to use, defaults to RStudio's CDN via HTTPS. Change to HTTP for R 3.1.3 or earlier.
  • R_BUILD_ARGS: Arguments passed to R CMD build, defaults to --no-manual.
  • R_CHECK_ARGS: Arguments passed to R CMD check, defaults to --no-manual --as-cran.
  • PKGTYPE: Passed as type to install.packages(), remotes::install_github() and remotes::install_deps(). Set to both to install packages from source if the source version is more recent than the binary version.
  • NOT_CRAN: Set this to true if you are using testthat and want to run tests marked with testthat::skip_on_cran().
  • R_REMOTES_STANDALONE: Set this to true if builds are failing due to the inability to update infrastructure packages such as curl, git2r and rlang. Read more in the docs for the remotes package.
  • _R_CHECK_FORCE_SUGGESTS_: Set this to false to avoid errors of the form "Package suggested but not available".
  • KEEP_VIGNETTES: Set this to a nonempty value build vignettes. You will likely need LaTeX and/or Pandoc, see below for installation instructions. By default, all vignettes are purged and the VignetteBuilder entry in DESCRIPTION is removed.
  • DOWNLOAD_FILE_METHOD: On some versions of R, setting this to wininet appears to work better than the default auto.

Artifacts

In contrast to Travis-CI, AppVeyor offers facilities for hosting artifacts. This can be configured by adding a section to the appveyor.yml. The sample file is configured to deploy logs, and source and binary versions of the built package. Check the "ARTIFACTS" section for your project at AppVeyor.

LaTeX

See the example contributed by @pat-s for a way to install LaTeX. The tinytex package is another option.

Pandoc and other software

The Chocolatey installer is a convenient way to install other software. See below for a Pandoc example from the reprex repository:

before_test:
  - cinst pandoc
  - ps: $env:Path += ";C:\Program Files (x86)\Pandoc\"
  - pandoc -v

Troubleshooting

Using a 64-bit R installation

Some R packages, notably rJava, require a 64-bit installation of Windows and R. If you try to install these packages on a 32-bit system you'll see a message similar to:

  Error: .onLoad failed in loadNamespace() for 'rJava', details:
    call: inDL(x, as.logical(local), as.logical(now), ...)
    error: unable to load shared object 'C:/Users/appveyor/AppData/Local/Temp/1/RtmpWa3KNC/RLIBS_bdc2913935/rJava/libs/i386/rJava.dll':
    LoadLibrary failure:  %1 is not a valid Win32 application.

To solve this problem, add to your appveyor.yml:

platform: x64

environment:
  R_ARCH: x64

This will cause Appveyor to run your build on a 64-bit version of Windows Server, using the 64-bit R binary.

Acknowledgements

This wouldn't have been as easy without r-travis and the experience gained there. Thanks!

See also

The win-builder project has been around much longer and provides more comprehensive testing; you still might want to use this service before submitting to CRAN.

Other branches

Build status for expected failure (master-fail branch, failure expected)

License

MIT © Kirill Müller.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].