Compare commits

..

6 Commits

41 changed files with 14781 additions and 940 deletions

View File

@@ -1,7 +1,7 @@
Package: shiny
Type: Package
Title: Web Application Framework for R
Version: 1.7.3
Version: 1.7.1.9003
Authors@R: c(
person("Winston", "Chang", role = c("aut", "cre"), email = "winston@rstudio.com", comment = c(ORCID = "0000-0002-1576-2126")),
person("Joe", "Cheng", role = "aut", email = "joe@rstudio.com"),
@@ -78,7 +78,7 @@ Imports:
mime (>= 0.3),
jsonlite (>= 0.9.16),
xtable,
fontawesome (>= 0.4.0),
fontawesome (>= 0.2.1),
htmltools (>= 0.5.2),
R6 (>= 2.0),
sourcetools,
@@ -201,10 +201,10 @@ Collate:
'version_selectize.R'
'version_strftime.R'
'viewer.R'
RoxygenNote: 7.2.1
RoxygenNote: 7.2.0
Encoding: UTF-8
Roxygen: list(markdown = TRUE)
RdMacros: lifecycle
Config/testthat/edition: 3
Config/Needs/check:
shinytest2
rstudio/shinytest2

90
NEWS.md
View File

@@ -1,13 +1,5 @@
shiny 1.7.3
===========
### Bug fixes
* Shiny 1.7.0 changed the `icon(lib="fontawesome")` implementation from a bundled copy of fontawesome, to the {fontawesome} package. This led to issue #3688, where icons that were previously working, were now breaking. That's because {fontawesome} 0.3.0 and earlier did not have support for icon names used in Font Awesome 5 and earlier, only the newest icon names used in Font Awesome 6. Now, {fontawesome} 0.4.0 has restored support for those older icon names, and Shiny 1.7.2.1 has updated its {fontawesome} requirement to >=0.4.0.
shiny 1.7.2
===========
shiny development
================
## Full changelog
@@ -15,48 +7,48 @@ shiny 1.7.2
* Closed #3626: `renderPlot()` (and `plotPNG()`) now uses `ragg::agg_png()` by default when the [`{ragg}` package](https://github.com/r-lib/ragg) is installed. To restore the previous behavior, set `options(shiny.useragg = FALSE)`. (#3654)
### New features and improvements
* Closed #1545: `insertUI()` now executes `<script>` tags. (#3630)
* `fileInput()` can set the `capture` attribute to facilitates user access to a device's media capture mechanism, such as a camera, or microphone, from within a file upload control ([W3C HTML Media Capture](https://www.w3.org/TR/html-media-capture/)). (Thanks to khaled-alshamaa, #3481)
* Closed tidyverse/dplyr#5552: Compatibility of dplyr 1.0 (and rlang chained errors in general) with `req()`, `validate()`, and friends.
* Closed tidyverse/dplyr#6154: Values from an `actionButton()` had S3 classes in the incorrect order.
* Closed #3346: Default for `ref` input in `runGithub()` changed from `"master"` to `"HEAD"`. (#3564)
* Closed #3619: In R 4.2, `splitLayout()` no longer raises warnings about incorrect length in an `if` statement. (Thanks to @dmenne, #3625)
### Bug fixes
* Closed #3250:`{rlang}`/`{tidyeval}` conditions (i.e., warnings and errors) are no longer filtered from stack traces. (#3602)
* Closed #3581: Errors in throttled/debounced reactive expressions no longer cause the session to exit. (#3624)
* Closed #3657: `throttle.ts` and the `Throttler` typescript objects it provides now function as intended. (Thanks gto @dvg-p4, #3659)
* The auto-reload feature (`options(shiny.autoreload=TRUE)`) was not being activated by `devmode(TRUE)`, despite a console message asserting that it was. (#3620)
* Closed #2297: If an error occurred in parsing a value in a bookmark query string, an error would be thrown and nothing would be restored. Now a message is displayed and that value is ignored. (Thanks to @daattali, #3385)
* Restored the previous behavior of automatically guessing the `Content-Type` header for `downloadHandler` functions when no explicit `contentType` argument is supplied. (#3393)
* Previously, updating an input value without a corresponding Input binding element did not trigger a JavaScript `shiny:inputchanged` event. Now, if no Input binding element is found, the `shiny:inputchanged` event is triggered on `window.document`. (#3584)
* Closed #2955: Input and output bindings previously attempted to use `el['data-input-id']`, but that never worked. They now use `el.getAttribute('data-input-id')` instead. (#3538)
### Minor improvements
* When taking a test snapshot, the sort order of the json keys of the `input`, `output`, and `export` fields is currently sorted using the locale of the machine. This can lead to inconsistent test snapshot results. To opt-in to a consistent ordering of snapshot fields with `{shinytest}`, please set the global option `options(shiny.snapshotsortc = TRUE)`. `{shinytest2}` users do not need to set this value. (#3515)
* Closed rstudio/shinytest2#222: When restoring a context (i.e., bookmarking) from a URL, Shiny now better handles a trailing `=` after `_inputs_` and `_values_`. (#3648)
### Minor new features and improvements
* Shiny's internal HTML dependencies are now mounted dynamically instead of statically. (#3537)
* HTML dependencies that are sent to dynamic UI now have better type checking, and no longer require a `dep.src.href` field. (#3537)
* Default for `ref` input in `runGithub()` changed from `"master"` to `"HEAD"`. (#3346)
* When taking a test snapshot, the sort order of the json keys of the `input`, `output`, and `export` fields is currently sorted using the locale of the machine. This can lead to inconsistent test snapshot results. To opt-in to a consistent ordering of snapshot fields with `{shinytest}`, please set the global option `options(shiny.snapshotsortc = TRUE)`. `{shinytest2}` users do not need to set this value. (#3515)
* The auto-reload feature (`options(shiny.autoreload=TRUE)`) was not being activated by `devmode(TRUE)`, despite a console message asserting that it was. (#3620)
* Add `shiny.mathjax.url` and `shiny.mathjax.config` options for configuring the MathJax URL used by `withMathJax`. Thanks, @Neutron3529! (#3639)
### Bug fixes
* Closed #3657: `throttle.ts` and the `Throttler` typescript objects it provides now function as intended.
* Closed tidyverse/dplyr#5552: Compatibility of dplyr 1.0 (and rlang chained errors in general) with `req()`, `validate()`, and friends.
* Closed #1545: `insertUI()` now executes `<script>` tags. (#3630)
* Closed #2955: Input and output bindings previously attempted to use `el['data-input-id']`, but that never worked. They now use `el.getAttribute('data-input-id')` instead. (#3538)
* Closed tidyverse/dplyr#6154: Values from an `actionButton()` had S3 classes in the incorrect order.
* Fixed a bug where updating an input value without a corresponding Input binding element did not trigger a JavaScript `shiny:inputchanged` event. Now, if no Input binding element is found, the `shiny:inputchanged` event is triggered on `window.document`. (#3584)
* Restored the previous behavior of automatically guessing the `Content-Type` header for `downloadHandler` functions when no explicit `contentType` argument is supplied. (#3393)
* Closed #3619: In R 4.2, `splitLayout()` raised warnings about incorrect length in an `if` statement. (Thanks to @dmenne, #3625)
* Closed #2297: If an error occurred in parsing a value in a bookmark query string, an error would be thrown and nothing would be restored. Now a message is displayed and that value is ignored. (Thanks to @daattali, #3385)
* `fileInput()` can set the `capture` attribute to facilitates user access to a device's media capture mechanism, such as a camera, or microphone, from within a file upload control ([W3C HTML Media Capture](https://www.w3.org/TR/html-media-capture/)). (Thanks to khaled-alshamaa, #3481)
* Closed rstudio/shinytest2#222: When restoring a context (i.e., bookmarking) from a URL, Shiny now better handles a trailing `=` after `_inputs_` and `_values_`. (#3648)
* Closed #3581: Errors in throttled/debounced reactive expressions no longer cause the session to exit. (#3624)
* Closed #3250:`{rlang}`/`{tidyeval}` conditions (i.e., warnings and errors) are no longer filtered from stack traces. (#3602)
shiny 1.7.1
===========
@@ -521,7 +513,7 @@ This is a significant release for Shiny, with a major new feature that was nearl
* Removed the (ridiculously outdated) "experimental feature" tag from the reference documentation for `renderUI`. (#2036)
* Addressed #1907: the `ignoreInit` argument was first added only to `observeEvent`. Later, we also added it to `eventReactive`, but forgot to update the documentation. Now done, thanks @flo12392! (#2036)
* Addressed #1907: the `ignoreInit` argument was first added only to `observeEvent`. Later, we also added it to `eventReactive`, but forgot to update the documentation. Now done, thanks [@flo12392](https://github.com/flo12392)! (#2036)
### Bug fixes
@@ -535,7 +527,7 @@ This is a significant release for Shiny, with a major new feature that was nearl
* Fixed #1600: URL-encoded bookmarking did not work with sliders that had dates or date-times. (#1961)
* Fixed #1962: [File dragging and dropping](https://www.rstudio.com/blog/shiny-1-0-4/) broke in the presence of jQuery version 3.0 as introduced by the [rhandsontable](https://jrowen.github.io/rhandsontable/) [htmlwidget](https://www.htmlwidgets.org/). (#2005)
* Fixed #1962: [File dragging and dropping](https://blog.rstudio.com/2017/08/15/shiny-1-0-4/) broke in the presence of jQuery version 3.0 as introduced by the [rhandsontable](https://jrowen.github.io/rhandsontable/) [htmlwidget](https://www.htmlwidgets.org/). (#2005)
* Improved the error handling inside the `addResourcePath()` function, to give end users more informative error messages when the `directoryPath` argument cannot be normalized. This is especially useful for `runtime: shiny_prerendered` Rmd documents, like `learnr` tutorials. (#1968)

View File

@@ -25,7 +25,6 @@
#' `- tests
#' |- testthat.R
#' `- testthat
#' |- setup-shinytest2.R
#' |- test-examplemodule.R
#' |- test-server.R
#' |- test-shinytest2.R
@@ -47,7 +46,6 @@
#' `tests/testthat/` directory using the
#' [shinytest2](https://rstudio.github.io/shinytest2/reference/test_app.html)
#' package.
#' * `tests/testthat/setup-shinytest2.R` is setup file to source your `./R` folder into the testing environment.
#' * `tests/testthat/test-examplemodule.R` is a test for an application's module server function.
#' * `tests/testthat/test-server.R` is a test for the application's server code
#' * `tests/testthat/test-shinytest2.R` is a test that uses the
@@ -128,7 +126,7 @@ shinyAppTemplate <- function(path = NULL, examples = "default", dryrun = FALSE)
}
if ("tests" %in% examples) {
rlang::check_installed("shinytest2", "for {testthat} tests to work as expected", version = "0.2.0")
rlang::check_installed("shinytest2", "for {testthat} tests to work as expected")
}
# =======================================================

View File

@@ -1,6 +1,6 @@
#' Shiny Developer Mode
#'
#' @description `r lifecycle::badge("experimental")`
#' @description \lifecycle{experimental}
#'
#' Developer Mode enables a number of [options()] to make a developer's life
#' easier, like enabling non-minified JS and printing messages about

View File

@@ -29,7 +29,7 @@ registerClient <- function(client) {
#' Define Server Functionality
#'
#' @description `r lifecycle::badge("superseded")`
#' @description \lifecycle{superseded}
#'
#' @description Defines the server-side logic of the Shiny application. This generally
#' involves creating functions that map user inputs to various kinds of output.
@@ -49,7 +49,7 @@ registerClient <- function(client) {
#' optional `session` parameter, which is used when greater control is
#' needed.
#'
#' See the [tutorial](https://shiny.rstudio.com/tutorial/) for more
#' See the [tutorial](https://rstudio.github.io/shiny/tutorial/) for more
#' on how to write a server function.
#'
#' @param func The server function for this application. See the details section
@@ -331,7 +331,7 @@ argsForServerFunc <- function(serverFunc, session) {
getEffectiveBody <- function(func) {
if (is.null(func))
NULL
else if (isS4(func) && inherits(func, "functionWithTrace"))
else if (isS4(func) && class(func) == "functionWithTrace")
body(func@original)
else
body(func)

View File

@@ -148,7 +148,7 @@ shinyDependencyCSS <- function(theme) {
#' Create a Shiny UI handler
#'
#' @description `r lifecycle::badge("superseded")`
#' @description \lifecycle{superseded}
#'
#' @description Historically this function was used in ui.R files to register a user
#' interface with Shiny. It is no longer required as of Shiny 0.10; simply

View File

@@ -16,7 +16,7 @@ Easily build rich and productive interactive web apps in R &mdash; no HTML/CSS/J
* A prebuilt set of highly sophisticated, customizable, and easy-to-use widgets (e.g., plots, tables, sliders, dropdowns, date pickers, and more).
* An attractive default look based on [Bootstrap](https://getbootstrap.com/) which can also be easily customized with the [bslib](https://github.com/rstudio/bslib) package or avoided entirely with more direct R bindings to HTML/CSS/JavaScript.
* Seamless integration with [R Markdown](https://shiny.rstudio.com/articles/interactive-docs.html), making it easy to embed numerous applications natively within a larger dynamic document.
* Tools for improving and monitoring performance, including native support for [async programming](https://www.rstudio.com/blog/shiny-1-1-0/), [caching](https://talks.cpsievert.me/20201117), [load testing](https://rstudio.github.io/shinyloadtest/), and more.
* Tools for improving and monitoring performance, including native support for [async programming](https://blog.rstudio.com/2018/06/26/shiny-1-1-0/), [caching](https://talks.cpsievert.me/20201117), [load testing](https://rstudio.github.io/shinyloadtest/), and [more](https://support.rstudio.com/hc/en-us/articles/231874748-Scaling-and-Performance-Tuning-in-RStudio-Connect).
* [Modules](https://shiny.rstudio.com/articles/modules.html): a framework for reducing code duplication and complexity.
* An ability to [bookmark application state](https://shiny.rstudio.com/articles/bookmarking-state.html) and/or [generate code to reproduce output(s)](https://github.com/rstudio/shinymeta).
* A rich ecosystem of extension packages for more [custom widgets](http://www.htmlwidgets.org/), [input validation](https://github.com/rstudio/shinyvalidate), [unit testing](https://github.com/rstudio/shinytest), and more.

View File

@@ -1,2 +0,0 @@
# Load application support files into testing environment
shinytest2::load_app_env()

File diff suppressed because one or more lines are too long

View File

@@ -1,2 +1,2 @@
/*! shiny 1.7.3 | (c) 2012-2022 RStudio, PBC. | License: GPL-3 | file LICENSE */
/*! shiny 1.7.1.9003 | (c) 2012-2022 RStudio, PBC. | License: GPL-3 | file LICENSE */
#showcase-well{border-radius:0}.shiny-code{background-color:#fff;margin-bottom:0}.shiny-code code{font-family:Menlo,Consolas,"Courier New",monospace}.shiny-code-container{margin-top:20px;clear:both}.shiny-code-container h3{display:inline;margin-right:15px}.showcase-header{font-size:16px;font-weight:normal}.showcase-code-link{text-align:right;padding:15px}#showcase-app-container{vertical-align:top}#showcase-code-tabs{margin-right:15px}#showcase-code-tabs pre{border:none;line-height:1em}#showcase-code-tabs .nav{margin-bottom:0}#showcase-code-tabs ul{margin-bottom:0}#showcase-code-tabs .tab-content{border-style:solid;border-color:#e5e5e5;border-width:0px 1px 1px 1px;overflow:auto;border-bottom-right-radius:4px;border-bottom-left-radius:4px}#showcase-app-code{width:100%}#showcase-code-position-toggle{float:right}#showcase-sxs-code{padding-top:20px;vertical-align:top}.showcase-code-license{display:block;text-align:right}#showcase-code-content pre{background-color:#fff}

File diff suppressed because one or more lines are too long

View File

@@ -1,3 +1,3 @@
/*! shiny 1.7.3 | (c) 2012-2022 RStudio, PBC. | License: GPL-3 | file LICENSE */
/*! shiny 1.7.1.9003 | (c) 2012-2022 RStudio, PBC. | License: GPL-3 | file LICENSE */
(function(){var a=eval;window.addEventListener("message",function(i){var e=i.data;e.code&&a(e.code)});})();
//# sourceMappingURL=shiny-testmode.js.map

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -42,7 +42,7 @@ In the example here, the \code{bindCache()} key consists of \code{input$x} and
\code{input$y} combined, and the value is \code{input$x * input$y}. In this simple
example, for any given key, there is only one possible returned value.
\if{html}{\out{<div class="sourceCode">}}\preformatted{r <- reactive(\{ input$x * input$y \}) \%>\%
\if{html}{\out{<div class="sourceCode NA">}}\preformatted{r <- reactive(\{ input$x * input$y \}) \%>\%
bindCache(input$x, input$y)
}\if{html}{\out{</div>}}
@@ -67,7 +67,7 @@ have a large data set with timestamps, it might make sense to extract the
most recent timestamp and return that. Then, instead of hashing the entire
data object, the cached reactive only needs to hash the timestamp.
\if{html}{\out{<div class="sourceCode">}}\preformatted{r <- reactive(\{ compute(bigdata()) \} \%>\%
\if{html}{\out{<div class="sourceCode NA">}}\preformatted{r <- reactive(\{ compute(bigdata()) \} \%>\%
bindCache(\{ extract_most_recent_time(bigdata()) \})
}\if{html}{\out{</div>}}
@@ -111,7 +111,7 @@ time that someone accesses the cached reactive. It is only re-executed if
it has been invalidated by one of the reactives it depends on. For
example, suppose we have this cached reactive:
\if{html}{\out{<div class="sourceCode">}}\preformatted{r <- reactive(\{ input$x * input$y \}) \%>\%
\if{html}{\out{<div class="sourceCode NA">}}\preformatted{r <- reactive(\{ input$x * input$y \}) \%>\%
bindCache(input$x, input$y)
}\if{html}{\out{</div>}}
@@ -276,7 +276,7 @@ cache key, in addition to the one passed to \code{bindCache()} by the user. The
cache hint can be viewed by calling the internal Shiny function
\code{extractCacheHint()}:
\if{html}{\out{<div class="sourceCode">}}\preformatted{r <- renderText(\{ input$x \})
\if{html}{\out{<div class="sourceCode NA">}}\preformatted{r <- renderText(\{ input$x \})
shiny:::extractCacheHint(r)
}\if{html}{\out{</div>}}

View File

@@ -173,7 +173,7 @@ user sets both \code{x} and \code{y}, and then clicks on an \link{actionButton}
To use both caching and events, the object should first be passed to
\code{bindCache()}, then \code{bindEvent()}. For example:
\if{html}{\out{<div class="sourceCode">}}\preformatted{r <- reactive(\{
\if{html}{\out{<div class="sourceCode NA">}}\preformatted{r <- reactive(\{
Sys.sleep(2) # Pretend this is an expensive computation
input$x * input$y
\}) \%>\%

View File

@@ -125,12 +125,12 @@ function.
}
\section{Functions}{
\itemize{
\item \code{quoToFunction()}: convert a quosure to a function.
\item \code{quoToFunction}: convert a quosure to a function.
\item \code{installExprFunction()}: converts a user's reactive \code{expr} into a
\item \code{installExprFunction}: converts a user's reactive \code{expr} into a
function that's assigned to a \code{name} in the \code{assign.env}.
}}
\examples{
# A custom render function that repeats the supplied value 3 times
renderTriple <- function(expr) {

View File

@@ -71,7 +71,7 @@ registered \code{devmode_default} value will be used.}
\code{TRUE} and the specified option is not set in \code{\link[=options]{options()}}.}
}
\description{
\ifelse{html}{\href{https://lifecycle.r-lib.org/articles/stages.html#experimental}{\figure{lifecycle-experimental.svg}{options: alt='[Experimental]'}}}{\strong{[Experimental]}}
\lifecycle{experimental}
Developer Mode enables a number of \code{\link[=options]{options()}} to make a developer's life
easier, like enabling non-minified JS and printing messages about
@@ -84,20 +84,20 @@ Please see the function descriptions for more details.
}
\section{Functions}{
\itemize{
\item \code{devmode()}: Function to set two options to enable/disable Shiny
\item \code{devmode}: Function to set two options to enable/disable Shiny
Developer Mode and Developer messages
\item \code{in_devmode()}: Determines if Shiny is in Developer Mode. If the
\item \code{in_devmode}: Determines if Shiny is in Developer Mode. If the
\code{getOption("shiny.devmode")} is set to \code{TRUE} and not in testing inside
\code{testthat}, then Shiny Developer Mode is enabled.
\item \code{with_devmode()}: Temporarily set Shiny Developer Mode and Developer
\item \code{with_devmode}: Temporarily set Shiny Developer Mode and Developer
message verbosity
\item \code{devmode_inform()}: If Shiny Developer Mode and verbosity are enabled,
\item \code{devmode_inform}: If Shiny Developer Mode and verbosity are enabled,
displays a message once every 8 hrs (by default)
\item \code{register_devmode_option()}: Registers a Shiny Developer Mode option with an updated
\item \code{register_devmode_option}: Registers a Shiny Developer Mode option with an updated
value and Developer message. This registration method allows package
authors to write one message in a single location.
@@ -138,7 +138,7 @@ register_devmode_option(
)
}\if{html}{\out{</div>}}
\item \code{get_devmode_option()}: Provides a consistent way to change the expected
\item \code{get_devmode_option}: Provides a consistent way to change the expected
\code{\link[=getOption]{getOption()}} behavior when Developer Mode is enabled. This method is very
similar to \code{\link[=getOption]{getOption()}} where the globally set option takes precedence.
See section "Avoiding direct dependency on shiny" for
@@ -148,8 +148,8 @@ See section "Avoiding direct dependency on shiny" for
\code{register_devmode_option()} to avoid supplying the same \code{devmode_default}
and \code{devmode_message} values throughout your package. (This requires a
\pkg{shiny} dependency.)
}}
\section{Avoiding direct dependency on shiny}{

View File

@@ -51,11 +51,11 @@ of the source code of your reactive expressions and observers.
}
\section{Functions}{
\itemize{
\item \code{reactlog()}: Return a list of reactive information. Can be used in conjunction with
\item \code{reactlog}: Return a list of reactive information. Can be used in conjunction with
\link[reactlog:reactlog_show]{reactlog::reactlog_show} to later display the reactlog graph.
\item \code{reactlogShow()}: Display a full reactlog graph for all sessions.
\item \code{reactlogReset()}: Resets the entire reactlog stack. Useful for debugging and removing all prior reactive history.
\item \code{reactlogShow}: Display a full reactlog graph for all sessions.
\item \code{reactlogReset}: Resets the entire reactlog stack. Useful for debugging and removing all prior reactive history.
}}

View File

@@ -45,7 +45,6 @@ following files and directories is created:
`- tests
|- testthat.R
`- testthat
|- setup-shinytest2.R
|- test-examplemodule.R
|- test-server.R
|- test-shinytest2.R
@@ -68,7 +67,6 @@ choose to use or remove any of them. They can be executed by the
\verb{tests/testthat/} directory using the
\href{https://rstudio.github.io/shinytest2/reference/test_app.html}{shinytest2}
package.
\item \code{tests/testthat/setup-shinytest2.R} is setup file to source your \code{./R} folder into the testing environment.
\item \code{tests/testthat/test-examplemodule.R} is a test for an application's module server function.
\item \code{tests/testthat/test-server.R} is a test for the application's server code
\item \code{tests/testthat/test-shinytest2.R} is a test that uses the

View File

@@ -11,7 +11,7 @@ shinyServer(func)
for more information.}
}
\description{
\ifelse{html}{\href{https://lifecycle.r-lib.org/articles/stages.html#superseded}{\figure{lifecycle-superseded.svg}{options: alt='[Superseded]'}}}{\strong{[Superseded]}}
\lifecycle{superseded}
Defines the server-side logic of the Shiny application. This generally
involves creating functions that map user inputs to various kinds of output.
@@ -31,7 +31,7 @@ the Shiny application's page. It must take an \code{input} and an
optional \code{session} parameter, which is used when greater control is
needed.
See the \href{https://shiny.rstudio.com/tutorial/}{tutorial} for more
See the \href{https://rstudio.github.io/shiny/tutorial/}{tutorial} for more
on how to write a server function.
}
\examples{

View File

@@ -13,7 +13,7 @@ shinyUI(ui)
The user interface definition, without modifications or side effects.
}
\description{
\ifelse{html}{\href{https://lifecycle.r-lib.org/articles/stages.html#superseded}{\figure{lifecycle-superseded.svg}{options: alt='[Superseded]'}}}{\strong{[Superseded]}}
\lifecycle{superseded}
Historically this function was used in ui.R files to register a user
interface with Shiny. It is no longer required as of Shiny 0.10; simply

View File

@@ -29,12 +29,12 @@ Create a tab panel
}
\section{Functions}{
\itemize{
\item \code{tabPanel()}: Create a tab panel that can be included within a \code{\link[=tabsetPanel]{tabsetPanel()}} or a \code{\link[=navbarPage]{navbarPage()}}.
\item \code{tabPanel}: Create a tab panel that can be included within a \code{\link[=tabsetPanel]{tabsetPanel()}} or a \code{\link[=navbarPage]{navbarPage()}}.
\item \code{tabPanelBody()}: Create a tab panel that drops the title argument.
\item \code{tabPanelBody}: Create a tab panel that drops the title argument.
This function should be used within \code{tabsetPanel(type = "hidden")}. See \code{\link[=tabsetPanel]{tabsetPanel()}} for example usage.
}}
\examples{
# Show a tabset that includes a plot, summary, and
# table view of the generated distribution

View File

@@ -3,7 +3,7 @@
"homepage": "https://shiny.rstudio.com",
"repository": "github:rstudio/shiny",
"name": "@types/rstudio-shiny",
"version": "1.7.3",
"version": "1.7.1-alpha.9003",
"license": "GPL-3.0-only",
"main": "",
"browser": "",

View File

@@ -1,12 +1,944 @@
# Platform
|field |value |
|:--------|:----------------------------|
|version |R version 4.0.0 (2020-04-24) |
|os |macOS Catalina 10.15.5 |
|system |x86_64, darwin17.0 |
|ui |X11 |
|language |(EN) |
|collate |en_US.UTF-8 |
|ctype |en_US.UTF-8 |
|tz |America/New_York |
|date |2020-06-19 |
# Dependencies
|package |old |new |Δ |
|:-------|:-------|:-----|:--|
|shiny |1.4.0.2 |1.5.0 |* |
# Revdeps
## Failed to check (5)
## Failed to check (3)
|package |version |error |warning |note |
|:----------|:-------|:-----|:-------|:----|
|ctsem |3.6.0 |1 | | |
|diveR |? | | | |
|loon.shiny |? | | | |
|NA |? | | | |
|SSVS |? | | | |
|package |version |error |warning |note |
|:--------------------------------------|:-------|:-----|:-------|:----|
|[frailtypack](failures.md#frailtypack) |3.3.0 |1 | | |
|[Rariant](failures.md#rariant) |1.24.0 |1 | | |
|[skeleSim](failures.md#skelesim) |0.9.8 |1 | | |
## New problems (2)
|package |version |error |warning |note |
|:--------------------------------------------|:-------|:------|:-------|:--------|
|[bsplus](problems.md#bsplus) |0.1.1 |__+1__ | |1 |
|[RforProteomics](problems.md#rforproteomics) |1.26.0 | |1 |2 __+1__ |
## All (902)
|package |version |error |warning |note |
|:------------------------------------------------------------------------|:----------|:------|:-------|:--------|
|[aaSEA](problems.md#aasea) |1.1.0 | | |1 |
|ABACUS |1.0.0 | | | |
|abstractr |0.1.0 | | | |
|[ADAMgui](problems.md#adamgui) |1.4.0 | | |2 |
|[adapr](problems.md#adapr) |2.0.0 | | |1 |
|AdaptGauss |1.5.6 | | | |
|adaptiveGPCA |0.1.2 | | | |
|addinslist |0.3 | | | |
|addinsOutline |0.1.6 | | | |
|[adegenet](problems.md#adegenet) |2.1.3 | | |1 |
|[adepro](problems.md#adepro) |3.0.0 | | |1 |
|adespatial |0.3-8 | | | |
|[AdhereRViz](problems.md#adhererviz) |0.1.0 | | |1 |
|AFheritability |0.1.0 | | | |
|AFM |1.2.6 | | | |
|ahp |0.2.12 | | | |
|airGRteaching |0.2.8.69 | | | |
|[alevinQC](problems.md#alevinqc) |1.4.0 | | |1 |
|AMModels |0.1.4 | | | |
|AmpGram |1.0 | | | |
|[AMPLE](problems.md#ample) |0.0.2 | | |1 |
|AmyloGram |1.1 | | | |
|[analysisPipelines](problems.md#analysispipelines) |1.0.2 | | |1 |
|[animalcules](problems.md#animalcules) |1.4.0 |-1 | |4 |
|[animaltracker](problems.md#animaltracker) |0.1.0 | | |1 |
|[animint2](problems.md#animint2) |2019.7.3 |2 | |2 |
|aniview |0.1.0 | | | |
|[ANOVAIREVA](problems.md#anovaireva) |0.1.0 | | |1 |
|ANOVAreplication |1.1.4 | | | |
|[ANOVAShiny](problems.md#anovashiny) |0.1.0 | | |1 |
|antaresRead |2.2.5 | | | |
|antaresViz |0.15.2 | | | |
|AnthropMMD |3.0.1 | | | |
|[antitrust](problems.md#antitrust) |0.99.11 | | |1 |
|aos |0.1.0 | | | |
|[apexcharter](problems.md#apexcharter) |0.1.4 | | |1 |
|[appreci8R](problems.md#appreci8r) |1.6.0 |1 | | |
|[ArchaeoPhases](problems.md#archaeophases) |1.4.5 | | |1 |
|archivist |2.3.4 | | | |
|[arena2r](problems.md#arena2r) |1.0.0 | | |1 |
|argonDash |0.2.0 | | | |
|argonR |0.2.0 | | | |
|ARPobservation |1.2.0 | | | |
|arulesViz |1.3-3 | | | |
|asciiSetupReader |2.3.1 | | | |
|[ASSOCShiny](problems.md#assocshiny) |0.1.0 | | |1 |
|[AUCell](problems.md#aucell) |1.10.0 | | |4 |
|auth0 |0.2.1 | | | |
|AutoDeskR |0.1.3 | | | |
|autoshiny |0.0.2 | | | |
|[autoTS](problems.md#autots) |0.9.11 | | |1 |
|AzureAuth |1.2.4 | | | |
|azuremlsdk |0.6.85 | | | |
|backpipe |0.2.3 | | | |
|bairt |0.1.2 | | | |
|baRcodeR |0.1.5 | | | |
|[BARIS](problems.md#baris) |1.1.1 | | |1 |
|basictabler |0.3.1 | | | |
|[BatchQC](problems.md#batchqc) |1.16.0 |1 | |1 |
|[BayesBD](problems.md#bayesbd) |1.2 |1 | | |
|BayesianFROC |0.2.3 | | | |
|[BayesianNetwork](problems.md#bayesiannetwork) |0.1.5 | | |1 |
|[BayesNetBP](problems.md#bayesnetbp) |1.5.2 | | |1 |
|[BBEST](problems.md#bbest) |0.1-6 |1 | | |
|[BCEA](problems.md#bcea) |2.3-1.1 | | |1 |
|[bdchecks](problems.md#bdchecks) |0.1.7 | | |1 |
|[bdclean](problems.md#bdclean) |0.1.15 | | |1 |
|bdDwC |0.1.15 | | | |
|[bde](problems.md#bde) |1.0.1 | | |1 |
|BDEsize |1.2 | | | |
|BDP2 |0.1.3 | | | |
|[bea.R](problems.md#bear) |1.0.6 | | |1 |
|BEACH |1.3.1 | | | |
|[beanz](problems.md#beanz) |2.4 | | |3 |
|beats |0.1.1 | | | |
|[bestSDP](problems.md#bestsdp) |0.1.2 | | |1 |
|[BETS](problems.md#bets) |0.4.9 | |2 |1 |
|[bibliometrix](problems.md#bibliometrix) |3.0.2 | | |1 |
|BIGL |1.4.3 | | | |
|[bigPint](problems.md#bigpint) |1.4.0 | | |1 |
|[bigQueryR](problems.md#bigqueryr) |0.5.0 | | |1 |
|[billboarder](problems.md#billboarder) |0.2.8 | | |1 |
|[binovisualfields](problems.md#binovisualfields) |0.1.1 | | |1 |
|[bioCancer](problems.md#biocancer) |1.16.0 | |1 |2 |
|[BiocOncoTK](problems.md#bioconcotk) |1.8.0 |1 | |3 |
|[BioInstaller](problems.md#bioinstaller) |0.3.7 | | |1 |
|[BioNetStat](problems.md#bionetstat) |1.8.4 | | |4 |
|[BIRDS](problems.md#birds) |0.1 | | |2 |
|[biva](problems.md#biva) |0.1.0 | | |1 |
|[blkbox](problems.md#blkbox) |1.0 | | |2 |
|[blockCV](problems.md#blockcv) |2.1.1 | | |1 |
|blogdown |0.19 | | | |
|[BLRShiny](problems.md#blrshiny) |0.1.0 | | |1 |
|bookdown |0.19 | | | |
|bpbounds |0.1.4 | | | |
|bridger2 |0.1.0 | | | |
|bs4Dash |0.5.0 | | | |
|bSims |0.2-1 | | | |
|[bsplus](problems.md#bsplus) |0.1.1 |__+1__ | |1 |
|bullwhipgame |0.1.0 | | | |
|bunchr |1.2.0 | | | |
|bupaR |0.4.4 | | | |
|[caffsim](problems.md#caffsim) |0.2.2 | | |1 |
|CamelUp |0.1.1 | | | |
|[canvasXpress](problems.md#canvasxpress) |1.27.6-1 | | |1 |
|[CaPO4Sim](problems.md#capo4sim) |0.1.0 | | |1 |
|[cartools](problems.md#cartools) |0.1.0 | | |1 |
|causaloptim |0.7.1 | | | |
|cbsodataR |0.4.1 | | | |
|[ChAMP](problems.md#champ) |2.18.2 |1 | | |
|ChannelAttributionApp |1.2 | | | |
|cheatR |1.2.1 | | | |
|[CHETAH](problems.md#chetah) |1.4.0 | | |2 |
|[chipPCR](problems.md#chippcr) |0.0.8-10 | | |1 |
|[chromoMap](problems.md#chromomap) |0.2 | | |1 |
|chromVAR |1.10.0 | | | |
|[cicerone](problems.md#cicerone) |1.0.1 | | |1 |
|Cite |0.1.0 | | | |
|citr |0.3.2 | | | |
|[cjoint](problems.md#cjoint) |2.1.0 | | |2 |
|CLME |2.0-12 | | | |
|[clustDRM](problems.md#clustdrm) |0.1-0 | | |1 |
|[CLUSTShiny](problems.md#clustshiny) |0.1.0 | | |1 |
|cmsaf |2.0.1 |-1 | | |
|[CMShiny](problems.md#cmshiny) |0.1.0 | | |1 |
|cNORM |1.2.3 | | | |
|[CNVPanelizer](problems.md#cnvpanelizer) |1.20.0 | | |1 |
|CNVScope |3.0.9 | | | |
|[cocktailApp](problems.md#cocktailapp) |0.2.1 | | |1 |
|[codebook](problems.md#codebook) |0.9.2 | | |2 |
|[cognitoR](problems.md#cognitor) |1.0.1 | | |1 |
|colocr |0.1.1 | | | |
|colorspace |1.4-1 | | | |
|colourpicker |1.0 | | | |
|compareGroups |4.4.1 | | | |
|[COMPASS](problems.md#compass) |1.26.0 | | |3 |
|[competitiontoolbox](problems.md#competitiontoolbox) |0.1.2 | | |1 |
|complexity |1.1.1 | | | |
|condformat |0.9.0 | | | |
|condir |0.1.2 | | | |
|condvis |0.5-1 | | | |
|condvis2 |0.1.0 | | | |
|[conflr](problems.md#conflr) |0.1.1 | | |1 |
|convertr |0.1 | | | |
|[CoRegNet](problems.md#coregnet) |1.26.0 | |1 |2 |
|[corporaexplorer](problems.md#corporaexplorer) |0.8.2 | | |1 |
|[cosinor](problems.md#cosinor) |1.1 | | |1 |
|countfitteR |1.0 | | | |
|[coveffectsplot](problems.md#coveffectsplot) |0.0.9 | | |1 |
|[CRANsearcher](problems.md#cransearcher) |1.0.0 | | |1 |
|[crawl](problems.md#crawl) |2.2.1 | | |1 |
|credsubs |1.1.0 | | | |
|[crispRdesignR](problems.md#crisprdesignr) |1.1.5 | | |1 |
|[crisprseekplus](problems.md#crisprseekplus) |1.14.0 | | |1 |
|cromwellDashboard |0.5.1 | | | |
|cronR |0.4.0 | | | |
|[CrossICC](problems.md#crossicc) |1.2.0 | | |1 |
|[crossmeta](problems.md#crossmeta) |1.14.0 | |1 |2 |
|crosstalk |1.1.0.1 | | | |
|crunchy |0.3.1 | | | |
|[CSUV](problems.md#csuv) |0.1.0 |1 | | |
|[CTAShiny](problems.md#ctashiny) |0.1.0 | | |1 |
|[ctsem](problems.md#ctsem) |3.2.1 | | |3 |
|ctsGE |1.14.0 | | | |
|[CTShiny](problems.md#ctshiny) |0.1.0 | | |1 |
|CTTinShiny |0.1.0 | | | |
|CTTShiny |0.1 | | | |
|cubeview |0.2.0 | | | |
|[CVE](problems.md#cve) |1.11.2 |1 |1 |2 |
|cydar |1.12.0 | | | |
|CytobankAPIstats |2.0 | | | |
|d3heatmap |0.6.1.2 | | | |
|[d3Tree](problems.md#d3tree) |0.2.0 | | |1 |
|daqapo |0.3.0 | | | |
|[datacheck](problems.md#datacheck) |1.2.2 | | |2 |
|[datadigest](problems.md#datadigest) |1.0.2 | | |1 |
|[dataesgobr](problems.md#dataesgobr) |1.0.0 | | |1 |
|datamaps |0.0.3 | | | |
|datasets.load |1.4.0 | | | |
|daterangepicker |0.1.0 | | | |
|dccvalidator |0.2.0 | | | |
|ddpcr |1.15 | | | |
|[debrowser](problems.md#debrowser) |1.16.1 | | |1 |
|deepdep |0.2.1 | | | |
|deisotoper |0.0.7 | | | |
|[delayed](problems.md#delayed) |0.3.0 | | |1 |
|demoShiny |0.1 | | | |
|[DEP](problems.md#dep) |1.10.0 | | |1 |
|[detzrcr](problems.md#detzrcr) |0.3.0 | | |1 |
|dextergui |0.2.2 | | | |
|diffr |0.1 | | | |
|dipsaus |0.0.7 | | | |
|[DiscoRhythm](problems.md#discorhythm) |1.4.0 | | |2 |
|discoveR |1.2.4 | | | |
|disk.frame |0.3.6 | | | |
|distcomp |1.1 | | | |
|distill |0.8 | | | |
|distreg.vis |1.7.0 | | | |
|Distributacalcul |0.2.2 | | | |
|[diveRsity](problems.md#diversity) |1.9.90 | | |1 |
|DIZutils |0.0.4 | | | |
|[DLMtool](problems.md#dlmtool) |5.4.5 | | |1 |
|dmdScheme |1.2 | | | |
|[Doscheda](problems.md#doscheda) |1.10.0 | | |1 |
|[dosedesignR](problems.md#dosedesignr) |0.2.4 | | |1 |
|dpcR |0.5 | | | |
|[dplyrAssist](problems.md#dplyrassist) |0.1.0 | | |1 |
|dqshiny |0.0.4 | | | |
|[dragon](problems.md#dragon) |0.2.1 | | |1 |
|dragulaR |0.3.1 | | | |
|DRomics |2.0-1 | | | |
|[dropR](problems.md#dropr) |0.1 | | |1 |
|DSAIDE |0.8.3 | | | |
|DSAIRM |0.8.2 | | | |
|DT |0.13 | | | |
|DTAT |0.3-4 | | | |
|[dtwclust](problems.md#dtwclust) |5.5.6 | | |1 |
|[DVHmetrics](problems.md#dvhmetrics) |0.3.10 | | |1 |
|[dynamichazard](problems.md#dynamichazard) |0.6.6 | | |1 |
|DynNom |5.0.1 | | | |
|Eagle |2.2 | | | |
|eAnalytics |0.1.4 | | | |
|easySdcTable |0.5.0 | | | |
|[EBImage](problems.md#ebimage) |4.30.0 | |1 |1 |
|ECharts2Shiny |0.2.13 | | | |
|echarts4r |0.3.2 | | | |
|edeaR |0.8.5 | | | |
|edgebundleR |0.1.4 | | | |
|editData |0.1.2 | | | |
|eechidna |1.4.0 | | | |
|eemR |1.0.1 | | | |
|EffectLiteR |0.4-4 | | | |
|[effectR](problems.md#effectr) |1.0.2 | | |1 |
|egor |0.20.06 | | | |
|einet |0.1.0 | | | |
|elaborator |1.0 | | | |
|[elementR](problems.md#elementr) |1.3.6 |1 | | |
|[embryogrowth](problems.md#embryogrowth) |7.6 | | |1 |
|[EML](problems.md#eml) |2.0.2 | | |1 |
|EMMAgeo |0.9.7 | | | |
|EMSaov |2.3 | | | |
|emuR |2.1.0 | | | |
|[ENCODExplorer](problems.md#encodexplorer) |2.14.0 | | |1 |
|[enviGCMS](problems.md#envigcms) |0.6.6 | | |1 |
|enviPick |1.5 | | | |
|[epicontacts](problems.md#epicontacts) |1.1.0 | | |1 |
|epimdr |0.6-5 | | | |
|EpiModel |1.8.0 | | | |
|[EpiSignalDetection](problems.md#episignaldetection) |0.1.1 | | |1 |
|[epivizrChart](problems.md#epivizrchart) |1.10.0 | | |2 |
|eq5d |0.7.1 | | | |
|[erma](problems.md#erma) |1.4.0 | | |2 |
|ERSA |0.1.1 | | | |
|eSDM |0.3.4 | | | |
|eseis |0.5.0 | | | |
|esquisse |0.3.0 | | | |
|EurosarcBayes |1.1 | | | |
|evaluator |0.4.2 | | | |
|EventDetectGUI |0.3.0 | | | |
|[EventStudy](problems.md#eventstudy) |0.36 | | |2 |
|evobiR |1.1 | | | |
|excelR |0.4.0 | | | |
|ExPanDaR |0.5.1 | | | |
|explor |0.3.6 | | | |
|explore |0.5.5 | | | |
|ExploreModelMatrix |1.0.1 | | | |
|[ezplot](problems.md#ezplot) |0.6.1 | | |1 |
|Factoshiny |2.2 | | | |
|fanplot |3.4.2 | | | |
|[farrell](problems.md#farrell) |0.2.0 | | |1 |
|[FastqCleaner](problems.md#fastqcleaner) |1.6.0 | | |2 |
|[FELLA](problems.md#fella) |1.8.0 |1 | |1 |
|findviews |0.1.3 | | | |
|fingertipsR |1.0.4 | | | |
|[firebase](problems.md#firebase) |0.1.0 | | |1 |
|[fitteR](problems.md#fitter) |0.1.0 | | |1 |
|[fitur](problems.md#fitur) |0.6.1 | | |1 |
|flacco |1.8 | | | |
|[flair](problems.md#flair) |0.0.2 | | |1 |
|flexdashboard |0.5.1.1 | | | |
|[flora](problems.md#flora) |0.3.4 | | |1 |
|[flowAI](problems.md#flowai) |1.18.2 | | |1 |
|[flowcatchR](problems.md#flowcatchr) |1.22.0 | | |2 |
|flowPloidy |1.14.0 | | | |
|formatR |1.7 | | | |
|formattable |0.2.0.1 | | | |
|[frailtypack](failures.md#frailtypack) |3.3.0 |1 | | |
|FreqProf |0.0.1 | | | |
|frequency |0.4.0 | | | |
|fresh |0.2.0 | | | |
|[FSK2R](problems.md#fsk2r) |0.1.1 |1 | | |
|[FunChIP](problems.md#funchip) |1.14.0 |1 | | |
|FuzzyR |2.3 | | | |
|G2Sd |2.1.5 | | | |
|[g3viz](problems.md#g3viz) |1.1.2 | | |1 |
|[GA4GHshiny](problems.md#ga4ghshiny) |1.10.0 |1 | |1 |
|[gamesGA](problems.md#gamesga) |1.1.3.7 | | |1 |
|[gastempt](problems.md#gastempt) |0.5.0 | | |3 |
|gazepath |1.3 | | | |
|[GDCRNATools](problems.md#gdcrnatools) |1.8.0 | | |3 |
|GDINA |2.8.0 | | | |
|genBaRcode |1.2.3 | | | |
|[genBart](problems.md#genbart) |1.0.1 | | |1 |
|[GeneNetworkBuilder](problems.md#genenetworkbuilder) |1.30.0 | | |1 |
|GeneralizedUmatrix |1.1.9 | | | |
|[GenEst](problems.md#genest) |1.4.4 | | |1 |
|[GeneTonic](problems.md#genetonic) |1.0.1 | | |2 |
|genogeographer |0.1.19 | | | |
|[GenomicScores](problems.md#genomicscores) |2.0.0 |1 | |4 |
|genTS |0.1.3 | | | |
|geodrawr |1.0.1 | | | |
|[GerminaR](problems.md#germinar) |1.4.2 | | |1 |
|gestate |1.4.0 | | | |
|getTBinR |0.7.1 | | | |
|gfonts |0.1.1 | | | |
|[ggedit](problems.md#ggedit) |0.3.1 | | |1 |
|[ggExtra](problems.md#ggextra) |0.9 | | |1 |
|ggiraph |0.7.0 | | | |
|[ggplotAssist](problems.md#ggplotassist) |0.1.3 | | |1 |
|ggplotgui |1.0.0 | | | |
|[ggquickeda](problems.md#ggquickeda) |0.1.6 | | |1 |
|ggraptR |1.2 | | | |
|ggThemeAssist |0.1.5 | | | |
|ggvis |0.4.5 | | | |
|gimmeTools |0.1 | | | |
|giphyr |0.2.0 | | | |
|gitgadget |0.5.2 | | | |
|gitlabr |1.1.6 | | | |
|gitlink |0.1.3 | | | |
|glmaag |0.0.6 | | | |
|GMCM |1.4 | | | |
|[gmDatabase](problems.md#gmdatabase) |0.5.0 | |2 |1 |
|[GmicR](problems.md#gmicr) |1.2.0 | | |3 |
|GMSE |0.6.0.4 | | | |
|[GOFShiny](problems.md#gofshiny) |0.1.0 | | |1 |
|golem |0.2.1 | | | |
|googleAnalyticsR |0.7.1 | | | |
|googleAuthR |1.3.0 | | | |
|googleCloudRunner |0.2.0 | | | |
|googleLanguageR |0.3.0 | | | |
|googleVis |0.6.5 | | | |
|googleway |2.7.1 | | | |
|[GPA](problems.md#gpa) |1.0.0 | | |1 |
|GPoM.FDLyapu |1.0 | | | |
|[gQTLstats](problems.md#gqtlstats) |1.20.0 | | |4 |
|gradientPickerD3 |0.1.0.0 | | | |
|[gravitas](problems.md#gravitas) |0.1.2 |2 | | |
|[gridsampler](problems.md#gridsampler) |0.6 | | |1 |
|[GSCA](problems.md#gsca) |2.17.0 | | |3 |
|GSVA |1.36.2 | | | |
|[gt](problems.md#gt) |0.2.1 | | |2 |
|guiplot |0.1.0 | | | |
|[gwdegree](problems.md#gwdegree) |0.1.1 | | |1 |
|GWSDAT |3.0.3 | | | |
|[HaDeX](problems.md#hadex) |1.2.1 | | |2 |
|HARtools |0.0.5 | | | |
|[hchinamap](problems.md#hchinamap) |0.1.0 | | |1 |
|HelpersMG |4.2 | | | |
|HH |3.1-40 | | | |
|[highcharter](problems.md#highcharter) |0.7.0 | | |1 |
|highlightHTML |0.2.5 | | | |
|hpackedbubble |0.1.0 | | | |
|hR |0.2.1 | | | |
|[HumanTranscriptomeCompendium](problems.md#humantranscriptomecompendium) |1.4.0 |2 | | |
|[hwordcloud](problems.md#hwordcloud) |0.1.0 | | |1 |
|iAdapt |0.1.0 | | | |
|iCellR |1.5.1 | | | |
|iCOBRA |1.16.0 | | | |
|ICSShiny |0.5 | | | |
|[ideal](problems.md#ideal) |1.12.1 | | |1 |
|[idefix](problems.md#idefix) |0.4.3 | | |1 |
|[idem](problems.md#idem) |5.0 | | |2 |
|ifaTools |0.21 | | | |
|igraphinshiny |0.1 | | | |
|iheatmapr |0.4.12 | | | |
|imagefluency |0.2.3 | | | |
|Imetagene |1.18.0 | | | |
|[immunarch](problems.md#immunarch) |0.6.5 | | |2 |
|IMP |1.1 | | | |
|ImportExport |1.1 | | | |
|[IMWatson](problems.md#imwatson) |0.5.0 | | |1 |
|[IncucyteDRC](problems.md#incucytedrc) |0.5.4 |1 | | |
|[INDperform](problems.md#indperform) |0.2.2 |2 | |1 |
|inferr |0.3.0 | | | |
|[inlabru](problems.md#inlabru) |2.1.13 | | |2 |
|[INSPEcT](problems.md#inspect) |1.18.0 | | |2 |
|[interactiveDisplay](problems.md#interactivedisplay) |1.26.0 | |1 |2 |
|interactiveDisplayBase |1.26.3 | | | |
|[interAdapt](problems.md#interadapt) |0.1 | | |2 |
|interimApp |0.0.1 | | | |
|[IOHanalyzer](problems.md#iohanalyzer) |0.1.3 | | |2 |
|ioncopy |2.1.1 | | | |
|ipc |0.1.3 | | | |
|ipumsr |0.4.4 | | | |
|irtDemo |0.1.4 | | | |
|IRTShiny |1.2 | | | |
|[iSEE](problems.md#isee) |2.0.0 |2 | |2 |
|[iSEEu](problems.md#iseeu) |1.0.1 |2 | | |
|[iSTATS](problems.md#istats) |1.4 | | |1 |
|[ivygapSE](problems.md#ivygapse) |1.10.0 | | |2 |
|JMbayes |0.8-85 | | | |
|JointNets |2.0.1 | | | |
|[jpmesh](problems.md#jpmesh) |1.2.1 | | |1 |
|[jpndistrict](problems.md#jpndistrict) |0.3.7 | | |1 |
|[jsmodule](problems.md#jsmodule) |1.0.8 | | |1 |
|KappaGUI |2.0.2 | | | |
|KCSKNNShiny |0.1.0 | | | |
|KCSNBShiny |0.1.0 | | | |
|kgc |1.0.0.2 | | | |
|kgschart |1.3.5 | | | |
|[KNNShiny](problems.md#knnshiny) |0.1.0 | | |1 |
|[kokudosuuchi](problems.md#kokudosuuchi) |0.4.2 | | |1 |
|[koRpus](problems.md#korpus) |0.11-5 | | |1 |
|lavaan.shiny |1.2 | | | |
|LBSPR |0.1.5 | | | |
|lcars |0.3.1 | | | |
|lcsm |0.1.1 | | | |
|LDAvis |0.3.2 | | | |
|leaflet |2.0.3 | | | |
|[leaflet.extras2](problems.md#leafletextras2) |1.0.0 | | |1 |
|leaflet.minicharts |0.6.0 | | | |
|learnr |0.10.1 | | | |
|[learnstats](problems.md#learnstats) |0.1.1 | | |1 |
|[levi](problems.md#levi) |1.6.0 | | |2 |
|lifelogr |0.1.0 | | | |
|lightsout |0.3 | | | |
|[likert](problems.md#likert) |1.3.5 | | |1 |
|lime |0.5.1 | | | |
|linguisticsdown |1.2.0 | | | |
|linkspotter |1.2.0 | | | |
|linpk |1.0 | | | |
|listviewer |3.0.0 | | | |
|[live](problems.md#live) |1.5.13 | | |1 |
|[lmviz](problems.md#lmviz) |0.1.2 | | |1 |
|manipulateWidget |0.10.1 | | | |
|[mapdeck](problems.md#mapdeck) |0.3.3 | | |1 |
|[mapedit](problems.md#mapedit) |0.6.0 | | |1 |
|markdownInput |0.1.2 | | | |
|matman |1.1.0 | | | |
|MAVIS |1.1.3 | | | |
|MazamaSpatialUtils |0.6.4 | | | |
|MCPModPack |0.2 |-1 | | |
|mcvis |1.0.4 | | | |
|[MDSPCAShiny](problems.md#mdspcashiny) |0.1.0 | | |1 |
|meltt |0.4.1 | | | |
|[memapp](problems.md#memapp) |2.13 | | |1 |
|[memery](problems.md#memery) |0.5.2 | | |1 |
|merTools |0.5.0 | | | |
|[meta4diag](problems.md#meta4diag) |2.0.8 | | |1 |
|MetaAnalyser |0.2.1 | | | |
|metamer |0.2.0 | | | |
|metathis |1.0.2 | | | |
|[MetCirc](problems.md#metcirc) |1.18.0 | | |2 |
|[MethylAid](problems.md#methylaid) |1.22.0 |2 | |1 |
|[methylGSA](problems.md#methylgsa) |1.6.1 | | |1 |
|metricsgraphics |0.9.0 | | | |
|[mgcViz](problems.md#mgcviz) |0.1.6 | | |1 |
|[microhaplot](problems.md#microhaplot) |1.0.1 | | |1 |
|microsamplingDesign |1.0.7 | | | |
|midas |1.0.1 | | | |
|MIMSunit |0.9.1 | | | |
|[miniMeta](problems.md#minimeta) |0.2 | | |1 |
|miniUI |0.1.1.1 | | | |
|[miRcomp](problems.md#mircomp) |1.18.0 | |1 | |
|mirt |1.32.1 | | | |
|mirtCAT |1.9.3 | | | |
|[MLDAShiny](problems.md#mldashiny) |0.1.0 | | |1 |
|mldr |0.4.3 | | | |
|[MLInterfaces](problems.md#mlinterfaces) |1.68.0 | | |5 |
|[mlr3shiny](problems.md#mlr3shiny) |0.1.1 | | |1 |
|[MLRShiny](problems.md#mlrshiny) |0.1.0 | | |1 |
|[MLRShiny2](problems.md#mlrshiny2) |0.1.0 | | |1 |
|mlxR |4.1.3 | | | |
|[MMDiff2](problems.md#mmdiff2) |1.16.0 | | |4 |
|[MNLR](problems.md#mnlr) |0.1.0 | | |1 |
|modest |0.3-1 | | | |
|MODIStsp |1.4.0 | | | |
|Mondrian |1.1.0 | | | |
|mplot |1.0.4 | | | |
|mrMLM.GUI |4.0 | | | |
|[MSEtool](problems.md#msetool) |1.6.0 | | |1 |
|[MSGFgui](problems.md#msgfgui) |1.22.0 |1 | | |
|[MSnbase](problems.md#msnbase) |2.14.2 | | |3 |
|MSstatsQCgui |1.8.0 | | | |
|[mstrio](problems.md#mstrio) |11.2.1 | | |1 |
|MtreeRing |1.4.2 | | | |
|[MuChPoint](problems.md#muchpoint) |0.6.1 | | |1 |
|multichull |1.0.0 | | | |
|mwaved |1.1.7 | | | |
|mwshiny |2.1.0 | | | |
|NACHO |1.0.1 | | | |
|[nbc4va](problems.md#nbc4va) |1.1 |1 | |1 |
|[NBShiny](problems.md#nbshiny) |0.1.0 | | |1 |
|[NBShiny2](problems.md#nbshiny2) |0.1.0 | | |1 |
|[NDP](problems.md#ndp) |0.1.0 | | |1 |
|[neo4r](problems.md#neo4r) |0.1.1 | | |1 |
|netCoin |1.1.25 | | | |
|netrankr |0.2.1 | | | |
|nlgeocoder |0.1.3 | | | |
|NNTbiomarker |0.29.11 | | | |
|normalr |1.0.0 | | | |
|nph |2.0 | | | |
|[nprcgenekeepr](problems.md#nprcgenekeepr) |1.0.3 | | |1 |
|npregfast |1.5.1 | | | |
|nse2r |0.1.2 | | | |
|objectremover |0.7.0 | | | |
|[oceanis](problems.md#oceanis) |1.7.3 | | |2 |
|[omicplotR](problems.md#omicplotr) |1.8.0 | | |2 |
|[oneSENSE](problems.md#onesense) |1.10.0 | |1 |1 |
|[ontoProc](problems.md#ontoproc) |1.10.0 |1 | |3 |
|[oolong](problems.md#oolong) |0.3.4 | | |1 |
|OpenImageR |1.1.7 | | | |
|[openmetrics](problems.md#openmetrics) |0.1.1 | | |1 |
|[openPrimeRui](problems.md#openprimerui) |1.10.0 | | |2 |
|[oppr](problems.md#oppr) |1.0.2 | | |1 |
|optimStrat |2.1 | | | |
|OWEA |0.1.1 | | | |
|[pairsD3](problems.md#pairsd3) |0.1.0 | | |1 |
|[PanVizGenerator](problems.md#panvizgenerator) |1.16.0 | | |1 |
|ParallelLogger |2.0.0 | | | |
|paramGUI |2.1.4 | | | |
|parcoords |1.0.0 | | | |
|[PathoStat](problems.md#pathostat) |1.14.0 | | |1 |
|pcadapt |4.3.3 | | | |
|[pcaExplorer](problems.md#pcaexplorer) |2.14.2 | | |2 |
|[pcFactorStan](problems.md#pcfactorstan) |1.5.1 | | |2 |
|PCRedux |1.0-6 | | | |
|pdfsearch |0.3.0 | | | |
|PDShiny |0.1.0 | | | |
|PELVIS |2.0.1 | | | |
|[pepStat](problems.md#pepstat) |1.22.0 | | |3 |
|periscope |0.4.10-1 | | | |
|[phenocamr](problems.md#phenocamr) |1.1.4 | | |1 |
|phenofit |0.2.7 | | | |
|phenology |7.3 | | | |
|phuse |0.2.2 | | | |
|PhyloProfile |1.2.5 | | | |
|[piano](problems.md#piano) |2.4.0 | | |2 |
|pipe.design |0.5.1 | | | |
|pipefittr |0.1.2 | | | |
|[pitchRx](problems.md#pitchrx) |1.8.2 | | |1 |
|PivotalR |0.1.18.3.1 | | | |
|[pivottabler](problems.md#pivottabler) |1.5.0 | | |1 |
|pixels |0.1.0 | | | |
|PKconverter |1.5 | | | |
|pkgsearch |3.0.2 | | | |
|plainview |0.1.0 | | | |
|[plethem](problems.md#plethem) |0.1.7 |1 | |1 |
|[plotGrouper](problems.md#plotgrouper) |1.6.0 | | |1 |
|[plotly](problems.md#plotly) |4.9.2.1 | | |1 |
|plotROC |2.2.1 | | | |
|plotSEMM |2.4 | | | |
|plsr |0.0.1 | | | |
|[pmd](problems.md#pmd) |0.1.9 | | |1 |
|[pogos](problems.md#pogos) |1.8.0 | | |1 |
|[polaroid](problems.md#polaroid) |0.0.1 | | |1 |
|[polmineR](problems.md#polminer) |0.8.0 | | |1 |
|PopED |0.5.0 | | | |
|poppr |2.8.6 | | | |
|populationPDXdesign |1.0.3 | | | |
|powdR |1.2.2 | | | |
|powerlmm |0.4.0 | | | |
|ppcSpatial |0.2.0 | | | |
|pqantimalarials |0.2 | | | |
|[precisely](problems.md#precisely) |0.1.0 | | |1 |
|[PrecisionTrialDrawer](problems.md#precisiontrialdrawer) |1.4.0 |1 | | |
|[predictoR](problems.md#predictor) |1.1.0 | | |1 |
|[PREPShiny](problems.md#prepshiny) |0.1.0 | | |1 |
|[primirTSS](problems.md#primirtss) |1.6.1 | |1 |1 |
|[prioritizr](problems.md#prioritizr) |5.0.1 | | |2 |
|ProbBayes |1.1 | | | |
|[PROBShiny](problems.md#probshiny) |0.1.0 | | |1 |
|[processanimateR](problems.md#processanimater) |1.0.3 | | |1 |
|processmapR |0.3.4 | | | |
|processmonitR |0.1.0 | | | |
|processR |0.2.3 | | | |
|profvis |0.3.6 | | | |
|progressr |0.6.0 | | | |
|ProjectionBasedClustering |1.1.1 | | | |
|pRolocGUI |1.22.0 | | | |
|Prostar |1.20.0 | | | |
|[psichomics](problems.md#psichomics) |1.14.1 | | |1 |
|PupilPre |0.6.2 | | | |
|pushbar |0.1.0 | | | |
|[pwrEWAS](problems.md#pwrewas) |1.2.0 |2 | | |
|[QCA](problems.md#qca) |3.8.2 | | |2 |
|qgam |1.3.2 | | | |
|[qlcData](problems.md#qlcdata) |0.2.1 | | |1 |
|[qqplotr](problems.md#qqplotr) |0.0.4 | | |1 |
|qqvases |1.0.0 | | | |
|QRAGadget |0.1.0 | | | |
|qrage |1.0 | | | |
|QTL.gCIMapping.GUI |2.1 | | | |
|[questionr](problems.md#questionr) |0.7.1 | | |2 |
|R.SamBada |0.1.2 | | | |
|r2d3 |0.2.3 | | | |
|[R3CPET](problems.md#r3cpet) |1.20.0 |1 | | |
|r4ss |1.36.1 | | | |
|rabi |1.0.2 | | | |
|radarchart |0.3.1 | | | |
|radiant |1.3.2 | | | |
|radiant.basics |1.3.4 | | | |
|radiant.data |1.3.9 | | | |
|radiant.design |1.3.5 | | | |
|radiant.model |1.3.10 | | | |
|radiant.multivariate |1.3.5 | | | |
|radix |0.6 | | | |
|[RagGrid](problems.md#raggrid) |0.2.0 | | |1 |
|rainette |0.1.1 | | | |
|[rAmCharts](problems.md#ramcharts) |2.1.13 | | |1 |
|rangeMapper |0.3-7 | | | |
|[rangeModelMetadata](problems.md#rangemodelmetadata) |0.1.3 | | |1 |
|RanglaPunjab |2.3.4 | | | |
|[rapbase](problems.md#rapbase) |1.10.0 | | |1 |
|[Rariant](failures.md#rariant) |1.24.0 |1 | | |
|rbin |0.2.0 | | | |
|rblt |0.2.4.5 | | | |
|[rcellminer](problems.md#rcellminer) |2.10.0 | |1 |3 |
|[rCGH](problems.md#rcgh) |1.18.0 | | |2 |
|rclipboard |0.1.2 | | | |
|rco |1.0.1 | | | |
|rcrossref |1.0.0 | | | |
|[Rcwl](problems.md#rcwl) |1.4.2 |1 |4 |5 |
|[rddapp](problems.md#rddapp) |1.2.1 |1 | |2 |
|RDML |1.0 | | | |
|reactable |0.2.0 | | | |
|reactlog |1.0.0 | | | |
|reactR |0.4.2 | | | |
|[recmap](problems.md#recmap) |1.0.7 | | |1 |
|[ReDaMoR](problems.md#redamor) |0.4.2 | | |1 |
|[RefNet](problems.md#refnet) |1.24.0 | |1 | |
|refund.shiny |0.3.0 | | | |
|regexSelect |1.0.0 | | | |
|[regressoR](problems.md#regressor) |1.1.8 | | |1 |
|Repliscope |1.1.0 | | | |
|repo |2.1.5 | | | |
|[ReportingTools](problems.md#reportingtools) |2.28.0 | | |1 |
|reprex |0.3.0 | | | |
|[reverseR](problems.md#reverser) |0.1 | | |1 |
|revtools |0.4.1 | | | |
|[RforProteomics](problems.md#rforproteomics) |1.26.0 | |1 |2 __+1__ |
|[Rfssa](problems.md#rfssa) |1.0.0 | | |1 |
|RGA |0.4.2 | | | |
|[rgl](problems.md#rgl) |0.100.54 | | |2 |
|[rhandsontable](problems.md#rhandsontable) |0.3.7 | | |1 |
|Rilostat |1.1 | | | |
|rintrojs |0.2.2 | | | |
|rivr |1.2-2 | | | |
|[RLumShiny](problems.md#rlumshiny) |0.2.2 | | |1 |
|[rmarkdown](problems.md#rmarkdown) |2.3 | | |1 |
|[rmd](problems.md#rmd) |0.1.5 | | |1 |
|[RnBeads](problems.md#rnbeads) |2.6.0 | | |7 |
|rnn |0.9.8 | | | |
|roadoi |0.6 | | | |
|robmed |0.7.0 | | | |
|[RobStatTM](problems.md#robstattm) |1.0.2 | | |1 |
|[rosr](problems.md#rosr) |0.0.10 | | |1 |
|rPackedBar |0.2.2 | | | |
|[rpostgisLT](problems.md#rpostgislt) |0.6.0 | | |1 |
|rpredictit |0.0.2 | | | |
|[Rqc](problems.md#rqc) |1.22.0 | | |2 |
|[RQuantLib](problems.md#rquantlib) |0.4.12 |2 |1 | |
|rrtable |0.2.1 | | | |
|[rrvgo](problems.md#rrvgo) |1.0.0 | | |3 |
|RSCAT |1.1.0 | | | |
|rsconnect |0.8.16 | | | |
|[rtimicropem](problems.md#rtimicropem) |1.4.0 | | |1 |
|rTRMui |1.26.0 | | | |
|[RtutoR](problems.md#rtutor) |1.2 | | |1 |
|rusk |0.1.1 | | | |
|ruv |0.9.7.1 | | | |
|rwalkr |0.5.2 | | | |
|[RxODE](problems.md#rxode) |0.9.2-0 | | |1 |
|sadists |0.2.3 | | | |
|[safetyGraphics](problems.md#safetygraphics) |1.1.0 | | |1 |
|samr |3.0 | | | |
|[sangerseqR](problems.md#sangerseqr) |1.24.0 | | |1 |
|sankeywheel |0.1.0 | | | |
|[santaR](problems.md#santar) |1.0 | | |1 |
|[SC3](problems.md#sc3) |1.16.0 | | |3 |
|scdhlm |0.3.2 | | | |
|schex |1.2.0 | | | |
|[scone](problems.md#scone) |1.12.0 | | |1 |
|sdcHierarchies |0.18.2 | | | |
|sdcMicro |5.5.1 | | | |
|[SDEFSR](problems.md#sdefsr) |0.7.21 | | |1 |
|sdm |1.0-89 | | | |
|[SEA](problems.md#sea) |1.0 | | |1 |
|searchConsoleR |0.4.0 | | | |
|seasonalview |0.3 | | | |
|semantic.dashboard |0.1.5 | | | |
|[semdrw](problems.md#semdrw) |0.1.0 | | |1 |
|[SemNeT](problems.md#semnet) |1.3.0 | | |2 |
|sen2r |1.3.6 | | | |
|[seqplots](problems.md#seqplots) |1.26.0 | | |4 |
|serieslcb |0.4.0 | | | |
|[sglr](problems.md#sglr) |0.7 | | |2 |
|SHELF |1.7.0 | | | |
|shiny.info |0.2.0 | | | |
|[shiny.router](problems.md#shinyrouter) |0.1.1 | | |1 |
|[shiny.semantic](problems.md#shinysemantic) |0.3.0 | | |1 |
|[shinyAce](problems.md#shinyace) |0.4.1 | | |1 |
|[shinyaframe](problems.md#shinyaframe) |1.0.1 | | |1 |
|shinyalert |1.1 | | | |
|shinyanimate |0.3.0 | | | |
|shinybootstrap2 |0.2.1 | | | |
|[shinybrms](problems.md#shinybrms) |1.1.0 | | |1 |
|[shinyBS](problems.md#shinybs) |0.61 | | |1 |
|shinybusy |0.2.0 | | | |
|shinycssloaders |0.3 | | | |
|shinycustomloader |0.9.0 | | | |
|shinydashboard |0.7.1 | | | |
|shinydashboardPlus |0.7.0 | | | |
|shinyDND |0.1.0 | | | |
|[shinyEffects](problems.md#shinyeffects) |0.1.0 | | |1 |
|shinyEventLogger |0.1.1 | | | |
|shinyFeedback |0.2.0 | | | |
|shinyFiles |0.8.0 | | | |
|shinyglide |0.1.2 | | | |
|shinyHeatmaply |0.2.0 | | | |
|[shinyhelper](problems.md#shinyhelper) |0.3.2 | | |1 |
|ShinyImage |0.1.0 | | | |
|[ShinyItemAnalysis](problems.md#shinyitemanalysis) |1.3.3 | | |2 |
|shinyjqui |0.3.3 | | | |
|[shinyjs](problems.md#shinyjs) |1.1 | | |1 |
|[shinyKGode](problems.md#shinykgode) |1.0.5 | | |1 |
|shinyKnobs |0.1.3 | | | |
|shinylogs |0.1.7 | | | |
|shinyLP |1.1.2 | | | |
|shinymanager |1.0.200 | | | |
|shinymaterial |1.1.0 | | | |
|shinyMatrix |0.3.0 | | | |
|[shinyMethyl](problems.md#shinymethyl) |1.24.0 |1 | | |
|shinyML |0.2.0 | | | |
|shinyMobile |0.7.0 | | | |
|shinyMolBio |0.2 | | | |
|shinyNotes |0.0.1 | | | |
|shinyobjects |0.1.0 | | | |
|[shinypanels](problems.md#shinypanels) |0.5.0 | | |1 |
|[shinyr](problems.md#shinyr) |0.2.6 | | |1 |
|[shinyrecap](problems.md#shinyrecap) |0.1.0 | | |1 |
|shinyrecipes |0.1.0 | | | |
|shinyreforms |0.0.1 | | | |
|shinyRGL |0.1.0 | | | |
|shinySearchbar |1.0.0 | | | |
|shinySIR |0.1.1 | | | |
|shinystan |2.5.0 | | | |
|[shinyTANDEM](problems.md#shinytandem) |1.26.0 |1 | | |
|shinytest |1.4.0 | | | |
|shinythemes |1.1.2 | | | |
|shinyTime |1.0.1 | | | |
|shinytoastr |2.1.1 | | | |
|shinyTree |0.2.7 | | | |
|shinyWidgets |0.5.3 | | | |
|shinyypr |0.0.2 | | | |
|shotGroups |0.7.5.1 | | | |
|[sigmajs](problems.md#sigmajs) |0.1.5 | | |1 |
|sigmaNet |1.1.0 | | | |
|signalHsmm |1.5 | | | |
|[SimDesign](problems.md#simdesign) |2.0.1 | | |1 |
|simglm |0.8.0 | | | |
|simPATHy |0.4 | | | |
|[simplevis](problems.md#simplevis) |1.3.0 | | |1 |
|simrel |2.0.2 | | | |
|sinew |0.3.8 | | | |
|SingleCaseES |0.4.3 | | | |
|[singleCellTK](problems.md#singlecelltk) |1.8.0 | | |3 |
|sistec |0.1.0 | | | |
|[skeleSim](failures.md#skelesim) |0.9.8 |1 | | |
|[skpr](problems.md#skpr) |0.64.2 | | |2 |
|SMITIDvisu |0.0.6 | | | |
|snahelper |1.1.0 | | | |
|snotelr |1.0.4 | | | |
|[soc.ca](problems.md#socca) |0.7.3 | | |1 |
|Sofi |0.16.4.8 | | | |
|[soilcarbon](problems.md#soilcarbon) |1.2.0 | | |2 |
|[sojourner](problems.md#sojourner) |1.2.1 |1 | | |
|solvebio |2.7.2 | | | |
|SOMbrero |1.3 | | | |
|sortable |0.4.2 | | | |
|[soundgen](problems.md#soundgen) |1.7.0 | | |1 |
|[SpaDES.addins](problems.md#spadesaddins) |0.1.2 | | |1 |
|Spaniel |1.2.0 | | | |
|spANOVA |0.99.2 | | | |
|[spant](problems.md#spant) |1.6.0 | | |1 |
|sparkline |2.0 | | | |
|[sparklyr](problems.md#sparklyr) |1.2.0 | | |1 |
|[sparkTable](problems.md#sparktable) |1.3.0 | | |1 |
|SpatialCPie |1.4.0 | | | |
|[SpatialEpiApp](problems.md#spatialepiapp) |0.3 | | |2 |
|[spatialLIBD](problems.md#spatiallibd) |1.0.0 |1 | |1 |
|[spectrolab](problems.md#spectrolab) |0.0.9 | | |1 |
|spinifex |0.2.0 | | | |
|SpNetPrep |1.1 | | | |
|spotGUI |0.2.1 | | | |
|SqlRender |1.6.6 | | | |
|squid |0.1.2 | | | |
|[SSDM](problems.md#ssdm) |0.2.8 | | |1 |
|[ssrch](problems.md#ssrch) |1.4.0 | | |2 |
|[sstModel](problems.md#sstmodel) |1.0.0 | | |1 |
|[STAT](problems.md#stat) |0.1.0 | | |1 |
|statnetWeb |0.5.5 | | | |
|statsr |0.2.0 | | | |
|[steemr](problems.md#steemr) |0.1.3 | | |1 |
|StereoMorph |1.6.3 | | | |
|stmgui |0.1.6 | | | |
|[stminsights](problems.md#stminsights) |0.3.0 | | |1 |
|[STMotif](problems.md#stmotif) |2.0.0 | | |1 |
|[strand](problems.md#strand) |0.1.3 | | |1 |
|StratigrapheR |1.1.0 | | | |
|[subscreen](problems.md#subscreen) |2.0.1 | | |1 |
|SubVis |2.0.2 | | | |
|swirlify |0.5.3 | | | |
|[tableHTML](problems.md#tablehtml) |2.0.0 | | |2 |
|[tablerDash](problems.md#tablerdash) |0.1.0 | | |1 |
|tabulizer |0.2.2 | | | |
|taipan |0.1.2 | | | |
|target |1.2.0 | | | |
|[TAShiny](problems.md#tashiny) |0.1.0 | | |1 |
|[TBSignatureProfiler](problems.md#tbsignatureprofiler) |1.0.0 | | |1 |
|[TCGAbiolinksGUI](problems.md#tcgabiolinksgui) |1.14.0 | | |3 |
|[TeachBayes](problems.md#teachbayes) |1.0 | |1 | |
|teachingApps |1.0.8 | | | |
|[tenXplore](problems.md#tenxplore) |1.10.0 | | |1 |
|[TestDesign](problems.md#testdesign) |1.0.2 | | |1 |
|[testextra](problems.md#testextra) |0.1.0.1 | | |1 |
|[texPreview](problems.md#texpreview) |1.4.4 | | |1 |
|[TFutils](problems.md#tfutils) |1.8.0 |1 |1 |4 |
|themetagenomics |1.0.2 | | | |
|threeBrain |0.1.7 | | | |
|[tidycells](problems.md#tidycells) |0.2.2 |2 | | |
|tidycwl |1.0.4 | | | |
|tidyvpc |1.0.0 | | | |
|tigerstats |0.3.2 | | | |
|[timeline](problems.md#timeline) |0.9 | | |2 |
|[TimerQuant](problems.md#timerquant) |1.18.0 | | |1 |
|[timeseriesdb](problems.md#timeseriesdb) |0.4.1 | | |1 |
|[timevis](problems.md#timevis) |0.5 | | |1 |
|tippy |0.0.1 | | | |
|tmap |3.0 | | | |
|[tmaptools](problems.md#tmaptools) |3.0 | | |1 |
|TnT |1.10.0 | | | |
|toxEval |1.1.0 | | | |
|[TR8](problems.md#tr8) |0.9.21 | | |1 |
|trackdem |0.5.2 | | | |
|[trackeRapp](problems.md#trackerapp) |1.1 | | |1 |
|trackr |0.10.6 | | | |
|trade |0.5.4 | | | |
|treemap |2.4-2 | | | |
|TreeSearch |0.4.1 | | | |
|[treespace](problems.md#treespace) |1.1.3.2 | | |1 |
|TreeTools |1.0.0 | | | |
|Trendy |1.10.0 | | | |
|tricolore |1.2.2 | | | |
|[TSCAN](problems.md#tscan) |1.26.0 | | |1 |
|tsviz |0.1.0 | | | |
|[ttestshiny](problems.md#ttestshiny) |0.1.0 | | |1 |
|[TVTB](problems.md#tvtb) |1.14.0 | | |1 |
|[twoddpcr](problems.md#twoddpcr) |1.12.0 | | |1 |
|[TxRegInfra](problems.md#txreginfra) |1.8.0 | | |5 |
|[ubiquity](problems.md#ubiquity) |1.0.1 | | |1 |
|[UCSCXenaShiny](problems.md#ucscxenashiny) |0.5.0 | | |2 |
|UCSCXenaTools |1.3.1 | | | |
|[Ularcirc](problems.md#ularcirc) |1.6.0 |1 | | |
|Umatrix |3.3 | | | |
|[ursa](problems.md#ursa) |3.8.20 | | |1 |
|[VariantFiltering](problems.md#variantfiltering) |1.24.0 |1 | |3 |
|[VarSelLCM](problems.md#varsellcm) |2.1.3 | | |1 |
|[vdiffr](problems.md#vdiffr) |0.3.2 | | |1 |
|vegawidget |0.3.1 | | | |
|vici |0.5.2 | | | |
|VineCopula |2.3.0 | | | |
|[viromeBrowser](problems.md#viromebrowser) |1.0.0 | | |1 |
|[visit](problems.md#visit) |2.1 | | |2 |
|[visNetwork](problems.md#visnetwork) |2.0.9 | | |1 |
|vistributions |0.1.1 | | | |
|visvow |0.9.0 | | | |
|voronoiTreemap |0.2.0 | | | |
|VOSONDash |0.5.4 | | | |
|vov |0.1.0 | | | |
|vtree |4.0.0 | | | |
|[VTShiny](problems.md#vtshiny) |0.1.0 | | |1 |
|VWPre |1.2.3 | | | |
|[waiter](problems.md#waiter) |0.1.0 | | |1 |
|[wallace](problems.md#wallace) |1.0.6.2 | | |1 |
|[webr](problems.md#webr) |0.1.5 | | |1 |
|webshot |0.5.2 | | | |
|weco |1.2 | | | |
|weightr |2.0.2 | | | |
|wilson |2.4.0 | | | |
|wiqid |0.3.0 | | | |
|[wiseR](problems.md#wiser) |1.0.1 | | |2 |
|workflowr |1.6.2 | | | |
|wppExplorer |2.3-4 | | | |
|[wTO](problems.md#wto) |1.6.3 | | |1 |
|xplorerr |0.1.1 | | | |
|[xROI](problems.md#xroi) |0.9.13 | |1 | |
|[ymlthis](problems.md#ymlthis) |0.1.2 | | |1 |
|yonder |0.2.0 | | | |
|[yuimaGUI](problems.md#yuimagui) |1.3.0 | | |1 |
|zooimage |5.5.2 | | | |
|zscorer |0.3.1 | | | |

View File

@@ -1,15 +0,0 @@
## revdepcheck results
We checked 1039 reverse dependencies (1038 from CRAN + 1 from Bioconductor), comparing R CMD check results across CRAN and dev versions of this package.
* We saw 0 new problems
* We failed to check 4 packages
Issues with CRAN packages are summarised below.
### Failed to check
* ctsem (NA)
* diveR (NA)
* loon.shiny (NA)
* SSVS (NA)

File diff suppressed because it is too large Load Diff

View File

@@ -1,4 +1,5 @@
import { mergeSort } from "../utils";
import { Callbacks } from "../utils/callbacks";
interface BindingBase {
name: string;
@@ -14,6 +15,7 @@ class BindingRegistry<Binding extends BindingBase> {
name: string;
bindings: Array<BindingObj<Binding>> = [];
bindingNames: { [key: string]: BindingObj<Binding> } = {};
registerCallbacks: Callbacks = new Callbacks();
register(binding: Binding, bindingName: string, priority = 0): void {
const bindingObj = { binding, priority };
@@ -23,6 +25,12 @@ class BindingRegistry<Binding extends BindingBase> {
this.bindingNames[bindingName] = bindingObj;
binding.name = bindingName;
}
this.registerCallbacks.invoke();
}
onRegister(fn: () => void, once = true): void {
this.registerCallbacks.register(fn, once);
}
setPriority(bindingName: string, priority: number): void {

View File

@@ -21,7 +21,7 @@ import {
import { bindAll, unbindAll, _bindAll } from "./bind";
import type { BindInputsCtx, BindScope } from "./bind";
import { setShinyObj } from "./initedMethods";
import { registerDependency } from "./render";
import { registerDependency, renderHtml } from "./render";
import { sendImageSizeFns } from "./sendImageSize";
import { ShinyApp } from "./shinyapp";
import { registerNames as singletonsRegisterNames } from "./singletons";
@@ -150,6 +150,19 @@ function initShiny(windowShiny: Shiny): void {
(x) => x.value
);
// When future bindings are registered via dynamic UI, check to see if renderHtml()
// is currently executing. If it's not, it's likely that the binding registration
// is occurring a tick after renderHtml()/renderContent(), in which case we need
// to make sure the new bindings get a chance to bind to the DOM. (#3635)
const maybeBindOnRegister = debounce(0, () => {
if (!renderHtml.isExecuting()) {
windowShiny.bindAll(document.documentElement);
}
});
inputBindings.onRegister(maybeBindOnRegister, false);
outputBindings.onRegister(maybeBindOnRegister, false);
// The server needs to know the size of each image and plot output element,
// in case it is auto-sizing
$(".shiny-image-output, .shiny-plot-output, .shiny-report-size").each(

View File

@@ -72,10 +72,20 @@ function renderHtml(
dependencies: HtmlDep[],
where: WherePosition = "replace"
): ReturnType<typeof singletonsRenderHtml> {
renderDependencies(dependencies);
return singletonsRenderHtml(html, el, where);
renderHtml._renderCount++;
try {
renderDependencies(dependencies);
return singletonsRenderHtml(html, el, where);
} finally {
renderHtml._renderCount--;
}
}
renderHtml._renderCount = 0;
renderHtml.isExecuting = function () {
return renderHtml._renderCount > 0;
};
type HtmlDepVersion = string;
type MetaItem = {
@@ -199,6 +209,9 @@ function renderDependency(dep_: HtmlDep) {
$head.append(stylesheetLinks);
}
const scriptPromises: Array<Promise<any>> = [];
const scriptElements: HTMLScriptElement[] = [];
dep.script.forEach((x) => {
const script = document.createElement("script");
@@ -210,9 +223,23 @@ function renderDependency(dep_: HtmlDep) {
script.setAttribute(attr, val ? val : "");
});
$head.append(script);
const p = new Promise((resolve) => {
// eslint-disable-next-line @typescript-eslint/no-unused-vars
script.onload = (e: Event) => {
resolve(null);
};
});
scriptPromises.push(p);
scriptElements.push(script);
});
// Append the script elements all at once, so that we're sure they'll load in
// order. (We didn't append them individually in the `forEach()` above,
// because we're not sure that the browser will load them in order if done
// that way.)
document.head.append(...scriptElements);
dep.attachment.forEach((x) => {
const link = $("<link rel='attachment'>")
.attr("id", dep.name + "-" + x.key + "-attachment")
@@ -221,12 +248,22 @@ function renderDependency(dep_: HtmlDep) {
$head.append(link);
});
if (dep.head) {
const $newHead = $("<head></head>");
Promise.allSettled(scriptPromises).then(() => {
// After the scripts are all loaded, insert any head content. This may
// contain <script> tags with inline content, which we want to execute after
// the script elements above, because the code here may depend on them.
if (dep.head) {
const $newHead = $("<head></head>");
$newHead.html(dep.head);
$head.append($newHead.children());
}
// Bind all
shinyInitializeInputs(document.body);
shinyBindAll(document.body);
});
$newHead.html(dep.head);
$head.append($newHead.children());
}
return true;
}

View File

@@ -0,0 +1,45 @@
type Cb = {
once: boolean;
fn: () => void;
};
type Cbs = {
[key: string]: Cb;
};
class Callbacks {
callbacks: Cbs = {};
id = 0;
register(fn: () => void, once = true): () => void {
this.id += 1;
const id = this.id;
this.callbacks[id] = { fn, once };
return () => {
delete this.callbacks[id];
};
}
invoke(): void {
for (const id in this.callbacks) {
const cb = this.callbacks[id];
try {
cb.fn();
} finally {
if (cb.once) delete this.callbacks[id];
}
}
}
clear(): void {
this.callbacks = {};
}
count(): number {
return Object.keys(this.callbacks).length;
}
}
export { Callbacks };

View File

@@ -1,3 +1,4 @@
import { Callbacks } from "../utils/callbacks";
interface BindingBase {
name: string;
}
@@ -12,7 +13,9 @@ declare class BindingRegistry<Binding extends BindingBase> {
bindingNames: {
[key: string]: BindingObj<Binding>;
};
registerCallbacks: Callbacks;
register(binding: Binding, bindingName: string, priority?: number): void;
onRegister(fn: () => void, once?: boolean): void;
setPriority(bindingName: string, priority: number): void;
getPriority(bindingName: string): number | false;
getBindings(): Array<BindingObj<Binding>>;

View File

@@ -7,6 +7,10 @@ declare function renderContent(el: BindScope, content: string | {
deps?: HtmlDep[];
} | null, where?: WherePosition): void;
declare function renderHtml(html: string, el: BindScope, dependencies: HtmlDep[], where?: WherePosition): ReturnType<typeof singletonsRenderHtml>;
declare namespace renderHtml {
var _renderCount: number;
var isExecuting: () => boolean;
}
declare type HtmlDepVersion = string;
declare type MetaItem = {
name: string;

16
srcts/types/src/utils/callbacks.d.ts vendored Normal file
View File

@@ -0,0 +1,16 @@
declare type Cb = {
once: boolean;
fn: () => void;
};
declare type Cbs = {
[key: string]: Cb;
};
declare class Callbacks {
callbacks: Cbs;
id: number;
register(fn: () => void, once?: boolean): () => void;
invoke(): void;
clear(): void;
count(): number;
}
export { Callbacks };

View File

@@ -0,0 +1,54 @@
# app template works with runTests: all
Code
out
Output
Shiny App Test Results
* Success
- shinyAppTemplate-all/tests/testthat.R
# app template works with runTests: app_tests
Code
out
Output
Shiny App Test Results
* Success
- shinyAppTemplate-app_tests/tests/testthat.R
# app template works with runTests: app_module_tests
Code
out
Output
Shiny App Test Results
* Success
- shinyAppTemplate-app_module_tests/tests/testthat.R
# app template works with runTests: app_rdir_tests
Code
out
Output
Shiny App Test Results
* Success
- shinyAppTemplate-app_rdir_tests/tests/testthat.R
# app template works with runTests: app_module_rdir_tests
Code
out
Output
Shiny App Test Results
* Success
- shinyAppTemplate-app_module_rdir_tests/tests/testthat.R
# app template works with runTests: app_shinytest_testthat
Code
out
Output
Shiny App Test Results
* Success
- shinyAppTemplate-app_shinytest_testthat/tests/testthat.R

View File

@@ -50,7 +50,7 @@ test_that("Repeated names for selectInput and radioButtons choices", {
choices <- x$children
expect_equal(choices[[2]]$children[[1]][[1]]$children[[1]]$children[[2]]$children[[1]],
HTML('<i class="far fa-calendar" role="presentation" aria-label="calendar icon"></i>'))
HTML('<i class="fa fa-calendar" role="presentation" aria-label="calendar icon"></i>'))
expect_equal(choices[[2]]$children[[1]][[1]]$children[[1]]$children[[1]]$attribs$value, 'icon')
expect_equal(choices[[2]]$children[[1]][[1]]$children[[1]]$children[[1]]$attribs$checked, 'checked')

View File

@@ -1,6 +1,5 @@
# testthat::skip_on_cran()
suppressWarnings(testthat::skip_if_not_installed("shinytest2"))
testthat::skip("Refactor test for next release")
# test all combos
make_combos <- function(...) {

View File

@@ -1,12 +1,13 @@
{
"declaration": true,
"compilerOptions": {
"target": "ES5",
"target": "es2020",
"isolatedModules": true,
"esModuleInterop": true,
"declaration": true,
"declarationDir": "./srcts/types",
"emitDeclarationOnly": true,
"moduleResolution": "node",
// Can not use `types: []` to disable injecting NodeJS types. More types are
// needed than just the DOM's `window.setTimeout`
// "types": [],