- Added
optimize_rmd_yaml()to enrich the YAML header of oneREADME.Rmdor vignette from the package DESCRIPTION: title, author, date, language, an enrichedoutputblock and, for vignettes, theVignetteIndexEntry. A field that still holds its usethis default value (an "Untitled" title, a bareoutput: rmarkdown::html_vignette) is replaced, a field you changed is kept, and useroutputoptions are merged on top of the enriched defaults.package_optimize_rmd_yaml()applies the same logic toREADME.Rmdand every.Rmdundervignettes/. Both acceptextra,extra_readmeandextra_vignettefor adding custom fields such asparamsorbibliography. - Added
use_clangd()to write a.clangdconfiguration file that wires up system R,Rcpp,RcppEigen, andRcppArmadilloinclude paths. Ifpathis an R package root, an additionalIf:block disables clangd's background indexing for theR/source directory, and.clangdis added to.Rbuildignore. Theincludeargument lets users pass any custom package names whoseinclude/directory should be added; packages that are not installed are skipped with a warning. - Added the standalone
standalone-cli_table.Rscript, which providescli_table()andcli_table_oneline()for printing cli-styled frequency tables of a vector, on two aligned lines or on a singleheader: countline. - Added the standalone
standalone-make_arg_validator.Rscript, which providesmake_arg_validator(), a factory that turns an unquoted block of checks and coercions written in terms of argument names into a reusable validator returning the validated arguments as a named list.
- The standalone CLI helpers
add_caller_to_cli()(standalone-caller_cli.R),add_colors_to_cli()andcreate_colorful_cli_env()(standalone-colorful_cli.R), andadd_timestamp_to_cli()andcreate_ts_cli_env()(standalone-ts_cli.R) now validate their arguments:cli_funcmust be a function and thecli_functions/cli_funcvector ofcreate_*_cli_env()must be a character vector, otherwise the call aborts with a cli error naming the argument instead of failing later with a cryptic one. - Calls inside these standalone helpers now pass their arguments by name
(e.g.
sys.call(which = ...),do.call(what = ..., args = ...)). - The version-bumper action now refuses to ship a release without a changelog
entry: before writing anything it compares the version it is about to set
with the highest version documented in
NEWS.mdand skips the bump (with a warning) when the new version is higher. WhenNEWS.mdis missing or holds no version heading, the check is bypassed with a warning.
- The
README.Rmdand vignette YAML headers were enriched withoptimize_rmd_yaml(), so the vignettes now carry a subtitle with the package version, an author, a date, alang, a richeroutputblock (table of contents, numbered sections, figure captions) and RStudioeditor_options. - The README badge block now shows the R-universe version badge; the development-version and last-commit badges were removed.
- In the
newsvignette, the section about the package startup message is titled "A startup message" instead of "A spinner startup message" and its chunk no longer echoes the message. - The
pkg_maintainvignette gained a "Configure the clangd language server" section, and thereadme_and_docvignette an "Enrich Rmd YAML headers" section coveringoptimize_rmd_yaml()andpackage_optimize_rmd_yaml(), including theextra,extra_readmeandextra_vignettearguments. - The
standalone_toolsvignette documents the newcli_tableandmake_arg_validatorscripts, and its examples now run as labelled, unevaluated knitr chunks with trimmedinquire_standalone()output.
- Added
convert_pipe()andpackage_convert_pipe()to switch pipe operators between the tidyverse pipe%>%and the base pipe|>. Strings, comments, and raw strings are left unchanged, as are the placeholder pipe%<>%and the exposition pipe%$%. rename_func()gains anum_to_wordargument that expands digit abbreviations in function names into words, defaulting toc("for" = 4, "to" = 2). With the default mappinglist2env()becomeslist_to_env()andwait4result()becomeswait_for_result(), and the expanded words are formatted following thestyleargument, e.g.list2env()becomeslistToEnv()understyle = "camelCase". The argument accepts a named vector,NULL, orFALSE; any other input is an error. Only digit runs present in the mapping are expanded, so identifiers such asscale_x_log10()are left untouched.
make_func_call_explicit(),package_func_call_explicit(), andadd_double_colons()no longer truncate function names that contain digits. Function calls such asr2dtable()andscale_x_log10()were matched only from their longest digit-free suffix (r2dtable()was treated asdtable()), which either produced invalid namespacing or triggered a spurious "Couldn't find packages exporting" warning.- Added pattern detection for exported datasets, e.g.,
starwarsfromdplyrwill be detected. - Faster
make_func_arg_explicit()andpackage_func_arg_explicit(): large files are now planned several times faster, because the parse table is indexed once and child nodes are looked up in constant time instead of being rescanned for every node. Planning a whole package therefore no longer grows quadratically with its size.
convert_int_literals()andpackage_convert_int_literals()no longer rewrite the exponent of a numeric literal such as1e-3/1E-3, which previously produced invalid code like1e-3L.
check_air_installed()now offers to installairin interactive sessions when it is missing, skipping the prompt during tests. On macOS it now uses the official installer script instead of Homebrew oruv.- The package startup message now reports the load time (e.g.
loaded [12.34 ms]) instead of showing a progress spinner, and the same template is used byuse_zzz().
- Added
badge_to_readme()to insert a Markdown badge into the badges block ofREADME.RmdorREADME.md. - Added exported
GLOBAL_RBUILDIGNORE_PATTERNandPERMISSIVE_LICENSEconstants for customizing package-maintenance workflows.
add_global_gitgnore()now correctly updates a package specified with an absolute path.use_vendor()now adds only people with anautorcrerole toAuthors@R.package_convert_int_literals()now skips automatically generatedRcppExports.Rfiles, which should not be edited manually.
add_global_rbuildignore()now supports supplying custom patterns and replacing its default pattern set.use_vendor()records vendored-code authors as contributors and copyright holders, rather than package authors.- The version-bumper action now updates development-version badges before committing a release version. Its version commits now run CI before test branch synchronization.
- Added pkgdown articles for the package vignettes and reorganized the README around the package website guides.
- Refactored
detect_*andpackage_*functions. - Test-branch synchronization now runs only after
R-CMD-check.yamlsucceeds for a push tomainormaster, and syncs the exact checked commit.
convert_int_literals(),package_convert_int_literals(), andconvert_func_syntax()now forward...torlang::check_dots_empty0(). Previously the call was made without..., so the documented "...must be empty" check was a no-op and extra arguments were silently ignored.
- Added
use_bugreports()— sets theBugReportsfield of a package'sDESCRIPTIONfile, defaulting to the GitHub issues page detected from thegitremote. - Added
use_url()— sets theURLfield of a package'sDESCRIPTIONfile, defaulting to the GitHub repository detected from thegitremote, with an optional pkgdown website URL.
make_func_call_explicit()(andadd_double_colons()) no longer add::to function calls inside comments or roxygen2 documentation. Comments (including#'roxygen2 lines and trailing comments) are now left untouched.
- Updated standalone
colorful_cli. - Beautified
use_zzzwith a spinner loading animation.
- Added
open_cffinit()— opens the CFF initializer in a browser to generateCITATION.cfffiles.
- Removed redundant dependency
standalone-purrrinstandalone-args_to_func.R. - Beautified the changelog format in standalone files created by
add_changelog_in_standalone(). - Added community files (CONTRIBUTING.md, SUPPORT.md, issue template).
- Fixed an error in examples of
filter_args_for_func()instandalone-args_to_func.R.
- Fixed documentation
- Fixed bug when deparsing multiline code in
convert_nonascii_code()
- Updated
use_vendor()to make it fully comply standalone header format
-
Added
use_workflow_test_branch(), which can create a test branch for maintaining R pkg. This branch will sync -
Added
convert_noascii_code()to convert non-ascii code to ascii code, complying with CRAN requirements
add_changelog_in_standalone(): Fixed a bug when retrievingChangelogbadge
-
Fixed dots checking error in
browse_standalone() -
Fixed
.gitignorenot found error invendor-pkgdev.R, this bug is from source code ofpkgdev
- Fixed timestamp updating bug in
add_changelog_in_standalone()when modifyingvendor-*.R
- Added
use_r_v4.1.0()
- Made
path = "."topath = NULLbecause of CRAN requirements
- Added 'Last-updated','Version','Imports' in
use_vendor(). Relevant files are also updated.
- Added
%||%function inuse_zzz()
- Fixed ignorance of
make_func_arg_explicit()when resolving complex R syntax
-
Made
use_zzz()compatible withusethis -
Added cov ignorance in
use_zzz()
- Added
convert_func_syntax()
-
Changed default file name created by
use_zzz()to -package.R -
Bug fix in
use_workflow_version_update()
- Removed unused packages in Suggests
- Fixed quotes in action
- change unicode character to raw int for checking
-
make
check_pkgdown_reference()easy to copy -
Fixed lints
-
Added
package_*, some package-wise functions -
Added
make_func_arg_explicit() -
Imported
add_global_gitignorefrom pkgdev, under license MIT -
Added
add_global_rbuildignore()to supplement.Rbuildignorewith common build-exclusion patterns -
Added
use_vendor(),use_multilanguage_readme()
- typescript-source action update for
use_workflow_version_update()
- Fix path bug in
render_rmd()
- Fix documentation and examples to meet CRAN requirements
-
Added
use_zzz()for easier zzz.R management -
Bump verion to v0.1
-
Added basic color support to
news_md_show() -
Added dependency, description and nocov tag in
create_standalone() -
Fixed pattern detection of
detect_lost_glue_brace()when resolving contexts with more than one lines. Added more detailed info in output
- Added use_workflow_version_updater(), providing a github action to auto-update pkg version and tag.
-
Add more options for changelog type in NEWS.md
-
Add more tests
-
Added browse_standalone() to inquire all available standalone R files across github
-
Added
rename_functo change the naming style of functions
- Added
detect_lost_glue_brace
-
Made
news_md_add_entryvectorized -
Made
inquire_standalonemore explicit -
Made
use_hexstickeroperate on README.Rmd. Addeddetect_lost_glue_brace
- Add tests to most functions