# Changelog

Source: `NEWS.md`

## radiant.data 1.5.62023-04-23

- Address deprecation issues in markdown >= 1.5

## radiant.data 1.5.12023-01-09

- Added features in the UI to facilitate persistent filters for filtered, sorted, and sliced data
- Improvements to screenshot feature:
  - Navigation bar is omitted and the image is adjusted to the length of the UI.
  - html2canvas.js is now included so users can take screenshot when offline
- Added a convenience function `add_description` to add a description attribute to a data.frame in markdown format
- Line graphs treated more similarly to bar-graphs:
  - Can have a binary factor variable on the y-axis
  - Y-variable only line are now also possible
- Removed all references to `aes_string` which is being deprecated in ggplot soon
- Improved cleanup after Radiant UI is closed

## radiant.data 1.4.7

- Code cleanup in different areas

## radiant.data 1.4.6

- gsub(“[-]”, ““, text) is no longer valid in R 4.2.0 and above. Non-asci symbols will now be escaped using stringi::stri_trans_general when needed

## radiant.data 1.4.52022-09-08

- Add scrolling for dropdown menus that might extend past the edge of the screen
- Addressed warning messages about Font Awesome icons not existing
- gsub(“[-]”, ““, text) is no longer valid in R 4.2.0 and above. Non-asci symbols will now be escaped using stringi when needed

## radiant.data 1.4.42022-07-19

- Added option to create screenshots of settings on a page. Approach is inspired by the snapper package by @yonicd
- Added contact request for users on Radiant startup
- Fix issue with R_ZIPCMD when 7zip is on the path but not being recognized by R

## radiant.data 1.4.22022-05-25

- Use `all` for `is.null` and `is.na` if object length can be greater than 1 as required in R 4.2.0

## radiant.data 1.4.12021-11-12

- Setup to allow formatting of the shiny interface with bootstrap 4
- Addressing `is_empty` function clash with `rlang`
- Upgrading `shiny` dependency to 1.6.0 and fixing project text alignment issue (@cpsievert, https://github.com/radiant-rstats/radiant.data/pull/28)

## radiant.data 1.3.122020-11-27

- Fixes related to breaking changes in `magrittr`
- Fixes related to changes in `readr` argument names
- Fix to launch radiant in a “windows”

## radiant.data 1.3.102020-08-07

- Add Google Drive to the default set of directories to explore if available
- Add back functionality to convert a column to type `ts` in Data > Transform now that this is again supported by dplyr 1.0.1

## radiant.data 1.3.92020-06-16

- Fix for using the `date` function from the lubridate package in a filter
- Removed functionality to convert a column to type `ts` as this is not supported by dplyr 1.0.0 and vctrs 0.3.1
- Updated documentation using https://github.com/r-lib/roxygen2/pull/1109

## radiant.data 1.3.6

- Updated styling for formatting for modals (e.g., help pages) that will also allow improved sizing of the (shinyFiles) file browser
- Fix for `\r` line-endings in Report > Rmd on Windows. Issue was most likely to occur when copy-and-pasting text from PDF into Report > Rmd.

## radiant.data 1.3.42020-03-23

- Minor adjustments in anticipation of dplyr 1.0.0

## radiant.data 1.3.3

- Function to calculate “mode”
- Fix for “spread” in Data > Transform with column name includes “.”

## radiant.data 1.3.1

- If radiant is not opened from an Rstudio project, use the working directory at launch as the base directory for the application

## radiant.data 1.3.0

- Updated styling of Notebook and HTML reports (cosmo + zenburn)
- Documentation updates to link to new video tutorials
- Use `patchwork` for grouping multiple plots together
- Apply `refactor` to any type in the Data > Transform UI
- Fix for `weighted.sd` when missing values differ for `x` and weights
- Avoid resetting the “Column header” to its default value in Data > Explore when other settings are changed.

## radiant.data 1.2.3

- Fix for Data > Transform > Spread when no variables are selected
- Set `debounce` to 0 for all shinyAce editors

## radiant.data 1.2.2

- Use `zenburn` for code highlighting in Notebook and HTML report from Report > Rmd
- Clean up “sf_volumes” from the when radiant is stopped

## radiant.data 1.2.0

- Update action buttons that initiate a calculation when one or more relevant inputs are changed. For example, when a model should be re-estimated because the set of explanatory variables was changed by the user, a spinning “refresh” icon will be shown

## radiant.data 1.1.8

- Changed default `quantile` algorithm used in the `xtile` function from number 2 to 7. See the help for `stats::quantile` for details
- Added `me` and `meprop` functions to calculate the margin of error for a mean and a proportion. Functions are accessible from Data > Pivot and Data > Explore

## radiant.data 1.1.6

- Improvements for wrapping generated code to Report > Rmd or Report > R
- Data > Transform > Training now uses the `randomizr` package to allow blocking variables when creating a training variables.

## radiant.data 1.1.3

- Guard against using Data > Transform > Reorder/remove levels with too many levels (i.e., > 100)
- Guard against using Data > Transform > Reorder/remove variables with too many variables (i.e., > 100)
- Fix for DT table callbacks when shiny 1.4 hits CRAN (see https://github.com/rstudio/DT/issues/146#issuecomment-534319155)
- Tables from Data > Pivot and Data > Explore now have `nr` set to `Inf` by default (i.e., show all rows). The user can change this to the number of desired rows to show (e.g., select 3 rows in a sorted table)
- Fix for example numbering in the help file for Data > Transform
- Numerous small code changes to support enhanced auto-completion, tooltips, and annotations in shinyAce 0.4.1

## radiant.data 1.0.62019-08-22

- Fix for `Data > Transform > Change type`
- Option to `fix_names` to lower case
- Keyboard shortcut (Enter) to load remove csv and rds files
- Use a shinyAce input to generate data descriptions
- Allow custom initial dataset list
- Fix for latex formulas in Report > Rmd on Windows
- Updated requirements for markdown and Rmarkdown
- Fix for `radiant.init.data` with shiny-server
- Improvements to setup to allow access to server-side files by adding options to .Rprofile:
  - Add `options(radiant.report = TRUE)` to allow report generation in Report > Rmd and Report > R
  - Add `options(radiant.shinyFiles = TRUE)` to allow server-side access to files
  - List specific directories you want to use with radiant using, for example, `options(radiant.sf_volumes = c(Git = "/home/jovyan/git"))`

## radiant.data 1.0.02019-07-18

- Support for series of class `ts` (e.g., Data > Transform > Change type > Time series)
- Require shinyAce 0.4.0
- Vertical jitter set to 0 by default

## radiant.data 0.9.9.0

- Added option to save Report > Rmd as a powerpoint file using `Rmarkdown`
- Removed dependency on `summarytools` due to breaking changes
- Fix for interaction (`iterm`) and non-linear term (`qterm`) creation if character strings rather than integers are passed to the function
- Remove specific symbols from reports in Report > Rmd to avoid issues when generating HTML or PDF documents
- Keyboard shortcuts, i.e., CTRL-O and CTRL-S (CMD-O and CMD-S on macOS) to open and save data files in the Data > Manage tab
- Various fixes to address breaking changes in dplyr 0.8.0
- Added `radiant_` prefix to all attributes, except `description`, to avoid conflicts with other packages (e.g., `vars` in dplyr)

## radiant.data 0.9.8.6

- Use `stringi::stri_trans_general` to replace special symbols in Rmarkdown that may cause problems
- Add empty line before and after code chunks when saving reports to Rmarkdown
- Use `rio` to load `sav`, `dta`, or `sas7bdat` files through the `read files` button in Report > Rmd and Report > R.
- Create a `qscatter` plot similar to the function of the same name in Stata
- New radiant icon
- Fix for setting where both `xlim` and `ylim` are set in `visualize` function
- Use an expandable `shinyAce` input for the R-code log in Data > Transform

## radiant.data 0.9.8.0

- Added an “autosave” options. Use `options(radiant.autosave = c(10, 180)); radiant::radiant()` to auto-save the application state to the `~/.radiant.session` folder every 10 minutes for the next 180 minutes. This can be useful if radiant is being used during an exam, for example.
- Emergency backups are now saved to `~/.radiant.session/r_some_id.state.rda`. The files should be automatically loaded when needed but can also be loaded as a regular radiant state file
- Replace option to load an `.rda` from from a URL in Data > Manage to load `.rds` files instead
- Ensure variable and dataset names are valid for R (i.e., no spaces or symbols), “fixing” the input as needed
- Fix to visualize now `ggplot::labs` no longer accepts a list as input
- Add option to generate square and cubed terms for use in linear and logistic regression in `radiant.model`
- Fix for error when trying to save invalid predictions in `radiant.model`. This action now generates a pop-up in the browser interface
- Add a specified description to a data.frame immediately on `register`
- Option to pass additional arguments to `shiny::runApp` when starting radiant such as the port to use. For example, radiant.data::radiant.data(“https://github.com/radiant-rstats/docs/raw/gh-pages/examples/demo-dvd-rnd.state.rda”, port = 8080)
- Option for automatic cleanup of deprecated code in both Report > Rmd and Report > R
- Avoid attempt to fix deprecated code in Report > Rmd if `pred_data = ""`
- Fix for download icon linked to downloading of a state file after upgrade to shiny 1.2
- Update documentation for Data > Combine
- Fix for `format_df` when the data.frame contains missing values. This fix is relevant for several `summary` functions run in Report > Rmd or Report > R
- Fix for directory set when using `Knit report` in Report > Rmd and Report > R without an Rstudio project. Will now correctly default to the working directory used in R(studio)
- Added option to change `smooth` setting for histograms with a density plot
- Similar to `pmin` and `pmax`, `pfun` et al. calculate summary statistics elementwise across multiple vectors
- Add `Desktop` as a default directory to show in the `shinyFiles` file browser
- Load a state file on startup by providing a (relative) file path or a url. For example, radiant.data::radiant.data(“https://github.com/radiant-rstats/docs/raw/gh-pages/examples/demo-dvd-rnd.state.rda”) or radiant.data::radiant.data(“assignment.state.rda”)
- Update example report in Report > Rmd
- Add `deregister` function to remove data in radiant from memory and the `datasets` dropdown list
- Fix for invalid column names if used in `Data > Pivot`

## radiant.data 0.9.7.0

- Use `summarytools` to generate summary information for datasets in Data > Manage
- Show modal with warning about non-writable working directory when saving reports in Report > Rmd or Report > R
- Apply `radiant.data::fix_names` to files loaded into radiant to ensure valid R-object names
- Use the content of the `Store filtered data as` input to name the csv download in Data > View
- Add “txt” as a recognized file type for `Read files` in Report > Rmd and Report > R
- Allow multiple `lines` or `loess` curves based on a selected `color` variable for scatter plots in Data > Visualize
- Indicate that a plot in Data > Visualize should be updated when plot labels are changed
- Fix for #81 when variables used in Data > Pivot contain dots
- Fix for `radiant.project_dir` when no Rstudio project is used which could cause incorrect relative paths to be used
- Fix code formatting for Report > Rmd when arguments include a list (e.g., ggplot labels)
- On Linux use a modal to show code in Report > Rmd and Report > R when reporting is set to “manual”
- Use `is_double` to ensure dates are not treated as numeric variables in Data > View
- Make sort and filter state of tables in Data > Explore and Data > Pivot available in Report > Rmd
- Fix names for data sets loaded using the `Read files` button in Report > Rmd or Report > R
- Cleanup environment after closing app
- Fix column names with spaces, etc. when reading csv files
- Additional styling and labeling options for Data > Visualize are now available in the browser interface
- Fix for code generation related to DT filters

## radiant.data 0.9.6.14

### Major changes

- Using `shinyFiles` to provide convenient access to data located on a server
- Avoid `XQuartz` requirement

### Minor changes

- Load `data(...)` into the current environment rather than defaulting only to the global environment
- `file.rename` failed using docker on windows when saving a report. Using `file.copy` instead
- Fix for `sf_volumes` used to set the root directories to load and save files
- Set default locale to “en_US.UTF-8” when using shiny-server unless `Sys.getlocale(category = "LC_ALL")` what set to something other than “C”
- Modal shown if and Rmd (R) file is not available when using “To Rstudio (Rmd)” in Report > Rmd or “To Rstudio (R)” in Report > R
- Track progress loading (state) files
- Fix for `radiant.sf_volumes` used for the `shinyFiles` file browser
- Improvements for sending code from Radiant to Rstudio
- Better support for paths when using radiant on a server (i.e., revert to home directory using `radiant.data::find_home()`)
- Revert from `svg` to `png` for plots in `_Report > Rmd_ and _Report > R_.`svg` scatter plots with many point get to big for practical use on servers that have to transfer images to a local browser
- Removed dependency on `methods` package

## radiant.data 0.9.5.3

- Fix smart comma’s in data descriptions
- Search and replace `desc(n)` in reports and replace by `desc(n_obs)`
- Revert to storing the r_data environment as a list on stop to avoid reference problems (@josh1400)
- Fix for plot type in Data > Pivot in older state files (@josh1400)
- Used all declared imports (CRAN)

## radiant.data 0.9.5.0

- Fix for `radiant.data::explore` when variable names contain an underscore
- Fix for `find_gdrive` when drive is not being synced
- Fixes in Report > Rmd and Report > R to accommodate for pandoc > 2

## radiant.data 0.9.4.6

- Don’t update a reactive binding for an object if the binding already exists. See issue https://github.com/rstudio/shiny/issues/2065
- Fix to accommodate changes in `deparse` in R 3.5
- Fix for saving data in Data > Manage and generating the relevant R-code

## radiant.data 0.9.3.5

### Minor changes

- Use `dev = "svg"` for plots in Report > Rmd and Report > R

## radiant.data 0.9.3.4

### Minor changes

- Add argument to `dtab.data.frame` to format specified columns as a percentage

### Bug fixes

- Round to the specified number of decimal places even if input if not of type integer (e.g., 2.0)

## radiant.data 0.9.3.3

### Major changes

- When using radiant with Rstudio Viewer or in an Rstudio Window, loading and saving data through Data > Manage generates R-code the user can add to Report > Rmd or Report > R. Clicking the `Show R-code` checkbox displays the R-code used to load or save the current dataset
- Various changes to the code to accommodate the use of `shiny::makeReactiveBinding`. The advantage is that the code generated for Report > Rmd and Report > R will no longer have to use a list (`r_data`) to store and access data. This means that code generated and used in the Radiant browser interface will be directly usable without the browser interface as well
- Removed `loadr`, `saver`, `load_csv`, `loadcsv_url`, `loadrds_url`, and `make_funs` functions as they are no longer needed
- Deprecated `mean_rm`, `median_rm`, `min_rm`, `max_rm,`sd_rm`,`var_rm, and `sum_rm` functions as they are no longer needed

### Minor changes

- Added `load_clip` and `save_clip` to load and save data to the clipboard on Windows and macOS
- Improved auto completion in Report > Rmd and Report > R
- Maintain, store, and clean the settings of the interactive table in Data > View
- Address closing Rstudio Window issue (https://github.com/rstudio/shiny/issues/2033)

## radiant.data 0.9.2.3

### Major changes

- Report > Rmd and Report > R will now be evaluated the `r_data` environment. This means that the return value from `ls()` will be much cleaner

### Minor changes

- Add option to load files with extension .rdata or .tsv using `loadr` which add that data to the Datasets dropdown
- `visualize` will default to a scatter plot if `xvar` and `yvar` are specified but no plot `type` is provided in the function call
- Improvements to `read_files` function to interactively generate R-code (or Rmarkdown code-chunks) to read files in various format (e.g., SQLite, rds, csv, xlsx, css, jpg, etc.). Supports relative paths and uses `find_dropbox()` and `find_gdrive()` when applicable

## radiant.data 0.9.2.2

### Minor changes

- Require `shinyAce` 0.3.0
- Export `read_files` function to interactively generate R-code or Rmarkdown code-chunks to read files in various format (e.g., SQLite, rds, csv, xlsx, css, jpg, etc.). Supports relative paths and uses `find_dropbox()` and `find_gdrive()` when applicable

## radiant.data 0.9.2.0

### Minor changes

- Addins option to start app in Rstudio window
- Upload and download data using the Rstudio file browser. Allows using relative paths to files (e.g., data or images inside an Rstudio project)

## CHANGES IN radiant.data 0.9.0.22

### Bug fixes

- Fix for #43 where scatter plot was not shown for a dataset with less than 1,000 rows
- Fix for Report > Rmd and Report > R when R-code or Rmarkdown is being pulled from the Rstudio editor

### Minor changes

- Updated equation example in Report > Rmd

## radiant.data 0.9.0.17

### Minor changes

- Use thousand separator for `summary.pivotr` and `summary.explore`
- Fix in code-generation for `table2data`

## radiant.data 0.9.0.16

### Minor changes

- Changed license for help files and images for radiant.data to CC-BY-SA

## radiant.data 0.9.0.15

### Minor changes

- Allow all textarea inputs and multi-select inputs to be resized manually by the user
- Use 200 dpi for plots in Report > Rmd and Report > R
- Data > Visualize now has an option to select a sample of data for scatter plots (e.g., 1K, 5K, 10K, or All)

### Bug fixes

- Fix for `rounddf` to ignore dates

## radiant.data 0.9.0.13

### Minor changes

- Apply `fixMS` to replace curly quotes, em dash, etc. when using Data > Transform > Create
- Option to set number of decimals to show in Data > View
- Improved number formatting in interactive tables in Data > View, Data > Pivot, and Data > Explore
- Option to include an interactive view of a dataset in Report > Rmd. By default, the number of rows is set to 100 as, most likely, the user will not want to embed a large dataset in save HTML report
- Data > Transform will leave variables selected, unless switching to `Create` or `Spread`
- Switch focus to editor in Report > Rmd and Report > R when no other input has focus

### Bug fixes

- Fix for decimals to show in interactive tables Report > Rmd and saved HTML reports
- Better error messages for `xtile` and when binning data with too many groups
- Fix for variable type warnings in Data > Pivot when filtering the table
- Fix for in equations in Report > Rmd

## radiant.data 0.9.0.7

### Minor changes

- Allow response variables with NA values in Model > Logistic regression and other classification models
- Support logicals in code generation from Data > View
- Track window size using `input$get_screen_width`
- Focus on editor when switching to Report > Rmd or Report > R so generated code is shown immediately and the user can navigate and type in the editor without having to click first
- Add information about the first level when plotting a bar chart with a categorical variable on the Y-axis (e.g., mean(buyer {yes}))

### Bug fixes

- Cleanup now also occurs when the stop button is used in Rstudio to close the app
- Fix to include `DiagrammeR` based plots in Rmarkdown reports
- Fix in `read_files` for SQLite data names
- De-activate spell check auto correction in `selectizeInput` in Rstudio Viewer shiny #1916
- Fix to allow selecting and copying text output from Report > Rmd and Report > R
- Remove “fancy” quotes from filters
- Known issue: The Rstudio viewer may not always close the viewer window when trying to stop the application with the `Stop` link in the navbar. As a work-around, use Rstudio’s stop buttons instead.

## radiant.data 0.9.0.0

### Major changes

- If Rstudio project is used Report > Rmd and Report > R will use the project directory as base. This allows users to use relative paths and making it easier to share (reproducible) code
- Specify options in .Rprofile for upload memory limit and running Report > Rmd on server
- `find_project` function based on `rstudioapi`
- Report > Rmd Read button to generate code to load various types of data (e.g., rda, rds, xls, yaml, feather)
- Report > Rmd Read button to generate code to load various types of files in report (e.g., jpg, png, md, Rmd, R). If Radiant was started from an Rstudio project, the file paths used will be relative to the project root. Paths to files synced to local Dropbox or Google Drive folder will use the `find_dropbox` and `find_gdrive` functions to enhances reproducibility.
- Report > Rmd Load Report button can be used to load Rmarkdown file in the editor. It will also extract the source code from Notebook and HTML files with embedded Rmarkdown
- Report > Rmd will read Rmd directly from Rstudio when “To Rstudio (Rmd)” is selected. This will make it possible to use Rstudio Server Pro’s Share project option for realtime collaboration in Radiant
- Long lines of code generated for Report > Rmd will be wrapped to enhance readability
- Report > R is now equivalent to Report > Rmd but in R-code format
- Report > Rmd option to view Editor, Preview, or Both
- Show Rstudio project information in navbar if available

### Minor changes

- Overflow `pre` and `code` blocks in HTML reports generated in Report > Rmd
- Read rdata files through Data > Manage
- Enhanced keyboard shortcuts
- Enhanced editing features in Report > Rmd and Report > R based on updates to `shinyAce`

## radiant.data 0.8.7.8

### Minor changes

- Added preview options to Data > Manage based on https://github.com/radiant-rstats/radiant/issues/30
- Add selected dataset name as default table download name in Data > View, Data > Pivot, and Data > Explore
- Use “stack” as the default for histograms and frequency charts in Data > Visualize
- Cleanup `Stop & Report` option in navbar
- Upgraded tidyr dependency to 0.7
- Upgraded dplyr dependency to 0.7.1

### Bug fixes

- Fix for large numbers in Data > Explore that could cause an integer overflow

## radiant.data 0.8.6.0

### Minor changes

- Export `ggplotly` from `plotly` for interactive plots in Report > Rmd
- Export `subplot` from `plotly` for grids of interactive plots in Report > Rmd
- Set default `res = 96` for `renderPlot` and `dpi = 96` for `knitr::opts_chunk`
- Add `fillcol`, `linecol`, and `pointcol` to `visualize` to set plot colors when no `fill` or `color` variable has been selected
- Reverse legend ordering in Data > Visualize when axes are flipped using `coor_flip()`
- Added functions to choose.files and choose.dir. Uses JavaScript on Mac, utils::choose.files and utils::choose.dir on Windows, and reverts to file.choose on Linux
- Added `find_gdrive` to determine the path to a user’s local Google Drive folder if available
- `fixMs` for encoding in reports on Windows

### Bug fixes

- Chi-square results were not displayed correctly in Data > Pivot
- Fix for `state_multiple`

## radiant.data 0.8.1.0

### Minor changes

- Specify the maximum number of rows to load for a csv and csv (url) file through Data > Manage
- Support for loading and saving feather files, including specifying the maximum number of rows to load through Data > Manage
- Added author and year arguments to help modals in inst/app/radiant.R (thanks @kmezhoud)
- Added size argument for scatter plots to create bubble charts (thanks @andrewsali)
- Example and CSS formatting for tables in Report > Rmd
- Added `seed` argument to `make_train`
- Added `prop`, `sdprop`, etc. for working with proportions
- Set `ylim` in `visualize` for multiple plots
- Show progress indicator when saving reports from Report > Rmd
- `copy_attr` convenience function
- `refactor` function to keep only a subset of levels in a factor and recode the remaining (and first) level to, for example, other
- `register` function to add a (transformed) dataset to the dataset dropdown
- Remember name of state files loaded and suggest that name when re-saving the state
- Show dataset name in output if dataframe passed directly to analysis function
- R-notebooks are now the default option for output saved from Report > Rmd and Report > R
- Improved documentation on how to customize plots in Report > Rmd
- Keyboard short-cut to put code into Report > Rmd (ALT-enter)

### Bug fixes

- When clicking the `rename` button, without changing the name, the dataset was set to NULL (thanks @kmezhoud, https://github.com/radiant-rstats/radiant/issues/5)
- Replace ext with .ext in `mutate_each` function call
- Variance estimation in Data > Explore would cause an error with unit cell-frequencies (thanks @kmezhoud, https://github.com/radiant-rstats/radiant/issues/6)
- Fix for as_integer when factor levels are characters
- Fix for integer conversion in explore
- Remove \r and special characters from strings in r_data and r_state
- Fix sorting in Report > Rmd for tables created using Data > Pivot and Data > Explore when column headers contain symbols or spaces (thanks @4kammer)
- Set `error = TRUE` for rmarkdown for consistency with knitr as used in Report > Rmd
- Correctly handle decimal indicators when loading csv files in Data > Manage
- Don’t overwrite a dataset to combine if combine generates an error when user sets the the name of the combined data to that of an already selected dataset
- When multiple variables were selected, data were not correctly summarized in Data > Transform
- Add (function) label to bar plot when x-variable is an integer
- Maintain order of variables in Data > Visualize when using “color”, “fill”, “comby”, or “combx”
- Avoid warning when switching datasets in Data > Transform and variables being summarized do not exists in the new dataset
- which.pmax produced a list but needed to be integer
- To customized predictions in radiant.model indexr must be able to customize the prediction dataframe
- describe now correctly resets the working directory on exit
- removed all calls to summarise_each and mutate_each from dplyr

### Deprecated

- varp_rm has been deprecated in favor of varpop
- sdp_rm has been deprecated in favor of sdpop
- mutate_each has been deprecated in favor of mutate_at, mutate_all, and radiant.data::mutate_ext