Murat Tasan
Murat Tasan
Sometimes it's helpful to have logs across disparate machines output timestamps with the same TZ offset. Currently, the best way to do this is: * Not do it at all,...
Since {glue} is vectorized, the default behavior when an interpolated value is length-0 (which includes `NULL`) is to return `character(0)`: ```R str(glue::glue("foo is {NULL}") # 'glue' chr(0) ``` This causes...
While reviewing a few recently-closed issues, I came across #41. This dovetailed nicely with an idea I've had for more helpful logging in Shiny apps where much of the application...
I find myself doing this a lot: ```R assert_all
Observe: ``` R > x y str(x) POSIXct[1:1], format: "2016-04-29 11:44:56" > str(y) POSIXlt[1:1], format: "2016-04-29 11:44:56" > checkScalar(x) [1] TRUE > checkScalar(y) [1] "Must be of type 'atomic scalar',...
Minor suggestion (and I'd be happy to make the edits in a PR if you agree). The concept of a superclass has already been presented in a previous section. The...
This is a pretty contrived reprex, but the moral of the story is I'd expect `text_1` and `text_2` to be identical in the app below. They are identical until one...
In my Shiny applications, I currently wrap nearly all observer-executed expressions in `tryCatch` blocks to gracefully handle errors that'd otherwise kill either the application or the session. One mechanism to...
1. Create a directory that is not a valid package name, e.g. "my-test-directory". 2. Now from within that directory, try to initialize a package using {usethis}: ```R usethis::create_package(".", fields =...