library_call_linter {lintr} | R Documentation |
Library call linter
Description
This linter covers several rules related to library()
calls:
Usage
library_call_linter(allow_preamble = TRUE)
Arguments
allow_preamble |
Logical, default |
Details
Enforce such calls to all be at the top of the script.
Block usage of argument
character.only
, in particular for loading packages in a loop.Block consecutive calls to
suppressMessages(library(.))
in favor of usingsuppressMessages()
only once to suppress messages from alllibrary()
calls. DittosuppressPackageStartupMessages()
.
Tags
best_practices, configurable, readability, style
See Also
linters for a complete list of linters available in lintr.
Examples
# will produce lints
code <- "library(dplyr)\nprint('test')\nlibrary(tidyr)"
writeLines(code)
lint(
text = code,
linters = library_call_linter()
)
lint(
text = "library('dplyr', character.only = TRUE)",
linters = library_call_linter()
)
code <- paste(
"pkg <- c('dplyr', 'tibble')",
"sapply(pkg, library, character.only = TRUE)",
sep = "\n"
)
writeLines(code)
lint(
text = code,
linters = library_call_linter()
)
code <- "suppressMessages(library(dplyr))\nsuppressMessages(library(tidyr))"
writeLines(code)
lint(
text = code,
linters = library_call_linter()
)
# okay
code <- "library(dplyr)\nprint('test')"
writeLines(code)
lint(
text = code,
linters = library_call_linter()
)
code <- "# comment\nlibrary(dplyr)"
lint(
text = code,
linters = library_call_linter()
)
code <- paste(
"foo <- function(pkg) {",
" sapply(pkg, library, character.only = TRUE)",
"}",
sep = "\n"
)
writeLines(code)
lint(
text = code,
linters = library_call_linter()
)
code <- "suppressMessages({\n library(dplyr)\n library(tidyr)\n})"
writeLines(code)
lint(
text = code,
linters = library_call_linter()
)
[Package lintr version 3.2.0 Index]