Require usage of anyDuplicated() > 0 over any(duplicated(.))
Require usage of anyNA over any(is.na(.))
Block usage of paste() and paste0() with messaging functions using ...
Force && conditions in expect_true(), expect_false() to be written separately
Force consecutive calls to stopifnot into just one when possible
Default undesirable functions and operators
Require usage of expect_gt(x, y) over expect_true(x > y) (and similar)
Require usage of expect_identical(x, y) where appropriate
Require usage of expect_length(x, n) over expect_equal(length(x), n)
Require usage of expect_named(x, n) over expect_equal(names(x), n)
Require usage of expect_false(.) over expect_true(!.)
Require usage of expect_s4_class(x, k) over expect_true(is(x, k))
Require usage of expect_true(x) over expect_equal(x, TRUE)
Require usage of expect_type(x, type) over expect_equal(typeof(x), type)
Require usage of 'fixed=TRUE' in regular expressions where appropriate
Block usage of ifelse where pmin or pmax is more appropriate
Require c() to be applied before relatively expensive vectorized functions
Is this an expression- or a file-level source object?
Create a linter configuration based on defaults
Require usage of correctly-typed literals over literal coercions
Require usage of a leading zero in all fractional numerics
Require usage of !any(.) over all(!.), !all(.) over any(!.)
read a source file and parse all the excluded lines from it
Raise lints for several common poor usages of paste()
Prevent ifelse() from being used to produce TRUE/FALSE or 1/0
Require usage of direct methods for subsetting strings via regex.
Require usage of startsWith() and endsWith() over grepl()/substr() versions
Identify cases where stringsAsFactors should be supplied explicitly
Block usage of file.path() with system.file()
Block unreachable code and comments following return statements
Check that imported packages are actually used
Enforce usage of scalar logical operators in conditional statements
Convert an XML node or nodeset into a Lint