package_description: Generate a valid package description

View source: R/package_description.R

package_descriptionR Documentation

Generate a valid package description

Description

Use this function to describe your package. It will do some plausibility checks and make sure you end up with the correct format and all info needed for proper packaging.

Usage

package_description(
  Package,
  Title,
  Description,
  AuthorsR,
  Author = NULL,
  Maintainer = NULL,
  Depends = NULL,
  Imports = NULL,
  Enhances = NULL,
  Suggests = NULL,
  VignetteBuilder = NULL,
  URL = NULL,
  BugReports = NULL,
  Additional_repositories = NULL,
  Type = "Package",
  License = "GPL (>= 3)",
  Encoding = "UTF-8",
  LazyLoad = "yes",
  extra = list()
)

Arguments

Package

Mandatory: Name of the package.

Title

Mandatory: Short description in one catchy sentence and with proper capitalization.

Description

Mandatory: Long description.

AuthorsR

Mandatory: A character string that, if parsed and evaluated, will result in a vector of person objects (see example). All authors, maintainers and significant comtributors must be given.

Author

Optional author field in old format. Should be omitted for CRAN releases, as it is automatically generated from AuthorsR.

Maintainer

Like Author, but for the maintainer field.

Depends

Optional: Comma separated names of packages this package depends on.

Imports

Optional: Comma separated names of packages this package imports from.

Enhances

Optional: Comma separated names of packages this package enhances.

Suggests

Optional: Comma separated names of packages this package suggests.

VignetteBuilder

Optional: Specify a vignette builder, e.g., "knitr" for vignettes in RMarkdown format.

URL

Optional: Homepage.

BugReports

Optional URL to a bug tracker, mailing list etc.

Additional_repositories

Optional URL to additional repositories for suggested packages that are not available from the standard repos.

Type

"Package" Package type, mandatory.

License

"GPL (>= 3)" Optional: License information.

Encoding

"UTF-8" Optional: Default character encoding.

LazyLoad

"yes" Optional: Should lazy loading be supported?

extra

A named list of character strings with additional extra fields not explicitly defined above, will be added as-is.

Details

It might seem odd that it does not use the dots argument for additional parameters. That is because it would be next to impossible to check for wrong spelling of the default parameters.

All values must be a single character string, except extra (named character vector). Logical values are also possible for LazyLoad and all entries of extra. They will be translated into "yes" or "no".

Value

A data.frame.

Examples

pckg.dscrptn <- package_description(
  Package="SquareTheCircle",
  Type="Package",
  Title="Squaring the circle using Heisenberg compensation",
  Author="Ernst Dölle [aut, cre, cph], Ludwig Dölle [trl,
      ctb] (initial translation to whitespace)",
  AuthorsR="c(person(given=\"Ernst\", family=\"Dölle\",
       email=\"e.a.doelle@example.com\",
       role=c(\"aut\", \"cre\", \"cph\")),
     person(given=\"Ludwig\", family=\"Dölle\",
       role=c(\"trl\", \"ctb\"),
       comment=\"initial translation to whitespace\")
     )",
  Maintainer="E.A. Dölle <doelle@eternalwondermaths.example.org>",
  Depends="R (>= 2.10.0),heisenberg (>= 0.23),tools",
  Enhances="rkward",
  Description="This package squares the circle using Heisenberg compensation.
      The code came from a meeting with Yrla Nor that i had in a dream. Please
      don't forget to chain your computer to the ground, because these
      algorithms might make it fly.",
  License="GPL (>= 3)",
  Encoding="UTF-8",
  LazyLoad="yes",
  URL="http://eternalwondermaths.example.org"
)

unDocUMeantIt/roxyPackage documentation built on March 9, 2023, 6:31 p.m.