golem 0.3.1
New functions
add_*
-
You can now create a skeleton for a Shiny input binding using the
golem::add_js_binding("name")function (#452, @DivadNojnarg) -
You can now create a skeleton for a Shiny output binding using the
golem::add_js_output_binding("name")function (@DivadNojnarg) -
add_html_template()creates an htmlTemplate.
use_*
-
use_external_file()allows to add any file to thewwwfolder,use_external_css_file(),use_external_html_template(), anduse_external_js_file()will download them from a URL (#295, #491). -
use_internal_css_file(),use_internal_file(),use_internal_html_template(),use_internal_js_file()functions allow to any file from the current computer to thewwwfolder (@KasperThystrup, #529)
Tests helper
expect_running()expects the current shiny app to be running.
Hooks
-
Every
{golem}project now have aproject_hookthat is launched after the project creation. -
module_template()is the default function for{golem}module creation. Users will now be able to define a custommodule_template()function foradd_module(), allowing to extend{golem}with your own module creation function. See ?golem::module_template for more info (#365) -
add_js_andadd_css_functions now have a template function, allowing to pass a file constructor.
Misc
-
is_running()checks if the current running application is a{golem}based application (#366) -
utils_ui.Rnow contains a "make_action_button()" function (#457, @DivadNojnarg) -
run_dev()performs a check on golem name. -
sanity_check()function has been added to check for any 'browser()' or commented #TODO / #TOFIX / #BUG in the code (#1354 @Swechhya)
New features
-
The modules are now created with the new skeleton when the installed version of
{shiny}is >= 1.5.0. -
use_external_*()function don't open files by default (#404) -
use_recommended_tests*()now callsuse_spell_check()(#430) -
The
02_dev.Rnow includes more CI links -
golem::expect_running()is now bundled in default tests -
Default tests now test for functions formals (#437)
-
You can now pass arguments to internal
roxygenise()&load_all()(#467) -
Bundle_resources()now handle subfolders (#446) -
run_app()now includes the default arguments ofshinyApp()(#254, @chasemc) -
create_golem()now adds strict dependency versions (#466) -
{golem}app now comes with a meta tags "app-builder", which default to "golem", and that can be changed or turn off inbundle_resources(). -
with_golem_optionscan now explicit callsprinton theappobject, solving some issues with benchmarking the application. This explicit print can be turned off by settingprintto FALSE inwith_golem_options(#148) -
dockerignoreis now available. -
The
add_helpersandadd_utilsnow have roxygen comments (Richard Pilbery, #330) -
dev/03_dev.Rnow hasdevtools::build()(#603) -
detach_all_attached()is now silent (#605)
Soft deprecated
add_ui_server_files()is now signaled as deprecated. Please comment on #445 if you want it to be kept inside the package
Breaking changes
-
add_dockerfile*function now return the{dockerfiler}object instead of the path to it. It allows to modify the Dockerfile object programmatically. (#493) -
The
get_golem_confignow first look for aGOLEM_CONFIG_ACTIVEbefore looking forR_CONFIG_ACTIVE(#563)
Bug fix
-
add_functions no longer append to file if it already exists (#393) -
config::get()is no longer exported to prevent namespace conflicts withbase::get() -
fixed issue with favicon when package is built (#387)
-
use_external_*()function don't add ext if already there (#405) -
create_golemfunction does not modify any existing file (#423, @antoine-sachet) -
add_resources_path()now correctly handles empty folder (#395) -
test for app launching is now skipped if not interactive()
-
add_utilsandadd_fctnow print to the console (#427, @novica) -
Multiple CRAN repo are now correctly passed to the Dockerfile (#462)
-
app_config, DESC and golem-config.yml are now updated whenever you change the name of the package using a golem function (#469 )
-
test_recommendednow work in every case (hopefully)
-
usethis::use_mit_licensedoes not have thenameargument anymore so if fits new version of{usethis}(#594) -
Typo fix preventing
invoke_js("prompt")andinvoke_js("confirm")to work (#606)
Internal changes
-
document_and_reload()now hasexport_all = FALSE,helpers = FALSE,attach_testthat = FALSE, allowing the function to behave more closely to what library() does (#399) -
Dockerfile generation now removes the copied file and tar.gz