NEWS
BiocCheck 1.50.0
NEW FEATURES
- Identify whether package source directories are live git clones or
untarred build directories, and adjust check behavior accordingly
- Add timeout (15s) and convert connection/timeout issues to warnings
(instead of errors) for support site registration and watched tags checks
- Update vignette engine checks to recommend 'VignetteBuilder' instead of
'VignetteEngine' in the DESCRIPTION file (@LiNk-NY, #246).
- Add new check 'checkValidDESCfields' to validate and flag unknown or
non-standard fields in the 'DESCRIPTION' file.
- Add check for S4 classes to verify they provide a non-derived default
'show()' method.
BUG FIXES AND MINOR IMPROVEMENTS
- Missing 'fnd' role in 'Authors@R' or 'Author' fields does not produce a
'NOTE' but rather an informative message (@lshep, #251).
- Missing 'CITATION' files produce a message rather than a 'NOTE'
(@lshep, #250).
- Removed the '*.Rproj' file from the list of bad files in
'BiocCheckGitClone' and added '.positai' and '.claude' directories
(@lshep & @LiNK-NY, #249)
- When identifying bad files from the internal list, directories were not
properly 'grep'ed. Directories are now correctly identified and filtered out
via '.gitignore' in 'BiocCheckGitClone'.
- Optimize 'getFunctionLengths' and 'checkFunctionLengths' using vectorized
operations for faster execution
- Support and update testing for roxygen2 version 8
- Improve ORCID checker to correctly validate invalid check-sum characters
- Resolve path linter false positives and use 'file.path' for portable
path construction
- Clean up code style, remove redundant 'return()' calls, and update
parameter type documentation
- Soften the check for Authors@R, issuing a 'NOTE' instead of an 'ERROR'
when the legacy Author and Maintainer fields are used.
- Remove restrictive error check when running BiocCheck on non-standard
directory structures or untarred build directories.
- Remove redundant custom ORCID checks, relying instead on R's built-in
'person()' function validation.
- Internal refactoring, code formatting, and test improvements: rename
internal check functions for clarity, reorganize checks into
'checkDESCRIPTION.R', add test cases for 'checkManDocumentation' and S4 show
methods, add an install method for the internal '.BiocPackage' class, and
update vignette documentation.
BiocCheck 1.48.0
BUG FIXES AND MINOR IMPROVEMENTS
- Package tarball size check updated to have a max of 10 MB (@LiNk-NY,
#234).
BiocCheck 1.46.0
NEW FEATURES
- Checks support 'qmd' vignettes and require that a 'SystemRequirements'
field be present and list the 'quarto' CLI in the DESCRIPTION file.
- All chunks in vignettes should have labels (@vjcitn, #222)
- Flag export all regex patterns in 'NAMESPACE' (@lshep, #230)
BUG FIXES AND MINOR IMPROVEMENTS
- 'Rd' pages that do not have '\usage' sections are excluded from '\value'
checks (@hpages, #225)
- 'Rd' pages that have '\keyword{internal}' are excluded from '\value'
checks
- Avoid overwritting 'data' document types for '\value' checks
- Vignettes with no code chunks were incorrectly flagged in chunk label
checks
- Chunks in Rnw vignettes with no labels are now correctly identified
- 'sessionInfo' checks in vignettes occur only when code chunks are present
- BiocCheck() options are now ordered alphabetically in documentation to
make it easier to find specific options (@Bisaloo, #229).
BiocCheck 1.44.0
NEW FEATURES
- Add 'lifeCycle', 'deprecate_warn', and 'deprecate_stop' to the list of
functions for the '.Deprecated' / '.Defunct' check.
- Support checking '\()' syntax as anonymous R functions.
- Exclude comment-only lines in function lengths check (@hpages, #220)
- Add 'checkFndPerson()' to validate Authors@R / Authors fields in the
'DESCRIPTION' file. A corresponding 'NOTE' is shown in the vignette (#215)
- Refactor function length check to count only coding lines and not comment
lines (@hpages, #220)
BUG FIXES AND MINOR IMPROVEMENTS
- Check file sizes only for source directories and in 'BiocCheckGitClone'
(@hpages, #219)
- Use R version from 'BiocManager:::.version_map' for
'checkRVersionDependency' (@helenalc, #223)
- Use 'checkInstalled()' to verify packages listed in 'Suggests:'
- Suppress warning in '.hasPkg()' when the package is not installed
- Use 'INFO' messages instead of bullet points in output
BiocCheck 1.42.0
NEW FEATURES
- Use the 'cli' R package to update the aesthetics of the output.
BUG FIXES AND MINOR IMPROVEMENTS
- Fix issue in 'checkVigSuggests' internal function to only extract
packages that should be in the 'Suggests' field.
- Fix issue where the lookbacks in static code searches were not
iterating over all of the indices. This affects all functions that
searched through code in R and vignette files.
- Non-interactive sessions default to old output syntax.
- Use full names e.g., 'WARNING' in report output for 'grep'ping by
dependent software, i.e., Single Package Builder (SPB)
BiocCheck 1.40.0
NEW FEATURES
- Check for duplicate chunk labels in vignettes and produce an error when
present (@hpages, #199)
- Warn when Rnw vignettes are present (@jwokaty, #190)
- Add error when maintainer email not parse-able in DESCRIPTION
- Check for Bioconductor dependencies in the Imports and Depends fields;
if none, produce a warning (@vjcitn).
- Remove redundant 'DESCRIPTION' and 'NAMESPACE' consistency checks; these
are already included in 'R CMD check'
BUG FIXES AND MINOR IMPROVEMENTS
- Produce 'NOTE' instead of 'WARNING' for infrastructure packages without
Bioconductor dependencies
- '% \VignetteEngine' tags with spaces were not recognized; this has been
fixed
- Skip '\value' checks for package and class documentation; '\formats'
checked for data documentation
- Delegate system calls to 'devtools::build' to build packages
- Update 'checkRbuildignore' to flag 'test' and 'longtests' entries
appropriately (@hpages, #197)
- Fix issue where BiocCheck would fail when errors caused by duplicate chunk
labels were present (@hpages, #199)
- Avoid format checks e.g., length, indentation, and tabs for Rd files
that use roxygen2
- Use the 'tools:::analyze_licenses' function to check for restrictive
license use (@hpages, #119)
- Use httr2 over httr for http requests
- Clarify 'NOTE' and 'WARNING' messages for 'CITATION' file inclusion
(#209).
BiocCheck 1.38.0
BUG FIXES AND MINOR IMPROVEMENTS
- Exclude data docs with ‘\\format' tags in addition to ’package' docs when
checking for '\\value' / '@return' in documentation.
- Resolve unknown macro warnings when using Rdpack (@LiNK-NY, #196)
- Improve the 'read.dcf' operation that looks for any deprecated packages
in both Bioconductor release and devel versions.
- Remove overwrite prompt when updating cached resources in deprecated
packages check.
BiocCheck 1.36.0
NEW FEATURES
- Include size limit checks for data files in 'data', 'inst/extdata', and
'data-raw' folders (@lshep, @const-ae, #167, #67)
- Source package directories that include an 'inst/doc' folder with files
are now flagged with an error. 'doc' folders are generated during
'R CMD build'.
- The error for packages already hosted on CRAN has been converted to a
warning (@lshep, #177). Any such incoming packages must be removed from CRAN
before the following Bioconductor release.
BUG FIXES AND MINOR IMPROVEMENTS
- Filter out 'package' docTypes from '\value' documentaiton checks
(@grimbough, #189)
- Obtain a more complete list of deprecated packages for
'checkDeprecatedPkgs'
- Fix issue with path seperators on Windows ('\\' vs '/') causing the unit
test for 'getBiocCheckDir' to report erroneous mismatches (@grimbough, #175)
- Fix bug where the wrong number of functions with length greater than 50
was reported (@grimbough, #182)
- biocViews term suggestions should be a scalar character (@lcolladotor,
#184)
- Update email in bioc-devel subscription check (@lshep, #185)
- Handle function length checks when there is no R code (@lshep, #186)
- Edit warning text when empty or missing 'value' sections are found in
a package (@vjcitn)
- 'checkForValueSection' re-implemented for clarity; filters out comments
in 'value' sections (@LiNk-NY)
- Correctly identify 'Rd' comments by updating the regular expression to
identify them (@LiNk-NY)
BiocCheck 1.34
NEW FEATURES
- Redundant package dependencies checks between 'DESCRIPTION' and
'NAMESPACE' have been removed. These are already present in 'R CMD check'
as "checking package dependencies".
- Use 'callr' to run 'BiocCheck' in a separate process, this avoids
interference with loaded packages (@vjcitn, #158)
BUG FIXES AND MINOR IMPROVEMENTS
- Update 'checkVigInstalls' and 'checkVigBiocInst' to avoid false positives
(@almeidasilvaf, #170).
- Only count non evaluated chunks when there are any present in the
vignette
- Fix false positive WARNING "Import {pkg} in NAMESPACE as well as
DESCRIPTION." where pkg was not in NAMESPACE but it was used using double
colons pkg::function inside an S4 method. (@zeehio, #166)
- Fix bug where inputs to 'getDirFile' were vectors in
'checkForValueSection' (@zeehio, #163)
- Allow lookback for matching T/F and exclude list elements, e.g., 'list$F'
(@lshep, #161)
- Fix indentation count by excluding yaml front matter from vignettes
(@harpomaxx, #100)
- Update internal documentation of the 'BiocCheck-class'
- Fix bug where line numbers were off due to removal of empty lines at
parsing (@lshep, #159)
- Slightly improve sentence counter for Description field check
(@lshep, #160)
- Update documentation links to point to contributions.bioconductor.org
(@LiNk-NY, #157)
BiocCheck 1.32
NEW FEATURES
- Add package metadata to main report for easier diagnostics
- 'packageName.BiocCheck' folder, created above the package folder,
includes the full report and NAMESPACE suggestions, if available.
- Add check to find any stray 'packageName.BiocCheck' folders
- Update doc links and recommendations for additional information in report
- Update 'BiocCheck' report to be more brief by only noting the conditions;
details are included in the full report
BUG FIXES AND MINOR IMPROVEMENTS
- Initialize default verbose value (FALSE) for internal reference object
- Flag only hidden '.RData' files as bad files and allow 'myData.RData'
(@hpages, #155)
- Improve internal handling of condition messages with unified mechanism
- Internal improvements to 'BiocCheck' mechanism: export '.BiocCheck' object
which contains all conditions, log list, and method for writing to JSON
- Update to changes in R 4.2 '--no-echo' flag
- Make use of 'lib.loc' to helper functions that install and load the
checked package
- (1.31.36) Reduce function length count slightly by removing empty lines.
- (1.31.35) Restricted files in 'inst' will be flagged with a 'WARNING'
instead of an 'ERROR'
- (1.31.32) Account for S3 print methods when checking for 'cat' usage
- (1.31.31) Single package imports in the NAMESPACE were breaking the code
to get all package imports.
- (1.31.29) Include other import fields from NAMESPACE file when checking
consistency between imports in DESCRIPTION/NAMESPACE.
- (1.31.27) Update and clean up unit tests.
- (1.31.26) Improve load test for the package being checked.
- (1.31.25) Exclude GitHub URLs that end in HTML from external data check.
- (1.31.23) Internal updates to the 'require' and 'library' check.
- (1.31.22) Remove old code related to running 'BiocCheck' on the command
line and update 'BiocCheck' documentation.
- (1.31.21) Remove redundant '=' from message to avoid '=' assignment.
- (1.31.20) Add line feed to "Checking function lengths..." message
- (1.31.18) Packages should not download files when loaded or attached.
- (1.31.17) Using '=' for assignment should be avoided and '<-' should be
used instead for clarity and legibility.
- (1.31.16) Note the use of 'cat' and 'print' outside of show methods.
- (1.31.15) Check for pinned package versions in the 'DESCRIPTION' file
denoted by the use of '=='.
- (1.31.14) Enhancements to internal helper functions and
'BiocCheckGitClone'
- (1.31.13) Revert move to new package checks. Update Bioc-devel mailing
list check to fail early when not in BBS environment.
- (1.31.12) Move Bioc-devel mailing list and support site registration
checks to new package checks.
- (1.31.10) Various internal improvements to 'BiocCheck' and the
identification of the package directory and name.
- (1.31.6) Use a more reliable approach to identify package name from the
'DESCRIPTION' file.
- (1.31.5) Fixed bug in the case where the ‘VignetteBuilder' field in the
a package’s 'DESCRIPTION' has more than one listed.
- (1.31.3) Add 'BioCbooks' repository url to
'checkIsPackageNameAlreadyInUse', 'VIEWS' file is pending.
- (1.31.2) Fix logical length > 1 error in 'checkImportSuggestions'
(@vjcitn, #141)
- (1.31.1) Simplify check for function lengths; remove excessive dots.
BiocCheck 1.30
NEW FEATURES
- (1.29.10) Check for 'Sys.setenv' and 'suppressWarnings'/'suppressMessages'
- (1.29.8) Check for 'sessionInfo' / 'session_info' in vignette code.
- (1.29.5) Check for installation calls in vignette code.
- (1.29.1) Check for 'install()' function calls in R code.
BUG FIXES
- (1.29.14) Various internal improvements to the codebase.
- (1.29.12) Checks on class membership code now include 'is() ==' grammar.
- (1.29.6) Use appropriate input ('pkgdir') to internal checking functions.
- (1.29.3) Add unit tests for legacy function searches.
- (1.29.2) rename internal function from checkIsPackageAlreadyInRepo to
checkIsPackageNameAlreadyInUse
BiocCheck 1.27
BUG FIX
- (1.27.17) Update support site watched tags. tags are case insensitive
- (1.27.15) Reporting checking of vignette despite package type
(@lshep, #136)
- (1.27.9) Allow portability of child Rmd documents via parseFile
- (1.27.3) Correct check for if package already exists in CRAN/Bioc
- (1.27.3) Correct check for single colon use
- (1.27.2) Correct path to R license database file by calling
R.home('share').
NEW FEATURES
- (1.27.16) Check vignettes for all package types (@lshep, #136)
- (1.27.12) Check for 'LazyData: TRUE' in the DESCRIPTION (@lshep, #128)
- (1.27.11) R version dependency check in the 'DESCRIPTION' is now a
'NOTE' (@lshep, #126)
- (1.27.10) Check for 'error' and other keywords in signaler functions,
'message', 'warning', and 'stop' etc. (@hpages, #125)
- (1.27.8) Check for 'tests' entry in '.Rbuildignore'
- (1.27.7) Removed BiocCheck and BiocCheckGitClone installation scripts;
recommended usage is 'BiocCheck()'
- (1.27.6) Check that a user has the package name in watched tags of
support site
- (1.27.5) Check for 'paste' / 'paste0' in signaler functions, 'message',
'warning', and 'stop' (@LiNk-NY, #64)
- (1.27.4) Check for downloads from external resources (github, gitlab,
bitbucket, dropbox; @LiNk-NY, #75)
- (1.27.1) Check that licenses do not exclude classes of users,
e.g., non-academic users.
BiocCheck 1.25
DEPRECATION ANNOUNCEMENT
- (1.25.11) R CMD BiocCheck and R CMD BiocCheckGitClone are deprecated. The
recommended way to run the functions is within R.
NEW FEATURES
- (1.25.1) Check for warning/notes on too-brief a Description: field
(@federicomarini, #65)
- (1.25.4) Check for single colon typos when using qualified imports
pkg::foo()
- (1.25.8) Validate ORCID iDs (if any) in the DESCRIPTION file
(@LiNk-NY, #97)
- (1.25.10) Add check for properly formatted CITATION file
- (1.25.12) Add NOTE to change dontrun to donttest
BUG FIXES
- (1.25.14) The ORCID iD check now accepts IDs with a X at the end.
- (1.25.9) All packages including infrastructure require a vignette
- Usage of donttest and dontrun in manual pages tagged with the keyword
'internal' will no longer trigger a NOTE (@grimbough, #59)
- (1.25.7) Adding the sessionInfo at the end of the vignette (@llrs)
USER SIGNIFICANT CHANGES
- (1.25.3) Require Aurhors@R format over Author/Maintainer fields in the
DESCRIPTION file. This has been upgraded to an ERROR.
- (1.25.2) Suggest styler over formatR for automatic code re-formatting
(@lcolladotor, #57).
- (1.25.5) Add warning to new package versions with non-zero x version
(@mtmorgan, #101)
BiocCheck 1.23
BUG FIX
- (1.23.4) Update locations for NEWS
- (1.23.1) Fix False Positive class == check
BiocCheck 1.19
NEW FEATURES
- (1.19.33) Add Authors@R vs Author/Maintainer check
- (1.19.29) Add non evaluated code chunks that have not been executed
because of invalid syntax (“', “'R, “'r). Valid syntax for an evaluated
code chunk takes the form “'{r} or “'{R}.
- (1.19.28) Check that vignette metadata set correctly
- (1.19.27) Check for Author@R or Author/Maintainer but not both
- (1.19.25) Check for use of remotes: in Description
- (1.19.18) Check for use of dontrun/donttest
- (1.19.15) Check vignetteEngine/vignetteBuilder minimially declared in
Suggests
- (1.19.9) Check usage of donttest and dontrun in man page documentation
- (1.19.9) Update deprecated check to check for Bioconductor release and
devel deprecated packages as specified in biocViews
- (1.19.7) More helpful ERROR when using a non valid command line option.
- (1.19.4) All checks module. Ability to turn on/off with flag options. See
'R CMD BiocCheck --help'
- (1.19.1) New Check options to turn off if in CRAN (--no-check-CRAN) and
Bioconductor mailing list and support site (--no-check-bioc-help)
USER SIGNIFICANT CHANGES
- (1.19.8) Updated Documentation in vignette for flag/option controls and
reorganization of code/checks. Grouped similar checks together and changed
order of checks.
- (1.19.3) Remove Native Routine Registrations (use flag in R CMD check
instead _R_CHECK_NATIVE_ROUTINE_REGISTRATION_)
- (1.19.2) Match CRAN standards of package size <= 5MB (updated from 4MB)
BUG FIXES
- (1.19.26) Fix NEWS check to recognize NEWS.md
- (1.19.26) Check all repos for existing package not just software
- (1.19.23) Informative message if no biocViews term found
- (1.19.22) Fix output of system2 usage check
- (1.19.19) Test only closures for T/F
- (1.19.14) Fix ERROR when more than one VignetteEngine found
- (1.19.10) Add suggestion of FormatR package to formatting notes
- (1.19.10) Fix function lengths to be a NOTE and only display if functions
are greater than 50 lines long.
- (1.19.6) Replace use of devtools::create with usethis::create_package as
function was deprecated.
- (1.19.5) Fix length > 1 logical comparison in if statement
BiocCheck 1.17
NEW FEATURES
- (1.17.21) Added quit-with-status option to both BiocCheck and
BiocCheckGitClone for compatibility with travis
- (1.17.18) Update devel to use BiocManager instructions instead of
BiocInstaller
- (1.17.17) Add a new function that can be run interactive or command line
BiocCheckGitClone which is only run on a source directory not a
tarball. This will check for bad system files
- (1.17.17) BiocCheck addition: Checks vignette directory for intermediate
and end files that should not be included.
- (1.17.16) Checks for Bioconductor package size requirement if checking
tarball
BUG FIXES
- (1.17.19) Updated internal functions to use BiocManger instead of
BiocInstaller
BiocCheck 1.16
BUG FIXES
- handle interactive BiocCheck() arguments correctly
BiocCheck 1.14
NEW FEATURES
- NOTE when maintainer subscription to bioc-devel mailing list
cannot be checked (checking requires mailing list admin
password).
BUG FIXES
- Use shell quotes to allow spaces in package paths