Miscellaneous
Stylistic updates to vignette and website.
Miscellaneous
-
README: refer to website when appropriate. Stylistic update.
-
NEWS: stylistic update.
- Vignettes: explain notation. Rely on
pkgdown to create links to functions.
-
check-no-suggests.yaml: also mention package rcmdcheck as needed package. Order packages alphabetically. Fuller annotation of modifications.
Miscellaneous
- Add pkgdown website:
https://jessealderliesten.github.io/checkinput/.
Breaking changes
- Use
roxygen2 version 8.0.0.
- Replace the non-exported function
paste_quoted() by the full function from progutils::paste_quoted() and export it.
Miscellaneous
- Stylistic changes to code and tests prompted by
goodpractice::gp().
Breaking changes
- Dependency
tinytest: declare version >= 1.4.1 because I use argument strict in expect_message() and expect_warning().
- Remove the dependency on
vctrs by hardcoding the output of the single remaining call to vctrs::vec_as_names() in a test for all_names().
Breaking changes
- Dependency
R >= 4.0.0 increased to R >= 4.1.0, which is required to pass the R CMD check on ubuntu-latest: rmarkdown > bslib > sass > fs needs R >= 4.1 and rappdirs needs R >= 4.1.
-
all_names(): wrap text of warnings. Use deparse1(substitute(x)) to get the offending values instead of literal 'x' in the text of warnings or errors.
-
is_nonnegative(), all_nonnegative(), is_positive(): call is_number() or all_numbers() followed by all(x >= 0, na.rm = TRUE) or all(x > 0, na.rm = TRUE) for more succinct and uniform code.
Miscellaneous
- GitHub action
check-standard also runs on R 4.1.0 on macOS, Windows, and Ubuntu, is triggered every Saturday on 04:23 UTC, and can be triggered manually (trigger it once manually on the main branch to be able to trigger it manually on other branches).
checkinput uses GitHub action check-standard on all branches.
Breaking changes
- Depend on
R >= 4.0.0 to be able to use deparse1().
Added functions
-
make_natural(): use is_natural() or all_natural() to round values, while throwing an error if appropriate. Use deparse1(substitute(x)) to get the offending values instead of literal 'x' in error messages.
Breaking changes
-
all_natural(): tol should be smaller than 0.5. Add argument allow_zero with default FALSE, in contrast to the previous implicit default TRUE.
Added functions
-
is_natural: as all_natural() but also test if x has a length of at most one.
Updated documentation
- Vignettes: add hyperlinks from the vignettes to the help-pages of functions. No need to put output in comments because the output is automatically shown together with the code. Use
<funcname> instead of <func> or <function> to align with usage in the vignettes of checkrpkgs.
- README: use
<funcname> instead of <func> or <function> to align with usage in the vignettes of checkrpkgs. Define variables to write more succinct code.
Breaking changes
-
all_names(): remove argument allow_susp and never allows suspicious names because allowing them amounts to only checking for syntactically invalid names, for which make.names() can be used directly; do not try to identify which functions might have changed a name because that is very ambiguous; also check for suspicious names that might have been created by data.frame() or vctrs::vec_as_names(); consider the reserved words ... and ..1 invalid and, when appropriate, note that make.names() does not adjust them; existing checks are now more specific: they check that names which apparently have been made valid indeed contain an invalid part, and that the first digit of numbers added to duplicated names is non-zero.
-
is_number() and derived functions gained arguments allow_zero, allow_NA and allow_NaN (with default FALSE in contrast to the previously implicit TRUE), to resolve the contradiction that using is_number() returned TRUE for these values but using them in conditional statements led to logical(0) and thus to an error.
Updated documentation
- Added
vctrs as dependency in Suggests because it is used in documentation of all_names().
-
all_names(): major updates and restructuring. Also updated and added examples.
-
all_natural(): add a note about functions named integerish.
-
README: add a reference to my repository checkrpkgs. Clarify that functions do throw errors about invalid input to arguments other than x.
- Vignette
design_choices: clarified that functions do throw errors about invalid input to arguments other than x. Added a table of contents. Removed obsolete note about allow_NA being absent from is_number() and derived functions.
- Vignette
Type_Coercion: rename to type_coercion. Added section labels and a table of contents.
- Replace section title
Note (created through @Note) by section title Notes (created through @section Notes:). Idem for Programming note.
Breaking changes
-
paste_quoted() (an internal function) throws an error if x has dimensions.
Minor improvements
- Move code of
is_character.R to all_characters.R, and code of is_positive.R, is_nonnegative.R, etc. to is.number.R.
Updated documentation
- Update
README to mention vignettes and introduce design choices.
- Cross-reference on
is_number() instead of on all_nonnegative().
- Remove
Notes about legacy code.
- Move
To do points and Wishlist to GitHub issues.
- Move information about correct input to the vignette
design_choices that is linked in the See also sections of the relevant functions. The vignette also contains a section about getting a named boolean vector as output. Both sections are also mentioned in the README.
-
all_names(): data.frame() also calls make.names(). Move section on how to get a boolean vector to the vignette on design choices.
-
is_zerolength(): document that a zero-row data.frame is not a zero-length object.
Breaking changes
- Functions now allow objects with dimensions as input to
x but return FALSE for them, as well as for non-atomic input.
- Simplify
all_names() by removing checking for non-ASCII characters and never allow names that are duplicated or consist only of dots.
NEWS for this and earlier versions has not been tracked.