- Added
is_from_namespace
to check if a function is from a namespace - Reexported
jsonlite
functions - Fixed potential imbalance protection in
quantile2
- Fixed a documentation issue
- Updated
JavaScript
dependency
- Added
fancyFileInput
with customizedCSS
to originalshiny::fileInput
- Added more default shortcuts
- Used
system2
instead ofsystem
inrs_runjob_alt
for more controls - Upgraded
JavaScript
libraries - Fixed
lapply_async2
not respecting chunk size whencallback
is unspecified - Removed
cpp11
compiling flags to use system defaults - Actively clear users cache directory when directories are empty
- Fixed
fastmap2
andfastqueue2
when subsetting with missing index resulting in errors - Re-exports some
cli
,rlang
functions - Using the most recent fixed version of
tinythread
that correctly joinpthread
- Allowed
rs_exec
to return as a promise object - Removed
base64url
from dependence and implemented equivalent functions usingbase64enc
- Removed
prepare_install2
- Removed
startup
from dependence - Fixed
Javascript
vulnerability issues
- Removed
RcppParallel
, usingTinyThread
only to avoidTBB
related installation issues - Removed
autoconf
script, using a much simpler way to generate compiler flags - Added keyboard shortcut to run debugging code easily
- Allowed
parse_svec
to have space around connectors - Added a new method to
baseline_array
for absolute contrast
- Fixed
TinyThread
memory leak issues
- Automatically set system environments to be the same as master process in
rs_exec
- Added
rs_set_repos
to setRStudio
preference, allowing to addCRAN
-like repositories when running inside ofRStudio
- Upgraded
JavaScript
libraries to fix the dependence vulnerability issues
- Added
rstudioapi
wrapperrs_edit_file
to allow editing files directly inRStudio
parse_svec
handles multiple lengths all together, andparse_svec(1:10)
is equivalent toparse_svec("1:10")
- Allowed
rs_exec
to run nested. However, there is a risk of parent process ends before the nested child process finishes. In this case, parent temporary directory will be destroyed, and child process will become orphan (results will become unavailable)
- Fixed "offset-parent" issue in
compoundInput2
when max-height is unset, but overflow is still hidden for the select inputs
- Added a special
%OF%
to make sure the result is constrained
- Replaced some functions from
stringr
to self-implemented base-R functions, plan to removestringr
in the future - Create
shiny_input_bindings
list on package load
- Fixed
print_directory_tree
where anif
condition generates warning for vectors with lengths greater than1
- Removed
synchronicity
package from dependency dipsaus_lock
anddipsaus_unlock
is exclusive-only and will be deprecated in the futurePersistContainer
is scheduled to be deprecated in the future- Re-export
detectCores
anddigest
- Added
get_credential
to generate strong passwords for different services using one single master password
sync_shiny_inputs
usesfastmap
instead of environmentssync_shiny_inputs
uses the newbindEvent
scheme to replaceobserveEvent
- Added
sorted
argument toas.list.fastmap2
- Ignored
...
argument inas.list.fastqueue2
rs_show_shortcut
shows current shortcut expressions
compoundInput2
now activates callback functions once usingupdateCompoundInput2
- Fixed
get_ram
not working on windows when user has no access to runwmic
command - Allow
lapply_async
progress bar to show inshiny
applications (with backward compatibility)
- Allow
fastmap2
toas.list
recursively - Added
mean_se
to calculate mean and standard error of mean - Re-exported
digest
fromdigest
package - Added
combine_html_class
andremove_html_class
to manipulateHTML
classes - Force enabled
ANSI
color display forrs_exec
when the jobs run inRStudio
- Cleaned
get_os
so it does not depend onstringr
anymore
- Fixed
progress2
not working properly in non-interactive sessions (butshiny
is still running)
compoundInput2
now respects thepar(fg)
and sets foreground accordingly
- Fixed
missing_dots
freezing the session when incorrectly called - Fixed
autoconf
warnings
- Added
lapply_callr
to replaceasync_workers
with cleaner and more robust implementation - Added
as_pipe
to make any functions to pipe-friendly - Added
rs_add_shortcut
to allow customized shortcuts inRStudio
- Added
missing_dots
to detect if dots are missing values
- Fixed a bug in
lapply_async2
when failing to restore plan
- Updated
JavaScript
libraries
- Added
fastquantile
to estimate single quantile, which is faster than base R - Added
RStudio
shortcuts, allowing customized code from shortcuts - Added
shiny_alert2
that launches large alerts in shiny applications - Added
%<-?%
to only assign when right-hand side expression is valid and not null - Removed
qs_map
,redis_map
- Removed dependence
qs
,RcppRedis
,htmltools
- Removed
make_async_evaluator
- Added
fastcov2
to calculate covariance in parallel - Added
sumsquared
to calculate sum-squared faster - Added
sexp_type
to obtain internal data type code
- Robust
get_ram
function. The function will returnNA
onSolaris
, and actual memories in byte on other platforms. - Fixed
rs_focus_console
not doing its job - Fixed
rs_exec
whenwait
is true but not actually waiting
- Updated
JavaScript
libraries to fix vulnerability issues - Allow
rs_exec
to return to console after submitting jobs (RStudio
version 1.4 required) - Removed unused functions in
README.md
.
- Removed function
get_cpu
- Added function to convert
base64
to its encoding characters
- Robust
get_ram
function. The function will returnNA
onSolaris
, and actual memories in byte on other platforms.
- Added a wrapper for
fastmap::fastqueue
(fastqueue2
) that shows friendly messages and can query elements - Added wrapper method to convert any
Base64
string to its generating string - Soft-deprecate
lock
andunlock
functions - Soft remove the experimental function
make_async_evaluator
to embrace the newrestbatch
package
- Added
make_forked_clusters
andlapply_async2
now restores previous future strategy one exiting
make_forked_clusters
allows to set a backup strategy once forked process fails (for example, on windows)
- RAM usage is corrected on windows
- Bumped JavaScript dependence
ini
- Added
async_works
to allow scheduling works in the background using multiple sessions.
- Instead of showing "finished", progress bar now shows square box once finished for cleaner output
rs_exec
now allows packages to be loaded before scripts- Internally added
attached_packages
to detect attached packages
- Fixed
lapply_async2
when plan ismultisession
, added future seed
- Removed
uglifyjs
and useterser
instead rs_exec
now respectswait
when running asRStudio
jobsuse_shiny_dipsaus
can wrap aroundHTML
tags now
use_shiny_dipsaus
now correctly addJavaScript
andcss
tagsuglifyjs
is not maintained any more and it might cause vulnerability issues, fixed the dependency versions
- Added
rstudioapi
related functions. When running with 'RStudio', take advantages of 'RStudio' user interface; when running in console, or non-interactive context, use default methods.rs_active_project
: 'RStudio' current active project namers_save_all
: save all editing document when 'RStudio' is runningrs_exec
: run job in 'RStudio', otherwise useRscript
ask_yesno
,ask_or_default
also uses 'RStudio' dialogue- other functions starting with
rs
add_to_session
stores key-value pairs in shiny reactive sessionsclear_env
clear elements in environments orfastmap2
instancesdo_nothing
literally does nothingshiny_is_running
returns whether current context is within a shiny apptest_farg
tests whether a function contains certain argumentscapture_expr
captures outputs when evaluating expression and returns a stringget_dev_attr
get attributes from graphic devicesprint_directory_tree
generates directory tree as text
dev_create
can now set attributes and those attributes can be obtained by functionget_dev_attr
or methoddev_attributes
- soft-deprecated
prepare_install
that might cause infinite loops
- Removed dependency on
crayon
, addedyaml
- Added
shared_finalizer
to finalize multiple objects only when last one is garbage collected - Removed
autoconf
script andMakevars
as no special flags are needed - added
flex_div
to generatediv
withflex
layout and calculate size automatically
- Removed dependency on
txtq
and functions related - Added
list_to_fastmap2
to convert a list tofastmap2
- Exported
to_datauri
, allowing any files, especially images to be translated to base-64 code and can be directly used in websites mask_function2
to mask variables within function by adding one environment layer on top of the functionnew_function2
creates function that supports 'quasi-quosure' syntax
- Allow maximum height set for
compoundInput2
fastmap2
now accept multi-assignment with single value
fastmap2
subset method now accept integers instead raising errors
- Added support for R 3.5
- Added
%D%
a decorator function that works like python decorators - Added
get_dots
that can get variable from...
without evaluating other variables
lapply_async2
now supporting more load-balance settings
- 11 JavaScript library vulnerability bug fixed
- Added
dev_create
to control switching among graphical devices - Added
use_shiny_dipsaus()
to import all styles and JavaScript - Added a wrapper for
fastmap::fastmap
-fastmap2
, which provides several generic functions, making the originalfastmap
more like an environment - Added
lapply_async2
, a naive version offuture.lapply
, but with callbacks, which is useful if play-back message is required. This is experimental. In the future when packageprogressr
is online, this function will be adjusted.
- Resolved memory leaks in
compoundInput2
- Use
fastmap2
instead of environments to manageset_shiny_input
- Canceled exporting queues because of strange behavior in windows. (plan to fix this for the next version)
- Implemented function to convert Base64
DataURI
string to image cat2
now persist logger files on local drive, and can be exported viapackup_logger
set_shiny_input
to set shinyinput
objectbaselineArray
calculates baseline for arrays with internal parallel supportshift_array
to fast shift array along certain dimension%+-%
plus-minus operator;%=>%
a "JavaScript" style of creating functions
- Fixed
compoundInput2
not initialized when rendered inshiny::renderUI
- Added four cross-session map types
qs_map
,text_map
,rds_map
, andredis_map
- Created
R6
classPersistContainer
, designed to cache key-value pairs on the local hard disk - Implemented function
make_async_evaluator
that works as scheduler to queue arbitrary number of tasks without blocking main R session
- Renamed
txtq_queue
totext_queue
- Added vignettes
- Minor fixes
- Use
webpack
to manageJavaScript
libraries - Added new shiny widget
actionButtonStyled
- Implemented
sync_shiny_inputs
to synchronize among shiny inputs without causing dead-locks in UI changes progress2
allows debugging shiny progress instances in non- reactive context. It usesshiny::Progress
in shiny reactive context, and just print out messages when shiny reactive domain isNULL
- Implemented
collapse
, a parallel solution to calculate sum/mean along arrays, providing4x
speed-ups for large arrays; - Added
async_expr
functions usingfuture
package for parallel evaluation of R expressions. - Four cross-session queue types
qs_queue
,rds_queue
,txtq_queue
,redis_queue
allow pushing arbitrary R objects into queue in one session and pop them from another session.
eval_dirty
works asbase::eval
, but supports quosures generated fromrlang::quo
match_calls
match calls in a nested manner, and support changing the call arguments recursively%?<-%
to assign default values tolhs
cat2
act as base functioncat
but provides different levels with different colored outputs;check_installed_packages
,package_installed
checks if package(s) are installed;col2hexStr
convert color to hex strings that are friendly toHTML
,CSS
andJavaScript
;parse_svec
converts a string into integer vectors,deparse_svec
converts integer vectors back into a compact string;drop_nulls
removes invalid items within lists;get_cpu
gets CPU types and chip-set names;get_ram
,mem_limit2
gets total RAM size as an alternatives formem.limits
in non-windows environment;to_ram_size
provides simple way to convert numbers to printable storage sizes in given units;time_delta
calculates time differences and returns a number in given units.
- Implemented full
JavaScript
support forcompoundInput2
as a newshiny
input to - Added utility function
col2hexStr
to convert color to hex value - Added utility function
match_calls
to match and modify calls
- Added
label_color
tocompoundInput2
to enable colored group labels
- Initial private beta release!