Skip to content

CRAN Submission Guidelines

Victor Kofia edited this page Oct 19, 2017 · 1 revision

Please always read the CRAN policies first. This document gives some additional hints for a useful CRAN submission, especially for new submissions.

Unless there are good reasons, packages submitted to CRAN are expected to pass R CMD check --as-cran, and you will be asked to fix and resubmit your package if it gives warnings or significant notes. To avoid this, you should run R CMD check --as-cran yourself with a current development version of R before submitting to CRAN.

You can use the following web services to supplement your own tests:

  • Winbuilder checks packages on 32-bit and 64-bit Windows using a current development version of R. The same infrastructure is used by the CRAN team for checking submitted packages.

  • R-hub can be used to check packages on multiple platforms and versions of R using virtual machines. The service is not maintained by CRAN and hence different check settings may be in place. In addition to the automated checks, we expect package authors to follow good practices that make their package more accessible and useful to the wider R community.

  • The most important way to do this is to write an informative entry in the Description field in the DESCRIPTION file (see the relevant section of the Writing R Extensions manual). The Title and Description fields are shown at the top of the CRAN landing page for the package, and should therefore be written with care.

  • Make the Description as informative as possible for potential new users of your package. If in doubt, make the Description longer rather than shorter.

  • Put non-English usage, including names of other packages and external software, in single quotes. Example: 'OpenSSL'. Relevant citations should be included in the description. These should be in author-year style, preferably followed by an identifier such as DOI, arXiv id, or ISBN for published materials.

  • DOIs should be enclosed in angle brackets, and formatted as doi:10.prefix/suffix. Example: Sugihara (1994) doi:10.1098/rsta.1994.0106.

  • arXiv identifiers should be enclosed in angle brackets, and formatted as arXiv:YYMM.NNNNN. Example: Srivastava et al. (2011) arXiv:1103.3817.

  • Similarly, relevant URLs should be included in the description, also enclosed in angle brackets (see the Writing R Extensions manual for details). Example: https://cran.r-project.org/.

  • Preferably, provide an Authors@R field in DESCRIPTION giving all the authors, including contributors and copyright holders, with appropriate roles. For persons with an ORCID identifier (see https://orcid.org/ for more information, provide the identifier via an element named "ORCID" in the comment argument of person(). Example: person("Achim", "Zeileis", comment = c(ORCID = "0000-0003-0918-3766")).

Clone this wiki locally