Skip to contents

Check for usage of unavailable functions. Not reliable for testing r-devel dependencies.

Usage

backport_linter(r_version = getRversion(), except = character())

Arguments

r_version

Minimum R version to test for compatibility. Defaults to the R version currently in use. The version can be specified as a version number, or as a version alias (such as "devel", "oldrel", "oldrel-1").

except

Character vector of functions to be excluded from linting. Use this to list explicitly defined backports, e.g. those imported from the {backports} package or manually defined in your package.

See also

linters for a complete list of linters available in lintr.

Examples

# will produce lints
lint(
  text = "trimws(x)",
  linters = backport_linter("3.0.0")
)
#> <text>:1:1: warning: [backport_linter] trimws (R 3.2.0) is not available for dependency R >= 3.0.0.
#> trimws(x)
#> ^~~~~~

lint(
  text = "str2lang(x)",
  linters = backport_linter("3.2.0")
)
#> <text>:1:1: warning: [backport_linter] str2lang (R 3.6.0) is not available for dependency R >= 3.2.0.
#> str2lang(x)
#> ^~~~~~~~

lint(
  text = "deparse1(expr)",
  linters = backport_linter("3.6.0")
)
#> <text>:1:1: warning: [backport_linter] deparse1 (R 4.0.0) is not available for dependency R >= 3.6.0.
#> deparse1(expr)
#> ^~~~~~~~

# okay
lint(
  text = "trimws(x)",
  linters = backport_linter("3.6.0")
)
#>  No lints found.

lint(
  text = "str2lang(x)",
  linters = backport_linter("3.2.0", except = "str2lang")
)
#>  No lints found.

# Version aliases instead of numbers can also be passed to `r_version`
lint(
  text = "deparse1(expr)",
  linters = backport_linter("release")
)
#>  No lints found.