* Put action icon and label into containers
* Update snaps
* More robust test
* Don't include container if icon/label isn't specified
* `yarn build` (GitHub Actions)
* Send HTML string/deps on update; update news
---------
Co-authored-by: cpsievert <cpsievert@users.noreply.github.com>
* v1.11.1 release candidate
* `yarn build` (GitHub Actions)
* Revert actionButton()/actionLink() implementation to v1.11.0's behavior (re-introducing #4239)
* Minimal fix to address the regression in #4239
Ideally we'd fix this issue, and also get updateActionButton() working with HTML labels, but thanks to today's release of kinesis (which snapshots all of actionButton()s markup), and CRAN dragging their feet to accept our original submission (which was fine, by the way), we can't have nice things
* `yarn build` (GitHub Actions)
---------
Co-authored-by: cpsievert <cpsievert@users.noreply.github.com>
* Revert the addition of spacing between icon and label in actionButton()
* `yarn build` (GitHub Actions)
---------
Co-authored-by: cpsievert <cpsievert@users.noreply.github.com>
* Close#4239: fix front-end action button label updating logic (follow up to #3996)
* Update news
* Use a separator instead of putting markup in attributes
* `yarn build` (GitHub Actions)
* Address feedback
* Cleanup
* Refactor into a single method to split icon/label
* `yarn build` (GitHub Actions)
* Better naming
* Add some padding to the separator
* Add some unit tests for R logic
* Update NEWS.md
* Update NEWS.md
* Update NEWS.md
* Update NEWS.md
* Increase backcompat (keep same R structure when no icon is provided)
* Refine comment
---------
Co-authored-by: cpsievert <cpsievert@users.noreply.github.com>
* Use less expensive version of getCallNames() just for hashing
* Update R/conditions.R
Co-authored-by: Carson Sievert <cpsievert1@gmail.com>
---------
Co-authored-by: Carson Sievert <cpsievert1@gmail.com>
Co-authored-by: Barret Schloerke <barret@rstudio.com>
* feat: Fully reload ui/server when autoreload occurs
* chore: remove stray empty line
* chore: clean up function names and add comments
* docs: Add news item
* feat: Use {watcher} for autoreload file watching (#4185)
* feat: Use {watcher}
* chore: shikokuchuo/watcher@dev
* chore: watcher is on CRAN now
* chore: Undo air format changes
* feat: Use `shiny.autoreload.interval` for watcher latency
* chore: Simply track last time auto-reload changed
* docs: rewrite options docs for clarity
* chore: code style
* docs: global.R changes are not applied
* feat(ui/server): Autoreload also reloads global and R support files
* chore: remove outdated comment
* chore: safer comparisons
* chore: Restore legacy autoreload watcher if {watcher} not installed
* rename: autoload_r_support_if_needed()
* chore: use `rlang::is_false()`
* chore: use_build_ignore("_dev")
* Make sure spinner is visible when htmlwidget errors are visible
* Give recalculating outputs a min-height large enough to show the spinner
* tableOutput() now gets the spinner treatment
* yarn run bundle_extras
* Forward visibility hidden for all recalculating widgets, not just those with a error message (otherwise spinner won't be visible after a req())
* Update news
* Limit deep stack growth
* Improvements to deep stack trace culling
- Keep around the first deep stack trace; it may have useful
information. (We may want to change this in the future to
keep the first two stack traces, or even make it an option)
- Print out an indicator that we've elided stack traces, and
how many
* Add comments
* Add NEWS item
* Add test for unlimited deep stacks
* Code review feedback
* Code review feedback
Co-authored-by: Carson Sievert <cpsievert1@gmail.com>
* Use head() over indexing
Co-authored-by: Carson Sievert <cpsievert1@gmail.com>
* Improve unit test robustness
* Remove vector indices from snapshot
* Make stack trace stripping work across deep stacks
* Pass tests
* Try passing tests again
* Rename keep_head to retain_first_n
* Remove misleading variable assignment
* Add more comments, refine dropTrivialTestFrames
* Don't call stripStackTraces if we're not stripping
* Use deep stack deduplication instead of elision
This hopefully will avoid any potential ..stacktraceon../off..
scoring issues, and will be more useful for users. The downside
is that it's still possible to have uselessly large deep stack
traces, but at least that will only happen now if you have
manually written gigantic async/promise chains by hand or maybe
did some clever metaprogramming. The coro case should be fine.
* Add coro-based unit test
* Use rlang::hash, it's much faster
* typo
Co-authored-by: Carson Sievert <cpsievert1@gmail.com>
* Remove unnecessary logic
* Simplify/robustify reactlog version checking test
* Warn only once on call stack digest cache miss
* Super conservatively wrap appendCallStackWithDupe in try/catch
* Use more specific attribute name
Co-authored-by: Carson Sievert <cpsievert1@gmail.com>
* Remove excessively cautious try/catch
---------
Co-authored-by: Carson Sievert <cpsievert1@gmail.com>
* Avoid way too many promise domains being activated
Using `captureStackTraces` in wrapForContext is a bad idea, it
piles on a new domain every time a handler is bound.
* Use captureStackTraces, it means the same thing
* Update promises version requirement
* Add test for stack trace growth
* Simplify stack trace snapshot tests
The `category` column isn't a good candidate for snapshot
testing, as its contents vary depending on how the package
was loaded/installed. During devtools::test() or similar,
shiny package code shows up as 'user'. But during CI, it
doesn't show up as anything.
* Follow up to #4040: enable busy indicators by default
* Make our spinner invisible when wrapped inside a shinycssloaders::withSpinner() container
* Add the ability to disable/customize recalculating opacity (i.e., fade)
* Fix bug with fade not being applied correctly when the output container has no children
* `devtools::document()` (GitHub Actions)
* `yarn build` (GitHub Actions)
* Update NEWS.md
* Follow up to b7e7af: need to also rest opacity for :empty case (for initial calculation)
* Rd docs fixes/improvements
---------
Co-authored-by: cpsievert <cpsievert@users.noreply.github.com>
* chore: Enable return of dependency CSS as Sass files
Makes it possible to extract the Sass files prior to compilation for the following CSS:
* shiny
* selectize
* ionrangeslider
* daterange picker
* refactor: Take a more functional approach
* fix: missing selectizeDir
* rename: __SassLayer --> __Sass
* First pass at a proper state machine for managing output progress state
* `yarn build` (GitHub Actions)
* Add useBusyIndicators(), spinnerOptions(), and pulseOptions()
* Bring in new spinner defaults
* Use an actual div instead of a pseudo-element since chromium can't be trusted to show them when animated
* Revert "Use an actual div instead of a pseudo-element since chromium can't be trusted to show them when animated"
This reverts commit 6167c1dfd7.
* Embed animation inside svg (to avoid Chromium bug). Consolidate options into a singular busyIndicatorOptions()
* Add to pkgdown reference
* `devtools::document()` (GitHub Actions)
* `yarn build` (GitHub Actions)
* Bump version
* `yarn build` (GitHub Actions)
* Sync package version (GitHub Actions)
* Apply suggestions from code review
Co-authored-by: Garrick Aden-Buie <garrick@adenbuie.com>
* Update snapshots
* `devtools::document()` (GitHub Actions)
* Address feedback
* Bring in more spinner type options
* fix use of fs
* Code review
* `devtools::document()` (GitHub Actions)
* Sync package version (GitHub Actions)
* Update snapshots
* Fix comments
* Make snapshot consistent cross-platform
* Fix namespace issue
* Reduce specificity of position relative
* Skip snapshot on windows; update news
* Whoops
* Scope spinner customizations to parent element by default
* Update snapshots
* Reorder spinner types
* Set a private random seed in tests
* Better id naming
---------
Co-authored-by: cpsievert <cpsievert@users.noreply.github.com>
Co-authored-by: Garrick Aden-Buie <garrick@adenbuie.com>
* Close#4011. Fix and simplify reactlog's version check approach.
* Better variable name
* Use test_path() for consistent path location
* Just use packageDescription()
* Update tests/testthat/test-reactlog.R
* Update tests/testthat/test-reactlog.R
* Update DESCRIPTION
* Revert "feat: Deprecate with warnings, expect `renderDataTable()` to be deprecated (#4007)"
This reverts commit a8c6065b9f.
* Use shiny's datatables implementation when testing
* feat: Deprecate with a warning
Use `rlang::warn()` instead of `rlang::inform()` and use the lifecycle warning class so that lifecycle infrastructure works
* tests: expect that renderDataTable is deprecated
* tests: invert warning and error expectation
* update 01_hello
* Updates 06_tabsets example to use bslib
* Pre-emptively adds legacy versions of all of the original examples
* Switches tabset example to use navset_card_underline()
* Updates example 2
* Updates 03_reactivity
* Updates 04_mpg
* Updates 05_sliders
* Updates 07_widgets
* Deletes 08_html_legacy. Original example does not need updated.
* Updates 09_upload
* Updates 10_download
* Updates 11_timer
* Keep inst/example unchanged; add new examples under inst/shiny and update runExamples() to use that directory by default
* Update news
* Fix some code formatting issues
* Update NEWS.md
* Don't default to showcase mode
---------
Co-authored-by: Garrett Grolemund <grolemund@gmail.com>
Co-authored-by: Carson <cpsievert1@gmail.com>
* Update datatables.js from 1.10.5 to 1.10.22. Deprecate renderDataTable()/DTOutput()
* Update news; go back to old types version
* Clean up
* Update NEWS.md
* Update NEWS.md