diff --git a/.github/workflows/extensions.yml b/.github/workflows/extensions.yml index f807a8e7..8b095785 100644 --- a/.github/workflows/extensions.yml +++ b/.github/workflows/extensions.yml @@ -59,6 +59,7 @@ jobs: simple-mcp-server: extensions/simple-mcp-server/** simple-shiny-chat-with-mcp: extensions/simple-shiny-chat-with-mcp/** chat-with-content: extensions/chat-with-content/** + connect-user-metrics: extensions/connect-user-metrics/** # Runs for each extension that has changed from `simple-extension-changes` # Lints and packages in preparation for tests and and release. diff --git a/extensions/connect-user-metrics/.Rprofile b/extensions/connect-user-metrics/.Rprofile new file mode 100644 index 00000000..fc7b0944 --- /dev/null +++ b/extensions/connect-user-metrics/.Rprofile @@ -0,0 +1,19 @@ +if (file.exists("renv")) { + source("renv/activate.R") +} else { + # The `renv` directory is automatically skipped when deploying with rsconnect. + message("No 'renv' directory found; renv won't be activated.") +} + +# Allow absolute module imports (relative to the app root). +options(box.path = getwd()) + +if (nzchar(system.file(package = "box.lsp"))) { + options( + languageserver.parser_hooks = list( + "box::use" = box.lsp::box_use_parser + ) + ) +} + +options(repos = c(CRAN = "https://packagemanager.posit.co/cran/latest")) diff --git a/extensions/connect-user-metrics/.gitignore b/extensions/connect-user-metrics/.gitignore new file mode 100644 index 00000000..071c9733 --- /dev/null +++ b/extensions/connect-user-metrics/.gitignore @@ -0,0 +1,4 @@ +.Renviron +.Rproj.user +.Rhistory +.DS_Store \ No newline at end of file diff --git a/extensions/connect-user-metrics/.lintr b/extensions/connect-user-metrics/.lintr new file mode 100644 index 00000000..da7cb04e --- /dev/null +++ b/extensions/connect-user-metrics/.lintr @@ -0,0 +1,5 @@ +linters: + linters_with_defaults( + defaults = box.linters::rhino_default_linters, + line_length_linter = line_length_linter(100) + ) diff --git a/extensions/connect-user-metrics/.rscignore b/extensions/connect-user-metrics/.rscignore new file mode 100644 index 00000000..fdd749b5 --- /dev/null +++ b/extensions/connect-user-metrics/.rscignore @@ -0,0 +1,7 @@ +.github +.lintr +.renvignore +.Renviron +.rhino +.rscignore +tests diff --git a/extensions/connect-user-metrics/CONTRIBUTE.md b/extensions/connect-user-metrics/CONTRIBUTE.md new file mode 100644 index 00000000..071f0e6f --- /dev/null +++ b/extensions/connect-user-metrics/CONTRIBUTE.md @@ -0,0 +1,5 @@ +# How to contribute + +This branch is a *simplified* version of Connect User Metrics, tailored to be deployed on Posit Connect Gallery. + +For the full version of the app, please refer to [the main branch of Connect User Metrics](https://github.com/Appsilon/ConnectUserMetrics). diff --git a/extensions/connect-user-metrics/README.md b/extensions/connect-user-metrics/README.md new file mode 100644 index 00000000..530737a7 --- /dev/null +++ b/extensions/connect-user-metrics/README.md @@ -0,0 +1,66 @@ +# Connect User Metrics Dashboard + +Connect User Metrics makes it easy to monitor **application adoption**, +track **user engagement** and access detailed **usage analytics** +for all your Shiny applications deployed on Posit Connect. +Some key features: + +- **Time-based analysis**: View data by day, week, or month across custom time periods +- **Flexible grouping**: Combine metrics by application, user, and date for different perspectives +- **Interactive charts**: Visualize session counts and unique users with dynamic filtering +- **Smart filtering**: Set minimum session duration and filter by specific apps or users +- **Data export**: Download raw and aggregated data as CSV files for further analysis + +## Environment Variables + +This application requires the following environment variables to be set: + +- `CONNECT_API_KEY` +- `CONNECT_SERVER` + +By default, Posit Connect provides values for these variables, as outlined in the [Vars (Environment Variables) Section][User Guide Vars]. +However, there are cases where you might want to set these variables manually: + +- If you want to retrieve data for applications deployed by a different Publisher than the one + deploying the User Metrics application, set `CONNECT_API_KEY` with that Publisher's API key. +- If you want to retrieve data from a different Posit Connect instance than the one where the User + Metrics application is deployed, set `CONNECT_SERVER` with the URL of that instance. + Additionally, `CONNECT_API_KEY` must be set to authenticate on the instance specified in `CONNECT_SERVER`. + +## Disclaimer + +Posit Connect usage data is most accurate for applications accessed by authenticated users. +Unauthenticated users cannot be distinguished, and will be seen in the app as "Unknown user". + +Read more: [_Why You Should Use Posit Connect Authentication And How to Set It Up_][rsconnect-auth]. + +## Troubleshooting + +### Posit Connect does not appear to have `CONNECT_SERVER` and `CONNECT_API_KEY` set + +Per the [Configuration appendix] in the Posit Connect Admin Guide, these variables are set by default. +However, this behavior can be overridden via [DefaultServerEnv] and [DefaultAPIKeyEnv]. + +Check with your Posit Connect administrator if that's the case. + +### The API connection fails due to a timeout after deploying the User Metrics application + +If the connection times out using the default environment variables, the issue may be that the server cannot resolve its own fully qualified domain name. + +To fix this, go to the User Metrics [application Vars][User Guide Vars] and set `CONNECT_SERVER` to a local address, e.g. `http://localhost:3939`. + +(Note: the scheme in the URL is required by `connectapi::connect()`.) + +### There is no usage data for my application + +As with environment variables, the [Instrumentation] feature is also configurable. + +Confirm with your Posit Connect admin that instrumentation is enabled. + + +[User Guide Vars]: https://docs.posit.co/connect/user/content-settings/#content-vars +[rsconnect-auth]: https://go.appsilon.com/rstudio-connect-authentication-user-metrics-app +[Configuration appendix]: https://docs.posit.co/connect/admin/appendix/configuration/ +[DefaultServerEnv]: https://docs.posit.co/connect/admin/appendix/configuration/#Applications.DefaultServerEnv +[DefaultAPIKeyEnv]: https://docs.posit.co/connect/admin/appendix/configuration/#Applications.DefaultAPIKeyEnv +[Instrumentation]: https://docs.posit.co/connect/admin/appendix/configuration/#Metrics.Instrumentation diff --git a/extensions/connect-user-metrics/_brand.yml b/extensions/connect-user-metrics/_brand.yml new file mode 100644 index 00000000..a25fc7d1 --- /dev/null +++ b/extensions/connect-user-metrics/_brand.yml @@ -0,0 +1,63 @@ +meta: + app_title: "Posit Connect User Metrics" + credits: + enabled: TRUE + about: + references: + homepage: + name: "Link to Appsilon" + link: "https://go.appsilon.com/appsilon-user-metrics-app" + powered_by: + rhino: + name: "Rhino" + link: "https://go.appsilon.com/github-rhino-user-metrics-app" + img_name: "rhino.png" + desc: "Rhino is an Open-Source Package developed by Appsilon to + help the R community make more professional Shiny Apps. Rhino allows you to + create Shiny apps The Appsilon Way - like a fullstack software engineer. + Apply best software engineering practices, modularize your code, + test it well, make UI beautiful, and think about user adoption + from the very beginning." + summary: "We create, maintain, and develop Shiny applications + for enterprise customers all over the world. Appsilon + provides scalability, security, and modern UI/UX with + custom R packages that native Shiny apps do not provide. + Our team is among the world's foremost experts in R Shiny + and has made a variety of Shiny innovations over the + years. Appsilon is a proud Posit Full Service + Certified Partner." + footer: + text: "Designed and developed with 💙 by" + link: + label: "Appsilon" + url: "https://go.appsilon.com/appsilon-user-metrics-app" + +logo: "appsilon-logo.png" + +color: + palette: + white: "#FFFFFF" + mint: "#00CDA3" + blue: "#0099F9" + yellow: "#E8C329" + purple: "#994B9D" + black: "#000000" + gray: "#15354A" + foreground: gray + background: white + primary: blue + +typography: + fonts: + - family: Maven Pro + source: google + weight: [400, 500, 600, 700] + style: normal + - family: Roboto + source: google + weight: [400, 500, 600] + style: normal + base: + Roboto + headings: + Maven Pro diff --git a/extensions/connect-user-metrics/app.R b/extensions/connect-user-metrics/app.R new file mode 100644 index 00000000..93288192 --- /dev/null +++ b/extensions/connect-user-metrics/app.R @@ -0,0 +1,2 @@ +# Rhino / shinyApp entrypoint. Do not edit. +rhino::app() diff --git a/extensions/connect-user-metrics/app/constants/.gitignore b/extensions/connect-user-metrics/app/constants/.gitignore new file mode 100644 index 00000000..2e538613 --- /dev/null +++ b/extensions/connect-user-metrics/app/constants/.gitignore @@ -0,0 +1 @@ +static_data.rds diff --git a/extensions/connect-user-metrics/app/constants/filter_users.yml b/extensions/connect-user-metrics/app/constants/filter_users.yml new file mode 100644 index 00000000..ddc5bce1 --- /dev/null +++ b/extensions/connect-user-metrics/app/constants/filter_users.yml @@ -0,0 +1,2 @@ +users: + - this_user_will_not_appear_on_the_app diff --git a/extensions/connect-user-metrics/app/logic/__init__.R b/extensions/connect-user-metrics/app/logic/__init__.R new file mode 100644 index 00000000..51c43579 --- /dev/null +++ b/extensions/connect-user-metrics/app/logic/__init__.R @@ -0,0 +1,2 @@ +# Logic: application code independent from Shiny. +# https://go.appsilon.com/rhino-project-structure diff --git a/extensions/connect-user-metrics/app/logic/aggregation.R b/extensions/connect-user-metrics/app/logic/aggregation.R new file mode 100644 index 00000000..6efb11a9 --- /dev/null +++ b/extensions/connect-user-metrics/app/logic/aggregation.R @@ -0,0 +1,130 @@ +box::use( + dplyr, + lubridate[floor_date], + magrittr[`%>%`], + stats[setNames], + tools[toTitleCase], +) + +box::use( + app/logic/utils[ + week_start_day, + week_start_id + ], +) + +#' Aggregate usage data based on specified levels and time period +#' @param usage Usage data frame +#' @param agg_levels Aggregation levels +#' @param date_aggregation Time period for aggregation +#' @return Aggregated data frame +aggregate_usage <- function(usage, agg_levels, date_aggregation) { + usage$day <- floor_date(usage$start_date, "day") + usage$week <- floor_date(usage$start_date, "week", + week_start = week_start_id + ) + usage$month <- floor_date(usage$start_date, "month") + + if (date_aggregation == "day") { + usage$start_date <- usage$start_date + } else if (date_aggregation == "week") { + usage$start_date <- usage$week + } else if (date_aggregation == "month") { + usage$start_date <- usage$month + } + + if (!is.null(agg_levels)) { + usage <- usage %>% + dplyr$group_by(dplyr$across(dplyr$all_of(agg_levels))) + } + + user_in_agg_levels <- "user_guid" %in% agg_levels + if (user_in_agg_levels) { + usage <- usage %>% + dplyr$filter(!is.na(user_guid)) + } + + usage %>% + dplyr$summarise( + avg_duration = mean(duration, na.rm = TRUE), + "Session count" = dplyr$n(), + "Unique users" = dplyr$n_distinct(user_guid) + ) %>% + dplyr$ungroup() +} + +#' Add metadata to aggregated usage data +#' @param agg_usage Aggregated usage data +#' @param apps Apps data frame +#' @param users Users data frame +#' @param content_guid_present Whether content_guid is in aggregation levels +#' @param user_guid_present Whether user_guid is in aggregation levels +#' @return Aggregated usage data with metadata +add_metadata <- function(agg_usage, apps, users, content_guid_present, user_guid_present) { + if (content_guid_present) { + agg_usage <- agg_usage %>% + dplyr$left_join(apps, by = c("content_guid" = "guid")) + } + if (user_guid_present) { + agg_usage <- agg_usage %>% + dplyr$left_join(users, by = c("user_guid" = "guid")) + } + agg_usage +} + +#' Process aggregated usage data +#' @param usage Usage data frame +#' @param agg_levels Vector of aggregation levels +#' @param date_aggregation Date aggregation level +#' @param apps Apps data frame +#' @param users Users data frame +#' @return Aggregated usage data frame +#' @export +process_agg_usage <- function(usage, agg_levels, date_aggregation, apps, users) { + content_guid_present <- "content_guid" %in% agg_levels + user_guid_present <- "user_guid" %in% agg_levels + + # If neither content_guid nor user_guid is present, just do basic aggregation + if (!content_guid_present && !user_guid_present) { + return(aggregate_usage(usage, agg_levels, date_aggregation)) + } + + # If no start_date in agg_levels and only one of content/user guid, + # force both to be present + if (!"start_date" %in% agg_levels && xor(content_guid_present, user_guid_present)) { + agg_levels <- c("content_guid", "user_guid") + content_guid_present <- user_guid_present <- TRUE + } + + # Do the aggregation and add metadata + agg_usage <- aggregate_usage(usage, agg_levels, date_aggregation) + add_metadata(agg_usage, apps, users, content_guid_present, user_guid_present) +} + +#' Format aggregated usage data for display +#' @param agg_usage Aggregated usage data frame +#' @param date_aggregation Date aggregation level ("week", "month", or "day") +#' @param format_duration Function to format duration values +#' @return Formatted data frame for display +#' @export +format_agg_usage <- function(agg_usage, date_aggregation, format_duration) { + date_col <- switch(date_aggregation, + "week" = paste(toTitleCase(week_start_day), "Date"), + "month" = "Month", + "Date" + ) + + # Create ordered column mapping + cols <- c( + setNames("title", "Application"), + setNames("username", "Username"), + setNames("start_date", date_col), + "Session count", + "Unique users", + setNames("avg_duration", "Average session duration") + ) + + agg_usage %>% + dplyr$mutate(avg_duration = format_duration(avg_duration)) %>% + dplyr$select(dplyr$any_of(cols)) +} diff --git a/extensions/connect-user-metrics/app/logic/charts.R b/extensions/connect-user-metrics/app/logic/charts.R new file mode 100644 index 00000000..86df755f --- /dev/null +++ b/extensions/connect-user-metrics/app/logic/charts.R @@ -0,0 +1,458 @@ +box::use( + dplyr[arrange, group_by, mutate, summarise], + echarts4r, + glue[glue], + htmlwidgets[JS], + lubridate[floor_date], + magrittr[`%>%`], + timetk[pad_by_time], +) + +box::use( + app/logic/utils, +) + +# Sessions ---- + +#' @title Plots chart for aggregated metrics in a given period grouped by chosen columns by user +#' @param agg_usage tibble with metrics columns avg_duration and `Session count`, varying grouping +#' columns as in agg_levels parameter, possible content_guid, user_guid, start_date, if +#' content_guid present also additional dictionary column: title if user_guid present also +#' additional dictionary column: username +#' @param agg_levels Vector with names of columns for which agg_usage was grouped and metric +#' columns calculated. utils$MAX_AGG_LEVELS stores current maximal number of columns used for +#' grouping. Currently used columns for grouping are: c("content_guid", "user_guid", +#' start_date"). Minimal number of columns used is zero and represented by NULL value of +#' parameter. This means the maximum aggregation for the whole period. +#' @param date_range date_range[1] <- from date, date_range[2] <- to_date. Used to explicitly +#' show the period in the title [TODO] +#' @param date_aggregation Used for line charts to fill up zero values for dates without +#' observations. Acceptable values are "day", "week", "month". +#' +#' @export +plot_session_chart <- function(agg_usage, agg_levels, date_range, + date_aggregation, + goal_line) { + if (nrow(agg_usage) > 0) { + if (is.null(agg_levels)) { + plot_session_summary_chart(agg_usage, date_range) + } else { + if ("start_date" %in% agg_levels) { + plot_session_line_chart( + agg_usage, agg_levels, date_range, + date_aggregation, + goal_line + ) + } else { + plot_session_bar_chart(agg_usage, agg_levels, date_range) + } + } + } +} + +#' @title Plot summary bar chart for Session Count and Average Duration metrics +#' @description Plot bar charts of Session Count and Average Duration metrics when there is no +#' columns in grouping +#' +#' @param agg_usage tibble with metrics columns avg_duration and `Session count`. For Summary chart +#' we assume no grouping columns +#' @param date_range date_range[1] <- from date, date_range[2] <- to_date. Used to explicitly show +#' the period in the title [TODO] +#' +#' @return "echarts4r" "htmlwidget" bar chart object +plot_session_summary_chart <- function(agg_usage, date_range) { + agg_usage$title <- c("All") + agg_usage %>% + mutate(avg_duration = ifelse(is.finite(avg_duration), round(avg_duration / 60), 0)) %>% + echarts4r$e_charts(x = title, height = "auto") %>% + echarts4r$e_theme("charts_theme") %>% + chart_title_helper( + title = "Total number of sessions and average session duration in minutes for all applications", # nolint: line_length + date_range = date_range + ) %>% + echarts4r$e_bar(serie = `Session count`, barMaxWidth = "30%") %>% + echarts4r$e_bar( + serie = avg_duration, + barMaxWidth = "30%", + name = "Avg session duration", + y_index = 1 + ) %>% + echarts4r$e_y_axis(name = "Minutes", nameLocation = "middle", index = 1, nameGap = 30) %>% + echarts4r$e_y_axis( + name = "Count", nameLocation = "middle", index = 0, nameGap = 30, + splitLine = list(show = FALSE) + ) %>% + echarts4r$e_legend(bottom = 0) %>% + echarts4r$e_tooltip() +} + +#' @title Plot line charts for Session Count metric +#' @description Plot line charts of Session Count metric when there is start_date in grouping +#' +#' @param agg_usage tibble with metrics columns avg_duration and `Session count`, varying grouping +#' columns as in agg_levels parameter, possible content_guid, user_guid, start_date, if +#' content_guid present also additional dictionary column: title if user_guid present also +#' additional dictionary column: username +#' @param agg_levels Vector with names of columns for which agg_usage was grouped and metric columns +#' calculated. utils$MAX_AGG_LEVELS stores current maximal number of columns used for grouping. +#' Currently used columns for grouping are: c("content_guid", "user_guid", start_date"). For +#' plotting lines we assume there is start_date column and additional one of two other columns for +#' series. If only start_date is present or all 3 columns are present one aggregated serie is +#' presented over the timeline. +#' @param date_range date_range[1] <- from date, date_range[2] <- to_date. Used to explicitly show +#' the period in the title [TODO] +#' @param date_aggregation Time period ("day", "week", "month") to fill up with zero values for time +#' periods without observations. +#' +#' @return "echarts4r" "htmlwidget" bar chart object +plot_session_line_chart <- function(agg_usage, agg_levels, + date_range, + date_aggregation, + goal_line) { + if (identical(c("content_guid", "start_date"), agg_levels)) { + agg_usage %>% + mutate(content_guid = title) %>% + group_by(title) %>% + arrange(start_date) %>% + date_zero_value_filler(date_range, date_aggregation) %>% + line_chart_helper( + title = "Number of sessions per interval for chosen applications", + date_range = date_range, + goal_line = goal_line + ) + } else if (identical(c("user_guid", "start_date"), agg_levels)) { + agg_usage %>% + mutate(user_guid = username) %>% + group_by(username) %>% + arrange(start_date) %>% + date_zero_value_filler(date_range, date_aggregation) %>% + line_chart_helper( + title = "Total number of sessions per interval of selected users", + date_range = date_range, + goal_line = goal_line + ) + } else if (identical(c("start_date"), agg_levels) || length(agg_levels) == utils$MAX_AGG_LEVELS) { + agg_usage %>% + group_by(start_date) %>% + arrange(start_date) %>% + summarise(`Session count` = sum(`Session count`)) %>% + date_zero_value_filler(date_range, date_aggregation) %>% + line_chart_helper( + title = "Total number of sessions per interval for all applications", + date_range = date_range, + goal_line = goal_line + ) + } +} + +#' @title Plot bar charts +#' Plot bar charts for Session Count metric when there is no start_date in grouping +#' +#' @param agg_usage tibble with metrics columns avg_duration and `Session count`, varying grouping +#' columns as in agg_levels parameter, possible content_guid, user_guid, start_date, if +#' content_guid present also additional dictionary column: title if user_guid present also +#' additional dictionary column: username +#' @param agg_levels Vector with names of columns for which agg_usage was grouped and metric columns +#' calculated. utils$MAX_AGG_LEVELS stores current maximal number of columns used for grouping. +#' Currently used columns for grouping are: c("content_guid", "user_guid", start_date"). For +#' plotting bars we assume one or two column grouping but no start_date column. +#' @param date_range date_range[1] <- from date, date_range[2] <- to_date. Used to explicitly show +#' the period in the title [TODO] +#' +#' @return "echarts4r" "htmlwidget" bar chart object +plot_session_bar_chart <- function(agg_usage, agg_levels, date_range) { + if (identical(c("content_guid"), agg_levels)) { + agg_usage %>% + bar_chart_helper("title", + title = "Total number of sessions per application", + date_range = date_range + ) + } else if (identical(c("user_guid"), agg_levels)) { + agg_usage %>% + bar_chart_helper("username", + title = "Total number of sessions per user", + date_range = date_range + ) + } else if (identical(c("content_guid", "user_guid"), agg_levels)) { + agg_usage %>% + group_by(title, username) %>% + bar_chart_helper("title", + title = "Total number of sessions per user and application", + date_range = date_range + ) + } +} + +# Unique Users ---- + +#' @export +#' Wrapper function to select and plot the unique users line and bar charts +#' @param agg_usage identical to definition in plot_session_line_chart() +#' @param agg_levels identical to definition in plot_session_line_chart() +#' @param date_range identical to definition in plot_session_line_chart() +#' @param date_aggregation identical to definition in plot_session_line_chart() +#' +#' @return "echarts4r" "htmlwidget" bar chart object +plot_unique_chart <- + function(agg_usage, + agg_levels, + date_range, + date_aggregation, + goal_line) { + if (nrow(agg_usage) > 0) { + if ("start_date" %in% agg_levels) { + # Note: When "user_guid" is present in agg_levels, we cannot truly + # calculate the number of unique users since we cannot aggregate by a + # variable and show it at the same time. Therefore, for Unique User plots + # we show generic plots pretending as if User was not selected. + + # Remove User (user_guid) from agg_levels when plotting the Unique Users + # line chart -- which is virtually the same as the line chart where User + # was not selected. + + # Combinations: + + # - User, Date + # - User, Application, Date + + if ("user_guid" %in% agg_levels) { + agg_levels <- agg_levels[!agg_levels %in% c("user_guid")] + } + + plot_unique_line_chart( + agg_usage, + agg_levels, + date_range, + date_aggregation, + goal_line + ) + } else { + # Change agg_levels to Application (content_guid) when only + # User (user_guid) is selected + + # Combinations: + + # - User + + if (identical(c("user_guid"), agg_levels)) { + agg_levels <- c("content_guid") + } + + # Otherwise, plot as it should be plotted + + # Combinations: + + # - Application, User + + plot_unique_bar_chart(agg_usage, agg_levels, date_range) + } + } + } + +#' Function to plot the unique users line charts (Date, Application & Date) +#' @param agg_usage identical to definition in plot_session_line_chart() +#' @param agg_levels identical to definition in plot_session_line_chart() +#' @param date_range identical to definition in plot_session_line_chart() +#' @param date_aggregation identical to definition in plot_session_line_chart() +#' +#' @return "echarts4r" "htmlwidget" bar chart object +plot_unique_line_chart <- function(agg_usage, + agg_levels, + date_range, + date_aggregation, + goal_line) { + if ("Unique users" %in% colnames(agg_usage)) { + if (identical(c("content_guid", "start_date"), agg_levels)) { + agg_usage %>% + mutate(content_guid = title) %>% + group_by(title, start_date) %>% + summarise(`Unique users` = sum(`Unique users`)) %>% + arrange(start_date) %>% + date_zero_value_filler(date_range, date_aggregation) %>% + line_chart_helper( + title = "Number of unique users per interval for chosen applications", + date_range = date_range, + goal_line = goal_line, + unique = TRUE, + disclaimer = TRUE + ) + } else if (identical(c("start_date"), agg_levels) || length(agg_levels) == utils$MAX_AGG_LEVELS) { # nolint: line_length + agg_usage %>% + group_by(start_date) %>% + summarise(`Unique users` = sum(`Unique users`)) %>% + arrange(start_date) %>% + date_zero_value_filler(date_range, date_aggregation) %>% + line_chart_helper( + title = "Total number of unique users per interval for all applications", + date_range = date_range, + goal_line = goal_line, + unique = TRUE, + disclaimer = TRUE + ) + } + } +} + +#' Function to plot the unique users bar chart (Application) +#' @param agg_usage identical to definition in plot_session_line_chart() +#' @param agg_levels identical to definition in plot_session_line_chart() +#' @param date_range identical to definition in plot_session_line_chart() +#' +#' @return "echarts4r" "htmlwidget" bar chart object +plot_unique_bar_chart <- function(agg_usage, agg_levels, date_range) { + if (any(c("content_guid", "user_guid") %in% agg_levels)) { + agg_usage %>% + mutate(content_guid = title) %>% + group_by(title) %>% + summarise(`Unique users` = sum(`Unique users`)) %>% + bar_chart_helper("title", + title = "Total number of unique users per application", + date_range = date_range, + unique = TRUE, + disclaimer = TRUE + ) + } +} + +# Helpers ---- + +chart_title_helper <- function(obj, title, date_range, disclaimer = FALSE) { + subtext <- glue("Period of {date_range[1]} - {date_range[2]}") + + if (disclaimer) { + subtext <- paste0( + subtext, + " | Note: The plot always assumes User is not selected" + ) + } + + echarts4r$e_title( + obj, + text = title, + textStyle = list( + overflow = "break", + width = 600 + ), + subtextStyle = list(fontSize = 14) + ) +} + +line_chart_helper <- function(obj, title, + date_range, + goal_line, + unique = FALSE, + disclaimer = FALSE) { + plot <- echarts4r$e_charts(obj, start_date) %>% + echarts4r$e_theme("charts_theme") %>% + chart_title_helper( + title = title, + date_range = date_range, + disclaimer = disclaimer + ) + + if (unique == TRUE) { + plot <- plot %>% + echarts4r$e_line(serie = `Unique users`) + + if (!is.null(goal_line)) { + if (max(obj$`Unique users`) < goal_line) { + plot <- plot %>% + # -1 rounds it to the nearest 10 + echarts4r$e_y_axis(max = round(goal_line + 10, -1)) + } + } + } else { + plot <- plot %>% + echarts4r$e_line(serie = `Session count`) + + if (!is.null(goal_line)) { + if (max(obj$`Session count`) < goal_line) { + plot <- plot %>% + # -1 rounds it to the nearest 10 + echarts4r$e_y_axis(max = round(goal_line + 10, -1)) + } + } + } + + if (!is.null(goal_line)) { + line_coords <- list( + xAxis = max(obj$start_date), + yAxis = goal_line + ) + plot <- plot %>% + echarts4r$e_mark_line( + data = line_coords, + itemStyle = list(color = "#ff364a"), + title = "GOAL", + symbol = "none" + ) + } + plot %>% + echarts4r$e_x_axis( + type = "category", + axisLabel = list( + # Change format to YYYY/MM/DD + formatter = JS("function(value) { return value.replace(/-/g, '/'); }") + ) + ) %>% + echarts4r$e_legend(top = "bottom") %>% + echarts4r$e_tooltip(trigger = "axis") +} + +bar_chart_helper <- function(obj, x, title, date_range, + unique = FALSE, + disclaimer = FALSE) { + plot <- obj %>% + echarts4r$e_charts_(x = x) %>% + echarts4r$e_theme("charts_theme") %>% + chart_title_helper( + title = title, + date_range = date_range, + disclaimer = disclaimer + ) + + if (unique == TRUE) { + plot <- plot %>% + echarts4r$e_bar(serie = `Unique users`) + } else { + if ("username" %in% colnames(obj)) { + plot <- plot %>% + echarts4r$e_bar(serie = `Session count`, username) + } else { + plot <- plot %>% + echarts4r$e_bar(serie = `Session count`) + } + } + + plot <- plot %>% + echarts4r$e_legend(top = "bottom") %>% + echarts4r$e_tooltip() +} + +date_zero_value_filler <- function( + agg_usage, + date_range, + date_aggregation, + week_start = utils$week_start_id +) { + if (nrow(agg_usage) == 0) { + return(agg_usage) + } + + start_date <- floor_date(date_range[1], date_aggregation, week_start) + + end_date <- date_range[2] + + if (start_date == end_date) { + return(agg_usage) + } + + agg_usage %>% + pad_by_time( + "start_date", + .by = date_aggregation, + .pad_value = 0, + .start_date = start_date, + .end_date = end_date + ) +} diff --git a/extensions/connect-user-metrics/app/logic/config_settings.R b/extensions/connect-user-metrics/app/logic/config_settings.R new file mode 100644 index 00000000..cb98874a --- /dev/null +++ b/extensions/connect-user-metrics/app/logic/config_settings.R @@ -0,0 +1,110 @@ +box::use( + config[get], + magrittr[`%>%`], + purrr[map, map_dfr], + tibble[as_tibble, is_tibble], +) + +box::use( + app/logic/utils[AGG_LEVELS, AGG_TIME_LEVELS], +) + +#' @export +split_yml_params <- function(param) { + if (!is.list(param)) { + if (is.null(param)) { + return(NULL) + } + strsplit(param, ",", fixed = TRUE)[[1]] %>% map(trimws) + } else { + param %>% map_dfr(~ as_tibble(.x)) + } +} + +#' It reads the config.yml file in the main app directory +#' If nothing or any error then it outputs NULL +#' @export +read_config_yml <- function(file_path = "config.yml") { + tryCatch( + { + get(file = file_path) %>% map(split_yml_params) + }, + error = function(e) { + message("Error in parsing config") + message(e) + NULL + } + ) +} + + +validate_apps <- function(config, data) { + length_flag <- length(config$apps) == 0 + subset_flag <- all(config$apps %in% data) + length_flag | subset_flag +} + +validate_users <- function(config, data) { + length_flag <- length(config$users) == 0 + subset_flag <- all(config$users %in% data) + length_flag | subset_flag +} + +validate_agg_levels <- function(config) { + config$agg_levels %in% AGG_LEVELS +} + +validate_agg_time <- function(config) { + config$agg_time %in% AGG_TIME_LEVELS +} + +validate_min_time <- function(config) { + !is.na(as.POSIXlt(unlist(config$min_time), format = "%H:%M:%S")) +} + +validate_goal <- function(config, goal_type) { + if (goal_type %in% names(config)) { + if (is_tibble(config[[goal_type]])) { + return(nrow(config[[goal_type]]) > 0) + } else { + return(!is.na(as.numeric(config[[goal_type]]))) + } + } + FALSE +} + +validate_week_start <- function(config) { + if (is.null(config$week_start)) { + return(FALSE) + } + + dows <- c( + "monday", "tuesday", "wednesday", "thursday", "friday", + "saturday", "sunday" + ) + config$week_start %in% dows +} + +#' @export +#' +#' Simple function to check whether a config param has a valid value or not +#' +#' @param config the config object after read_config_yml +#' @param config_key the key to validate against. Valid keys include apps, +#' users, agg_levels, min_time, unique_users_goal, sessions_goal +#' @param data if the validation rule needs some data object such as in apps, +#' users +#' +#' @return boolean result +is_config_valid <- function(config, config_key, data = NULL) { + switch(config_key, + apps = validate_apps(config, data), + users = validate_users(config, data), + agg_levels = validate_agg_levels(config), + agg_time = validate_agg_time(config), + min_time = validate_min_time(config), + unique_users_goal = validate_goal(config, "unique_users_goal"), + sessions_goal = validate_goal(config, "sessions_goal"), + week_start = validate_week_start(config) + ) +} diff --git a/extensions/connect-user-metrics/app/logic/data_utils.R b/extensions/connect-user-metrics/app/logic/data_utils.R new file mode 100644 index 00000000..223515c4 --- /dev/null +++ b/extensions/connect-user-metrics/app/logic/data_utils.R @@ -0,0 +1,111 @@ +box::use( + connectapi[get_content, get_usage_shiny, get_users], + dplyr, + lubridate, + magrittr[`%>%`], + purrr, + rlang, + utils[write.table], +) + +#' Check if x is a non trivial string +#' @details Returns FALSE if `x` is NULL, NA or a zero-length character. +#' This function is used when splitting the GUIDs: we don't want +#' NULLs, NAs or trivial strings appearing in the filters. +#' +#' Important: this function accepts only vectors of length 1, which is fine: +#' it was made to be used only inside a `purrr::map` +#' @export +is_non_trivial_string <- function(x) { + !rlang$is_empty(x) && !rlang$is_na(x) && nzchar(x) +} + +#' Split GUIDs string into a vector +#' @param guids Comma-separated string of GUIDs +#' @return Vector of GUIDs +#' @export +split_guids <- function(guids) { + if (is.na(guids)) { + return(NULL) + } + + splitted_guids <- strsplit(guids, ",", fixed = TRUE)[[1]] + + clean_guids <- purrr$keep(splitted_guids, is_non_trivial_string) + + if (rlang$is_empty(clean_guids)) { + return(NULL) + } + + clean_guids +} + +#' Given a client, what is the most recent date of activity in a Shiny app? +#' @param client Connect API client +#' @return A date (today, if none found) +#' @export +get_latest_date_from_client <- function(client, guids = NULL) { + # get the most recent start date + latest_date_from_client <- + get_usage_shiny( + client, limit = 1, asc_order = FALSE, content_guid = guids + )$started[1] + + # if somehow can't find the latest usage, return today + if (rlang$is_empty(latest_date_from_client) || rlang$is_na(latest_date_from_client)) { + return(lubridate$today()) + } + + lubridate$as_date(latest_date_from_client) +} + +#' Get usage data from a client +#' @param client Connect API client +#' @param from,to Date to filter start and end of data +#' @param guids Optional: filter results by content GUID +#' @export +get_usage_from_client <- function(client, from = NULL, to = NULL, guids = NULL) { + usage <- get_usage_shiny( + client, + limit = Inf, content_guid = guids, from = from, to = to + ) + + usage +} + +#' Get apps data from a client +#' @param client Connect API client +#' @param guids Optional: filter results by content GUID +#' @export +get_apps_from_client <- function(client, guids = NULL) { + apps <- + get_content(client, owner_guid = client$me()$guid) |> + dplyr$mutate(title = dplyr$case_when( + is.na(title) ~ name, + TRUE ~ title + )) + + if (!rlang$is_empty(guids)) { + apps <- apps %>% + dplyr$filter(guid %in% guids) + } + + apps +} + +#' Get users data from a client +#' @param client Connect API client +#' @export +get_users_from_client <- function(client) { + users <- get_users(client, page_size = Inf, limit = Inf) + + users +} + +#' Write data frame to CSV +#' @param data Data frame to write +#' @param file Output file path +#' @export +write_csv <- function(data, file) { + write.table(data, file, sep = ",", na = "", row.names = FALSE) +} diff --git a/extensions/connect-user-metrics/app/logic/duration_utils.R b/extensions/connect-user-metrics/app/logic/duration_utils.R new file mode 100644 index 00000000..2a7405b2 --- /dev/null +++ b/extensions/connect-user-metrics/app/logic/duration_utils.R @@ -0,0 +1,29 @@ +box::use( + lubridate[day, hour, minute, second, seconds_to_period], +) + +#' Convert seconds to HH:MM:SS format +#' @param s Vector of seconds +#' @return Vector of formatted duration strings +#' @export +format_duration <- function(s) { + if (length(s) == 0) return(character(0)) + + # vector of periods + periods <- seconds_to_period(round(s, digits = 0)) + + formatted <- sprintf( + "%02d:%02d:%02d", + day(periods) * 24 + hour(periods), + minute(periods), + second(periods) + ) + + # when negative, set to default + formatted[s < 0] <- "00:00:00" + + # when NA, return "" + formatted[is.na(s)] <- "" + + formatted +} diff --git a/extensions/connect-user-metrics/app/logic/ui_utils.R b/extensions/connect-user-metrics/app/logic/ui_utils.R new file mode 100644 index 00000000..25f94940 --- /dev/null +++ b/extensions/connect-user-metrics/app/logic/ui_utils.R @@ -0,0 +1,112 @@ +box::use( + grDevices[col2rgb], + here[here], + imola[ + breakpoint, + breakpointSystem + ], + jsonlite[ + fromJSON, + write_json + ], + stringr[ + fixed, + str_replace_all + ], + yaml[read_yaml], +) + +brand_path <- "_brand.yml" + +charts_theme_template_path <- "app/metrics_theme_template.json" + +#' @export +brand <- read_yaml(here(brand_path)) + +#' @export +is_credits_enabled <- isTRUE(brand$meta$credits$enabled) + +# Breakpoint system for layout +#' @export +breakpoints <- breakpointSystem( + "breakpoints", + breakpoint("xs", min = 320), + breakpoint("s", min = 428), + breakpoint("m", min = 728), + breakpoint("l", min = 1024), + breakpoint("xl", min = 1200) +) + +#' Mix two colors by transforming them to RGB +#' @param base_color Base color (hex) +#' @param blend_color Color to blend with (hex) +#' @param blend_weight Blend wiight in scale [0-1] +#' @return Mixed color hex +#' @export +color_mix <- function(base_color, blend_color, blend_weight) { + # Get RGB values for each color [0–255] + base_rgb <- col2rgb(base_color)[, 1] + blend_rgb <- col2rgb(blend_color)[, 1] + + # Blend two colors based on the blend_weight [0–1] + mixed_rgb <- round(base_rgb * (1 - blend_weight) + blend_rgb * blend_weight) + + # Format as hex color string + sprintf("#%02X%02X%02X", mixed_rgb[1], mixed_rgb[2], mixed_rgb[3]) +} + +# Placeholder replacements for charts theme +#' @export +placeholder_replacements <- list( + "$PRIMARY_LIGHT_COLOR" = color_mix( + base_color = brand$color$palette[[brand$color$primary]], + blend_color = brand$color$palette$white, + blend_weight = 0.2 + ), + "$BASE_FONT" = brand$typography$base, + "$HEADINGS_FONT" = brand$typography$headings +) + +#' Replace placeholders with values in given text +#' @param text Text containing placeholders in format "$PLACEHOLDER" +#' @param replacements List of placeholder names and their values +#' @return Text with values in place of placeholders +#' @export +replace_placeholders <- function(text, replacements) { + for (key in names(replacements)) { + text <- str_replace_all(text, fixed(key), as.character(replacements[[key]])) + } + text +} + +#' Compose charts theme .json file using values from branding .yml file +#' @param brand_path Path to branding .yml file +#' @param template_path Path to charts theme template .json file +#' @return Path to charts theme .json file +#' @export +compose_charts_theme <- function( + placeholder_replacements, + template_path = charts_theme_template_path +) { + if (!file.exists(template_path) || + length(placeholder_replacements) == 0 || + anyNA(placeholder_replacements) + ) { + return("") + } + + # Read template and replace placeholders with values + template_text <- readLines(template_path, warn = FALSE) + updated_text <- replace_placeholders( + text = template_text, + replacements = placeholder_replacements + ) + + # Convert updated text to JSON and write output + output_path <- sub("_template", "", template_path) + theme <- fromJSON(paste(updated_text, collapse = "\n"), simplifyVector = TRUE) + + write_json(theme, output_path, pretty = TRUE, auto_unbox = TRUE) + + if (file.exists(output_path)) output_path else "" +} diff --git a/extensions/connect-user-metrics/app/logic/utils.R b/extensions/connect-user-metrics/app/logic/utils.R new file mode 100644 index 00000000..861f5ec0 --- /dev/null +++ b/extensions/connect-user-metrics/app/logic/utils.R @@ -0,0 +1,173 @@ +box::use( + dplyr, + fs[path], + lubridate[as_date, floor_date], + magrittr[`%>%`], + purrr[map_lgl], + stringr[str_split], + tibble[is_tibble], +) + +box::use( + app/logic/config_settings[is_config_valid, read_config_yml], +) + +#' @export +MAX_AGG_LEVELS <- 3 # nolint: object_name_linter + +#' @export +AGG_LEVELS <- c("content_guid", "user_guid", "start_date") # nolint: object_name_linter + +#' @export +AGG_TIME_LEVELS <- c("Daily" = "day", "Weekly" = "week", "Monthly" = "month") # nolint: object_name_linter + +config <- read_config_yml() + +#' @export +week_start_day <- ifelse( + isTRUE(is_config_valid(config, "week_start")), + config$week_start[[1]], + "Monday" +) + +#' Maps the day of the week to an integer between 1 to 7 +#' where 1 indicates a Monday and a 7 indicates a Sunday +#' @param dow day(or days) of the week as a text (i.e. "Monday") +#' @return integer from 1 to 7 where 1 indicates a monday +#' @export +map_wday <- function(dow) { + dows <- c( + "monday", "tuesday", "wednesday", "thursday", "friday", + "saturday", "sunday" + ) + match(tolower(dow), dows) +} + +#' @export +week_start_id <- map_wday(week_start_day) + +#' Retrieves the goal from a dataframe assuming the following structure +#' columns: +#' freq : +#' Contains the frequency for the goal. +#' Can be one of day,week,month +#' per : +#' The aggregation levels for the goal as a comma separated list. +#' Can be a combination of content_guid,user_guid,start_date +#' goal: +#' The value of the goal. +#' Must be a numerical value even if the column data type is +#' @param goal_df a dataframe with the above specification +#' @param agg_levels vector of aggregation levels to filter the 'per' column. +#' Should contain a combination of content_guid,user_guid,start_date +#' @param date_agg character value to filter the 'freq' column. +#' Can be one of day,week,month +#' @param returns a single numerical value if a goal matches the arguments else NULL is returned +get_goal_spec <- function(goal_df, agg_levels, date_agg) { + spec <- goal_df |> + dplyr$filter( + date_agg == freq, + str_split(per, ",") |> map_lgl(~ identical(sort(agg_levels), sort(trimws(.x)))) + ) |> + dplyr$pull(goal) |> + as.integer() + if (length(spec) == 0) { + return(NULL) + } + + spec +} + +#' Filter dataframe by username +#' @param df A dataframe. +#' @param users A string array. +#' @return A filtered dataframe. +#' @export +filter_data_by_user <- function(df, users) { + df %>% dplyr$filter(!(username %in% users)) +} + +#' Process goal configuration for charts +#' @param goal Goal configuration (can be tibble or numeric) +#' @param agg_levels Vector of aggregation levels +#' @param date_aggregation Date aggregation setting +#' @return Processed goal value (integer or NULL) +#' @export +process_chart_goal <- function(goal, agg_levels, date_aggregation) { + if (is_tibble(goal)) { + goal <- get_goal_spec( + goal, + agg_levels, + date_aggregation + ) + } else if (!is.null(goal)) { + goal <- as.integer(unlist(goal)) + } + + goal +} + +#' Create an image path based on the given path. +#' +#' @param image_path The path to be used for creating the image path. +#' @return The created image path. +#' +#' @examples +#' create_image_path("photo.jpg") +#' # Output: "../static/images/photo.jpg" +#' +#' @export +create_image_path <- function(image_path) { + base_path <- "static/images" + + if (nchar(base_path) < 1) { + file_path <- path(image_path) + } else { + file_path <- path( + base_path, + image_path + ) + } + + file_path +} + +#' Get titles for applications and replace empty titles with names or GUIDs +#' @param guids Vector of application GUIDs +#' @param titles Vector of application titles +#' @param names Vector of application names +#' @return Vector of non-empty titles +#' @export +get_app_titles <- function(guids, titles, names) { + dplyr$case_when( + !is.na(titles) & titles != "" ~ titles, + !is.na(names) & names != "" ~ names, + .default = guids + ) +} + +#' Get date range length in selected units +#' @param start_date Date +#' @param end_date Date +#' @param unit Date unit (day, week, month) +#' @param week_start Week start day id, defaults to week_start set in config.yml +#' @return Date range length in selected units (number) +#' @export +get_date_range_length_in_units <- function( + start_date, + end_date, + unit = c("day", "week", "month"), + week_start = week_start_id) { + start_date <- as_date(start_date) + end_date <- as_date(end_date) + + # Return 0 if start date is greater than end date + if (start_date > end_date) { + return(0) + } + + date_seq <- seq(start_date, end_date, by = "day") + + floored_date_seq <- floor_date(date_seq, unit, week_start) + length(unique(floored_date_seq)) +} diff --git a/extensions/connect-user-metrics/app/main.R b/extensions/connect-user-metrics/app/main.R new file mode 100644 index 00000000..04ec6674 --- /dev/null +++ b/extensions/connect-user-metrics/app/main.R @@ -0,0 +1,605 @@ +box::use( + bslib, + connectapi[connect, get_usage_shiny], + dplyr, + echarts4r[e_theme_register, echarts4rOutput, renderEcharts4r], + here[here], + lubridate, + magrittr[`%>%`], + mirai[mirai], + reactable[reactableOutput, renderReactable], + shiny, + shinyWidgets[ + prettyCheckboxGroup, + sendSweetAlert, + updateCheckboxGroupButtons, + updateVirtualSelect, + virtualSelectInput + ], + shinyjs[toggleElement, useShinyjs], + stats[setNames], + tibble[add_row], + tidyr[replace_na], + yaml[read_yaml], +) + +box::use( + app/logic/aggregation[format_agg_usage, process_agg_usage], + app/logic/charts, + app/logic/config_settings[is_config_valid, read_config_yml], + app/logic/data_utils, + app/logic/duration_utils[format_duration], + app/logic/ui_utils[ + brand, + compose_charts_theme, + is_credits_enabled, + placeholder_replacements + ], + app/logic/utils[ + AGG_TIME_LEVELS, + filter_data_by_user, + get_app_titles, + get_date_range_length_in_units, + process_chart_goal, + week_start_id + ], + app/view/footer, + app/view/navbar_section, + app/view/session_duration, + app/view/table, + app/view/ui_components[card_header_with_content, inline_info_text], +) + +if (file.exists("app/constants/filter_users.yml")) { + filter_users <- read_yaml(here("app/constants/filter_users.yml")) +} else { + filter_users <- list() + filter_users["users"] <- "" +} + +# Read Config ---- +config <- read_config_yml() + +guids <- Sys.getenv("GUIDS", NA) |> data_utils$split_guids() # nolint: object_name_linter + +#' @export +ui <- function(id) { + ns <- shiny$NS(id) + + # Page with sidebar + bslib$page_sidebar( + useShinyjs(), + shiny$useBusyIndicators(), + title = navbar_section$ui(ns("navbar")), + window_title = brand$meta$app_title, + # Sidebar + sidebar = bslib$sidebar( + width = 300, + padding = 30, + open = "always", + shiny$h5(shiny$tags$b("Filters")), + shiny$uiOutput(ns("date_range_ui")), + shiny$selectInput( + inputId = ns("date_aggregation"), label = "Date aggregation", + choices = c( + "Daily" = "day", + "Weekly" = "week", + "Monthly" = "month" + ), + selected = "day", + multiple = FALSE + ), + shiny$hr(), + virtualSelectInput( + inputId = ns("apps"), + label = "Applications", + choices = NULL, + selected = NULL, + multiple = TRUE, + showValueAsTags = TRUE, + width = "100%", + dropboxWrapper = "body", + noOfDisplayValues = 3 + ), + prettyCheckboxGroup( + inputId = ns("agg_levels"), label = "Aggregation level", + choices = c( + "Application" = "content_guid", + "User" = "user_guid", + "Date" = "start_date" + ), + selected = "start_date", + icon = shiny$icon("check") + ), + session_duration$ui(ns("session_duration"), min_time = config$min_time), + virtualSelectInput( + inputId = ns("users"), + label = "Users", + choices = NULL, + selected = NULL, + multiple = TRUE, + showValueAsTags = TRUE, + width = "100%", + dropboxWrapper = "body", + noOfDisplayValues = 3 + ), + if (is_credits_enabled) shiny$tags$footer(footer$ui()) + ), + # Content + shiny$div( + e_theme_register( + theme = compose_charts_theme(placeholder_replacements), + name = "charts_theme" + ), + # Summary charts + bslib$card( + card_header_with_content( + title = "Summary charts", + content = + shiny$div( + class = "card-header-content", + inline_info_text( + "Average sessions: ", shiny$textOutput(ns("average_sessions")), NULL, + "Average unique users: ", shiny$textOutput(ns("unique_users")), NULL + ) + ) + ), + bslib$layout_column_wrap( + width = 1 / 2, + echarts4rOutput(ns("plot")), + echarts4rOutput(ns("unique_plot")) + ) + ), + shiny$hr(), + # Summary table + bslib$card( + card_header_with_content( + title = "Summary table", + content = shiny$div( + shiny$uiOutput(outputId = "ui_summary_table"), + shiny$div( + class = "card-header-content", + inline_info_text( + "Total sessions: ", shiny$textOutput(ns("total_sessions")), + NULL, + "Total unique users: ", shiny$textOutput(ns("total_unique_users")), + NULL + ), + shiny$downloadButton(outputId = ns("agg_usage_download"), icon = NULL) + ) + ) + ), + reactableOutput(ns("agg_usage")) + ), + shiny$hr(), + # Raw data + bslib$card( + card_header_with_content( + title = "Raw Data", + content = shiny$div( + class = "card-header-content", + inline_info_text( + "Most active app: ", shiny$textOutput(ns("most_active_app")), NULL, + "Most active user: ", shiny$textOutput(ns("most_active_user")), NULL + ), + shiny$downloadButton(ns("raw_usage_download"), icon = NULL) + ) + ), + reactableOutput(ns("raw_usage")) + ) + ) + ) +} + +#' @export +server <- function(id) { + shiny$moduleServer(id, function(input, output, session) { + # navbar ------------------------------------------------------------------ + navbar_section$server("navbar") + + if (!is.null(config)) { + ## Config: Agg Levels ---- + if (is_config_valid(config, "agg_levels")) { + updateCheckboxGroupButtons( + session, "agg_levels", + selected = config$agg_levels + ) + } + + ## Config: Agg Time ---- + if (is_config_valid(config, "agg_time")) { + selected_agg_time <- unlist(config$agg_time) + names(selected_agg_time) <- names(which( + AGG_TIME_LEVELS == selected_agg_time + )) + + updateVirtualSelect( + inputId = "date_aggregation", selected = unname(selected_agg_time), + session = session + ) + } + } + + # Connection with client --------------------------------------------------- + client <- shiny$reactive({ + tryCatch( + connect(), + error = function(err) { + sendSweetAlert( + session, + title = "Could not establish connection to RStudio Connect", + text = err$message, + type = "error", + btn_labels = "Close" + ) + NULL + } + ) + }) + + # rendering DateRangeInput with correct range ----------------------------- + output$date_range_ui <- shiny$renderUI({ + shiny$req(client(), apps_guids()) + + max_date <- + data_utils$get_latest_date_from_client( + client = client(), + guids = apps_guids() + ) + + min_date <- max_date - lubridate$days(30) + + shiny$dateRangeInput( + inputId = session$ns("date_range"), label = "Date range", + format = "dd M yyyy", separator = "→", + start = min_date, end = max_date, + weekstart = ifelse(week_start_id == 7, 0, week_start_id) + ) + }) + + # Fetching data from client ----------------------------------------------- + apps <- shiny$reactive({ + shiny$req(client()) + apps <- + data_utils$get_apps_from_client(client = client(), guids = guids) |> + dplyr$select(guid, name, title) + + # intersect with provided guids, if any + if (!is.null(guids)) { + apps <- apps |> dplyr$filter(guid %in% guids) + } + + apps + }) + + # get data only for + apps_guids <- shiny$reactive({ + shiny$req(apps()) + + apps()$guid + }) + + users <- shiny$reactive({ + shiny$req(client()) + data_utils$get_users_from_client(client = client()) |> + dplyr$select(guid, username) %>% + add_row(guid = "unknown", username = "unknown") %>% + filter_data_by_user(filter_users$users) + }) + + # async fetch of usage data ----------------------------------------------- + task_usage <- shiny$ExtendedTask$new( + function(...) { + mirai( + { + get_usage_shiny( + client, + limit = Inf, content_guid = guids, + from = from, to = to + ) + }, + ... + ) + } + ) + + shiny$observe({ + shiny$req(client(), input$date_range) + date_range <- input$date_range + + # add `+ lubridate$days(1)` in `to` to get data from the whole day; + task_usage$invoke( + client = client(), guids = apps_guids(), + from = date_range[1], to = date_range[2] + lubridate$days(1), + get_usage_shiny = get_usage_shiny + ) + }) + + raw_usage <- shiny$reactive({ + task_usage$result() + }) + + # Usage + joins ----------------------------------------------------------- + joined_usage <- shiny$reactive({ + shiny$req(apps()) + shiny$req(users()) + shiny$req(raw_usage()) + + raw_usage() |> + replace_na(list(user_guid = "unknown")) |> + dplyr$left_join(apps(), by = c("content_guid" = "guid")) |> + dplyr$left_join(users(), by = c("user_guid" = "guid")) |> + dplyr$mutate( + duration = as.double(ended - started, units = "secs"), + start_date = as.Date(started) + ) |> + filter_data_by_user(filter_users$users) + }) + + rc_min_time <- session_duration$server("session_duration") + + usage <- shiny$reactive({ + shiny$req(joined_usage()) + + joined_usage() |> + # filter by selected users and apps + dplyr$filter(content_guid %in% input$apps, user_guid %in% input$users) |> + dplyr$filter(duration >= rc_min_time()) + }) + + # Set API Response as Choices ---- + shiny$observe({ + apps_choices <- apps() %>% + dplyr$filter(!is.na(guid)) %>% + # Use application name if it doesn't have title + dplyr$mutate(display_title = get_app_titles(guid, title, name)) %>% + { + setNames(.$guid, .$display_title) + } + + users_choices <- users() %>% + dplyr$filter(!is.na(guid)) %>% + dplyr$mutate( + username = dplyr$if_else(!is.na(username) & username != "", username, guid) + ) %>% + { + setNames(.$guid, .$username) + } + + updateVirtualSelect( + inputId = "apps", choices = apps_choices, selected = unname(apps_choices), + session = session + ) + + updateVirtualSelect( + inputId = "users", choices = users_choices, selected = unname(users_choices), + session = session + ) + }) + + agg_usage <- shiny$reactive({ + process_agg_usage( + usage = usage(), + agg_levels = input$agg_levels, + date_aggregation = input$date_aggregation, + apps = apps(), + users = users() + ) + }) + + shiny$observe({ + toggleElement("unauthenticated_disclaimer", condition = "user_guid" %in% input$agg_levels) + }) + + formatted_usage <- shiny$reactive({ + usage() %>% + dplyr$mutate(duration = format_duration(duration)) %>% + dplyr$select( + Application = title, + Username = username, + "Session start" = started, + "Session end" = ended, + "Session duration" = duration + ) + }) + + + # Raw data display ---- + output$most_active_app <- shiny$renderText({ + shiny$validate( + shiny$need( + nrow(formatted_usage()) > 0, "No data to display." + ) + ) + + names(which.max(table(formatted_usage()$Application))) + }) + + output$most_active_user <- shiny$renderText({ + shiny$validate( + shiny$need( + nrow(formatted_usage()) > 0, "No data to display." + ) + ) + + names(which.max(table(formatted_usage()$Username))) + }) + + # Render reactables ------------------------------------------------------- + output$raw_usage <- renderReactable({ + formatted_usage() %>% + table$reactable2() + }) + + output$raw_usage_download <- shiny$downloadHandler( + "User Metrics (raw data).csv", + function(file) data_utils$write_csv(formatted_usage(), file) + ) + + formatted_agg_usage <- shiny$reactive({ + format_agg_usage(agg_usage(), input$date_aggregation, format_duration) + }) + + output$agg_usage <- renderReactable({ + formatted_agg_usage() %>% + table$reactable2() + }) + + ## Config: Sessions Goal ---- + sessions_goal <- NULL + if (is_config_valid(config, "sessions_goal")) { + sessions_goal <- config$sessions_goal + } + + ## Config: Unique Users Goal ---- + unique_users_goal <- NULL + if (is_config_valid(config, "unique_users_goal")) { + unique_users_goal <- config$unique_users_goal + } + + # Summary charts ---- + date_diff_in_units <- shiny$reactive({ + get_date_range_length_in_units( + input$date_range[1], + input$date_range[2], + input$date_aggregation + ) + }) + + output$average_sessions <- shiny$renderText({ + shiny$validate( + shiny$need( + nrow(formatted_usage()) > 0, "No data to display." + ) + ) + + nrow(formatted_usage()) / date_diff_in_units() + }) + + output$unique_users <- shiny$renderText({ + shiny$validate( + shiny$need( + nrow(formatted_usage()) > 0, "No data to display." + ) + ) + + length(unique(formatted_usage()$`Username`)) / date_diff_in_units() + }) + + output$plot <- renderEcharts4r({ + sessions_goal <- process_chart_goal( + sessions_goal, + input$agg_levels, + input$date_aggregation + ) + + shiny$validate( + shiny$need( + nrow(agg_usage()) > 0, "No data to display." + ) + ) + + charts$plot_session_chart( + agg_usage(), + input$agg_levels, + input$date_range, + input$date_aggregation, + sessions_goal + ) + }) + + output$unique_plot <- renderEcharts4r({ + unique_users_goal <- process_chart_goal( + unique_users_goal, + input$agg_levels, + input$date_aggregation + ) + + shiny$validate( + shiny$need( + nrow(agg_usage()) > 0, "No data to display." + ) + ) + + charts$plot_unique_chart( + agg_usage(), + input$agg_levels, + input$date_range, + input$date_aggregation, + unique_users_goal + ) + }) + + # Summary table ---- + output$total_sessions <- shiny$renderText({ + shiny$validate( + shiny$need( + nrow(formatted_usage()) > 0, "No data to display." + ) + ) + + nrow(formatted_usage()) + }) + + output$total_unique_users <- shiny$renderText({ + shiny$validate( + shiny$need( + nrow(formatted_usage()) > 0, "No data to display." + ) + ) + + length(unique(formatted_usage()$`Username`)) + }) + + output$agg_usage_download <- shiny$downloadHandler( + "User Metrics (aggregated data).csv", + function(file) data_utils$write_csv(formatted_agg_usage(), file) + ) + + if (!is.null(config)) { + ## Config: Apps ---- + shiny$observeEvent(is_config_valid(config, "apps", apps()$title), { + selected_apps <- NULL + if (length(unlist(config$apps)) == 0) { + selected_apps <- apps()$guid + # Use application name if it doesn't have title + names(selected_apps) <- get_app_titles(apps()$guid, apps()$title, apps()$name) + } else { + selected_app_names <- unlist(config$apps) + selected_apps <- + apps()[apps()$title %in% selected_app_names, ]$guid + names(selected_apps) <- selected_app_names + } + + updateVirtualSelect( + inputId = "apps", selected = unname(selected_apps), + choices = selected_apps, + session = session + ) + }) + + ## Config: Users ---- + shiny$observeEvent(is_config_valid(config, "users", users()$username), { + selected_users <- NULL + if (length(unlist(config$users)) == 0) { + selected_users <- users()$guid + usernames <- users()$username + names(selected_users) <- dplyr$if_else( + !is.na(usernames) & usernames != "", usernames, users()$guid + ) + } else { + selected_user_names <- unlist(config$users) + selected_users <- + users()[users()$username %in% selected_user_names, ]$guid + names(selected_users) <- selected_user_names + } + + updateVirtualSelect( + inputId = "users", selected = unname(selected_users), + choices = selected_users, + session = session + ) + }) + } + }) +} diff --git a/extensions/connect-user-metrics/app/metrics_theme.json b/extensions/connect-user-metrics/app/metrics_theme.json new file mode 100644 index 00000000..41fcd594 --- /dev/null +++ b/extensions/connect-user-metrics/app/metrics_theme.json @@ -0,0 +1,374 @@ +{ + "color": ["#33ADFA", "#f779a0", "#21934a", "#7b379b", "#005185", "#003c5e", "#e85d5d", "#fcd73d", "#f78639", "#26d188", "#41aad8", "#ae04b7"], + "backgroundColor": "rgba(252,252,252,0)", + "textStyle": { + "fontFamily": "Roboto" + }, + "title": { + "textStyle": { + "fontFamily": "Maven Pro", + "color": "#4e5359", + "fontWeight": "600" + }, + "subtextStyle": { + "color": "#999999" + } + }, + "line": { + "itemStyle": { + "borderWidth": "2" + }, + "lineStyle": { + "width": "3" + }, + "symbolSize": "8", + "symbol": "emptyCircle", + "smooth": 0.1 + }, + "radar": { + "itemStyle": { + "borderWidth": "2" + }, + "lineStyle": { + "width": "3" + }, + "symbolSize": "8", + "symbol": "emptyCircle", + "smooth": false + }, + "bar": { + "itemStyle": { + "barBorderWidth": 0, + "barBorderColor": "#ccc" + } + }, + "pie": { + "itemStyle": { + "borderWidth": 0, + "borderColor": "#ccc" + } + }, + "scatter": { + "itemStyle": { + "borderWidth": 0, + "borderColor": "#ccc" + } + }, + "boxplot": { + "itemStyle": { + "borderWidth": 0, + "borderColor": "#ccc" + } + }, + "parallel": { + "itemStyle": { + "borderWidth": 0, + "borderColor": "#ccc" + } + }, + "sankey": { + "itemStyle": { + "borderWidth": 0, + "borderColor": "#ccc" + } + }, + "funnel": { + "itemStyle": { + "borderWidth": 0, + "borderColor": "#ccc" + } + }, + "gauge": { + "itemStyle": { + "borderWidth": 0, + "borderColor": "#ccc" + } + }, + "candlestick": { + "itemStyle": { + "color": "#e6a0d2", + "color0": "transparent", + "borderColor": "#e6a0d2", + "borderColor0": "#3fb1e3", + "borderWidth": "2" + } + }, + "graph": { + "itemStyle": { + "borderWidth": 0, + "borderColor": "#ccc" + }, + "lineStyle": { + "width": "1", + "color": "#cccccc" + }, + "symbolSize": "8", + "symbol": "emptyCircle", + "smooth": false, + "color": ["#4d8dc9", "#404040", "#626c91", "#a0a7e6"], + "label": { + "color": "#ffffff" + } + }, + "map": { + "itemStyle": { + "areaColor": "#eeeeee", + "borderColor": "#aaaaaa", + "borderWidth": 0.5 + }, + "label": { + "color": "#ffffff" + }, + "emphasis": { + "itemStyle": { + "areaColor": "rgba(63,177,227,0.25)", + "borderColor": "#3fb1e3", + "borderWidth": 1 + }, + "label": { + "color": "#3fb1e3" + } + } + }, + "geo": { + "itemStyle": { + "areaColor": "#eeeeee", + "borderColor": "#aaaaaa", + "borderWidth": 0.5 + }, + "label": { + "color": "#ffffff" + }, + "emphasis": { + "itemStyle": { + "areaColor": "rgba(63,177,227,0.25)", + "borderColor": "#3fb1e3", + "borderWidth": 1 + }, + "label": { + "color": "#3fb1e3" + } + } + }, + "categoryAxis": { + "axisLine": { + "show": true, + "lineStyle": { + "color": "#eeeeee" + } + }, + "axisTick": { + "show": false, + "lineStyle": { + "color": "#333" + } + }, + "axisLabel": { + "show": true, + "color": "#6f7578" + }, + "splitLine": { + "show": true, + "lineStyle": { + "color": "#eeeeee" + } + }, + "splitArea": { + "show": false, + "areaStyle": { + "color": ["rgba(250,250,250,0.05)", "rgba(200,200,200,0.02)"] + } + } + }, + "valueAxis": { + "axisLine": { + "show": true, + "lineStyle": { + "color": "#eeeeee" + } + }, + "axisTick": { + "show": false, + "lineStyle": { + "color": "#333" + } + }, + "axisLabel": { + "show": true, + "color": "#6f7578" + }, + "splitLine": { + "show": true, + "lineStyle": { + "color": "#eeeeee" + } + }, + "splitArea": { + "show": false, + "areaStyle": { + "color": ["rgba(250,250,250,0.05)", "rgba(200,200,200,0.02)"] + } + } + }, + "logAxis": { + "axisLine": { + "show": true, + "lineStyle": { + "color": "#cccccc" + } + }, + "axisTick": { + "show": false, + "lineStyle": { + "color": "#333" + } + }, + "axisLabel": { + "show": true, + "color": "#6f7578" + }, + "splitLine": { + "show": true, + "lineStyle": { + "color": "#eeeeee" + } + }, + "splitArea": { + "show": false, + "areaStyle": { + "color": ["rgba(250,250,250,0.05)", "rgba(200,200,200,0.02)"] + } + } + }, + "timeAxis": { + "axisLine": { + "show": true, + "lineStyle": { + "color": "#cccccc" + } + }, + "axisTick": { + "show": false, + "lineStyle": { + "color": "#333" + } + }, + "axisLabel": { + "show": true, + "color": "#6f7578" + }, + "splitLine": { + "show": true, + "lineStyle": { + "color": "#eeeeee" + } + }, + "splitArea": { + "show": false, + "areaStyle": { + "color": ["rgba(250,250,250,0.05)", "rgba(200,200,200,0.02)"] + } + } + }, + "toolbox": { + "iconStyle": { + "borderColor": "#999999" + }, + "emphasis": { + "iconStyle": { + "borderColor": "#666666" + } + } + }, + "legend": { + "textStyle": { + "color": "#6f7578" + } + }, + "tooltip": { + "backgroundColor": "#1b2c40", + "textStyle": { + "color": "#ffffff", + "fontSize": 14, + "fontFamily": "Roboto" + }, + "axisPointer": { + "lineStyle": { + "color": "#cccccc", + "width": 1 + }, + "crossStyle": { + "color": "#cccccc", + "width": 1 + } + } + }, + "timeline": { + "lineStyle": { + "color": "#626c91", + "width": 1 + }, + "itemStyle": { + "color": "#626c91", + "borderWidth": 1 + }, + "controlStyle": { + "color": "#626c91", + "borderColor": "#626c91", + "borderWidth": 0.5 + }, + "checkpointStyle": { + "color": "#3fb1e3", + "borderColor": "#3fb1e3" + }, + "label": { + "color": "#626c91" + }, + "emphasis": { + "itemStyle": { + "color": "#626c91" + }, + "controlStyle": { + "color": "#626c91", + "borderColor": "#626c91", + "borderWidth": 0.5 + }, + "label": { + "color": "#626c91" + } + } + }, + "visualMap": { + "color": ["#2a99c9", "#afe8ff"] + }, + "dataZoom": { + "backgroundColor": "rgba(255,255,255,0)", + "dataBackgroundColor": "rgba(222,222,222,1)", + "fillerColor": "rgba(114,230,212,0.25)", + "handleColor": "#cccccc", + "handleSize": "100%", + "textStyle": { + "color": "#999999" + } + }, + "markPoint": { + "label": { + "color": "#ffffff" + }, + "emphasis": { + "label": { + "color": "#ffffff" + } + } + }, + "markLine": { + "label": { + "show": true, + "color": "#ff364a", + "fontWeight": "500", + "fontFamily": "Roboto", + "position": "end", + "offset": [0, 2] + } + } +} diff --git a/extensions/connect-user-metrics/app/metrics_theme_template.json b/extensions/connect-user-metrics/app/metrics_theme_template.json new file mode 100644 index 00000000..8222483c --- /dev/null +++ b/extensions/connect-user-metrics/app/metrics_theme_template.json @@ -0,0 +1,415 @@ +{ + "color": [ + "$PRIMARY_LIGHT_COLOR", + "#f779a0", + "#21934a", + "#7b379b", + "#005185", + "#003c5e", + "#e85d5d", + "#fcd73d", + "#f78639", + "#26d188", + "#41aad8", + "#ae04b7" + ], + "backgroundColor": "rgba(252,252,252,0)", + "textStyle": { + "fontFamily": "$BASE_FONT" + }, + "title": { + "textStyle": { + "fontFamily": "$HEADINGS_FONT", + "color": "#4e5359", + "fontWeight": "600" + }, + "subtextStyle": { + "color": "#999999" + } + }, + "line": { + "itemStyle": { + "borderWidth": "2" + }, + "lineStyle": { + "width": "3" + }, + "symbolSize": "8", + "symbol": "emptyCircle", + "smooth": 0.1 + }, + "radar": { + "itemStyle": { + "borderWidth": "2" + }, + "lineStyle": { + "width": "3" + }, + "symbolSize": "8", + "symbol": "emptyCircle", + "smooth": false + }, + "bar": { + "itemStyle": { + "barBorderWidth": 0, + "barBorderColor": "#ccc" + } + }, + "pie": { + "itemStyle": { + "borderWidth": 0, + "borderColor": "#ccc" + } + }, + "scatter": { + "itemStyle": { + "borderWidth": 0, + "borderColor": "#ccc" + } + }, + "boxplot": { + "itemStyle": { + "borderWidth": 0, + "borderColor": "#ccc" + } + }, + "parallel": { + "itemStyle": { + "borderWidth": 0, + "borderColor": "#ccc" + } + }, + "sankey": { + "itemStyle": { + "borderWidth": 0, + "borderColor": "#ccc" + } + }, + "funnel": { + "itemStyle": { + "borderWidth": 0, + "borderColor": "#ccc" + } + }, + "gauge": { + "itemStyle": { + "borderWidth": 0, + "borderColor": "#ccc" + } + }, + "candlestick": { + "itemStyle": { + "color": "#e6a0d2", + "color0": "transparent", + "borderColor": "#e6a0d2", + "borderColor0": "#3fb1e3", + "borderWidth": "2" + } + }, + "graph": { + "itemStyle": { + "borderWidth": 0, + "borderColor": "#ccc" + }, + "lineStyle": { + "width": "1", + "color": "#cccccc" + }, + "symbolSize": "8", + "symbol": "emptyCircle", + "smooth": false, + "color": [ + "#4d8dc9", + "#404040", + "#626c91", + "#a0a7e6" + ], + "label": { + "color": "#ffffff" + } + }, + "map": { + "itemStyle": { + "areaColor": "#eeeeee", + "borderColor": "#aaaaaa", + "borderWidth": 0.5 + }, + "label": { + "color": "#ffffff" + }, + "emphasis": { + "itemStyle": { + "areaColor": "rgba(63,177,227,0.25)", + "borderColor": "#3fb1e3", + "borderWidth": 1 + }, + "label": { + "color": "#3fb1e3" + } + } + }, + "geo": { + "itemStyle": { + "areaColor": "#eeeeee", + "borderColor": "#aaaaaa", + "borderWidth": 0.5 + }, + "label": { + "color": "#ffffff" + }, + "emphasis": { + "itemStyle": { + "areaColor": "rgba(63,177,227,0.25)", + "borderColor": "#3fb1e3", + "borderWidth": 1 + }, + "label": { + "color": "#3fb1e3" + } + } + }, + "categoryAxis": { + "axisLine": { + "show": true, + "lineStyle": { + "color": "#eeeeee" + } + }, + "axisTick": { + "show": false, + "lineStyle": { + "color": "#333" + } + }, + "axisLabel": { + "show": true, + "color": "#6f7578" + }, + "splitLine": { + "show": true, + "lineStyle": { + "color": [ + "#eeeeee" + ] + } + }, + "splitArea": { + "show": false, + "areaStyle": { + "color": [ + "rgba(250,250,250,0.05)", + "rgba(200,200,200,0.02)" + ] + } + } + }, + "valueAxis": { + "axisLine": { + "show": true, + "lineStyle": { + "color": "#eeeeee" + } + }, + "axisTick": { + "show": false, + "lineStyle": { + "color": "#333" + } + }, + "axisLabel": { + "show": true, + "color": "#6f7578" + }, + "splitLine": { + "show": true, + "lineStyle": { + "color": [ + "#eeeeee" + ] + } + }, + "splitArea": { + "show": false, + "areaStyle": { + "color": [ + "rgba(250,250,250,0.05)", + "rgba(200,200,200,0.02)" + ] + } + } + }, + "logAxis": { + "axisLine": { + "show": true, + "lineStyle": { + "color": "#cccccc" + } + }, + "axisTick": { + "show": false, + "lineStyle": { + "color": "#333" + } + }, + "axisLabel": { + "show": true, + "color": "#6f7578" + }, + "splitLine": { + "show": true, + "lineStyle": { + "color": [ + "#eeeeee" + ] + } + }, + "splitArea": { + "show": false, + "areaStyle": { + "color": [ + "rgba(250,250,250,0.05)", + "rgba(200,200,200,0.02)" + ] + } + } + }, + "timeAxis": { + "axisLine": { + "show": true, + "lineStyle": { + "color": "#cccccc" + } + }, + "axisTick": { + "show": false, + "lineStyle": { + "color": "#333" + } + }, + "axisLabel": { + "show": true, + "color": "#6f7578" + }, + "splitLine": { + "show": true, + "lineStyle": { + "color": [ + "#eeeeee" + ] + } + }, + "splitArea": { + "show": false, + "areaStyle": { + "color": [ + "rgba(250,250,250,0.05)", + "rgba(200,200,200,0.02)" + ] + } + } + }, + "toolbox": { + "iconStyle": { + "borderColor": "#999999" + }, + "emphasis": { + "iconStyle": { + "borderColor": "#666666" + } + } + }, + "legend": { + "textStyle": { + "color": "#6f7578" + } + }, + "tooltip": { + "backgroundColor": "#1b2c40", + "textStyle": { + "color": "#ffffff", + "fontSize": 14, + "fontFamily": "$BASE_FONT" + }, + "axisPointer": { + "lineStyle": { + "color": "#cccccc", + "width": 1 + }, + "crossStyle": { + "color": "#cccccc", + "width": 1 + } + } + }, + "timeline": { + "lineStyle": { + "color": "#626c91", + "width": 1 + }, + "itemStyle": { + "color": "#626c91", + "borderWidth": 1 + }, + "controlStyle": { + "color": "#626c91", + "borderColor": "#626c91", + "borderWidth": 0.5 + }, + "checkpointStyle": { + "color": "#3fb1e3", + "borderColor": "#3fb1e3" + }, + "label": { + "color": "#626c91" + }, + "emphasis": { + "itemStyle": { + "color": "#626c91" + }, + "controlStyle": { + "color": "#626c91", + "borderColor": "#626c91", + "borderWidth": 0.5 + }, + "label": { + "color": "#626c91" + } + } + }, + "visualMap": { + "color": [ + "#2a99c9", + "#afe8ff" + ] + }, + "dataZoom": { + "backgroundColor": "rgba(255,255,255,0)", + "dataBackgroundColor": "rgba(222,222,222,1)", + "fillerColor": "rgba(114,230,212,0.25)", + "handleColor": "#cccccc", + "handleSize": "100%", + "textStyle": { + "color": "#999999" + } + }, + "markPoint": { + "label": { + "color": "#ffffff" + }, + "emphasis": { + "label": { + "color": "#ffffff" + } + } + }, + "markLine": { + "label": { + "show": true, + "color": "#ff364a", + "fontWeight": "500", + "fontFamily": "$BASE_FONT", + "position": "end", + "offset": [0, 2] + } + } +} diff --git a/extensions/connect-user-metrics/app/static/css/app.min.css b/extensions/connect-user-metrics/app/static/css/app.min.css new file mode 100644 index 00000000..12ba9592 --- /dev/null +++ b/extensions/connect-user-metrics/app/static/css/app.min.css @@ -0,0 +1 @@ +h1,h2,h3,h4,h5{margin-bottom:0;color:var(--bs-gray-700)}.btn{--bs-btn-padding-x: 15px;--bs-btn-padding-y: 5px}.btn-default,.btn:disabled,.btn.disabled,fieldset:disabled .btn{border:none;border-radius:4px;background-color:var(--bs-primary);color:var(--bs-white);cursor:pointer;padding:6px 16px;min-width:100px;max-height:36px;opacity:unset}.btn-default:hover,.btn-default:focus,:not(.btn-check)+.btn:active{background-color:color-mix(in srgb, var(--bs-primary), black 10%);color:var(--bs-white);background-image:none;opacity:unset}.btn-group-toggle{margin-left:5px !important}details.collapsible-section{margin-top:20px}details.collapsible-section>summary{align-items:center;cursor:pointer;display:flex;margin-bottom:10px;width:fit-content}details.collapsible-section>summary::before{content:"▶";font-size:80%;margin-right:5px}details.collapsible-section[open]>summary::before{content:"▼"}details.collapsible-section>summary>h3{margin:0}hr{margin:0;color:#dde1e6;opacity:1}.no-busy-indicator .recalculating::after{display:none !important;content:none !important}div.app-header{height:50px;padding:20px 20px 20px 0;z-index:1}div.app-header .logo-link{border-right:1px solid #c5c8ca;flex:0;padding:0 10px 0 0;width:auto;z-index:1}div.app-header .logo-link .logo{width:100px}div.app-header .title{color:var(--bs-gray-700);flex:1;font-size:1.15em;font-weight:600;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;z-index:1}div.app-header .navigation{flex:0}div.app-header .navigation .btn-nav-menu{background:rgba(0,0,0,0);border:none;border-radius:20px;color:#15354a;font-weight:normal;font-size:1em;height:auto;outline:none !important;transition:color .2s,background-color .2s}div.app-header .navigation .btn-nav-menu.selected{background-color:rgba(0,153,249,.1);border-bottom:none;color:#0099f9;outline:0}div.app-header .navigation .btn-nav-menu:hover,div.app-header .navigation .btn-nav-menu:active{background-color:rgba(21,53,74,.05)}div.app-header .btn-cta{border-radius:4px;background-color:#0099f9;color:var(--bs-white);cursor:pointer;flex:0;padding:8px 16px;text-decoration:none;transition:color .2s,background-color .2s;white-space:nowrap;width:auto;z-index:1}div.app-header .btn-cta:hover{background-color:#008de7;color:var(--bs-white);background-image:none}div.app-header .burger-btn{background:none;border:none;display:none;flex:0;font-size:1.5em;transition:color .2s;min-width:30px;z-index:1}div.app-header .burger-btn:hover{color:#0099f9}@media screen and (max-width: 1024px){div.app-header{padding:0}div.app-header .burger-btn{display:flex}div.app-header .navigation{background-color:var(--bs-white);height:auto;left:0;padding:80px 20px 40px;position:fixed;top:0;transform:translateY(-100%);transition:transform .2s,visibility 0s .2s;visibility:hidden;width:100%;z-index:0}div.app-header .navigation.visible{transition:transform .2s,visibility 0s;transform:translateY(0);visibility:visible}div.app-header .navigation .btn-nav-menu{background:rgba(0,0,0,0);border:none;border-radius:20px;color:#15354a;font-weight:normal;font-size:1em;height:auto;outline:none !important;transition:color .2s,background-color .2s}}.info-btns{display:contents}.info-btns .btn.action-button.info-btn{border:none;background-color:var(--bs-body-bg);color:#0099f9;cursor:pointer;font-size:1.2em;flex:0;min-width:24px;padding:0;transition:background-color .2s,color .2s;z-index:1}.info-btns .btn.action-button.info-btn:hover,.info-btns .btn.action-button.info-btn:focus{background:none;box-shadow:none;color:#008de7;outline:none}.info-btns .btn.action-button.info-btn i{padding-top:5px;font-size:1.3em}.modal-header .modal-title{color:#15354a;font-size:1.2em;font-weight:600}.modal-content .about-section{display:flex;flex-direction:column;gap:1.6em}.modal-content .about-section .about-links{display:flex;gap:.5em;padding-bottom:1em}.modal-content .about-section .about-links .link{align-items:center;background-color:#ccebff;border-radius:4em;color:#15354a;cursor:pointer;display:flex;gap:.5em;padding:.5em 1em;text-decoration:none}.modal-content .about-section .about-links .link:hover{background-color:#0099f9;color:#15354a;text-decoration:none}.modal-content .brand-heading{font-weight:bold;font-size:1.2em;margin-bottom:10px}.modal-content .brand-section{align-items:center;border:1px solid #15354a;border-radius:10px;display:flex;gap:10px;padding:20px;margin-bottom:20px}.modal-content .brand-section .brand-logo{width:150px}.modal-content .brand-section .brand-logo img{width:100%}.modal-content .brand-section .brand-summary{color:#15354a;font-size:.9em;line-height:1.4;width:100%;margin-bottom:0}.modal-content .tech-section{display:flex;flex-direction:column;gap:10px;padding:10px 0}.modal-content .tech-section .tech-heading{font-weight:bold;font-size:1.2em;color:#15354a}.modal-content .tech-section .card-package{align-items:center;background-color:#15354a;border-radius:1em;display:grid;gap:20px;grid-template-columns:130px auto 1fr;grid-template-rows:repeat(3, auto);justify-items:start;padding:20px}.modal-content .tech-section .card-package .card-logo{grid-row:1/4}.modal-content .tech-section .card-package .card-logo img{width:100%}.modal-content .tech-section .card-package .card-heading{color:var(--bs-white);font-size:1.1em;font-weight:600;grid-column:2/4;margin:0}.modal-content .tech-section .card-package .card-content{color:var(--bs-white);font-size:.9em;grid-column:2/4;line-height:1.4}.modal-content .tech-section .card-package .card-link{border-radius:10px;font-weight:bold;padding:10px 20px;text-decoration:none;transition:background-color .2s,color .2s}.modal-content .tech-section .card-package .card-link.rhino,.modal-content .tech-section .card-package .card-link.blog-link{background-color:#4747b1;color:var(--bs-white);grid-column:2/3}.modal-content .tech-section .card-package .card-link.technologies,.modal-content .tech-section .card-package .card-link.marketing-link{background-color:var(--bs-white);color:#15354a;grid-column:3/4}.modal-content .tech-section .card-package .card-link:hover{background-color:#0099f9;color:var(--bs-white)}.modal-content .btn-default,.modal-content .btn:disabled,.modal-content .btn.disabled,.modal-content fieldset:disabled .btn{background-color:#0099f9}.modal-content .btn-default:hover,.modal-content .btn-default:focus,.modal-content :not(.btn-check)+.btn:active{background-color:#008de7}.modal-dialog.modal-xl{margin-top:12vh}.rt-pagination .rt-page-button{font-weight:400}.rt-pagination .rt-page-button-current{background-color:var(--brand-gray);color:var(--bs-white)}.rt-table .rt-tbody .rt-tr:hover{background-color:color-mix(in srgb, var(--bs-primary), white 80%);transition:background-color .3s ease 0s,color .3s ease 0s}.rt-table .rt-sort-header{font-weight:500}.rt-table .rt-page-button:disabled:hover{color:var(--bs-gray-700)}.sidebar label,.sidebar .control-label{font-weight:500}.sidebar div.input-daterange.input-group.input-group-sm *{border-color:color-mix(in srgb, var(--brand-gray), white 75%)}.sidebar .input-group:not(.has-validation)>:not(:last-child,.dropdown-toggle,.dropdown-menu,.form-floating){border-right:none}.sidebar .input-group>:not(:first-child,.dropdown-menu,.valid-tooltip,.valid-feedback,.invalid-tooltip,.invalid-feedback){border-left:none}.sidebar span.input-group-text{color:color-mix(in srgb, var(--brand-gray), white 75%) !important}.sidebar .selectize-dropdown .active{background-color:color-mix(in srgb, var(--bs-primary), white 80%)}.sidebar .selectize-dropdown .selected{background-color:color-mix(in srgb, var(--bs-primary), white 20%);color:var(--bs-white)}.sidebar .selectize-dropdown,.sidebar .selectize-input{border-color:color-mix(in srgb, var(--brand-gray), white 75%);color:var(--bs-body-color)}.sidebar .form-control{border:1px solid color-mix(in srgb, var(--brand-gray), white 75%)}.datepicker th{font-weight:500}.datepicker .datepicker-switch:hover,.datepicker .prev:hover,.datepicker .next:hover,.datepicker tfoot tr th:hover{background-color:color-mix(in srgb, var(--bs-primary), white 80%)}.datepicker table tr td.active:active,.datepicker table tr td.active.active,.datepicker table tr td.active.active:hover,.datepicker table tr td.active.highlighted:active,.datepicker table tr td.active.highlighted.active{background-color:color-mix(in srgb, var(--bs-primary), white 20%) !important;color:var(--bs-white);text-shadow:none}.datepicker table tr td.day:hover,.datepicker table tr td.focused{background-color:color-mix(in srgb, var(--bs-primary), white 80%)}.datepicker table tr td span.active:active,.datepicker table tr td span.active.active,.datepicker table tr td span.active.active:hover,.datepicker table tr td span.active:hover:active,.datepicker table tr td span.active:hover.active,.datepicker table tr td span.active:hover.active:hover,.datepicker table tr td span.active.disabled:active,.datepicker table tr td span.active.disabled.active,.datepicker table tr td span.active.disabled:hover:active,.datepicker table tr td span.active.disabled:hover.active{background-color:color-mix(in srgb, var(--bs-primary), white 20%) !important;color:var(--bs-white);text-shadow:none}.datepicker table tr td span:hover,.datepicker table tr td span.focused{background-color:color-mix(in srgb, var(--bs-primary), white 80%)}.datepicker table tr td.disabled,.datepicker table tr td.disabled:hover,.datepicker table tbody tr td span.disabled{background-color:var(--bs-white)}.vscomp-wrapper,.pop-comp-wrapper{color:var(--bs-body-color)}.vscomp-toggle-button{border-radius:var(--bs-border-radius) !important}.vscomp-wrapper.show-value-as-tags .vscomp-toggle-button{border-color:color-mix(in srgb, var(--brand-gray), white 75%)}.vscomp-wrapper.show-value-as-tags .vscomp-value-tag{background-color:color-mix(in srgb, var(--bs-primary), white 80%);border-color:color-mix(in srgb, var(--bs-primary), white 60%);border-radius:2px;padding:2px 6px;font-size:14px}.vscomp-wrapper .checkbox-icon.checked::after,.vscomp-wrapper.multiple .vscomp-option.selected .checkbox-icon::after{border-color:color-mix(in srgb, var(--bs-primary), white 20%);border-left-color:rgba(0,0,0,0);border-top-color:rgba(0,0,0,0)}.vscomp-option.selected,.vscomp-option.focused{background-color:var(--bs-white)}.vscomp-wrapper.multiple .vscomp-option.selected .checkbox-icon::after{border-color:color-mix(in srgb, var(--bs-primary), white 20%);border-left-color:rgba(0,0,0,0);border-top-color:rgba(0,0,0,0)}.vscomp-option:hover{background-color:color-mix(in srgb, var(--bs-primary), white 20%);color:var(--bs-white)}.vscomp-wrapper.multiple .vscomp-option.selected:hover .checkbox-icon::after{border-color:var(--bs-white);border-left-color:rgba(0,0,0,0);border-top-color:rgba(0,0,0,0)}.input-group-text{padding:0;background-color:var(--bs-white);height:100%}.bslib-sidebar-layout>.main{padding:0}.bslib-sidebar-layout>.main .bslib-card{box-shadow:none;border-bottom-width:1px;border-bottom-style:solid;margin-bottom:0;padding:26px 24px 24px}.bslib-sidebar-layout>.main .bslib-card .card-header{align-content:center;display:inline-block !important;background-color:#f2f4f8;justify-content:space-between;align-items:center;padding:10px 16px;min-height:60px;color:var(--bs-gray-700);border-bottom-color:var(--bs-white);border-radius:7px}.bslib-sidebar-layout>.main .bslib-card .card-header h5{font-size:20px}.bslib-sidebar-layout>.main .bslib-card .card-header div.card-header-with-content{display:flex;justify-content:space-between;align-items:center}.bslib-sidebar-layout>.main .bslib-card .card-header div.card-header-with-content div.card-header-content{display:flex;align-items:center}.bslib-sidebar-layout>.main .bslib-card .card-header div.card-header-with-content div.card-header-content div.inline-info-wrapper{display:flex;gap:4px;font-weight:500}.bslib-sidebar-layout>.main .bslib-card .card-body{padding:16px 0 0}.bslib-sidebar-layout>.main hr{margin-bottom:0}footer{font-size:12px;line-height:18px;color:#517287}footer a.link{color:#0099f9}.session-duration-input-controls{display:flex;gap:16px}.session-duration-input-controls :first-child{flex:1}.session-duration-input-controls :nth-child(2){flex:2} diff --git a/extensions/connect-user-metrics/app/static/favicon.ico b/extensions/connect-user-metrics/app/static/favicon.ico new file mode 100644 index 00000000..9f938b2b Binary files /dev/null and b/extensions/connect-user-metrics/app/static/favicon.ico differ diff --git a/extensions/connect-user-metrics/app/static/images/appsilon-logo.png b/extensions/connect-user-metrics/app/static/images/appsilon-logo.png new file mode 100644 index 00000000..973de3df Binary files /dev/null and b/extensions/connect-user-metrics/app/static/images/appsilon-logo.png differ diff --git a/extensions/connect-user-metrics/app/static/images/rhino.png b/extensions/connect-user-metrics/app/static/images/rhino.png new file mode 100644 index 00000000..406051e9 Binary files /dev/null and b/extensions/connect-user-metrics/app/static/images/rhino.png differ diff --git a/extensions/connect-user-metrics/app/static/js/app.min.js b/extensions/connect-user-metrics/app/static/js/app.min.js new file mode 100644 index 00000000..a11e3dd6 --- /dev/null +++ b/extensions/connect-user-metrics/app/static/js/app.min.js @@ -0,0 +1 @@ +var App;App={}; \ No newline at end of file diff --git a/extensions/connect-user-metrics/app/styles/components/_about.scss b/extensions/connect-user-metrics/app/styles/components/_about.scss new file mode 100644 index 00000000..8e044c32 --- /dev/null +++ b/extensions/connect-user-metrics/app/styles/components/_about.scss @@ -0,0 +1,195 @@ +// ABOUT SECTION + +.info-btns { + display: contents; + + .btn.action-button.info-btn { + border: none; + background-color: map.get($brand-colors, background); + color: map.get($credit-colors, blue); + cursor: pointer; + font-size: 1.2em; + flex: 0; + min-width: 24px; + padding: 0; + transition: background-color 0.2s, color 0.2s; + z-index: 1; + + &:hover, + &:focus { + background: none; + box-shadow: none; + color: map.get($credit-colors, blue-dark); + outline: none; + } + + i { + padding-top: 5px; + font-size: 1.3em; + } + } +} + +.modal-header { + .modal-title { + color: map.get($credit-colors, blue-gray-dark); + font-size: 1.2em; + font-weight: 600; + } +} + +.modal-content { + .about-section { + display: flex; + flex-direction: column; + gap: 1.6em; + + .about-links { + display: flex; + gap: 0.5em; + padding-bottom: 1em; + + .link { + align-items: center; + background-color: map.get($credit-colors, blue-light); + border-radius: 4em; + color: map.get($credit-colors, blue-gray-dark); + cursor: pointer; + display: flex; + gap: 0.5em; + padding: 0.5em 1em; + text-decoration: none; + + &:hover { + background-color: map.get($credit-colors, blue); + color: map.get($credit-colors, blue-gray-dark); + text-decoration: none; + } + } + } + } + + .brand-heading { + font-weight: bold; + font-size: 1.2em; + margin-bottom: 10px; + } + + .brand-section { + align-items: center; + border: 1px solid map.get($credit-colors, blue-gray-dark); + border-radius: 10px; + display: flex; + gap: 10px; + padding: 20px; + margin-bottom: 20px; + + .brand-logo { + width: 150px; + + img { + width: 100%; + } + } + + .brand-summary { + color: map.get($credit-colors, blue-gray-dark); + font-size: 0.9em; + line-height: 1.4; + width: 100%; + margin-bottom: 0; + } + } + + .tech-section { + display: flex; + flex-direction: column; + gap: 10px; + padding: 10px 0; + + .tech-heading { + font-weight: bold; + font-size: 1.2em; + color: map.get($credit-colors, blue-gray-dark); + } + + .card-package { + align-items: center; + background-color: map.get($credit-colors, blue-gray-dark); + border-radius: 1em; + display: grid; + gap: 20px; + grid-template-columns: 130px auto 1fr; + grid-template-rows: repeat(3, auto); + justify-items: start; + padding: 20px; + + .card-logo { + grid-row: 1 / 4; + + img { + width: 100%; + } + } + + .card-heading { + color: map.get($brand-colors, white); + font-size: 1.1em; + font-weight: 600; + grid-column: 2 / 4; + margin: 0; + } + + .card-content { + color: map.get($brand-colors, white); + font-size: 0.9em; + grid-column: 2 / 4; + line-height: 1.4; + } + + .card-link { + border-radius: 10px; + font-weight: bold; + padding: 10px 20px; + text-decoration: none; + transition: background-color 0.2s, color 0.2s; + + &.rhino, + &.blog-link { + background-color: map.get($credit-colors, rhino); + color: map.get($brand-colors, white); + grid-column: 2 / 3; + } + + &.technologies, + &.marketing-link { + background-color: map.get($brand-colors, white); + color: map.get($credit-colors, blue-gray-dark); + grid-column: 3 / 4; + } + + &:hover { + background-color: map.get($credit-colors, blue); + color: map.get($brand-colors, white); + } + } + } + } + + .btn-default, + .btn:disabled, + .btn.disabled, + fieldset:disabled .btn { + background-color: map.get($credit-colors, blue); + } + + .btn-default:hover, + .btn-default:focus, + :not(.btn-check) + .btn:active { + background-color: map.get($credit-colors, blue-dark); + } +} + +.modal-dialog.modal-xl { + margin-top: 12vh; +} diff --git a/extensions/connect-user-metrics/app/styles/components/_content.scss b/extensions/connect-user-metrics/app/styles/components/_content.scss new file mode 100644 index 00000000..e3e0eabd --- /dev/null +++ b/extensions/connect-user-metrics/app/styles/components/_content.scss @@ -0,0 +1,55 @@ +// CONTENT + +.bslib-sidebar-layout > .main { + padding: 0; + + .bslib-card { + box-shadow: none; + border-bottom-width: 1px; + border-bottom-style: solid; + margin-bottom: 0; + padding: 26px 24px 24px; + + .card-header { + align-content: center; + display: inline-block !important; + background-color: map.get($base-colors, gray-lighter); + justify-content: space-between; + align-items: center; + padding: 10px 16px; + min-height: 60px; + color: map.get($brand-colors, gray-dark); + border-bottom-color: map.get($brand-colors, white); + border-radius: 7px; + + h5 { + font-size: 20px; + } + + div.card-header-with-content { + display: flex; + justify-content: space-between; + align-items: center; + + div.card-header-content { + display: flex; + align-items: center; + + div.inline-info-wrapper { + display: flex; + gap: 4px; + font-weight: 500; + } + } + } + } + + .card-body { + padding: 16px 0 0; + } + } + + hr { + margin-bottom: 0; + } +} diff --git a/extensions/connect-user-metrics/app/styles/components/_footer.scss b/extensions/connect-user-metrics/app/styles/components/_footer.scss new file mode 100644 index 00000000..596d07c2 --- /dev/null +++ b/extensions/connect-user-metrics/app/styles/components/_footer.scss @@ -0,0 +1,9 @@ +footer { + font-size: 12px; + line-height: 18px; + color: map.get($credit-colors, blue-gray); + + a.link { + color: map.get($credit-colors, blue); + } +} diff --git a/extensions/connect-user-metrics/app/styles/components/_navbar.scss b/extensions/connect-user-metrics/app/styles/components/_navbar.scss new file mode 100644 index 00000000..a5eb6dfd --- /dev/null +++ b/extensions/connect-user-metrics/app/styles/components/_navbar.scss @@ -0,0 +1,134 @@ +// NAVBAR + +div.app-header { + height: 50px; + padding: 20px 20px 20px 0; + z-index: 1; + + .logo-link { + border-right: 1px solid map.get($base-colors, gray); + flex: 0; + padding: 0 10px 0 0; + width: auto; + z-index: 1; + + .logo { + width: 100px; + } + } + + .title { + color: map.get($brand-colors, gray-dark); + flex: 1; + font-size: 1.15em; + font-weight: 600; + margin: 0; + overflow: hidden; + text-overflow: ellipsis; + white-space: nowrap; + z-index: 1; + } + + .navigation { + flex: 0; + + .btn-nav-menu { + background: transparent; + border: none; + border-radius: 20px; + color: map.get($credit-colors, blue-gray-dark); + font-weight: normal; + font-size: 1em; + height: auto; + outline: none !important; + transition: color 0.2s, background-color 0.2s; + + &.selected { + background-color: rgba(map.get($credit-colors, blue), $alpha: 0.1); + border-bottom: none; + color: map.get($credit-colors, blue); + outline: 0; + } + + &:hover, + &:active { + background-color: rgba(map.get($credit-colors, blue-gray-dark), $alpha: 0.05); + } + } + } + + .btn-cta { + border-radius: 4px; + background-color: map.get($credit-colors, blue); + color: map.get($brand-colors, white); + cursor: pointer; + flex: 0; + padding: 8px 16px; + text-decoration: none; + transition: color 0.2s, background-color 0.2s; + white-space: nowrap; + width: auto; + z-index: 1; + + &:hover { + background-color: map.get($credit-colors, blue-dark); + color: map.get($brand-colors, white); + background-image: none; + } + } + + .burger-btn { + background: none; + border: none; + display: none; + flex: 0; + font-size: 1.5em; + transition: color 0.2s; + min-width: 30px; + z-index: 1; + + &:hover { + color: map.get($credit-colors, blue); + } + } + + @media screen and (max-width: 1024px) { + padding: 0; + + .burger-btn { + display: flex; + } + + .navigation { + background-color: map.get($brand-colors, white); + height: auto; + left: 0; + padding: 80px 20px 40px; + position: fixed; + top: 0; + transform: translateY(-100%); + transition: transform 0.2s, visibility 0s 0.2s; + visibility: hidden; + width: 100%; + z-index: 0; + + &.visible { + transition: transform 0.2s, visibility 0s; + transform: translateY(0); + visibility: visible; + } + + .btn-nav-menu { + background: transparent; + border: none; + border-radius: 20px; + color: map.get($credit-colors, blue-gray-dark); + font-weight: normal; + font-size: 1em; + height: auto; + outline: none !important; + transition: color 0.2s, background-color 0.2s; + } + } + } +} diff --git a/extensions/connect-user-metrics/app/styles/components/_session_duration.scss b/extensions/connect-user-metrics/app/styles/components/_session_duration.scss new file mode 100644 index 00000000..b0233896 --- /dev/null +++ b/extensions/connect-user-metrics/app/styles/components/_session_duration.scss @@ -0,0 +1,14 @@ +// SESSION DURATION INPUT + +.session-duration-input-controls { + display: flex; + gap: 16px; + + :first-child { + flex: 1; + } + + :nth-child(2) { + flex: 2; + } +} diff --git a/extensions/connect-user-metrics/app/styles/components/_sidebar.scss b/extensions/connect-user-metrics/app/styles/components/_sidebar.scss new file mode 100644 index 00000000..07be52e7 --- /dev/null +++ b/extensions/connect-user-metrics/app/styles/components/_sidebar.scss @@ -0,0 +1,162 @@ +// SIDEBAR +.sidebar { + label, + .control-label { + font-weight: 500; + } + + div.input-daterange.input-group.input-group-sm * { + border-color: map.get($brand-colors, gray-light-75); + } + + .input-group:not(.has-validation) > :not(:last-child, .dropdown-toggle, .dropdown-menu, .form-floating) { + border-right: none; + } + + .input-group > :not( + :first-child, + .dropdown-menu, + .valid-tooltip, + .valid-feedback, + .invalid-tooltip, + .invalid-feedback) { + border-left: none; + } + + span.input-group-text { + color: map.get($brand-colors, gray-light-75) !important; + } + + .selectize-dropdown { + .active { + background-color: map.get($brand-colors, primary-light-80); + } + + .selected { + background-color: map.get($brand-colors, primary-light-20); + color: map.get($brand-colors, white); + } + } + + .selectize-dropdown, + .selectize-input { + border-color: map.get($brand-colors, gray-light-75); + color: map.get($brand-colors, foreground); + } + + .form-control { + border: 1px solid map.get($brand-colors, gray-light-75); + } +} + +// airDatePickerInput header +.datepicker th { + font-weight: 500; +} + +.datepicker .datepicker-switch:hover, +.datepicker .prev:hover, +.datepicker .next:hover, +.datepicker tfoot tr th:hover { + background-color: map.get($brand-colors, primary-light-80); +} + +// airDatePickerInput day +.datepicker table tr td.active:active, +.datepicker table tr td.active.active, +.datepicker table tr td.active.active:hover, +.datepicker table tr td.active.highlighted:active, +.datepicker table tr td.active.highlighted.active { + background-color: map.get($brand-colors, primary-light-20) !important; + color: map.get($brand-colors, white); + text-shadow: none; +} + +.datepicker table tr td.day:hover, +.datepicker table tr td.focused { + background-color: map.get($brand-colors, primary-light-80); +} + +// airDatePickerInput month/year +.datepicker table tr td span.active:active, +.datepicker table tr td span.active.active, +.datepicker table tr td span.active.active:hover, +.datepicker table tr td span.active:hover:active, +.datepicker table tr td span.active:hover.active, +.datepicker table tr td span.active:hover.active:hover, +.datepicker table tr td span.active.disabled:active, +.datepicker table tr td span.active.disabled.active, +.datepicker table tr td span.active.disabled:hover:active, +.datepicker table tr td span.active.disabled:hover.active { + background-color: map.get($brand-colors, primary-light-20) !important; + color: map.get($brand-colors, white); + text-shadow: none; +} + +.datepicker table tr td span:hover, +.datepicker table tr td span.focused { + background-color: map.get($brand-colors, primary-light-80); +} + +// Disabled airDatePickerInput elements +.datepicker table tr td.disabled, +.datepicker table tr td.disabled:hover, +.datepicker table tbody tr td span.disabled { + background-color: map.get($brand-colors, white); +} + +.vscomp-wrapper, +.pop-comp-wrapper { + color: map.get($brand-colors, foreground); +} + +.vscomp-toggle-button { + border-radius: var(--bs-border-radius) !important; +} + +.vscomp-wrapper.show-value-as-tags .vscomp-toggle-button { + border-color: map.get($brand-colors, gray-light-75); +} + +.vscomp-wrapper.show-value-as-tags .vscomp-value-tag { + background-color: map.get($brand-colors, primary-light-80); + border-color: map.get($brand-colors, primary-light-60); + border-radius: 2px; + padding: 2px 6px; + font-size: 14px; +} + +.vscomp-wrapper .checkbox-icon.checked::after, +.vscomp-wrapper.multiple .vscomp-option.selected .checkbox-icon::after { + border-color: map.get($brand-colors, primary-light-20); + border-left-color: transparent; + border-top-color: transparent; +} + +.vscomp-option.selected, +.vscomp-option.focused { + background-color: map.get($brand-colors, white); +} + +.vscomp-wrapper.multiple .vscomp-option.selected .checkbox-icon::after { + border-color: map.get($brand-colors, primary-light-20); + border-left-color: transparent; + border-top-color: transparent; +} + +.vscomp-option:hover { + background-color: map.get($brand-colors, primary-light-20); + color: map.get($brand-colors, white); +} + +.vscomp-wrapper.multiple .vscomp-option.selected:hover .checkbox-icon::after { + border-color: map.get($brand-colors, white); + border-left-color: transparent; + border-top-color: transparent; +} + +.input-group-text { + padding: 0; + background-color: map.get($brand-colors, white); + height: 100%; +} diff --git a/extensions/connect-user-metrics/app/styles/components/_table.scss b/extensions/connect-user-metrics/app/styles/components/_table.scss new file mode 100644 index 00000000..f60a088d --- /dev/null +++ b/extensions/connect-user-metrics/app/styles/components/_table.scss @@ -0,0 +1,27 @@ +// TABLE + +.rt-pagination { + .rt-page-button { + font-weight: 400; + } + + .rt-page-button-current { + background-color: map.get($brand-colors, gray); + color: map.get($brand-colors, white); + } +} + +.rt-table { + .rt-tbody .rt-tr:hover { + background-color: map.get($brand-colors, primary-light-80); + transition: background-color 0.3s ease 0s, color 0.3s ease 0s; + } + + .rt-sort-header { + font-weight: 500; + } + + .rt-page-button:disabled:hover { + color: map.get($brand-colors, gray-dark); + } +} diff --git a/extensions/connect-user-metrics/app/styles/main.scss b/extensions/connect-user-metrics/app/styles/main.scss new file mode 100644 index 00000000..43695795 --- /dev/null +++ b/extensions/connect-user-metrics/app/styles/main.scss @@ -0,0 +1,11 @@ +// Utilities and components +@use "sass:map"; +@import "utilities/variables"; +@import "utilities/base"; +@import "components/navbar"; +@import "components/about"; +@import "components/table"; +@import "components/sidebar"; +@import "components/content"; +@import "components/footer"; +@import "components/session_duration"; diff --git a/extensions/connect-user-metrics/app/styles/utilities/_base.scss b/extensions/connect-user-metrics/app/styles/utilities/_base.scss new file mode 100644 index 00000000..0fa14329 --- /dev/null +++ b/extensions/connect-user-metrics/app/styles/utilities/_base.scss @@ -0,0 +1,78 @@ +h1, +h2, +h3, +h4, +h5 { + margin-bottom: 0; + color: map.get($brand-colors, gray-dark); +} + +.btn { + --bs-btn-padding-x: 15px; + --bs-btn-padding-y: 5px; +} + +.btn-default, +.btn:disabled, +.btn.disabled, +fieldset:disabled .btn { + border: none; + border-radius: 4px; + background-color: map.get($brand-colors, primary); + color: map.get($brand-colors, white); + cursor: pointer; + padding: 6px 16px; + min-width: 100px; + max-height: 36px; + opacity: unset; +} + +.btn-default:hover, +.btn-default:focus, +:not(.btn-check) + .btn:active { + background-color: map.get($brand-colors, primary-dark-90); + color: map.get($brand-colors, white); + background-image: none; + opacity: unset; +} + +.btn-group-toggle { + margin-left: 5px !important; +} + +details.collapsible-section { + margin-top: 20px; +} + +details.collapsible-section > summary { + align-items: center; + cursor: pointer; + display: flex; + margin-bottom: 10px; + width: fit-content; +} + +details.collapsible-section > summary::before { + content: "\25b6"; + font-size: 80%; + margin-right: 5px; +} + +details.collapsible-section[open] > summary::before { + content: "\25bc"; +} + +details.collapsible-section > summary > h3 { + margin: 0; +} + +hr { + margin: 0; + color: map.get($base-colors, gray-light); + opacity: 1; +} + +.no-busy-indicator .recalculating::after { + display: none !important; + content: none !important; +} diff --git a/extensions/connect-user-metrics/app/styles/utilities/_variables.scss b/extensions/connect-user-metrics/app/styles/utilities/_variables.scss new file mode 100644 index 00000000..7922ea45 --- /dev/null +++ b/extensions/connect-user-metrics/app/styles/utilities/_variables.scss @@ -0,0 +1,35 @@ +// COLORS + +// Base colors +$base-colors: ( + gray-lighter: #f2f4f8, + gray-light: #dde1e6, + gray: #c5c8ca, +); + +// Credit colors +$credit-colors: ( + blue-gray: #517287, + blue-gray-dark: #15354a, + blue-light: #ccebff, + blue: #0099f9, + blue-dark: #008de7, + rhino: #4747b1 +); + +// Branding colors +$brand-colors: ( + white: var(--bs-white), + black: var(--bs-black), + foreground: var(--bs-body-color), + background: var(--bs-body-bg), + gray-light-75: color-mix(in srgb, var(--brand-gray), white 75%), + gray-light-30: color-mix(in srgb, var(--brand-gray), white 30%), + gray: var(--brand-gray), + gray-dark: var(--bs-gray-700), + primary-light-80: color-mix(in srgb, var(--bs-primary), white 80%), + primary-light-60: color-mix(in srgb, var(--bs-primary), white 60%), + primary-light-20: color-mix(in srgb, var(--bs-primary), white 20%), + primary: var(--bs-primary), + primary-dark-90: color-mix(in srgb, var(--bs-primary), black 10%) +); diff --git a/extensions/connect-user-metrics/app/view/__init__.R b/extensions/connect-user-metrics/app/view/__init__.R new file mode 100644 index 00000000..65702e2e --- /dev/null +++ b/extensions/connect-user-metrics/app/view/__init__.R @@ -0,0 +1,2 @@ +# View: Shiny modules and related code. +# https://go.appsilon.com/rhino-project-structure diff --git a/extensions/connect-user-metrics/app/view/about_section.R b/extensions/connect-user-metrics/app/view/about_section.R new file mode 100644 index 00000000..73aa0c82 --- /dev/null +++ b/extensions/connect-user-metrics/app/view/about_section.R @@ -0,0 +1,121 @@ +box::use( + htmltools[ + h4, + ], + shiny, +) + +box::use( + app/logic/ui_utils[ + brand + ], + app/logic/utils[ + create_image_path + ], + app/view/ui_components[ + card, + ], +) + +about_credits <- brand$meta$credits$about + +about_section <- shiny$div( + class = "brand-section", + shiny$div( + class = "brand-summary", + shiny$markdown(" +Posit Connect User Metrics makes it easy to monitor **application adoption**, +track **user engagement** and access detailed **usage analytics** +for all your Shiny applications deployed on Posit Connect. +Some key features: + +- **Time-based analysis**: View data by day, week, or month across custom time periods +- **Flexible grouping**: Combine metrics by application, user, and date for different perspectives +- **Interactive charts**: Visualize session counts and unique users with dynamic filtering +- **Smart filtering**: Set minimum session duration and filter by specific apps or users +- **Data export**: Download raw and aggregated data as CSV files for further analysis +") + ) +) + +tech_section <- shiny$div( + class = "tech-section", + h4(class = "tech-heading", "Powered by"), + lapply( + about_credits$powered_by, + function(x) { + card( + href_link = x$link, + img_link = create_image_path(x$img_name), + card_header = x$name, + card_text = x$desc + ) + } + ) +) + +brand_section <- shiny$div( + class = "brand-section", + shiny$a( + class = "brand-logo", + href = about_credits$references$homepage$link, + target = "_blank", + rel = "noopener noreferrer", + shiny$img( + src = create_image_path(brand$logo), + alt = "Appsilon" + ) + ), + shiny$p( + class = "brand-summary", + shiny$span( + about_credits$summary, + shiny$a( + "Learn more about Appsilon", + href = about_credits$references$homepage$link, + target = "_blank", + rel = "noopener noreferrer", + class = "brand-link" + ) + ) + ) +) + +#' @export +ui <- function(id) { + ns <- shiny$NS(id) + shiny$div( + class = "info-btns", + shiny$actionButton( + inputId = ns("open_about_modal"), + class = "info-btn", + label = "", + icon = shiny$icon("info-circle") + ) + ) +} + +#' @export +server <- function(id) { + shiny$moduleServer(id, function(input, output, session) { + ns <- session$ns + + shiny$observeEvent( + input$open_about_modal, + ignoreNULL = TRUE, + { + shiny$showModal( + shiny$modalDialog( + easyClose = TRUE, + title = brand$meta$app_title, + size = "xl", + h4(class = "brand-heading", "About this app"), + about_section, + tech_section, + brand_section + ) + ) + } + ) + }) +} diff --git a/extensions/connect-user-metrics/app/view/footer.R b/extensions/connect-user-metrics/app/view/footer.R new file mode 100644 index 00000000..f9fe392e --- /dev/null +++ b/extensions/connect-user-metrics/app/view/footer.R @@ -0,0 +1,28 @@ +box::use( + shiny[ + a, + div + ], +) + +box::use( + app/logic/ui_utils[ + brand, + ], +) + +footer_credits <- brand$meta$credits$footer + +#' @export +ui <- function() { + div( + footer_credits$text, + a( + footer_credits$link$label, + class = "link", + href = footer_credits$link$url, + target = "_blank", + rel = "noopener noreferrer" + ) + ) +} diff --git a/extensions/connect-user-metrics/app/view/navbar_section.R b/extensions/connect-user-metrics/app/view/navbar_section.R new file mode 100644 index 00000000..112249d5 --- /dev/null +++ b/extensions/connect-user-metrics/app/view/navbar_section.R @@ -0,0 +1,101 @@ +# The application header. +# Includes branding and navigation +box::use( + imola[flexPanel], + shiny[ + NS, + a, + h1, + img, + moduleServer, + ], +) + +box::use( + app/logic/ui_utils[ + brand, + breakpoints, + is_credits_enabled + ], + app/logic/utils[ + create_image_path, + ], +) + +if (is_credits_enabled) { + box::use( + app/view/about_section, + ) +} + +homepage_link <- brand$meta$credits$about$references$homepage$link + +app_title_header <- h1( + class = "title", + brand$meta$app_title +) + +navbar_logo <- a( + class = "logo-link", + href = if (is_credits_enabled) homepage_link, + target = "_blank", + rel = "noopener noreferrer", + img( + class = "logo", + src = create_image_path(brand$logo), + height = "40px" # !!! + ) +) + +navbar_cta <- a( + "Let's Talk", + class = "btn-cta", + href = paste0(homepage_link, "/#contact"), + target = "_blank", + rel = "noopener noreferrer" +) + +#' @export +ui <- function(id) { + ns <- NS(id) + + flexPanel( + id = "app_header", + class = "app-header", + breakpoint_system = breakpoints, + align_items = "center", + justify_content = "space-between", + gap = "24px", + height = "40px", + navbar_logo, + app_title_header, + # The navigation + flexPanel( + id = "navigation", + class = "navigation", + breakpoint_system = breakpoints, + align_items = "center", + direction = list( + default = "column", + l = "row" + ), + gap = "10px", + onclick = "App.handleNavbar(event);" + ), + + # The info icon + if (is_credits_enabled) about_section$ui(ns("about")), + + # The call to action button + if (is_credits_enabled) navbar_cta + ) +} + +#' @export +server <- function(id) { + moduleServer(id, function(input, output, session) { + if (is_credits_enabled) { + about_section$server("about") + } + }) +} diff --git a/extensions/connect-user-metrics/app/view/session_duration.R b/extensions/connect-user-metrics/app/view/session_duration.R new file mode 100755 index 00000000..a4c18323 --- /dev/null +++ b/extensions/connect-user-metrics/app/view/session_duration.R @@ -0,0 +1,96 @@ +box::use( + lubridate, + shiny[NS, div, moduleServer, numericInput, reactive, req, selectInput, tags], +) +#' @export +default_min_time_list <- list(number = 0, unit = "minutes") + +#' Return a list used by the ui component to set the default values +#' @param min_time A string in the format "HH:MM:SS" giving the minimum duration +#' of each session to be used in the filter +#' @details Given `min_time`, this function needs to return a list +#' with two elements: `number` (any integer) and `unit` ( +#' any of `c("seconds", "minutes", "hours")`). +#' +#' So, "00:00:30" returns `list(number=30, unit="seconds")`, +#' "00:03:00" returns `list(number=3, unit="minutes")`, +#' "00:01:30" returns `list(number=90, unit="seconds")` and so on. +#' +#' @export +get_min_time <- function(min_time) { + + # covers the case when min_time is a list with just one element + if (is.list(min_time)) { + min_time <- min_time[[1]] + } + + min_time_in_seconds <- + lubridate$hms(min_time) |> + lubridate$seconds() |> + as.integer() + + # if it failed to parse or it is negative, just use the default "0 minutes" + if (is.na(min_time_in_seconds) || min_time_in_seconds <= 0) { + return(default_min_time_list) + } + + # if it is an hour + if (min_time_in_seconds %% 3600 == 0) { + return(list(number = min_time_in_seconds %/% 3600, unit = "hours")) + } # if it is a minute + if (min_time_in_seconds %% 60 == 0) { + return(list(number = min_time_in_seconds %/% 60, unit = "minutes")) + } + + list(number = min_time_in_seconds, unit = "seconds") +} + +#' @export +ui <- function(id, min_time = NULL) { + ns <- NS(id) + + min_time_list <- get_min_time(min_time) + duration_units <- c("seconds", "minutes", "hours") + + div( + class = "form-group shiny-input-container", + tags$label("Minimum session duration", class = "control-label"), + div( + class = "session-duration-input-controls", + div( + numericInput( + inputId = ns("value"), + label = NULL, + value = min_time_list$number, + min = 0, + max = 99999, + step = 1 + ) + ), + div( + selectInput( + inputId = ns("unit"), + label = NULL, + choices = duration_units, + selected = min_time_list$unit + ) + ) + ) + ) +} + +#' @export +server <- function(id) { + moduleServer( + id, function(input, output, session) { + session_duration_seconds <- reactive({ + req(input$value, input$unit) + + session_duration <- lubridate$duration(input$value, input$unit) + as.numeric(session_duration) + }) + + session_duration_seconds + } + ) +} diff --git a/extensions/connect-user-metrics/app/view/table.R b/extensions/connect-user-metrics/app/view/table.R new file mode 100644 index 00000000..3cd89aad --- /dev/null +++ b/extensions/connect-user-metrics/app/view/table.R @@ -0,0 +1,13 @@ +box::use( + reactable[colDef, reactable], +) + +#' @export +reactable2 <- function(df, ...) { + reactable( + df, highlight = TRUE, striped = TRUE, + compact = TRUE, paginationType = "numbers", + defaultColDef = colDef(align = "left"), + ... + ) +} diff --git a/extensions/connect-user-metrics/app/view/ui_components.R b/extensions/connect-user-metrics/app/view/ui_components.R new file mode 100644 index 00000000..074aa1a0 --- /dev/null +++ b/extensions/connect-user-metrics/app/view/ui_components.R @@ -0,0 +1,109 @@ +box::use( + bslib[card_header], + shiny[ + HTML, + a, + div, + icon, + img, + tags, + ], +) + +# bslib card header +#' @export +card_header_with_content <- function(title, content) { + card_header( + tags$div( + class = "card-header-with-content no-busy-indicator", + tags$span(tags$h5(tags$b(title))), + tags$span(content) + ) + ) +} + +#' @export +inline_info_text <- function( + text1 = NULL, value1 = NULL, change1 = NULL, + text2 = NULL, value2 = NULL, change2 = NULL +) { + tags$div( + class = "inline-info-wrapper", + text1, tags$b(value1), change1, + HTML(" "), + text2, tags$b(value2), change2, + HTML(" ") + ) +} + +#' Creates a hyperlink with the specified label and URL. +#' +#' @param label The text to display for the hyperlink. +#' @param hyperlink The URL or path to link to. +#' @return A string representing the HTML code for the hyperlink. +#' +#' @export +link <- function(label, hyperlink) { + a( + class = "link", + href = hyperlink, + target = "_blank", + rel = "noopener noreferrer", + icon("link"), + label + ) +} + +#' Creates a card element with a hyperlink, image, header, and text. +#' +#' @param href_link The hyperlink for the card. +#' @param img_link The image link for the card. +#' @param card_header The header text for the card. +#' @param card_text The text content for the card. +#' +#' @return A card element with the specified properties. +#' +#' @examples +#' card("https://example.com", "image.jpg", "Card Header", "Card Text") +#' card <- function(href_link, img_link, card_header, card_text) { +#' # Function implementation goes here +#' } +#' +#' @export +card <- function(href_link, img_link, card_header, card_text) { + div( + class = "card-package", + a( + class = "card-logo", + href = href_link, + target = "_blank", + rel = "noopener noreferrer", + img( + src = img_link, + alt = card_header + ) + ), + div( + class = "card-heading", + card_header + ), + div( + class = "card-content", + card_text + ), + a( + class = "card-link rhino", + href = href_link, + target = "_blank", + rel = "noopener noreferrer", + "Learn more" + ), + a( + class = "card-link technologies", + href = "https://go.appsilon.com/rhino-user-metrics-app", + target = "_blank", + rel = "noopener noreferrer", + "More Appsilon Technologies" + ) + ) +} diff --git a/extensions/connect-user-metrics/config.yml b/extensions/connect-user-metrics/config.yml new file mode 100644 index 00000000..eda4ca71 --- /dev/null +++ b/extensions/connect-user-metrics/config.yml @@ -0,0 +1,9 @@ +default: + rhino_log_level: !expr Sys.getenv("RHINO_LOG_LEVEL", "INFO") + rhino_log_file: !expr Sys.getenv("RHINO_LOG_FILE", NA) + apps: "" + users: "" + agg_levels: "start_date" # can be a combination of content_guid,user_guid,start_date + agg_time: "day" # can be one of day,week,month + min_time: "00:00:00" + week_start: "monday" diff --git a/extensions/connect-user-metrics/manifest.json b/extensions/connect-user-metrics/manifest.json new file mode 100644 index 00000000..82095c16 --- /dev/null +++ b/extensions/connect-user-metrics/manifest.json @@ -0,0 +1,5292 @@ +{ + "version": 1, + "locale": "en_US", + "platform": "4.5.1", + "metadata": { + "appmode": "shiny", + "primary_rmd": null, + "primary_html": null, + "content_category": null, + "has_parameters": false + }, + "environment": { + "r": { + "requires": "~=4.5.0" + } + }, + "packages": { + "AsioHeaders": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "AsioHeaders", + "Type": "Package", + "Title": "'Asio' C++ Header Files", + "Version": "1.30.2-1", + "Date": "2025-04-15", + "Authors@R": "c(person(\"Dirk\", \"Eddelbuettel\", role = c(\"aut\", \"cre\"), email = \"edd@debian.org\",\n comment = c(ORCID = \"0000-0001-6419-907X\")),\n person(\"Christopher M.\", \"Kohlhoff\", role = \"aut\",\n comment = \"Author of Asio\"))", + "Description": "'Asio' is a cross-platform C++ library for network and low-level\n I/O programming that provides developers with a consistent asynchronous model\n using a modern C++ approach. It is also included in Boost but requires linking\n when used with Boost. Standalone it can be used header-only (provided a recent\n compiler). 'Asio' is written and maintained by Christopher M. Kohlhoff, and\n released under the 'Boost Software License', Version 1.0.", + "Copyright": "file inst/COPYRIGHTS", + "License": "BSL-1.0", + "URL": "https://github.com/eddelbuettel/asioheaders,\nhttps://dirk.eddelbuettel.com/code/asioheaders.html", + "BugReports": "https://github.com/eddelbuettel/asioheaders/issues", + "NeedsCompilation": "no", + "Packaged": "2025-04-15 10:31:52 UTC; edd", + "Author": "Dirk Eddelbuettel [aut, cre] (),\n Christopher M. Kohlhoff [aut] (Author of Asio)", + "Maintainer": "Dirk Eddelbuettel ", + "Repository": "RSPM", + "Date/Publication": "2025-04-15 10:50:01 UTC", + "Encoding": "UTF-8", + "Built": "R 4.5.0; ; 2025-04-16 04:40:18 UTC; unix" + } + }, + "BH": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "BH", + "Type": "Package", + "Title": "Boost C++ Header Files", + "Version": "1.87.0-1", + "Date": "2024-12-17", + "Authors@R": "c(person(\"Dirk\", \"Eddelbuettel\", role = c(\"aut\", \"cre\"), email = \"edd@debian.org\",\n comment = c(ORCID = \"0000-0001-6419-907X\")),\n person(\"John W.\", \"Emerson\", role = \"aut\"), \n person(\"Michael J.\", \"Kane\", role = \"aut\", \n comment = c(ORCID = \"0000-0003-1899-6662\")))", + "Description": "Boost provides free peer-reviewed portable C++ source \n libraries. A large part of Boost is provided as C++ template code\n which is resolved entirely at compile-time without linking. This \n package aims to provide the most useful subset of Boost libraries \n for template use among CRAN packages. By placing these libraries in \n this package, we offer a more efficient distribution system for CRAN \n as replication of this code in the sources of other packages is \n avoided. As of release 1.84.0-0, the following Boost libraries are\n included: 'accumulators' 'algorithm' 'align' 'any' 'atomic' 'beast'\n 'bimap' 'bind' 'circular_buffer' 'compute' 'concept' 'config'\n 'container' 'date_time' 'detail' 'dynamic_bitset' 'exception'\n 'flyweight' 'foreach' 'functional' 'fusion' 'geometry' 'graph' 'heap'\n 'icl' 'integer' 'interprocess' 'intrusive' 'io' 'iostreams'\n 'iterator' 'lambda2' 'math' 'move' 'mp11' 'mpl' 'multiprecision'\n 'numeric' 'pending' 'phoenix' 'polygon' 'preprocessor' 'process'\n 'propery_tree' 'qvm' 'random' 'range' 'scope_exit' 'smart_ptr' 'sort'\n 'spirit' 'tuple' 'type_traits' 'typeof' 'unordered' 'url' 'utility'\n 'uuid'.", + "License": "BSL-1.0", + "URL": "https://github.com/eddelbuettel/bh,\nhttps://dirk.eddelbuettel.com/code/bh.html", + "BugReports": "https://github.com/eddelbuettel/bh/issues", + "NeedsCompilation": "no", + "Packaged": "2024-12-17 14:33:33 UTC; edd", + "Author": "Dirk Eddelbuettel [aut, cre] (),\n John W. Emerson [aut],\n Michael J. Kane [aut] ()", + "Maintainer": "Dirk Eddelbuettel ", + "Repository": "RSPM", + "Date/Publication": "2024-12-17 18:20:03 UTC", + "Encoding": "UTF-8", + "Built": "R 4.5.0; ; 2025-04-06 04:42:46 UTC; unix" + } + }, + "KernSmooth": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "KernSmooth", + "Priority": "recommended", + "Version": "2.23-26", + "Date": "2024-12-10", + "Title": "Functions for Kernel Smoothing Supporting Wand & Jones (1995)", + "Authors@R": "c(person(\"Matt\", \"Wand\", role = \"aut\",\n\t email = \"Matt.Wand@uts.edu.au\"),\n\t person(\"Cleve\", \"Moler\", role = \"ctb\",\n\t comment = \"LINPACK routines in src/d*\"),\n person(\"Brian\", \"Ripley\", role = c(\"trl\", \"cre\", \"ctb\"),\n email = \"Brian.Ripley@R-project.org\",\n\t\t comment = \"R port and updates\"))", + "Note": "Maintainers are not available to give advice on using a package\nthey did not author.", + "Depends": "R (>= 2.5.0), stats", + "Suggests": "MASS, carData", + "Description": "Functions for kernel smoothing (and density estimation)\n corresponding to the book: \n Wand, M.P. and Jones, M.C. (1995) \"Kernel Smoothing\".", + "License": "Unlimited", + "ByteCompile": "yes", + "NeedsCompilation": "yes", + "Packaged": "2024-12-10 15:33:25 UTC; ripley", + "Author": "Matt Wand [aut],\n Cleve Moler [ctb] (LINPACK routines in src/d*),\n Brian Ripley [trl, cre, ctb] (R port and updates)", + "Maintainer": "Brian Ripley ", + "Repository": "CRAN", + "Date/Publication": "2025-01-01 10:25:36 UTC", + "Built": "R 4.5.1; aarch64-apple-darwin20; 2025-06-14 01:29:47 UTC; unix" + } + }, + "MASS": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "MASS", + "Priority": "recommended", + "Version": "7.3-65", + "Date": "2025-02-19", + "Revision": "$Rev: 3681 $", + "Depends": "R (>= 4.4.0), grDevices, graphics, stats, utils", + "Imports": "methods", + "Suggests": "lattice, nlme, nnet, survival", + "Authors@R": "c(person(\"Brian\", \"Ripley\", role = c(\"aut\", \"cre\", \"cph\"),\n email = \"Brian.Ripley@R-project.org\"),\n\t person(\"Bill\", \"Venables\", role = c(\"aut\", \"cph\")),\n\t person(c(\"Douglas\", \"M.\"), \"Bates\", role = \"ctb\"),\n\t person(\"Kurt\", \"Hornik\", role = \"trl\",\n comment = \"partial port ca 1998\"),\n\t person(\"Albrecht\", \"Gebhardt\", role = \"trl\",\n comment = \"partial port ca 1998\"),\n\t person(\"David\", \"Firth\", role = \"ctb\",\n\t comment = \"support functions for polr\"))", + "Description": "Functions and datasets to support Venables and Ripley,\n \"Modern Applied Statistics with S\" (4th edition, 2002).", + "Title": "Support Functions and Datasets for Venables and Ripley's MASS", + "LazyData": "yes", + "ByteCompile": "yes", + "License": "GPL-2 | GPL-3", + "URL": "http://www.stats.ox.ac.uk/pub/MASS4/", + "Contact": "", + "NeedsCompilation": "yes", + "Packaged": "2025-02-19 08:49:43 UTC; ripley", + "Author": "Brian Ripley [aut, cre, cph],\n Bill Venables [aut, cph],\n Douglas M. Bates [ctb],\n Kurt Hornik [trl] (partial port ca 1998),\n Albrecht Gebhardt [trl] (partial port ca 1998),\n David Firth [ctb] (support functions for polr)", + "Maintainer": "Brian Ripley ", + "Repository": "CRAN", + "Date/Publication": "2025-02-28 17:44:52 UTC", + "Built": "R 4.5.1; aarch64-apple-darwin20; 2025-06-14 01:29:47 UTC; unix" + } + }, + "Matrix": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "Matrix", + "Version": "1.7-3", + "VersionNote": "do also bump src/version.h, inst/include/Matrix/version.h", + "Date": "2025-03-05", + "Priority": "recommended", + "Title": "Sparse and Dense Matrix Classes and Methods", + "Description": "A rich hierarchy of sparse and dense matrix classes,\n\tincluding general, symmetric, triangular, and diagonal matrices\n\twith numeric, logical, or pattern entries. Efficient methods for\n\toperating on such matrices, often wrapping the 'BLAS', 'LAPACK',\n\tand 'SuiteSparse' libraries.", + "License": "GPL (>= 2) | file LICENCE", + "URL": "https://Matrix.R-forge.R-project.org", + "BugReports": "https://R-forge.R-project.org/tracker/?atid=294&group_id=61", + "Contact": "Matrix-authors@R-project.org", + "Authors@R": "\n\tc(person(\"Douglas\", \"Bates\", role = \"aut\",\n\t comment = c(ORCID = \"0000-0001-8316-9503\")),\n\t person(\"Martin\", \"Maechler\", role = c(\"aut\", \"cre\"),\n\t email = \"mmaechler+Matrix@gmail.com\",\n\t comment = c(ORCID = \"0000-0002-8685-9910\")),\n\t person(\"Mikael\", \"Jagan\", role = \"aut\",\n\t comment = c(ORCID = \"0000-0002-3542-2938\")),\n\t person(\"Timothy A.\", \"Davis\", role = \"ctb\",\n\t comment = c(ORCID = \"0000-0001-7614-6899\",\n\t \"SuiteSparse libraries\",\n\t \"collaborators listed in dir(system.file(\\\"doc\\\", \\\"SuiteSparse\\\", package=\\\"Matrix\\\"), pattern=\\\"License\\\", full.names=TRUE, recursive=TRUE)\")),\n\t person(\"George\", \"Karypis\", role = \"ctb\",\n\t comment = c(ORCID = \"0000-0003-2753-1437\",\n\t \"METIS library\",\n\t \"Copyright: Regents of the University of Minnesota\")),\n\t person(\"Jason\", \"Riedy\", role = \"ctb\",\n\t comment = c(ORCID = \"0000-0002-4345-4200\",\n\t \"GNU Octave's condest() and onenormest()\",\n\t \"Copyright: Regents of the University of California\")),\n\t person(\"Jens\", \"Oehlschlägel\", role = \"ctb\",\n\t comment = \"initial nearPD()\"),\n\t person(\"R Core Team\", role = \"ctb\",\n\t comment = c(ROR = \"02zz1nj61\", \"base R's matrix implementation\")))", + "Depends": "R (>= 4.4), methods", + "Imports": "grDevices, graphics, grid, lattice, stats, utils", + "Suggests": "MASS, datasets, sfsmisc, tools", + "Enhances": "SparseM, graph", + "LazyData": "no", + "LazyDataNote": "not possible, since we use data/*.R and our S4 classes", + "BuildResaveData": "no", + "Encoding": "UTF-8", + "NeedsCompilation": "yes", + "Packaged": "2025-03-05 09:59:22 UTC; maechler", + "Author": "Douglas Bates [aut] (),\n Martin Maechler [aut, cre] (),\n Mikael Jagan [aut] (),\n Timothy A. Davis [ctb] (,\n SuiteSparse libraries, collaborators listed in\n dir(system.file(\"doc\", \"SuiteSparse\", package=\"Matrix\"),\n pattern=\"License\", full.names=TRUE, recursive=TRUE)),\n George Karypis [ctb] (, METIS\n library, Copyright: Regents of the University of Minnesota),\n Jason Riedy [ctb] (, GNU\n Octave's condest() and onenormest(), Copyright: Regents of the\n University of California),\n Jens Oehlschlägel [ctb] (initial nearPD()),\n R Core Team [ctb] (02zz1nj61, base R's matrix implementation)", + "Maintainer": "Martin Maechler ", + "Repository": "CRAN", + "Date/Publication": "2025-03-11 07:20:02 UTC", + "Built": "R 4.5.1; aarch64-apple-darwin20; 2025-06-14 01:29:52 UTC; unix" + } + }, + "R.cache": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "R.cache", + "Version": "0.17.0", + "Depends": "R (>= 2.14.0)", + "Imports": "utils, R.methodsS3 (>= 1.8.1), R.oo (>= 1.24.0), R.utils (>=\n2.10.1), digest (>= 0.6.13)", + "Title": "Fast and Light-Weight Caching (Memoization) of Objects and\nResults to Speed Up Computations", + "Authors@R": "c(person(\"Henrik\", \"Bengtsson\", role=c(\"aut\", \"cre\", \"cph\"),\n email = \"henrikb@braju.com\"))", + "Author": "Henrik Bengtsson [aut, cre, cph]", + "Maintainer": "Henrik Bengtsson ", + "Description": "Memoization can be used to speed up repetitive and computational expensive function calls. The first time a function that implements memoization is called the results are stored in a cache memory. The next time the function is called with the same set of parameters, the results are momentarily retrieved from the cache avoiding repeating the calculations. With this package, any R object can be cached in a key-value storage where the key can be an arbitrary set of R objects. The cache memory is persistent (on the file system).", + "License": "LGPL (>= 2.1)", + "LazyLoad": "TRUE", + "URL": "https://github.com/HenrikBengtsson/R.cache", + "BugReports": "https://github.com/HenrikBengtsson/R.cache/issues", + "Encoding": "UTF-8", + "NeedsCompilation": "no", + "Packaged": "2025-05-02 21:22:23 UTC; henrik", + "Repository": "RSPM", + "Date/Publication": "2025-05-02 22:20:02 UTC", + "Built": "R 4.5.0; ; 2025-05-03 04:51:11 UTC; unix" + } + }, + "R.methodsS3": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "R.methodsS3", + "Version": "1.8.2", + "Depends": "R (>= 2.13.0)", + "Imports": "utils", + "Suggests": "codetools", + "Title": "S3 Methods Simplified", + "Authors@R": "c(person(\"Henrik\", \"Bengtsson\", role=c(\"aut\", \"cre\", \"cph\"),\n email = \"henrikb@braju.com\"))", + "Author": "Henrik Bengtsson [aut, cre, cph]", + "Maintainer": "Henrik Bengtsson ", + "Description": "Methods that simplify the setup of S3 generic functions and S3 methods. Major effort has been made in making definition of methods as simple as possible with a minimum of maintenance for package developers. For example, generic functions are created automatically, if missing, and naming conflict are automatically solved, if possible. The method setMethodS3() is a good start for those who in the future may want to migrate to S4. This is a cross-platform package implemented in pure R that generates standard S3 methods.", + "License": "LGPL (>= 2.1)", + "LazyLoad": "TRUE", + "URL": "https://github.com/HenrikBengtsson/R.methodsS3", + "BugReports": "https://github.com/HenrikBengtsson/R.methodsS3/issues", + "NeedsCompilation": "no", + "Packaged": "2022-06-13 18:23:35 UTC; hb", + "Repository": "RSPM", + "Date/Publication": "2022-06-13 22:00:14 UTC", + "Encoding": "UTF-8", + "Built": "R 4.5.0; ; 2025-04-06 04:41:17 UTC; unix" + } + }, + "R.oo": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "R.oo", + "Version": "1.27.1", + "Depends": "R (>= 2.13.0), R.methodsS3 (>= 1.8.2)", + "Imports": "methods, utils", + "Suggests": "tools", + "Title": "R Object-Oriented Programming with or without References", + "Authors@R": "c(person(\"Henrik\", \"Bengtsson\", role=c(\"aut\", \"cre\", \"cph\"),\n email = \"henrikb@braju.com\"))", + "Author": "Henrik Bengtsson [aut, cre, cph]", + "Maintainer": "Henrik Bengtsson ", + "Description": "Methods and classes for object-oriented programming in R with or without references. Large effort has been made on making definition of methods as simple as possible with a minimum of maintenance for package developers. The package has been developed since 2001 and is now considered very stable. This is a cross-platform package implemented in pure R that defines standard S3 classes without any tricks.", + "License": "LGPL (>= 2.1)", + "LazyLoad": "TRUE", + "URL": "https://henrikbengtsson.github.io/R.oo/,\nhttps://github.com/HenrikBengtsson/R.oo", + "BugReports": "https://github.com/HenrikBengtsson/R.oo/issues", + "NeedsCompilation": "no", + "Packaged": "2025-05-02 20:29:15 UTC; henrik", + "Repository": "RSPM", + "Date/Publication": "2025-05-02 21:00:05 UTC", + "Encoding": "UTF-8", + "Built": "R 4.5.0; ; 2025-05-03 04:50:56 UTC; unix" + } + }, + "R.utils": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "R.utils", + "Version": "2.13.0", + "Depends": "R (>= 2.14.0), R.oo", + "Imports": "methods, utils, tools, R.methodsS3", + "Suggests": "datasets, digest (>= 0.6.10)", + "Title": "Various Programming Utilities", + "Authors@R": "c(person(\"Henrik\", \"Bengtsson\", role=c(\"aut\", \"cre\", \"cph\"),\n email = \"henrikb@braju.com\"))", + "Author": "Henrik Bengtsson [aut, cre, cph]", + "Maintainer": "Henrik Bengtsson ", + "Description": "Utility functions useful when programming and developing R packages.", + "License": "LGPL (>= 2.1)", + "LazyLoad": "TRUE", + "URL": "https://henrikbengtsson.github.io/R.utils/,\nhttps://github.com/HenrikBengtsson/R.utils", + "BugReports": "https://github.com/HenrikBengtsson/R.utils/issues", + "NeedsCompilation": "no", + "Packaged": "2025-02-24 19:44:20 UTC; henrik", + "Repository": "RSPM", + "Date/Publication": "2025-02-24 21:20:02 UTC", + "Encoding": "UTF-8", + "Built": "R 4.5.0; ; 2025-04-06 04:41:47 UTC; unix" + } + }, + "R6": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "R6", + "Title": "Encapsulated Classes with Reference Semantics", + "Version": "2.6.1", + "Authors@R": "c(\n person(\"Winston\", \"Chang\", , \"winston@posit.co\", role = c(\"aut\", \"cre\")),\n person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\"))\n )", + "Description": "Creates classes with reference semantics, similar to R's\n built-in reference classes. Compared to reference classes, R6 classes\n are simpler and lighter-weight, and they are not built on S4 classes\n so they do not require the methods package. These classes allow public\n and private members, and they support inheritance, even when the\n classes are defined in different packages.", + "License": "MIT + file LICENSE", + "URL": "https://r6.r-lib.org, https://github.com/r-lib/R6", + "BugReports": "https://github.com/r-lib/R6/issues", + "Depends": "R (>= 3.6)", + "Suggests": "lobstr, testthat (>= 3.0.0)", + "Config/Needs/website": "tidyverse/tidytemplate, ggplot2, microbenchmark,\nscales", + "Config/testthat/edition": "3", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.2", + "NeedsCompilation": "no", + "Packaged": "2025-02-14 21:15:19 UTC; winston", + "Author": "Winston Chang [aut, cre],\n Posit Software, PBC [cph, fnd]", + "Maintainer": "Winston Chang ", + "Repository": "RSPM", + "Date/Publication": "2025-02-15 00:50:02 UTC", + "Built": "R 4.5.0; ; 2025-04-06 04:42:23 UTC; unix" + } + }, + "RColorBrewer": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "RColorBrewer", + "Version": "1.1-3", + "Date": "2022-04-03", + "Title": "ColorBrewer Palettes", + "Authors@R": "c(person(given = \"Erich\", family = \"Neuwirth\", role = c(\"aut\",\n \"cre\"), email = \"erich.neuwirth@univie.ac.at\"))", + "Author": "Erich Neuwirth [aut, cre]", + "Maintainer": "Erich Neuwirth ", + "Depends": "R (>= 2.0.0)", + "Description": "Provides color schemes for maps (and other graphics)\n designed by Cynthia Brewer as described at http://colorbrewer2.org.", + "License": "Apache License 2.0", + "Packaged": "2022-04-03 10:26:20 UTC; neuwirth", + "NeedsCompilation": "no", + "Repository": "RSPM", + "Date/Publication": "2022-04-03 19:20:13 UTC", + "Encoding": "UTF-8", + "Built": "R 4.5.0; ; 2025-04-06 04:42:04 UTC; unix" + } + }, + "Rcpp": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "Rcpp", + "Title": "Seamless R and C++ Integration", + "Version": "1.1.0", + "Date": "2025-07-01", + "Authors@R": "c(person(\"Dirk\", \"Eddelbuettel\", role = c(\"aut\", \"cre\"), email = \"edd@debian.org\",\n comment = c(ORCID = \"0000-0001-6419-907X\")),\n person(\"Romain\", \"Francois\", role = \"aut\",\n comment = c(ORCID = \"0000-0002-2444-4226\")),\n person(\"JJ\", \"Allaire\", role = \"aut\",\n comment = c(ORCID = \"0000-0003-0174-9868\")),\n person(\"Kevin\", \"Ushey\", role = \"aut\",\n comment = c(ORCID = \"0000-0003-2880-7407\")),\n person(\"Qiang\", \"Kou\", role = \"aut\",\n comment = c(ORCID = \"0000-0001-6786-5453\")),\n person(\"Nathan\", \"Russell\", role = \"aut\"),\n person(\"Iñaki\", \"Ucar\", role = \"aut\",\n comment = c(ORCID = \"0000-0001-6403-5550\")),\n person(\"Doug\", \"Bates\", role = \"aut\",\n comment = c(ORCID = \"0000-0001-8316-9503\")),\n person(\"John\", \"Chambers\", role = \"aut\"))", + "Description": "The 'Rcpp' package provides R functions as well as C++ classes which\n offer a seamless integration of R and C++. Many R data types and objects can be\n mapped back and forth to C++ equivalents which facilitates both writing of new\n code as well as easier integration of third-party libraries. Documentation\n about 'Rcpp' is provided by several vignettes included in this package, via the\n 'Rcpp Gallery' site at , the paper by Eddelbuettel and\n Francois (2011, ), the book by Eddelbuettel (2013,\n ) and the paper by Eddelbuettel and Balamuta (2018,\n ); see 'citation(\"Rcpp\")' for details.", + "Imports": "methods, utils", + "Suggests": "tinytest, inline, rbenchmark, pkgKitten (>= 0.1.2)", + "URL": "https://www.rcpp.org,\nhttps://dirk.eddelbuettel.com/code/rcpp.html,\nhttps://github.com/RcppCore/Rcpp", + "License": "GPL (>= 2)", + "BugReports": "https://github.com/RcppCore/Rcpp/issues", + "MailingList": "rcpp-devel@lists.r-forge.r-project.org", + "RoxygenNote": "6.1.1", + "Encoding": "UTF-8", + "NeedsCompilation": "yes", + "Packaged": "2025-07-01 12:58:41 UTC; edd", + "Author": "Dirk Eddelbuettel [aut, cre] (ORCID:\n ),\n Romain Francois [aut] (ORCID: ),\n JJ Allaire [aut] (ORCID: ),\n Kevin Ushey [aut] (ORCID: ),\n Qiang Kou [aut] (ORCID: ),\n Nathan Russell [aut],\n Iñaki Ucar [aut] (ORCID: ),\n Doug Bates [aut] (ORCID: ),\n John Chambers [aut]", + "Maintainer": "Dirk Eddelbuettel ", + "Repository": "RSPM", + "Date/Publication": "2025-07-02 16:40:02 UTC", + "Built": "R 4.5.0; x86_64-pc-linux-gnu; 2025-07-03 13:34:43 UTC; unix" + } + }, + "RcppArmadillo": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "RcppArmadillo", + "Type": "Package", + "Title": "'Rcpp' Integration for the 'Armadillo' Templated Linear Algebra\nLibrary", + "Version": "14.6.0-1", + "Date": "2025-07-02", + "Authors@R": "c(person(\"Dirk\", \"Eddelbuettel\", role = c(\"aut\", \"cre\"), email = \"edd@debian.org\",\n comment = c(ORCID = \"0000-0001-6419-907X\")),\n person(\"Romain\", \"Francois\", role = \"aut\",\n comment = c(ORCID = \"0000-0002-2444-4226\")),\n person(\"Doug\", \"Bates\", role = \"aut\",\n comment = c(ORCID = \"0000-0001-8316-9503\")),\n person(\"Binxiang\", \"Ni\", role = \"aut\"),\n person(\"Conrad\", \"Sanderson\", role = \"aut\",\n comment = c(ORCID = \"0000-0002-0049-4501\")))", + "Description": "'Armadillo' is a templated C++ linear algebra library (by Conrad\n Sanderson) that aims towards a good balance between speed and ease of\n use. Integer, floating point and complex numbers are supported, as\n well as a subset of trigonometric and statistics functions. Various\n matrix decompositions are provided through optional integration with\n LAPACK and ATLAS libraries. The 'RcppArmadillo' package includes the\n header files from the templated 'Armadillo' library. Thus users do\n not need to install 'Armadillo' itself in order to use\n 'RcppArmadillo'. From release 7.800.0 on, 'Armadillo' is licensed\n under Apache License 2; previous releases were under licensed as MPL\n 2.0 from version 3.800.0 onwards and LGPL-3 prior to that;\n 'RcppArmadillo' (the 'Rcpp' bindings/bridge to Armadillo) is licensed\n under the GNU GPL version 2 or later, as is the rest of 'Rcpp'.", + "License": "GPL (>= 2)", + "LazyLoad": "yes", + "Depends": "R (>= 3.3.0)", + "LinkingTo": "Rcpp", + "Imports": "Rcpp (>= 1.0.12), stats, utils, methods", + "Suggests": "tinytest, Matrix (>= 1.3.0), pkgKitten, reticulate, slam", + "URL": "https://github.com/RcppCore/RcppArmadillo,\nhttps://dirk.eddelbuettel.com/code/rcpp.armadillo.html", + "BugReports": "https://github.com/RcppCore/RcppArmadillo/issues", + "RoxygenNote": "6.0.1", + "NeedsCompilation": "yes", + "Packaged": "2025-07-02 13:16:08 UTC; edd", + "Author": "Dirk Eddelbuettel [aut, cre] (ORCID:\n ),\n Romain Francois [aut] (ORCID: ),\n Doug Bates [aut] (ORCID: ),\n Binxiang Ni [aut],\n Conrad Sanderson [aut] (ORCID: )", + "Maintainer": "Dirk Eddelbuettel ", + "Repository": "RSPM", + "Date/Publication": "2025-07-02 20:10:06 UTC", + "Encoding": "UTF-8", + "Built": "R 4.5.0; x86_64-pc-linux-gnu; 2025-07-03 13:49:25 UTC; unix" + } + }, + "RcppRoll": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "RcppRoll", + "Type": "Package", + "Title": "Efficient Rolling / Windowed Operations", + "Version": "0.3.1", + "Author": "Kevin Ushey", + "Maintainer": "Kevin Ushey ", + "Description": "Provides fast and efficient routines for\n common rolling / windowed operations. Routines for the\n efficient computation of windowed mean, median,\n sum, product, minimum, maximum, standard deviation\n and variance are provided.", + "License": "GPL (>= 2)", + "Depends": "R (>= 2.15.1)", + "Suggests": "zoo, testthat", + "Imports": "Rcpp", + "LinkingTo": "Rcpp", + "RoxygenNote": "6.0.1", + "NeedsCompilation": "yes", + "Packaged": "2024-07-07 10:09:06 UTC; kevin", + "Repository": "RSPM", + "Date/Publication": "2024-07-07 11:10:02 UTC", + "Encoding": "UTF-8", + "Built": "R 4.5.0; x86_64-pc-linux-gnu; 2025-07-03 13:55:20 UTC; unix" + } + }, + "SQUAREM": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "SQUAREM", + "Version": "2021.1", + "Date": "2021-01-12", + "Title": "Squared Extrapolation Methods for Accelerating EM-Like Monotone\nAlgorithms", + "Description": "Algorithms for accelerating the convergence of slow,\n monotone sequences from smooth, contraction mapping such as the\n EM algorithm. It can be used to accelerate any smooth, linearly\n convergent acceleration scheme. A tutorial style introduction\n to this package is available in a vignette on the CRAN download\n page or, when the package is loaded in an R session, with\n vignette(\"SQUAREM\"). Refer to the J Stat Software article: . ", + "Depends": "R (>= 3.0)", + "Suggests": "setRNG", + "LazyLoad": "yes", + "License": "GPL (>= 2)", + "Author": "Ravi Varadhan", + "Maintainer": "Ravi Varadhan ", + "URL": "https://coah.jhu.edu/people/Faculty_personal_Pages/Varadhan.html", + "Repository": "RSPM", + "NeedsCompilation": "no", + "Packaged": "2021-01-12 23:59:02 UTC; rvaradhan", + "Date/Publication": "2021-01-13 06:40:10 UTC", + "Encoding": "UTF-8", + "Built": "R 4.5.0; ; 2025-04-08 03:10:55 UTC; unix" + } + }, + "TTR": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "TTR", + "Type": "Package", + "Title": "Technical Trading Rules", + "Version": "0.24.4", + "Authors@R": "c(\n person(given=\"Joshua\", family=\"Ulrich\", role=c(\"cre\",\"aut\"), email=\"josh.m.ulrich@gmail.com\"),\n person(given=c(\"Ethan\",\"B.\"), family=\"Smith\", role=\"ctb\")\n )", + "Imports": "xts (>= 0.10-0), zoo, curl", + "LinkingTo": "xts", + "Enhances": "quantmod", + "Suggests": "RUnit", + "Description": "A collection of over 50 technical indicators for creating technical trading rules. The package also provides fast implementations of common rolling-window functions, and several volatility calculations.", + "License": "GPL (>= 2)", + "URL": "https://github.com/joshuaulrich/TTR", + "BugReports": "https://github.com/joshuaulrich/TTR/issues", + "NeedsCompilation": "yes", + "Packaged": "2023-11-28 00:12:35 UTC; josh", + "Author": "Joshua Ulrich [cre, aut],\n Ethan B. Smith [ctb]", + "Maintainer": "Joshua Ulrich ", + "Repository": "RSPM", + "Date/Publication": "2023-11-28 05:20:21 UTC", + "Encoding": "UTF-8", + "Built": "R 4.5.0; x86_64-pc-linux-gnu; 2025-04-11 19:14:37 UTC; unix" + } + }, + "anytime": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "anytime", + "Type": "Package", + "Title": "Anything to 'POSIXct' or 'Date' Converter", + "Version": "0.3.12", + "Date": "2025-07-14", + "Authors@R": "person(\"Dirk\", \"Eddelbuettel\", role = c(\"aut\", \"cre\"), email = \"edd@debian.org\",\n comment = c(ORCID = \"0000-0001-6419-907X\"))", + "Description": "Convert input in any one of character, integer, numeric, factor,\n or ordered type into 'POSIXct' (or 'Date') objects, using one of a number of\n predefined formats, and relying on Boost facilities for date and time parsing.", + "URL": "https://github.com/eddelbuettel/anytime,\nhttps://dirk.eddelbuettel.com/code/anytime.html", + "BugReports": "https://github.com/eddelbuettel/anytime/issues", + "License": "GPL (>= 2)", + "Encoding": "UTF-8", + "Depends": "R (>= 3.2.0)", + "Imports": "Rcpp (>= 1.0.8)", + "LinkingTo": "Rcpp (>= 1.0.8), BH", + "Suggests": "tinytest (>= 1.0.0), gettz", + "RoxygenNote": "6.0.1", + "NeedsCompilation": "yes", + "Packaged": "2025-07-14 13:24:21 UTC; edd", + "Author": "Dirk Eddelbuettel [aut, cre] (ORCID:\n )", + "Maintainer": "Dirk Eddelbuettel ", + "Repository": "RSPM", + "Date/Publication": "2025-07-14 14:00:02 UTC", + "Built": "R 4.5.0; x86_64-pc-linux-gnu; 2025-07-15 04:44:26 UTC; unix" + } + }, + "askpass": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "askpass", + "Type": "Package", + "Title": "Password Entry Utilities for R, Git, and SSH", + "Version": "1.2.1", + "Authors@R": "person(\"Jeroen\", \"Ooms\", role = c(\"aut\", \"cre\"), \n email = \"jeroenooms@gmail.com\", comment = c(ORCID = \"0000-0002-4035-0289\"))", + "Description": "Cross-platform utilities for prompting the user for credentials or a \n passphrase, for example to authenticate with a server or read a protected key.\n Includes native programs for MacOS and Windows, hence no 'tcltk' is required. \n Password entry can be invoked in two different ways: directly from R via the \n askpass() function, or indirectly as password-entry back-end for 'ssh-agent' \n or 'git-credential' via the SSH_ASKPASS and GIT_ASKPASS environment variables.\n Thereby the user can be prompted for credentials or a passphrase if needed \n when R calls out to git or ssh.", + "License": "MIT + file LICENSE", + "URL": "https://r-lib.r-universe.dev/askpass", + "BugReports": "https://github.com/r-lib/askpass/issues", + "Encoding": "UTF-8", + "Imports": "sys (>= 2.1)", + "RoxygenNote": "7.2.3", + "Suggests": "testthat", + "Language": "en-US", + "NeedsCompilation": "yes", + "Packaged": "2024-10-03 14:12:09 UTC; jeroen", + "Author": "Jeroen Ooms [aut, cre] ()", + "Maintainer": "Jeroen Ooms ", + "Repository": "RSPM", + "Date/Publication": "2024-10-04 07:20:03 UTC", + "Built": "R 4.5.0; x86_64-pc-linux-gnu; 2025-04-06 04:42:08 UTC; unix" + } + }, + "backports": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "backports", + "Type": "Package", + "Title": "Reimplementations of Functions Introduced Since R-3.0.0", + "Version": "1.5.0", + "Authors@R": "c(\n person(\"Michel\", \"Lang\", NULL, \"michellang@gmail.com\",\n role = c(\"cre\", \"aut\"), comment = c(ORCID = \"0000-0001-9754-0393\")),\n person(\"Duncan\", \"Murdoch\", NULL, \"murdoch.duncan@gmail.com\",\n role = c(\"aut\")),\n person(\"R Core Team\", role = \"aut\"))", + "Maintainer": "Michel Lang ", + "Description": "\n Functions introduced or changed since R v3.0.0 are re-implemented in this\n package. The backports are conditionally exported in order to let R resolve\n the function name to either the implemented backport, or the respective base\n version, if available. Package developers can make use of new functions or\n arguments by selectively importing specific backports to\n support older installations.", + "URL": "https://github.com/r-lib/backports", + "BugReports": "https://github.com/r-lib/backports/issues", + "License": "GPL-2 | GPL-3", + "NeedsCompilation": "yes", + "ByteCompile": "yes", + "Depends": "R (>= 3.0.0)", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.1", + "Packaged": "2024-05-23 11:56:25 UTC; michel", + "Author": "Michel Lang [cre, aut] (),\n Duncan Murdoch [aut],\n R Core Team [aut]", + "Repository": "RSPM", + "Date/Publication": "2024-05-23 12:30:02 UTC", + "Built": "R 4.5.0; x86_64-pc-linux-gnu; 2025-04-06 04:41:14 UTC; unix" + } + }, + "base64enc": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "base64enc", + "Version": "0.1-3", + "Title": "Tools for base64 encoding", + "Author": "Simon Urbanek ", + "Maintainer": "Simon Urbanek ", + "Depends": "R (>= 2.9.0)", + "Enhances": "png", + "Description": "This package provides tools for handling base64 encoding. It is more flexible than the orphaned base64 package.", + "License": "GPL-2 | GPL-3", + "URL": "http://www.rforge.net/base64enc", + "NeedsCompilation": "yes", + "Packaged": "2015-02-04 20:31:00 UTC; svnuser", + "Repository": "RSPM", + "Date/Publication": "2015-07-28 08:03:37", + "Encoding": "UTF-8", + "Built": "R 4.5.0; x86_64-pc-linux-gnu; 2025-04-06 04:42:03 UTC; unix" + } + }, + "bit": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "bit", + "Title": "Classes and Methods for Fast Memory-Efficient Boolean Selections", + "Version": "4.6.0", + "Authors@R": "c(\n person(\"Michael\", \"Chirico\", email = \"MichaelChirico4@gmail.com\", role = c(\"aut\", \"cre\")),\n person(\"Jens\", \"Oehlschlägel\", role = \"aut\"),\n person(\"Brian\", \"Ripley\", role = \"ctb\")\n )", + "Depends": "R (>= 3.4.0)", + "Suggests": "testthat (>= 3.0.0), roxygen2, knitr, markdown, rmarkdown,\nmicrobenchmark, bit64 (>= 4.0.0), ff (>= 4.0.0)", + "Description": "Provided are classes for boolean and skewed boolean vectors,\n fast boolean methods, fast unique and non-unique integer sorting,\n fast set operations on sorted and unsorted sets of integers, and\n foundations for ff (range index, compression, chunked processing).", + "License": "GPL-2 | GPL-3", + "LazyLoad": "yes", + "ByteCompile": "yes", + "Encoding": "UTF-8", + "URL": "https://github.com/r-lib/bit", + "VignetteBuilder": "knitr, rmarkdown", + "RoxygenNote": "7.3.2", + "Config/testthat/edition": "3", + "NeedsCompilation": "yes", + "Packaged": "2025-03-05 07:18:45 UTC; michael", + "Author": "Michael Chirico [aut, cre],\n Jens Oehlschlägel [aut],\n Brian Ripley [ctb]", + "Maintainer": "Michael Chirico ", + "Repository": "RSPM", + "Date/Publication": "2025-03-06 10:50:01 UTC", + "Built": "R 4.5.0; x86_64-pc-linux-gnu; 2025-04-06 04:41:15 UTC; unix" + } + }, + "bit64": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "bit64", + "Title": "A S3 Class for Vectors of 64bit Integers", + "Version": "4.6.0-1", + "Authors@R": "c(\n person(\"Michael\", \"Chirico\", email = \"michaelchirico4@gmail.com\", role = c(\"aut\", \"cre\")),\n person(\"Jens\", \"Oehlschlägel\", role = \"aut\"),\n person(\"Leonardo\", \"Silvestri\", role = \"ctb\"),\n person(\"Ofek\", \"Shilon\", role = \"ctb\")\n )", + "Depends": "R (>= 3.4.0), bit (>= 4.0.0)", + "Description": "\n Package 'bit64' provides serializable S3 atomic 64bit (signed) integers.\n These are useful for handling database keys and exact counting in +-2^63.\n WARNING: do not use them as replacement for 32bit integers, integer64 are not\n supported for subscripting by R-core and they have different semantics when\n combined with double, e.g. integer64 + double => integer64.\n Class integer64 can be used in vectors, matrices, arrays and data.frames.\n Methods are available for coercion from and to logicals, integers, doubles,\n characters and factors as well as many elementwise and summary functions.\n Many fast algorithmic operations such as 'match' and 'order' support inter-\n active data exploration and manipulation and optionally leverage caching.", + "License": "GPL-2 | GPL-3", + "LazyLoad": "yes", + "ByteCompile": "yes", + "URL": "https://github.com/r-lib/bit64", + "Encoding": "UTF-8", + "Imports": "graphics, methods, stats, utils", + "Suggests": "testthat (>= 3.0.3), withr", + "Config/testthat/edition": "3", + "Config/needs/development": "testthat", + "RoxygenNote": "7.3.2", + "NeedsCompilation": "yes", + "Packaged": "2025-01-16 14:04:20 UTC; michael", + "Author": "Michael Chirico [aut, cre],\n Jens Oehlschlägel [aut],\n Leonardo Silvestri [ctb],\n Ofek Shilon [ctb]", + "Maintainer": "Michael Chirico ", + "Repository": "RSPM", + "Date/Publication": "2025-01-16 16:00:07 UTC", + "Built": "R 4.5.0; x86_64-pc-linux-gnu; 2025-04-06 04:41:33 UTC; unix" + } + }, + "box": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "box", + "Title": "Write Reusable, Composable and Modular R Code", + "Version": "1.2.0", + "Authors@R": "c(\n person(\n 'Konrad', 'Rudolph',\n email = 'konrad.rudolph@gmail.com',\n role = c('aut', 'cre'),\n comment = c(ORCID = '0000-0002-9866-7051')\n ),\n person(\n 'Michael', 'Schubert',\n email = 'mschu.dev@gmail.com',\n role = 'ctb',\n comment = c(ORCID = '0000-0002-6862-5221')\n )\n )", + "URL": "https://klmr.me/box/, https://github.com/klmr/box", + "BugReports": "https://github.com/klmr/box/issues", + "Description": "A modern module system for R. Organise code into hierarchical,\n composable, reusable modules, and use it effortlessly across projects via a\n flexible, declarative dependency loading syntax.", + "Depends": "R (>= 3.6.0)", + "Imports": "tools", + "License": "MIT + file LICENSE", + "Encoding": "UTF-8", + "Suggests": "devtools, knitr (>= 1.40), rmarkdown, R6, rlang, roxygen2 (>=\n7.2.1), shiny, stringr, testthat (>= 3.1.7)", + "Enhances": "rstudioapi", + "VignetteBuilder": "knitr", + "RoxygenNote": "7.3.1", + "NeedsCompilation": "yes", + "Packaged": "2024-02-06 23:06:27 UTC; rudolpk2", + "Author": "Konrad Rudolph [aut, cre] (),\n Michael Schubert [ctb] ()", + "Maintainer": "Konrad Rudolph ", + "Repository": "RSPM", + "Date/Publication": "2024-02-06 23:50:02 UTC", + "Built": "R 4.5.0; x86_64-pc-linux-gnu; 2025-04-09 05:57:23 UTC; unix" + } + }, + "box.linters": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "box.linters", + "Title": "Linters for 'box' Modules", + "Version": "0.10.6", + "Authors@R": "\n c(\n person(\"Ricardo Rodrigo\", \"Basa\", role = c(\"aut\", \"cre\"), email = \"opensource+rodrigo@appsilon.com\"),\n person(\"Jakub\", \"Nowicki\", role = \"aut\", email = \"kuba@appsilon.com\"),\n person(\"Mateusz\", \"Kołomański\", role = \"ctb\", email = \"mateusz.kolomanski@appsilon.com\"),\n person(\"Guilherme\", \"Vituri\", role = \"ctb\", email = \"vituri@appsilon.com\"),\n person(\"Appsilon Sp. z o.o.\", role = \"cph\", email = \"opensource@appsilon.com\")\n )", + "Description": "Static code analysis of 'box' modules.\n The package enhances code quality by providing linters that check for common issues,\n enforce best practices, and ensure consistent coding standards.", + "URL": "https://appsilon.github.io/box.linters/,\nhttps://github.com/Appsilon/box.linters", + "License": "LGPL-3", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.2", + "Depends": "R (>= 2.10)", + "Imports": "cli, fs, glue, lintr (>= 3.1.0), purrr, rlang, stringr, withr,\nxfun, xml2, xmlparsedata", + "Suggests": "box, covr, dplyr, knitr, prettycode, rcmdcheck, rmarkdown,\nR6, rex, rhino, shiny, spelling, testthat (>= 3.0.0),\ntreesitter, treesitter.r (>= 1.1.0)", + "Config/testthat/edition": "3", + "Config/testthat/parallel": "true", + "Language": "en-US", + "NeedsCompilation": "no", + "Packaged": "2025-06-26 08:45:17 UTC; rstudio", + "Author": "Ricardo Rodrigo Basa [aut, cre],\n Jakub Nowicki [aut],\n Mateusz Kołomański [ctb],\n Guilherme Vituri [ctb],\n Appsilon Sp. z o.o. [cph]", + "Maintainer": "Ricardo Rodrigo Basa ", + "Repository": "RSPM", + "Date/Publication": "2025-06-26 09:00:02 UTC", + "Built": "R 4.5.0; ; 2025-06-27 04:40:16 UTC; unix" + } + }, + "box.lsp": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "box.lsp", + "Title": "Provides 'box' Compatibility for 'languageserver'", + "Version": "0.1.3", + "Authors@R": "\n c(\n person(\"Ricardo Rodrigo\", \"Basa\", role = c(\"aut\", \"cre\"), email = \"opensource+rodrigo@appsilon.com\"),\n person(\"Pavel\", \"Demin\", role = \"aut\", email = \"pavel.demin@appsilon.com\"),\n person(\"Jakub\", \"Nowicki\", role = \"aut\", email = \"kuba@appsilon.com\"),\n person(\"Appsilon Sp. z o.o.\", role = \"cph\", email = \"opensource@appsilon.com\")\n )", + "Description": "A 'box' compatible custom language parser for the 'languageserver' package to provide\n completion and signature hints in code editors.", + "URL": "https://github.com/Appsilon/box.lsp,\nhttps://appsilon.github.io/box.lsp/", + "BugReports": "https://github.com/Appsilon/box.lsp/issues", + "License": "LGPL-3", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.2", + "Imports": "box, cli, fs, rlang", + "Suggests": "languageserver, lintr, magrittr, mockery, purrr, rprojroot,\nstringi, stringr, testthat (>= 3.0.0), withr", + "Config/testthat/edition": "3", + "NeedsCompilation": "no", + "Packaged": "2024-09-19 07:33:10 UTC; kuba", + "Author": "Ricardo Rodrigo Basa [aut, cre],\n Pavel Demin [aut],\n Jakub Nowicki [aut],\n Appsilon Sp. z o.o. [cph]", + "Maintainer": "Ricardo Rodrigo Basa ", + "Repository": "RSPM", + "Date/Publication": "2024-09-19 14:20:02 UTC", + "Built": "R 4.5.0; ; 2025-04-09 06:14:41 UTC; unix" + } + }, + "brio": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "brio", + "Title": "Basic R Input Output", + "Version": "1.1.5", + "Authors@R": "c(\n person(\"Jim\", \"Hester\", role = \"aut\",\n comment = c(ORCID = \"0000-0002-2739-7082\")),\n person(\"Gábor\", \"Csárdi\", , \"csardi.gabor@gmail.com\", role = c(\"aut\", \"cre\")),\n person(given = \"Posit Software, PBC\", role = c(\"cph\", \"fnd\"))\n )", + "Description": "Functions to handle basic input output, these functions\n always read and write UTF-8 (8-bit Unicode Transformation Format)\n files and provide more explicit control over line endings.", + "License": "MIT + file LICENSE", + "URL": "https://brio.r-lib.org, https://github.com/r-lib/brio", + "BugReports": "https://github.com/r-lib/brio/issues", + "Depends": "R (>= 3.6)", + "Suggests": "covr, testthat (>= 3.0.0)", + "Config/Needs/website": "tidyverse/tidytemplate", + "Config/testthat/edition": "3", + "Encoding": "UTF-8", + "RoxygenNote": "7.2.3", + "NeedsCompilation": "yes", + "Packaged": "2024-04-24 18:51:29 UTC; gaborcsardi", + "Author": "Jim Hester [aut] (),\n Gábor Csárdi [aut, cre],\n Posit Software, PBC [cph, fnd]", + "Maintainer": "Gábor Csárdi ", + "Repository": "RSPM", + "Date/Publication": "2024-04-24 19:20:07 UTC", + "Built": "R 4.5.0; x86_64-pc-linux-gnu; 2025-04-06 04:42:37 UTC; unix" + } + }, + "broom": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Type": "Package", + "Package": "broom", + "Title": "Convert Statistical Objects into Tidy Tibbles", + "Version": "1.0.9", + "Authors@R": "c(\n person(\"David\", \"Robinson\", , \"admiral.david@gmail.com\", role = \"aut\"),\n person(\"Alex\", \"Hayes\", , \"alexpghayes@gmail.com\", role = \"aut\",\n comment = c(ORCID = \"0000-0002-4985-5160\")),\n person(\"Simon\", \"Couch\", , \"simon.couch@posit.co\", role = c(\"aut\", \"cre\"),\n comment = c(ORCID = \"0000-0001-5676-5107\")),\n person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\"),\n comment = c(ROR = \"03wc8by49\")),\n person(\"Indrajeet\", \"Patil\", , \"patilindrajeet.science@gmail.com\", role = \"ctb\",\n comment = c(ORCID = \"0000-0003-1995-6531\")),\n person(\"Derek\", \"Chiu\", , \"dchiu@bccrc.ca\", role = \"ctb\"),\n person(\"Matthieu\", \"Gomez\", , \"mattg@princeton.edu\", role = \"ctb\"),\n person(\"Boris\", \"Demeshev\", , \"boris.demeshev@gmail.com\", role = \"ctb\"),\n person(\"Dieter\", \"Menne\", , \"dieter.menne@menne-biomed.de\", role = \"ctb\"),\n person(\"Benjamin\", \"Nutter\", , \"nutter@battelle.org\", role = \"ctb\"),\n person(\"Luke\", \"Johnston\", , \"luke.johnston@mail.utoronto.ca\", role = \"ctb\"),\n person(\"Ben\", \"Bolker\", , \"bolker@mcmaster.ca\", role = \"ctb\"),\n person(\"Francois\", \"Briatte\", , \"f.briatte@gmail.com\", role = \"ctb\"),\n person(\"Jeffrey\", \"Arnold\", , \"jeffrey.arnold@gmail.com\", role = \"ctb\"),\n person(\"Jonah\", \"Gabry\", , \"jsg2201@columbia.edu\", role = \"ctb\"),\n person(\"Luciano\", \"Selzer\", , \"luciano.selzer@gmail.com\", role = \"ctb\"),\n person(\"Gavin\", \"Simpson\", , \"ucfagls@gmail.com\", role = \"ctb\"),\n person(\"Jens\", \"Preussner\", , \"jens.preussner@mpi-bn.mpg.de\", role = \"ctb\"),\n person(\"Jay\", \"Hesselberth\", , \"jay.hesselberth@gmail.com\", role = \"ctb\"),\n person(\"Hadley\", \"Wickham\", , \"hadley@posit.co\", role = \"ctb\"),\n person(\"Matthew\", \"Lincoln\", , \"matthew.d.lincoln@gmail.com\", role = \"ctb\"),\n person(\"Alessandro\", \"Gasparini\", , \"ag475@leicester.ac.uk\", role = \"ctb\"),\n person(\"Lukasz\", \"Komsta\", , \"lukasz.komsta@umlub.pl\", role = \"ctb\"),\n person(\"Frederick\", \"Novometsky\", role = \"ctb\"),\n person(\"Wilson\", \"Freitas\", role = \"ctb\"),\n person(\"Michelle\", \"Evans\", role = \"ctb\"),\n person(\"Jason Cory\", \"Brunson\", , \"cornelioid@gmail.com\", role = \"ctb\"),\n person(\"Simon\", \"Jackson\", , \"drsimonjackson@gmail.com\", role = \"ctb\"),\n person(\"Ben\", \"Whalley\", , \"ben.whalley@plymouth.ac.uk\", role = \"ctb\"),\n person(\"Karissa\", \"Whiting\", , \"karissa.whiting@gmail.com\", role = \"ctb\"),\n person(\"Yves\", \"Rosseel\", , \"yrosseel@gmail.com\", role = \"ctb\"),\n person(\"Michael\", \"Kuehn\", , \"mkuehn10@gmail.com\", role = \"ctb\"),\n person(\"Jorge\", \"Cimentada\", , \"cimentadaj@gmail.com\", role = \"ctb\"),\n person(\"Erle\", \"Holgersen\", , \"erle.holgersen@gmail.com\", role = \"ctb\"),\n person(\"Karl\", \"Dunkle Werner\", role = \"ctb\",\n comment = c(ORCID = \"0000-0003-0523-7309\")),\n person(\"Ethan\", \"Christensen\", , \"christensen.ej@gmail.com\", role = \"ctb\"),\n person(\"Steven\", \"Pav\", , \"shabbychef@gmail.com\", role = \"ctb\"),\n person(\"Paul\", \"PJ\", , \"pjpaul.stephens@gmail.com\", role = \"ctb\"),\n person(\"Ben\", \"Schneider\", , \"benjamin.julius.schneider@gmail.com\", role = \"ctb\"),\n person(\"Patrick\", \"Kennedy\", , \"pkqstr@protonmail.com\", role = \"ctb\"),\n person(\"Lily\", \"Medina\", , \"lilymiru@gmail.com\", role = \"ctb\"),\n person(\"Brian\", \"Fannin\", , \"captain@pirategrunt.com\", role = \"ctb\"),\n person(\"Jason\", \"Muhlenkamp\", , \"jason.muhlenkamp@gmail.com\", role = \"ctb\"),\n person(\"Matt\", \"Lehman\", role = \"ctb\"),\n person(\"Bill\", \"Denney\", , \"wdenney@humanpredictions.com\", role = \"ctb\",\n comment = c(ORCID = \"0000-0002-5759-428X\")),\n person(\"Nic\", \"Crane\", role = \"ctb\"),\n person(\"Andrew\", \"Bates\", role = \"ctb\"),\n person(\"Vincent\", \"Arel-Bundock\", , \"vincent.arel-bundock@umontreal.ca\", role = \"ctb\",\n comment = c(ORCID = \"0000-0003-2042-7063\")),\n person(\"Hideaki\", \"Hayashi\", role = \"ctb\"),\n person(\"Luis\", \"Tobalina\", role = \"ctb\"),\n person(\"Annie\", \"Wang\", , \"anniewang.uc@gmail.com\", role = \"ctb\"),\n person(\"Wei Yang\", \"Tham\", , \"weiyang.tham@gmail.com\", role = \"ctb\"),\n person(\"Clara\", \"Wang\", , \"clara.wang.94@gmail.com\", role = \"ctb\"),\n person(\"Abby\", \"Smith\", , \"als1@u.northwestern.edu\", role = \"ctb\",\n comment = c(ORCID = \"0000-0002-3207-0375\")),\n person(\"Jasper\", \"Cooper\", , \"jaspercooper@gmail.com\", role = \"ctb\",\n comment = c(ORCID = \"0000-0002-8639-3188\")),\n person(\"E Auden\", \"Krauska\", , \"krauskae@gmail.com\", role = \"ctb\",\n comment = c(ORCID = \"0000-0002-1466-5850\")),\n person(\"Alex\", \"Wang\", , \"x249wang@uwaterloo.ca\", role = \"ctb\"),\n person(\"Malcolm\", \"Barrett\", , \"malcolmbarrett@gmail.com\", role = \"ctb\",\n comment = c(ORCID = \"0000-0003-0299-5825\")),\n person(\"Charles\", \"Gray\", , \"charlestigray@gmail.com\", role = \"ctb\",\n comment = c(ORCID = \"0000-0002-9978-011X\")),\n person(\"Jared\", \"Wilber\", role = \"ctb\"),\n person(\"Vilmantas\", \"Gegzna\", , \"GegznaV@gmail.com\", role = \"ctb\",\n comment = c(ORCID = \"0000-0002-9500-5167\")),\n person(\"Eduard\", \"Szoecs\", , \"eduardszoecs@gmail.com\", role = \"ctb\"),\n person(\"Frederik\", \"Aust\", , \"frederik.aust@uni-koeln.de\", role = \"ctb\",\n comment = c(ORCID = \"0000-0003-4900-788X\")),\n person(\"Angus\", \"Moore\", , \"angusmoore9@gmail.com\", role = \"ctb\"),\n person(\"Nick\", \"Williams\", , \"ntwilliams.personal@gmail.com\", role = \"ctb\"),\n person(\"Marius\", \"Barth\", , \"marius.barth.uni.koeln@gmail.com\", role = \"ctb\",\n comment = c(ORCID = \"0000-0002-3421-6665\")),\n person(\"Bruna\", \"Wundervald\", , \"brunadaviesw@gmail.com\", role = \"ctb\",\n comment = c(ORCID = \"0000-0001-8163-220X\")),\n person(\"Joyce\", \"Cahoon\", , \"joyceyu48@gmail.com\", role = \"ctb\",\n comment = c(ORCID = \"0000-0001-7217-4702\")),\n person(\"Grant\", \"McDermott\", , \"grantmcd@uoregon.edu\", role = \"ctb\",\n comment = c(ORCID = \"0000-0001-7883-8573\")),\n person(\"Kevin\", \"Zarca\", , \"kevin.zarca@gmail.com\", role = \"ctb\"),\n person(\"Shiro\", \"Kuriwaki\", , \"shirokuriwaki@gmail.com\", role = \"ctb\",\n comment = c(ORCID = \"0000-0002-5687-2647\")),\n person(\"Lukas\", \"Wallrich\", , \"lukas.wallrich@gmail.com\", role = \"ctb\",\n comment = c(ORCID = \"0000-0003-2121-5177\")),\n person(\"James\", \"Martherus\", , \"james@martherus.com\", role = \"ctb\",\n comment = c(ORCID = \"0000-0002-8285-3300\")),\n person(\"Chuliang\", \"Xiao\", , \"cxiao@umich.edu\", role = \"ctb\",\n comment = c(ORCID = \"0000-0002-8466-9398\")),\n person(\"Joseph\", \"Larmarange\", , \"joseph@larmarange.net\", role = \"ctb\"),\n person(\"Max\", \"Kuhn\", , \"max@posit.co\", role = \"ctb\"),\n person(\"Michal\", \"Bojanowski\", , \"michal2992@gmail.com\", role = \"ctb\"),\n person(\"Hakon\", \"Malmedal\", , \"hmalmedal@gmail.com\", role = \"ctb\"),\n person(\"Clara\", \"Wang\", role = \"ctb\"),\n person(\"Sergio\", \"Oller\", , \"sergioller@gmail.com\", role = \"ctb\"),\n person(\"Luke\", \"Sonnet\", , \"luke.sonnet@gmail.com\", role = \"ctb\"),\n person(\"Jim\", \"Hester\", , \"jim.hester@posit.co\", role = \"ctb\"),\n person(\"Ben\", \"Schneider\", , \"benjamin.julius.schneider@gmail.com\", role = \"ctb\"),\n person(\"Bernie\", \"Gray\", , \"bfgray3@gmail.com\", role = \"ctb\",\n comment = c(ORCID = \"0000-0001-9190-6032\")),\n person(\"Mara\", \"Averick\", , \"mara@posit.co\", role = \"ctb\"),\n person(\"Aaron\", \"Jacobs\", , \"atheriel@gmail.com\", role = \"ctb\"),\n person(\"Andreas\", \"Bender\", , \"bender.at.R@gmail.com\", role = \"ctb\"),\n person(\"Sven\", \"Templer\", , \"sven.templer@gmail.com\", role = \"ctb\"),\n person(\"Paul-Christian\", \"Buerkner\", , \"paul.buerkner@gmail.com\", role = \"ctb\"),\n person(\"Matthew\", \"Kay\", , \"mjskay@umich.edu\", role = \"ctb\"),\n person(\"Erwan\", \"Le Pennec\", , \"lepennec@gmail.com\", role = \"ctb\"),\n person(\"Johan\", \"Junkka\", , \"johan.junkka@umu.se\", role = \"ctb\"),\n person(\"Hao\", \"Zhu\", , \"haozhu233@gmail.com\", role = \"ctb\"),\n person(\"Benjamin\", \"Soltoff\", , \"soltoffbc@uchicago.edu\", role = \"ctb\"),\n person(\"Zoe\", \"Wilkinson Saldana\", , \"zoewsaldana@gmail.com\", role = \"ctb\"),\n person(\"Tyler\", \"Littlefield\", , \"tylurp1@gmail.com\", role = \"ctb\"),\n person(\"Charles T.\", \"Gray\", , \"charlestigray@gmail.com\", role = \"ctb\"),\n person(\"Shabbh E.\", \"Banks\", role = \"ctb\"),\n person(\"Serina\", \"Robinson\", , \"robi0916@umn.edu\", role = \"ctb\"),\n person(\"Roger\", \"Bivand\", , \"Roger.Bivand@nhh.no\", role = \"ctb\"),\n person(\"Riinu\", \"Ots\", , \"riinuots@gmail.com\", role = \"ctb\"),\n person(\"Nicholas\", \"Williams\", , \"ntwilliams.personal@gmail.com\", role = \"ctb\"),\n person(\"Nina\", \"Jakobsen\", role = \"ctb\"),\n person(\"Michael\", \"Weylandt\", , \"michael.weylandt@gmail.com\", role = \"ctb\"),\n person(\"Lisa\", \"Lendway\", , \"llendway@macalester.edu\", role = \"ctb\"),\n person(\"Karl\", \"Hailperin\", , \"khailper@gmail.com\", role = \"ctb\"),\n person(\"Josue\", \"Rodriguez\", , \"jerrodriguez@ucdavis.edu\", role = \"ctb\"),\n person(\"Jenny\", \"Bryan\", , \"jenny@posit.co\", role = \"ctb\"),\n person(\"Chris\", \"Jarvis\", , \"Christopher1.jarvis@gmail.com\", role = \"ctb\"),\n person(\"Greg\", \"Macfarlane\", , \"gregmacfarlane@gmail.com\", role = \"ctb\"),\n person(\"Brian\", \"Mannakee\", , \"bmannakee@gmail.com\", role = \"ctb\"),\n person(\"Drew\", \"Tyre\", , \"atyre2@unl.edu\", role = \"ctb\"),\n person(\"Shreyas\", \"Singh\", , \"shreyas.singh.298@gmail.com\", role = \"ctb\"),\n person(\"Laurens\", \"Geffert\", , \"laurensgeffert@gmail.com\", role = \"ctb\"),\n person(\"Hong\", \"Ooi\", , \"hongooi@microsoft.com\", role = \"ctb\"),\n person(\"Henrik\", \"Bengtsson\", , \"henrikb@braju.com\", role = \"ctb\"),\n person(\"Eduard\", \"Szocs\", , \"eduardszoecs@gmail.com\", role = \"ctb\"),\n person(\"David\", \"Hugh-Jones\", , \"davidhughjones@gmail.com\", role = \"ctb\"),\n person(\"Matthieu\", \"Stigler\", , \"Matthieu.Stigler@gmail.com\", role = \"ctb\"),\n person(\"Hugo\", \"Tavares\", , \"hm533@cam.ac.uk\", role = \"ctb\",\n comment = c(ORCID = \"0000-0001-9373-2726\")),\n person(\"R. Willem\", \"Vervoort\", , \"Willemvervoort@gmail.com\", role = \"ctb\"),\n person(\"Brenton M.\", \"Wiernik\", , \"brenton@wiernik.org\", role = \"ctb\"),\n person(\"Josh\", \"Yamamoto\", , \"joshuayamamoto5@gmail.com\", role = \"ctb\"),\n person(\"Jasme\", \"Lee\", role = \"ctb\"),\n person(\"Taren\", \"Sanders\", , \"taren.sanders@acu.edu.au\", role = \"ctb\",\n comment = c(ORCID = \"0000-0002-4504-6008\")),\n person(\"Ilaria\", \"Prosdocimi\", , \"prosdocimi.ilaria@gmail.com\", role = \"ctb\",\n comment = c(ORCID = \"0000-0001-8565-094X\")),\n person(\"Daniel D.\", \"Sjoberg\", , \"danield.sjoberg@gmail.com\", role = \"ctb\",\n comment = c(ORCID = \"0000-0003-0862-2018\")),\n person(\"Alex\", \"Reinhart\", , \"areinhar@stat.cmu.edu\", role = \"ctb\",\n comment = c(ORCID = \"0000-0002-6658-514X\"))\n )", + "Description": "Summarizes key information about statistical objects in tidy\n tibbles. This makes it easy to report results, create plots and\n consistently work with large numbers of models at once. Broom\n provides three verbs that each provide different types of information\n about a model. tidy() summarizes information about model components\n such as coefficients of a regression. glance() reports information\n about an entire model, such as goodness of fit measures like AIC and\n BIC. augment() adds information about individual observations to a\n dataset, such as fitted values or influence measures.", + "License": "MIT + file LICENSE", + "URL": "https://broom.tidymodels.org/, https://github.com/tidymodels/broom", + "BugReports": "https://github.com/tidymodels/broom/issues", + "Depends": "R (>= 4.1)", + "Imports": "backports, cli, dplyr (>= 1.0.0), generics (>= 0.0.2), glue,\nlifecycle, purrr, rlang (>= 1.1.0), stringr, tibble (>= 3.0.0),\ntidyr (>= 1.0.0)", + "Suggests": "AER, AUC, bbmle, betareg (>= 3.2-1), biglm, binGroup, boot,\nbtergm (>= 1.10.6), car (>= 3.1-2), carData, caret, cluster,\ncmprsk, coda, covr, drc, e1071, emmeans, epiR (>= 2.0.85), ergm\n(>= 3.10.4), fixest (>= 0.9.0), gam (>= 1.15), gee, geepack,\nggplot2, glmnet, glmnetUtils, gmm, Hmisc, interp, irlba,\njoineRML, Kendall, knitr, ks, Lahman, lavaan (>= 0.6.18),\nleaps, lfe, lm.beta, lme4, lmodel2, lmtest (>= 0.9.38),\nlsmeans, maps, margins, MASS, mclust, mediation, metafor, mfx,\nmgcv, mlogit, modeldata, modeltests (>= 0.1.6), muhaz,\nmultcomp, network, nnet, ordinal, plm, poLCA, psych, quantreg,\nrmarkdown, robust, robustbase, rsample, sandwich, spatialreg,\nspdep (>= 1.1), speedglm, spelling, survey, survival (>=\n3.6-4), systemfit, testthat (>= 3.0.0), tseries, vars, zoo", + "VignetteBuilder": "knitr", + "Config/Needs/website": "tidyverse/tidytemplate", + "Config/testthat/edition": "3", + "Config/usethis/last-upkeep": "2025-04-25", + "Encoding": "UTF-8", + "Language": "en-US", + "RoxygenNote": "7.3.2", + "Collate": "'aaa-documentation-helper.R' 'null-and-default.R' 'aer.R'\n'auc.R' 'base.R' 'bbmle.R' 'betareg.R' 'biglm.R' 'bingroup.R'\n'boot.R' 'broom-package.R' 'broom.R' 'btergm.R' 'car.R'\n'caret.R' 'cluster.R' 'cmprsk.R' 'data-frame.R'\n'deprecated-0-7-0.R' 'drc.R' 'emmeans.R' 'epiR.R' 'ergm.R'\n'fixest.R' 'gam.R' 'geepack.R' 'glmnet-cv-glmnet.R'\n'glmnet-glmnet.R' 'gmm.R' 'hmisc.R'\n'import-standalone-obj-type.R'\n'import-standalone-types-check.R' 'joinerml.R' 'kendall.R'\n'ks.R' 'lavaan.R' 'leaps.R' 'lfe.R' 'list-irlba.R'\n'list-optim.R' 'list-svd.R' 'list-xyz.R' 'list.R' 'lm-beta.R'\n'lmodel2.R' 'lmtest.R' 'maps.R' 'margins.R' 'mass-fitdistr.R'\n'mass-negbin.R' 'mass-polr.R' 'mass-ridgelm.R' 'stats-lm.R'\n'mass-rlm.R' 'mclust.R' 'mediation.R' 'metafor.R' 'mfx.R'\n'mgcv.R' 'mlogit.R' 'muhaz.R' 'multcomp.R' 'nnet.R' 'nobs.R'\n'ordinal-clm.R' 'ordinal-clmm.R' 'plm.R' 'polca.R' 'psych.R'\n'stats-nls.R' 'quantreg-nlrq.R' 'quantreg-rq.R'\n'quantreg-rqs.R' 'robust-glmrob.R' 'robust-lmrob.R'\n'robustbase-glmrob.R' 'robustbase-lmrob.R' 'sp.R' 'spdep.R'\n'speedglm-speedglm.R' 'speedglm-speedlm.R' 'stats-anova.R'\n'stats-arima.R' 'stats-decompose.R' 'stats-factanal.R'\n'stats-glm.R' 'stats-htest.R' 'stats-kmeans.R' 'stats-loess.R'\n'stats-mlm.R' 'stats-prcomp.R' 'stats-smooth.spline.R'\n'stats-summary-lm.R' 'stats-time-series.R' 'survey.R'\n'survival-aareg.R' 'survival-cch.R' 'survival-coxph.R'\n'survival-pyears.R' 'survival-survdiff.R' 'survival-survexp.R'\n'survival-survfit.R' 'survival-survreg.R' 'systemfit.R'\n'tseries.R' 'utilities.R' 'vars.R' 'zoo.R' 'zzz.R'", + "NeedsCompilation": "no", + "Packaged": "2025-07-28 13:51:56 UTC; simoncouch", + "Author": "David Robinson [aut],\n Alex Hayes [aut] (ORCID: ),\n Simon Couch [aut, cre] (ORCID: ),\n Posit Software, PBC [cph, fnd] (ROR: ),\n Indrajeet Patil [ctb] (ORCID: ),\n Derek Chiu [ctb],\n Matthieu Gomez [ctb],\n Boris Demeshev [ctb],\n Dieter Menne [ctb],\n Benjamin Nutter [ctb],\n Luke Johnston [ctb],\n Ben Bolker [ctb],\n Francois Briatte [ctb],\n Jeffrey Arnold [ctb],\n Jonah Gabry [ctb],\n Luciano Selzer [ctb],\n Gavin Simpson [ctb],\n Jens Preussner [ctb],\n Jay Hesselberth [ctb],\n Hadley Wickham [ctb],\n Matthew Lincoln [ctb],\n Alessandro Gasparini [ctb],\n Lukasz Komsta [ctb],\n Frederick Novometsky [ctb],\n Wilson Freitas [ctb],\n Michelle Evans [ctb],\n Jason Cory Brunson [ctb],\n Simon Jackson [ctb],\n Ben Whalley [ctb],\n Karissa Whiting [ctb],\n Yves Rosseel [ctb],\n Michael Kuehn [ctb],\n Jorge Cimentada [ctb],\n Erle Holgersen [ctb],\n Karl Dunkle Werner [ctb] (ORCID:\n ),\n Ethan Christensen [ctb],\n Steven Pav [ctb],\n Paul PJ [ctb],\n Ben Schneider [ctb],\n Patrick Kennedy [ctb],\n Lily Medina [ctb],\n Brian Fannin [ctb],\n Jason Muhlenkamp [ctb],\n Matt Lehman [ctb],\n Bill Denney [ctb] (ORCID: ),\n Nic Crane [ctb],\n Andrew Bates [ctb],\n Vincent Arel-Bundock [ctb] (ORCID:\n ),\n Hideaki Hayashi [ctb],\n Luis Tobalina [ctb],\n Annie Wang [ctb],\n Wei Yang Tham [ctb],\n Clara Wang [ctb],\n Abby Smith [ctb] (ORCID: ),\n Jasper Cooper [ctb] (ORCID: ),\n E Auden Krauska [ctb] (ORCID: ),\n Alex Wang [ctb],\n Malcolm Barrett [ctb] (ORCID: ),\n Charles Gray [ctb] (ORCID: ),\n Jared Wilber [ctb],\n Vilmantas Gegzna [ctb] (ORCID: ),\n Eduard Szoecs [ctb],\n Frederik Aust [ctb] (ORCID: ),\n Angus Moore [ctb],\n Nick Williams [ctb],\n Marius Barth [ctb] (ORCID: ),\n Bruna Wundervald [ctb] (ORCID: ),\n Joyce Cahoon [ctb] (ORCID: ),\n Grant McDermott [ctb] (ORCID: ),\n Kevin Zarca [ctb],\n Shiro Kuriwaki [ctb] (ORCID: ),\n Lukas Wallrich [ctb] (ORCID: ),\n James Martherus [ctb] (ORCID: ),\n Chuliang Xiao [ctb] (ORCID: ),\n Joseph Larmarange [ctb],\n Max Kuhn [ctb],\n Michal Bojanowski [ctb],\n Hakon Malmedal [ctb],\n Clara Wang [ctb],\n Sergio Oller [ctb],\n Luke Sonnet [ctb],\n Jim Hester [ctb],\n Ben Schneider [ctb],\n Bernie Gray [ctb] (ORCID: ),\n Mara Averick [ctb],\n Aaron Jacobs [ctb],\n Andreas Bender [ctb],\n Sven Templer [ctb],\n Paul-Christian Buerkner [ctb],\n Matthew Kay [ctb],\n Erwan Le Pennec [ctb],\n Johan Junkka [ctb],\n Hao Zhu [ctb],\n Benjamin Soltoff [ctb],\n Zoe Wilkinson Saldana [ctb],\n Tyler Littlefield [ctb],\n Charles T. Gray [ctb],\n Shabbh E. Banks [ctb],\n Serina Robinson [ctb],\n Roger Bivand [ctb],\n Riinu Ots [ctb],\n Nicholas Williams [ctb],\n Nina Jakobsen [ctb],\n Michael Weylandt [ctb],\n Lisa Lendway [ctb],\n Karl Hailperin [ctb],\n Josue Rodriguez [ctb],\n Jenny Bryan [ctb],\n Chris Jarvis [ctb],\n Greg Macfarlane [ctb],\n Brian Mannakee [ctb],\n Drew Tyre [ctb],\n Shreyas Singh [ctb],\n Laurens Geffert [ctb],\n Hong Ooi [ctb],\n Henrik Bengtsson [ctb],\n Eduard Szocs [ctb],\n David Hugh-Jones [ctb],\n Matthieu Stigler [ctb],\n Hugo Tavares [ctb] (ORCID: ),\n R. Willem Vervoort [ctb],\n Brenton M. Wiernik [ctb],\n Josh Yamamoto [ctb],\n Jasme Lee [ctb],\n Taren Sanders [ctb] (ORCID: ),\n Ilaria Prosdocimi [ctb] (ORCID:\n ),\n Daniel D. Sjoberg [ctb] (ORCID:\n ),\n Alex Reinhart [ctb] (ORCID: )", + "Maintainer": "Simon Couch ", + "Repository": "RSPM", + "Date/Publication": "2025-07-28 15:20:07 UTC", + "Built": "R 4.5.0; ; 2025-07-29 11:44:43 UTC; unix" + } + }, + "bslib": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "bslib", + "Title": "Custom 'Bootstrap' 'Sass' Themes for 'shiny' and 'rmarkdown'", + "Version": "0.9.0", + "Authors@R": "c(\n person(\"Carson\", \"Sievert\", , \"carson@posit.co\", role = c(\"aut\", \"cre\"),\n comment = c(ORCID = \"0000-0002-4958-2844\")),\n person(\"Joe\", \"Cheng\", , \"joe@posit.co\", role = \"aut\"),\n person(\"Garrick\", \"Aden-Buie\", , \"garrick@posit.co\", role = \"aut\",\n comment = c(ORCID = \"0000-0002-7111-0077\")),\n person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\")),\n person(, \"Bootstrap contributors\", role = \"ctb\",\n comment = \"Bootstrap library\"),\n person(, \"Twitter, Inc\", role = \"cph\",\n comment = \"Bootstrap library\"),\n person(\"Javi\", \"Aguilar\", role = c(\"ctb\", \"cph\"),\n comment = \"Bootstrap colorpicker library\"),\n person(\"Thomas\", \"Park\", role = c(\"ctb\", \"cph\"),\n comment = \"Bootswatch library\"),\n person(, \"PayPal\", role = c(\"ctb\", \"cph\"),\n comment = \"Bootstrap accessibility plugin\")\n )", + "Description": "Simplifies custom 'CSS' styling of both 'shiny' and\n 'rmarkdown' via 'Bootstrap' 'Sass'. Supports 'Bootstrap' 3, 4 and 5 as\n well as their various 'Bootswatch' themes. An interactive widget is\n also provided for previewing themes in real time.", + "License": "MIT + file LICENSE", + "URL": "https://rstudio.github.io/bslib/, https://github.com/rstudio/bslib", + "BugReports": "https://github.com/rstudio/bslib/issues", + "Depends": "R (>= 2.10)", + "Imports": "base64enc, cachem, fastmap (>= 1.1.1), grDevices, htmltools\n(>= 0.5.8), jquerylib (>= 0.1.3), jsonlite, lifecycle, memoise\n(>= 2.0.1), mime, rlang, sass (>= 0.4.9)", + "Suggests": "bsicons, curl, fontawesome, future, ggplot2, knitr, magrittr,\nrappdirs, rmarkdown (>= 2.7), shiny (> 1.8.1), testthat,\nthematic, tools, utils, withr, yaml", + "Config/Needs/deploy": "BH, chiflights22, colourpicker, commonmark, cpp11,\ncpsievert/chiflights22, cpsievert/histoslider, dplyr, DT,\nggplot2, ggridges, gt, hexbin, histoslider, htmlwidgets,\nlattice, leaflet, lubridate, markdown, modelr, plotly,\nreactable, reshape2, rprojroot, rsconnect, rstudio/shiny,\nscales, styler, tibble", + "Config/Needs/routine": "chromote, desc, renv", + "Config/Needs/website": "brio, crosstalk, dplyr, DT, ggplot2, glue,\nhtmlwidgets, leaflet, lorem, palmerpenguins, plotly, purrr,\nrprojroot, rstudio/htmltools, scales, stringr, tidyr, webshot2", + "Config/testthat/edition": "3", + "Config/testthat/parallel": "true", + "Config/testthat/start-first": "zzzz-bs-sass, fonts, zzz-precompile,\ntheme-*, rmd-*", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.2", + "Collate": "'accordion.R' 'breakpoints.R' 'bs-current-theme.R'\n'bs-dependencies.R' 'bs-global.R' 'bs-remove.R'\n'bs-theme-layers.R' 'bs-theme-preset-bootswatch.R'\n'bs-theme-preset-brand.R' 'bs-theme-preset-builtin.R'\n'bs-theme-preset.R' 'utils.R' 'bs-theme-preview.R'\n'bs-theme-update.R' 'bs-theme.R' 'bslib-package.R' 'buttons.R'\n'card.R' 'deprecated.R' 'files.R' 'fill.R' 'imports.R'\n'input-dark-mode.R' 'input-switch.R' 'layout.R' 'nav-items.R'\n'nav-update.R' 'navbar_options.R' 'navs-legacy.R' 'navs.R'\n'onLoad.R' 'page.R' 'popover.R' 'precompiled.R' 'print.R'\n'shiny-devmode.R' 'sidebar.R' 'staticimports.R' 'tooltip.R'\n'utils-deps.R' 'utils-shiny.R' 'utils-tags.R' 'value-box.R'\n'version-default.R' 'versions.R'", + "NeedsCompilation": "no", + "Packaged": "2025-01-30 22:04:52 UTC; garrick", + "Author": "Carson Sievert [aut, cre] (),\n Joe Cheng [aut],\n Garrick Aden-Buie [aut] (),\n Posit Software, PBC [cph, fnd],\n Bootstrap contributors [ctb] (Bootstrap library),\n Twitter, Inc [cph] (Bootstrap library),\n Javi Aguilar [ctb, cph] (Bootstrap colorpicker library),\n Thomas Park [ctb, cph] (Bootswatch library),\n PayPal [ctb, cph] (Bootstrap accessibility plugin)", + "Maintainer": "Carson Sievert ", + "Repository": "RSPM", + "Date/Publication": "2025-01-30 23:20:02 UTC", + "Built": "R 4.5.0; ; 2025-04-06 04:45:56 UTC; unix" + } + }, + "cachem": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "cachem", + "Version": "1.1.0", + "Title": "Cache R Objects with Automatic Pruning", + "Description": "Key-value stores with automatic pruning. Caches can limit\n either their total size or the age of the oldest object (or both),\n automatically pruning objects to maintain the constraints.", + "Authors@R": "c(\n person(\"Winston\", \"Chang\", , \"winston@posit.co\", c(\"aut\", \"cre\")),\n person(family = \"Posit Software, PBC\", role = c(\"cph\", \"fnd\")))", + "License": "MIT + file LICENSE", + "Encoding": "UTF-8", + "ByteCompile": "true", + "URL": "https://cachem.r-lib.org/, https://github.com/r-lib/cachem", + "Imports": "rlang, fastmap (>= 1.2.0)", + "Suggests": "testthat", + "RoxygenNote": "7.2.3", + "Config/Needs/routine": "lobstr", + "Config/Needs/website": "pkgdown", + "NeedsCompilation": "yes", + "Packaged": "2024-05-15 15:54:22 UTC; winston", + "Author": "Winston Chang [aut, cre],\n Posit Software, PBC [cph, fnd]", + "Maintainer": "Winston Chang ", + "Repository": "RSPM", + "Date/Publication": "2024-05-16 09:50:11 UTC", + "Built": "R 4.5.0; x86_64-pc-linux-gnu; 2025-04-06 04:42:51 UTC; unix" + } + }, + "callr": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "callr", + "Title": "Call R from R", + "Version": "3.7.6", + "Authors@R": "c(\n person(\"Gábor\", \"Csárdi\", , \"csardi.gabor@gmail.com\", role = c(\"aut\", \"cre\", \"cph\"),\n comment = c(ORCID = \"0000-0001-7098-9676\")),\n person(\"Winston\", \"Chang\", role = \"aut\"),\n person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\")),\n person(\"Ascent Digital Services\", role = c(\"cph\", \"fnd\"))\n )", + "Description": "It is sometimes useful to perform a computation in a separate\n R process, without affecting the current R process at all. This\n packages does exactly that.", + "License": "MIT + file LICENSE", + "URL": "https://callr.r-lib.org, https://github.com/r-lib/callr", + "BugReports": "https://github.com/r-lib/callr/issues", + "Depends": "R (>= 3.4)", + "Imports": "processx (>= 3.6.1), R6, utils", + "Suggests": "asciicast (>= 2.3.1), cli (>= 1.1.0), mockery, ps, rprojroot,\nspelling, testthat (>= 3.2.0), withr (>= 2.3.0)", + "Config/Needs/website": "r-lib/asciicast, glue, htmlwidgets, igraph,\ntibble, tidyverse/tidytemplate", + "Config/testthat/edition": "3", + "Encoding": "UTF-8", + "Language": "en-US", + "RoxygenNote": "7.3.1.9000", + "NeedsCompilation": "no", + "Packaged": "2024-03-25 12:10:25 UTC; gaborcsardi", + "Author": "Gábor Csárdi [aut, cre, cph] (),\n Winston Chang [aut],\n Posit Software, PBC [cph, fnd],\n Ascent Digital Services [cph, fnd]", + "Maintainer": "Gábor Csárdi ", + "Repository": "RSPM", + "Date/Publication": "2024-03-25 13:30:06 UTC", + "Built": "R 4.5.0; ; 2025-04-06 04:43:04 UTC; unix" + } + }, + "checkmate": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "checkmate", + "Type": "Package", + "Title": "Fast and Versatile Argument Checks", + "Description": "Tests and assertions to perform frequent argument checks. A\n substantial part of the package was written in C to minimize any worries\n about execution time overhead.", + "Version": "2.3.2", + "Authors@R": "c(\n person(\"Michel\", \"Lang\", NULL, \"michellang@gmail.com\",\n role = c(\"cre\", \"aut\"), comment = c(ORCID = \"0000-0001-9754-0393\")),\n person(\"Bernd\", \"Bischl\", NULL, \"bernd_bischl@gmx.net\", role = \"ctb\"),\n person(\"Dénes\", \"Tóth\", NULL, \"toth.denes@kogentum.hu\", role = \"ctb\",\n comment = c(ORCID = \"0000-0003-4262-3217\"))\n )", + "URL": "https://mllg.github.io/checkmate/,\nhttps://github.com/mllg/checkmate", + "URLNote": "https://github.com/mllg/checkmate", + "BugReports": "https://github.com/mllg/checkmate/issues", + "NeedsCompilation": "yes", + "ByteCompile": "yes", + "Encoding": "UTF-8", + "Depends": "R (>= 3.0.0)", + "Imports": "backports (>= 1.1.0), utils", + "Suggests": "R6, fastmatch, data.table (>= 1.9.8), devtools, ggplot2,\nknitr, magrittr, microbenchmark, rmarkdown, testthat (>=\n3.0.4), tinytest (>= 1.1.0), tibble", + "License": "BSD_3_clause + file LICENSE", + "VignetteBuilder": "knitr", + "RoxygenNote": "7.3.2", + "Collate": "'AssertCollection.R' 'allMissing.R' 'anyInfinite.R'\n'anyMissing.R' 'anyNaN.R' 'asInteger.R' 'assert.R' 'helper.R'\n'makeExpectation.R' 'makeTest.R' 'makeAssertion.R'\n'checkAccess.R' 'checkArray.R' 'checkAtomic.R'\n'checkAtomicVector.R' 'checkCharacter.R' 'checkChoice.R'\n'checkClass.R' 'checkComplex.R' 'checkCount.R'\n'checkDataFrame.R' 'checkDataTable.R' 'checkDate.R'\n'checkDirectoryExists.R' 'checkDisjunct.R' 'checkDouble.R'\n'checkEnvironment.R' 'checkFALSE.R' 'checkFactor.R'\n'checkFileExists.R' 'checkFlag.R' 'checkFormula.R'\n'checkFunction.R' 'checkInt.R' 'checkInteger.R'\n'checkIntegerish.R' 'checkList.R' 'checkLogical.R'\n'checkMatrix.R' 'checkMultiClass.R' 'checkNamed.R'\n'checkNames.R' 'checkNull.R' 'checkNumber.R' 'checkNumeric.R'\n'checkOS.R' 'checkPOSIXct.R' 'checkPathForOutput.R'\n'checkPermutation.R' 'checkR6.R' 'checkRaw.R' 'checkScalar.R'\n'checkScalarNA.R' 'checkSetEqual.R' 'checkString.R'\n'checkSubset.R' 'checkTRUE.R' 'checkTibble.R' 'checkVector.R'\n'coalesce.R' 'isIntegerish.R' 'matchArg.R' 'qassert.R'\n'qassertr.R' 'vname.R' 'wfwl.R' 'zzz.R'", + "Packaged": "2024-07-29 09:26:26 UTC; michel", + "Author": "Michel Lang [cre, aut] (),\n Bernd Bischl [ctb],\n Dénes Tóth [ctb] ()", + "Maintainer": "Michel Lang ", + "Repository": "RSPM", + "Date/Publication": "2024-07-29 12:30:06 UTC", + "Built": "R 4.5.0; x86_64-pc-linux-gnu; 2025-04-06 04:42:35 UTC; unix" + } + }, + "chromote": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "chromote", + "Title": "Headless Chrome Web Browser Interface", + "Version": "0.5.1", + "Authors@R": "c(\n person(\"Garrick\", \"Aden-Buie\", , \"garrick@posit.co\", role = c(\"aut\", \"cre\"),\n comment = c(ORCID = \"0000-0002-7111-0077\")),\n person(\"Winston\", \"Chang\", , \"winston@posit.co\", role = \"aut\"),\n person(\"Barret\", \"Schloerke\", , \"barret@posit.co\", role = \"aut\",\n comment = c(ORCID = \"0000-0001-9986-114X\")),\n person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\"), comment = c(ROR = \"03wc8by49\"))\n )", + "Description": "An implementation of the 'Chrome DevTools Protocol', for\n controlling a headless Chrome web browser.", + "License": "MIT + file LICENSE", + "URL": "https://rstudio.github.io/chromote/,\nhttps://github.com/rstudio/chromote", + "BugReports": "https://github.com/rstudio/chromote/issues", + "Imports": "cli, curl, fastmap, jsonlite, later (>= 1.1.0), magrittr,\nprocessx, promises (>= 1.1.1), R6, rlang (>= 1.1.0), utils,\nwebsocket (>= 1.2.0), withr, zip", + "Suggests": "knitr, rmarkdown, showimage, testthat (>= 3.0.0)", + "VignetteBuilder": "knitr", + "Config/Needs/website": "r-lib/pkgdown, rstudio/bslib", + "Config/testthat/edition": "3", + "Config/testthat/parallel": "FALSE", + "Config/testthat/start-first": "chromote_session", + "Encoding": "UTF-8", + "Language": "en-US", + "RoxygenNote": "7.3.2", + "SystemRequirements": "Google Chrome or other Chromium-based browser.\nchromium: chromium (rpm) or chromium-browser (deb)", + "NeedsCompilation": "no", + "Packaged": "2025-04-24 03:18:21 UTC; garrick", + "Author": "Garrick Aden-Buie [aut, cre] (),\n Winston Chang [aut],\n Barret Schloerke [aut] (),\n Posit Software, PBC [cph, fnd] (03wc8by49)", + "Maintainer": "Garrick Aden-Buie ", + "Repository": "RSPM", + "Date/Publication": "2025-04-24 03:40:02 UTC", + "Built": "R 4.5.0; ; 2025-04-25 04:54:27 UTC; unix" + } + }, + "class": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "class", + "Priority": "recommended", + "Version": "7.3-23", + "Date": "2025-01-01", + "Depends": "R (>= 3.0.0), stats, utils", + "Imports": "MASS", + "Authors@R": "c(person(\"Brian\", \"Ripley\", role = c(\"aut\", \"cre\", \"cph\"),\n email = \"Brian.Ripley@R-project.org\"),\n person(\"William\", \"Venables\", role = \"cph\"))", + "Description": "Various functions for classification, including k-nearest\n neighbour, Learning Vector Quantization and Self-Organizing Maps.", + "Title": "Functions for Classification", + "ByteCompile": "yes", + "License": "GPL-2 | GPL-3", + "URL": "http://www.stats.ox.ac.uk/pub/MASS4/", + "NeedsCompilation": "yes", + "Packaged": "2025-01-01 07:07:13 UTC; ripley", + "Author": "Brian Ripley [aut, cre, cph],\n William Venables [cph]", + "Maintainer": "Brian Ripley ", + "Repository": "CRAN", + "Date/Publication": "2025-01-01 10:25:33 UTC", + "Built": "R 4.5.1; aarch64-apple-darwin20; 2025-06-14 01:29:50 UTC; unix" + } + }, + "cli": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "cli", + "Title": "Helpers for Developing Command Line Interfaces", + "Version": "3.6.5", + "Authors@R": "c(\n person(\"Gábor\", \"Csárdi\", , \"gabor@posit.co\", role = c(\"aut\", \"cre\")),\n person(\"Hadley\", \"Wickham\", role = \"ctb\"),\n person(\"Kirill\", \"Müller\", role = \"ctb\"),\n person(\"Salim\", \"Brüggemann\", , \"salim-b@pm.me\", role = \"ctb\",\n comment = c(ORCID = \"0000-0002-5329-5987\")),\n person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\"))\n )", + "Description": "A suite of tools to build attractive command line interfaces\n ('CLIs'), from semantic elements: headings, lists, alerts, paragraphs,\n etc. Supports custom themes via a 'CSS'-like language. It also\n contains a number of lower level 'CLI' elements: rules, boxes, trees,\n and 'Unicode' symbols with 'ASCII' alternatives. It support ANSI\n colors and text styles as well.", + "License": "MIT + file LICENSE", + "URL": "https://cli.r-lib.org, https://github.com/r-lib/cli", + "BugReports": "https://github.com/r-lib/cli/issues", + "Depends": "R (>= 3.4)", + "Imports": "utils", + "Suggests": "callr, covr, crayon, digest, glue (>= 1.6.0), grDevices,\nhtmltools, htmlwidgets, knitr, methods, processx, ps (>=\n1.3.4.9000), rlang (>= 1.0.2.9003), rmarkdown, rprojroot,\nrstudioapi, testthat (>= 3.2.0), tibble, whoami, withr", + "Config/Needs/website": "r-lib/asciicast, bench, brio, cpp11, decor, desc,\nfansi, prettyunits, sessioninfo, tidyverse/tidytemplate,\nusethis, vctrs", + "Config/testthat/edition": "3", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.2", + "NeedsCompilation": "yes", + "Packaged": "2025-04-22 12:00:18 UTC; gaborcsardi", + "Author": "Gábor Csárdi [aut, cre],\n Hadley Wickham [ctb],\n Kirill Müller [ctb],\n Salim Brüggemann [ctb] (),\n Posit Software, PBC [cph, fnd]", + "Maintainer": "Gábor Csárdi ", + "Repository": "RSPM", + "Date/Publication": "2025-04-23 13:50:02 UTC", + "Built": "R 4.5.0; x86_64-pc-linux-gnu; 2025-04-24 05:04:45 UTC; unix" + } + }, + "clipr": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Type": "Package", + "Package": "clipr", + "Title": "Read and Write from the System Clipboard", + "Version": "0.8.0", + "Authors@R": "c(\n person(\"Matthew\", \"Lincoln\", , \"matthew.d.lincoln@gmail.com\", role = c(\"aut\", \"cre\"),\n comment = c(ORCID = \"0000-0002-4387-3384\")),\n person(\"Louis\", \"Maddox\", role = \"ctb\"),\n person(\"Steve\", \"Simpson\", role = \"ctb\"),\n person(\"Jennifer\", \"Bryan\", role = \"ctb\")\n )", + "Description": "Simple utility functions to read from and write to\n the Windows, OS X, and X11 clipboards.", + "License": "GPL-3", + "URL": "https://github.com/mdlincoln/clipr,\nhttp://matthewlincoln.net/clipr/", + "BugReports": "https://github.com/mdlincoln/clipr/issues", + "Imports": "utils", + "Suggests": "covr, knitr, rmarkdown, rstudioapi (>= 0.5), testthat (>=\n2.0.0)", + "VignetteBuilder": "knitr", + "Encoding": "UTF-8", + "Language": "en-US", + "RoxygenNote": "7.1.2", + "SystemRequirements": "xclip (https://github.com/astrand/xclip) or xsel\n(http://www.vergenet.net/~conrad/software/xsel/) for accessing\nthe X11 clipboard, or wl-clipboard\n(https://github.com/bugaevc/wl-clipboard) for systems using\nWayland.", + "NeedsCompilation": "no", + "Packaged": "2022-02-19 02:20:21 UTC; mlincoln", + "Author": "Matthew Lincoln [aut, cre] (),\n Louis Maddox [ctb],\n Steve Simpson [ctb],\n Jennifer Bryan [ctb]", + "Maintainer": "Matthew Lincoln ", + "Repository": "RSPM", + "Date/Publication": "2022-02-22 00:58:45 UTC", + "Built": "R 4.5.0; ; 2025-04-06 04:42:33 UTC; unix" + } + }, + "clock": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "clock", + "Title": "Date-Time Types and Tools", + "Version": "0.7.3", + "Authors@R": "c(\n person(\"Davis\", \"Vaughan\", , \"davis@posit.co\", role = c(\"aut\", \"cre\")),\n person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\"))\n )", + "Description": "Provides a comprehensive library for date-time manipulations\n using a new family of orthogonal date-time classes (durations, time\n points, zoned-times, and calendars) that partition responsibilities so\n that the complexities of time zones are only considered when they are\n really needed. Capabilities include: date-time parsing, formatting,\n arithmetic, extraction and updating of components, and rounding.", + "License": "MIT + file LICENSE", + "URL": "https://clock.r-lib.org, https://github.com/r-lib/clock", + "BugReports": "https://github.com/r-lib/clock/issues", + "Depends": "R (>= 4.0.0)", + "Imports": "cli (>= 3.6.4), lifecycle (>= 1.0.4), rlang (>= 1.1.5), tzdb\n(>= 0.5.0), vctrs (>= 0.6.5)", + "Suggests": "covr, knitr, magrittr, pillar, rmarkdown, slider (>= 0.3.2),\ntestthat (>= 3.0.0), withr", + "LinkingTo": "cpp11 (>= 0.5.2), tzdb (>= 0.5.0)", + "VignetteBuilder": "knitr", + "Config/build/compilation-database": "true", + "Config/Needs/website": "lubridate, tidyverse/tidytemplate", + "Config/testthat/edition": "3", + "Encoding": "UTF-8", + "LazyData": "true", + "RoxygenNote": "7.3.2", + "NeedsCompilation": "yes", + "Packaged": "2025-03-17 14:40:28 UTC; davis", + "Author": "Davis Vaughan [aut, cre],\n Posit Software, PBC [cph, fnd]", + "Maintainer": "Davis Vaughan ", + "Repository": "RSPM", + "Date/Publication": "2025-03-21 19:00:02 UTC", + "Built": "R 4.5.0; x86_64-pc-linux-gnu; 2025-04-08 03:10:58 UTC; unix" + } + }, + "codetools": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "codetools", + "Version": "0.2-20", + "Priority": "recommended", + "Author": "Luke Tierney ", + "Description": "Code analysis tools for R.", + "Title": "Code Analysis Tools for R", + "Depends": "R (>= 2.1)", + "Maintainer": "Luke Tierney ", + "URL": "https://gitlab.com/luke-tierney/codetools", + "License": "GPL", + "NeedsCompilation": "no", + "Packaged": "2024-03-31 18:18:09 UTC; luke", + "Repository": "CRAN", + "Date/Publication": "2024-03-31 20:10:06 UTC", + "Built": "R 4.5.1; ; 2025-06-14 01:29:47 UTC; unix" + } + }, + "colorspace": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "colorspace", + "Version": "2.1-1", + "Date": "2024-07-26", + "Title": "A Toolbox for Manipulating and Assessing Colors and Palettes", + "Authors@R": "c(person(given = \"Ross\", family = \"Ihaka\", role = \"aut\", email = \"ihaka@stat.auckland.ac.nz\"),\n person(given = \"Paul\", family = \"Murrell\", role = \"aut\", email = \"paul@stat.auckland.ac.nz\",\n comment = c(ORCID = \"0000-0002-3224-8858\")),\n person(given = \"Kurt\", family = \"Hornik\", role = \"aut\", email = \"Kurt.Hornik@R-project.org\",\n\t\t comment = c(ORCID = \"0000-0003-4198-9911\")),\n person(given = c(\"Jason\", \"C.\"), family = \"Fisher\", role = \"aut\", email = \"jfisher@usgs.gov\",\n comment = c(ORCID = \"0000-0001-9032-8912\")),\n person(given = \"Reto\", family = \"Stauffer\", role = \"aut\", email = \"Reto.Stauffer@uibk.ac.at\",\n comment = c(ORCID = \"0000-0002-3798-5507\")),\n person(given = c(\"Claus\", \"O.\"), family = \"Wilke\", role = \"aut\", email = \"wilke@austin.utexas.edu\",\n comment = c(ORCID = \"0000-0002-7470-9261\")),\n person(given = c(\"Claire\", \"D.\"), family = \"McWhite\", role = \"aut\", email = \"claire.mcwhite@utmail.utexas.edu\",\n comment = c(ORCID = \"0000-0001-7346-3047\")),\n person(given = \"Achim\", family = \"Zeileis\", role = c(\"aut\", \"cre\"), email = \"Achim.Zeileis@R-project.org\",\n comment = c(ORCID = \"0000-0003-0918-3766\")))", + "Description": "Carries out mapping between assorted color spaces including RGB, HSV, HLS,\n CIEXYZ, CIELUV, HCL (polar CIELUV), CIELAB, and polar CIELAB.\n\t Qualitative, sequential, and diverging color palettes based on HCL colors\n\t are provided along with corresponding ggplot2 color scales.\n\t Color palette choice is aided by an interactive app (with either a Tcl/Tk\n\t or a shiny graphical user interface) and shiny apps with an HCL color picker and a\n\t color vision deficiency emulator. Plotting functions for displaying\n\t and assessing palettes include color swatches, visualizations of the\n\t HCL space, and trajectories in HCL and/or RGB spectrum. Color manipulation\n\t functions include: desaturation, lightening/darkening, mixing, and\n\t simulation of color vision deficiencies (deutanomaly, protanomaly, tritanomaly).\n\t Details can be found on the project web page at \n\t and in the accompanying scientific paper: Zeileis et al. (2020, Journal of Statistical\n\t Software, ).", + "Depends": "R (>= 3.0.0), methods", + "Imports": "graphics, grDevices, stats", + "Suggests": "datasets, utils, KernSmooth, MASS, kernlab, mvtnorm, vcd,\ntcltk, shiny, shinyjs, ggplot2, dplyr, scales, grid, png, jpeg,\nknitr, rmarkdown, RColorBrewer, rcartocolor, scico, viridis,\nwesanderson", + "VignetteBuilder": "knitr", + "License": "BSD_3_clause + file LICENSE", + "URL": "https://colorspace.R-Forge.R-project.org/, https://hclwizard.org/", + "BugReports": "https://colorspace.R-Forge.R-project.org/contact.html", + "LazyData": "yes", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.1", + "NeedsCompilation": "yes", + "Packaged": "2024-07-26 15:40:41 UTC; zeileis", + "Author": "Ross Ihaka [aut],\n Paul Murrell [aut] (),\n Kurt Hornik [aut] (),\n Jason C. Fisher [aut] (),\n Reto Stauffer [aut] (),\n Claus O. Wilke [aut] (),\n Claire D. McWhite [aut] (),\n Achim Zeileis [aut, cre] ()", + "Maintainer": "Achim Zeileis ", + "Repository": "RSPM", + "Date/Publication": "2024-07-26 17:10:02 UTC", + "Built": "R 4.5.0; x86_64-pc-linux-gnu; 2025-04-06 04:42:26 UTC; unix" + } + }, + "commonmark": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "commonmark", + "Type": "Package", + "Title": "High Performance CommonMark and Github Markdown Rendering in R", + "Version": "2.0.0", + "Authors@R": "c(\n person(\"Jeroen\", \"Ooms\", ,\"jeroenooms@gmail.com\", role = c(\"aut\", \"cre\"),\n comment = c(ORCID = \"0000-0002-4035-0289\")),\n person(\"John MacFarlane\", role = \"cph\", comment = \"Author of cmark\"))", + "Description": "The CommonMark specification defines\n a rationalized version of markdown syntax. This package uses the 'cmark' \n reference implementation for converting markdown text into various formats\n including html, latex and groff man. In addition it exposes the markdown\n parse tree in xml format. Also includes opt-in support for GFM extensions\n including tables, autolinks, and strikethrough text.", + "License": "BSD_2_clause + file LICENSE", + "URL": "https://docs.ropensci.org/commonmark/\nhttps://ropensci.r-universe.dev/commonmark", + "BugReports": "https://github.com/r-lib/commonmark/issues", + "Suggests": "curl, testthat, xml2", + "RoxygenNote": "7.3.2", + "Language": "en-US", + "Encoding": "UTF-8", + "NeedsCompilation": "yes", + "Packaged": "2025-07-07 13:20:39 UTC; jeroen", + "Author": "Jeroen Ooms [aut, cre] (ORCID: ),\n John MacFarlane [cph] (Author of cmark)", + "Maintainer": "Jeroen Ooms ", + "Repository": "RSPM", + "Date/Publication": "2025-07-07 13:40:02 UTC", + "Built": "R 4.5.0; x86_64-pc-linux-gnu; 2025-07-08 04:45:55 UTC; unix" + } + }, + "config": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "config", + "Type": "Package", + "Title": "Manage Environment Specific Configuration Values", + "Version": "0.3.2", + "Authors@R": "c(\n person(\"JJ\", \"Allaire\", role = c(\"aut\"), email = \"jj@rstudio.com\"),\n person(\"Andrie\", \"de Vries\", role = \"cre\", email = \"apdevries@gmail.com\"),\n person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\"))\n )", + "Imports": "yaml (>= 2.1.19)", + "Suggests": "testthat, knitr, rmarkdown, covr, spelling, withr", + "Description": "Manage configuration values across multiple environments (e.g.\n development, test, production). Read values using a function that determines\n the current environment and returns the appropriate value.", + "License": "GPL-3", + "URL": "https://rstudio.github.io/config/,\nhttps://github.com/rstudio/config", + "BugReports": "https://github.com/rstudio/config/issues", + "RoxygenNote": "7.2.3", + "VignetteBuilder": "knitr", + "Encoding": "UTF-8", + "Language": "en-US", + "Config/testthat/edition": "3", + "NeedsCompilation": "no", + "Packaged": "2023-08-30 09:28:23 UTC; apdev", + "Author": "JJ Allaire [aut],\n Andrie de Vries [cre],\n Posit Software, PBC [cph, fnd]", + "Maintainer": "Andrie de Vries ", + "Repository": "RSPM", + "Date/Publication": "2023-08-30 16:50:36 UTC", + "Built": "R 4.5.0; ; 2025-04-08 03:11:37 UTC; unix" + } + }, + "connectapi": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Type": "Package", + "Package": "connectapi", + "Title": "Utilities for Interacting with the 'Posit Connect' Server API", + "Version": "0.8.0", + "Authors@R": "c(\n person(given = \"Toph\",\n family = \"Allen\",\n role = c(\"aut\", \"cre\"),\n email = \"toph@posit.co\"),\n person(given = \"Neal\",\n family = \"Richardson\",\n role = c(\"aut\")),\n person(given = \"Sean\",\n family = \"Lopp\",\n role = c(\"aut\")),\n person(given = \"Cole\",\n family = \"Arendt\",\n role = c(\"aut\")),\n person(given = \"Posit, PBC\",\n role = c(\"cph\", \"fnd\")))", + "Description": "Provides a helpful 'R6' class and methods for interacting with\n the 'Posit Connect' Server API along with some meaningful utility functions\n for regular tasks. API documentation varies by 'Posit Connect' installation\n and version, but the latest documentation is also hosted publicly at\n .", + "License": "MIT + file LICENSE", + "URL": "https://posit-dev.github.io/connectapi/,\nhttps://github.com/posit-dev/connectapi", + "BugReports": "https://github.com/posit-dev/connectapi/issues", + "Imports": "bit64, fs, glue, httr, mime, jsonlite, lifecycle, magrittr,\npurrr, R6, rlang (>= 0.4.2), tibble, uuid, vctrs (>= 0.3.0),\nbase64enc", + "Suggests": "covr, dbplyr, dplyr, ggplot2, gridExtra, httptest, knitr,\nlubridate, progress, rmarkdown, rprojroot, rsconnect, spelling,\ntestthat, tidyr, webshot2, withr", + "VignetteBuilder": "knitr", + "Encoding": "UTF-8", + "Language": "en-US", + "RoxygenNote": "7.3.2", + "Config/testthat/edition": "3", + "Collate": "'audits.R' 'browse.R' 'connect.R' 'connectapi-package.R'\n'connectapi.R' 'content.R' 'deploy.R' 'get.R' 'git.R'\n'groups.R' 'integrations.R' 'lazy.R' 'page.R' 'parse.R'\n'promote.R' 'ptype.R' 'remote.R' 'runtime-caches.R'\n'schedule.R' 'tags.R' 'utils.R' 'thumbnail.R' 'user.R'\n'utils-ci.R' 'utils-pipe.R' 'variant.R'", + "NeedsCompilation": "no", + "Packaged": "2025-07-30 21:46:47 UTC; toph", + "Author": "Toph Allen [aut, cre],\n Neal Richardson [aut],\n Sean Lopp [aut],\n Cole Arendt [aut],\n Posit, PBC [cph, fnd]", + "Maintainer": "Toph Allen ", + "Repository": "RSPM", + "Date/Publication": "2025-07-30 22:00:11 UTC", + "Built": "R 4.5.1; ; 2025-07-31 10:41:25 UTC; unix" + } + }, + "corrplot": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "corrplot", + "Type": "Package", + "Title": "Visualization of a Correlation Matrix", + "Version": "0.95", + "Date": "2024-10-14", + "Authors@R": "c(\n person('Taiyun', 'Wei', email = 'weitaiyun@gmail.com', role = c('cre', 'aut')),\n person('Viliam', 'Simko', email = 'viliam.simko@gmail.com', role = 'aut'),\n person('Michael', 'Levy', email = 'michael.levy@healthcatalyst.com', role = 'ctb'),\n person('Yihui', 'Xie', email = 'xie@yihui.name', role = 'ctb'),\n person('Yan', 'Jin', email = 'jyfeather@gmail.com', role = 'ctb'),\n person('Jeff', 'Zemla', email = 'zemla@wisc.edu', role = 'ctb'),\n person('Moritz', 'Freidank', email = 'freidankm@googlemail.com', role = 'ctb'),\n person('Jun', 'Cai', email = 'cai-j12@mails.tsinghua.edu.cn', role = 'ctb'),\n person('Tomas', 'Protivinsky', email = 'tomas.protivinsky@gmail.com', role = 'ctb')\n )", + "Maintainer": "Taiyun Wei ", + "Suggests": "seriation, knitr, RColorBrewer, rmarkdown, magrittr,\nprettydoc, testthat", + "Description": "Provides a visual exploratory tool on correlation matrix that supports automatic variable reordering to help detect hidden patterns among variables.", + "License": "MIT + file LICENSE", + "URL": "https://github.com/taiyun/corrplot", + "BugReports": "https://github.com/taiyun/corrplot/issues", + "VignetteBuilder": "knitr", + "RoxygenNote": "7.2.1", + "NeedsCompilation": "no", + "Packaged": "2024-10-14 05:38:35 UTC; weita", + "Author": "Taiyun Wei [cre, aut],\n Viliam Simko [aut],\n Michael Levy [ctb],\n Yihui Xie [ctb],\n Yan Jin [ctb],\n Jeff Zemla [ctb],\n Moritz Freidank [ctb],\n Jun Cai [ctb],\n Tomas Protivinsky [ctb]", + "Repository": "RSPM", + "Date/Publication": "2024-10-14 12:11:18 UTC", + "Encoding": "UTF-8", + "Built": "R 4.5.0; ; 2025-04-06 04:42:08 UTC; unix" + } + }, + "countrycode": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Type": "Package", + "Package": "countrycode", + "Title": "Convert Country Names and Country Codes", + "Version": "1.6.1", + "Authors@R": "\n c(person(given = \"Vincent\",\n family = \"Arel-Bundock\",\n role = c(\"aut\", \"cre\"),\n email = \"vincent.arel-bundock@umontreal.ca\",\n comment = c(ORCID = \"0000-0003-2042-7063\")),\n person(given = \"CJ\",\n family = \"Yetman\",\n role = \"ctb\",\n email = \"cj@cjyetman.com\",\n comment = c(ORCID = \"0000-0001-5099-9500\")),\n person(given = \"Nils\",\n family = \"Enevoldsen\",\n role = \"ctb\",\n email = \"nils@wlonk.com\",\n comment = c(ORCID = \"0000-0001-7195-4117\")),\n person(\"Etienne\", \"Bacher\",\n email = \"etienne.bacher@protonmail.com\",\n role = \"ctb\",\n comment = c(ORCID = \"0000-0002-9271-5075\")),\n person(given = \"Samuel\",\n family = \"Meichtry\",\n role = \"ctb\",\n email = \"samuel.meichtry@bj.admin.ch\",\n comment = c(ORCID = \"0000-0003-2165-791X\")))", + "Description": "Standardize country names, convert them into one of 40\n different coding schemes, convert between coding schemes, and assign\n region descriptors.", + "License": "GPL-3", + "URL": "https://vincentarelbundock.github.io/countrycode/", + "BugReports": "https://github.com/vincentarelbundock/countrycode/issues", + "Depends": "R (>= 2.10)", + "Suggests": "altdoc, eurostat, testthat, tibble, ISOcodes, utf8", + "Encoding": "UTF-8", + "LazyData": "yes", + "LazyLoad": "yes", + "RoxygenNote": "7.3.2", + "NeedsCompilation": "no", + "Packaged": "2025-03-31 19:29:48 UTC; vincent", + "Author": "Vincent Arel-Bundock [aut, cre]\n (),\n CJ Yetman [ctb] (),\n Nils Enevoldsen [ctb] (),\n Etienne Bacher [ctb] (),\n Samuel Meichtry [ctb] ()", + "Maintainer": "Vincent Arel-Bundock ", + "Repository": "RSPM", + "Date/Publication": "2025-03-31 20:00:02 UTC", + "Built": "R 4.5.0; ; 2025-04-09 05:58:20 UTC; unix" + } + }, + "cpp11": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "cpp11", + "Title": "A C++11 Interface for R's C Interface", + "Version": "0.5.2", + "Authors@R": "\n c(\n person(\"Davis\", \"Vaughan\", email = \"davis@posit.co\", role = c(\"aut\", \"cre\"), comment = c(ORCID = \"0000-0003-4777-038X\")),\n person(\"Jim\",\"Hester\", role = \"aut\", comment = c(ORCID = \"0000-0002-2739-7082\")),\n person(\"Romain\", \"François\", role = \"aut\", comment = c(ORCID = \"0000-0002-2444-4226\")),\n person(\"Benjamin\", \"Kietzman\", role = \"ctb\"),\n person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\"))\n )", + "Description": "Provides a header only, C++11 interface to R's C\n interface. Compared to other approaches 'cpp11' strives to be safe\n against long jumps from the C API as well as C++ exceptions, conform\n to normal R function semantics and supports interaction with 'ALTREP'\n vectors.", + "License": "MIT + file LICENSE", + "URL": "https://cpp11.r-lib.org, https://github.com/r-lib/cpp11", + "BugReports": "https://github.com/r-lib/cpp11/issues", + "Depends": "R (>= 4.0.0)", + "Suggests": "bench, brio, callr, cli, covr, decor, desc, ggplot2, glue,\nknitr, lobstr, mockery, progress, rmarkdown, scales, Rcpp,\ntestthat (>= 3.2.0), tibble, utils, vctrs, withr", + "VignetteBuilder": "knitr", + "Config/Needs/website": "tidyverse/tidytemplate", + "Config/testthat/edition": "3", + "Config/Needs/cpp11/cpp_register": "brio, cli, decor, desc, glue, tibble,\nvctrs", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.2", + "NeedsCompilation": "no", + "Packaged": "2025-03-03 22:24:28 UTC; davis", + "Author": "Davis Vaughan [aut, cre] (),\n Jim Hester [aut] (),\n Romain François [aut] (),\n Benjamin Kietzman [ctb],\n Posit Software, PBC [cph, fnd]", + "Maintainer": "Davis Vaughan ", + "Repository": "RSPM", + "Date/Publication": "2025-03-03 23:20:02 UTC", + "Built": "R 4.5.0; ; 2025-04-06 04:42:26 UTC; unix" + } + }, + "crayon": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "crayon", + "Title": "Colored Terminal Output", + "Version": "1.5.3", + "Authors@R": "c(\n person(\"Gábor\", \"Csárdi\", , \"csardi.gabor@gmail.com\", role = c(\"aut\", \"cre\")),\n person(\"Brodie\", \"Gaslam\", , \"brodie.gaslam@yahoo.com\", role = \"ctb\"),\n person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\"))\n )", + "Description": "The crayon package is now superseded. Please use the 'cli'\n package for new projects. Colored terminal output on terminals that\n support 'ANSI' color and highlight codes. It also works in 'Emacs'\n 'ESS'. 'ANSI' color support is automatically detected. Colors and\n highlighting can be combined and nested. New styles can also be\n created easily. This package was inspired by the 'chalk' 'JavaScript'\n project.", + "License": "MIT + file LICENSE", + "URL": "https://r-lib.github.io/crayon/, https://github.com/r-lib/crayon", + "BugReports": "https://github.com/r-lib/crayon/issues", + "Imports": "grDevices, methods, utils", + "Suggests": "mockery, rstudioapi, testthat, withr", + "Config/Needs/website": "tidyverse/tidytemplate", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.1", + "Collate": "'aaa-rstudio-detect.R' 'aaaa-rematch2.R'\n'aab-num-ansi-colors.R' 'aac-num-ansi-colors.R' 'ansi-256.R'\n'ansi-palette.R' 'combine.R' 'string.R' 'utils.R'\n'crayon-package.R' 'disposable.R' 'enc-utils.R' 'has_ansi.R'\n'has_color.R' 'link.R' 'styles.R' 'machinery.R' 'parts.R'\n'print.R' 'style-var.R' 'show.R' 'string_operations.R'", + "NeedsCompilation": "no", + "Packaged": "2024-06-20 11:49:08 UTC; gaborcsardi", + "Author": "Gábor Csárdi [aut, cre],\n Brodie Gaslam [ctb],\n Posit Software, PBC [cph, fnd]", + "Maintainer": "Gábor Csárdi ", + "Repository": "RSPM", + "Date/Publication": "2024-06-20 13:00:02 UTC", + "Built": "R 4.5.0; ; 2025-04-06 04:42:34 UTC; unix" + } + }, + "crosstalk": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "crosstalk", + "Type": "Package", + "Title": "Inter-Widget Interactivity for HTML Widgets", + "Version": "1.2.1", + "Authors@R": "c(\n person(\"Joe\", \"Cheng\", role = \"aut\", email = \"joe@posit.co\"),\n person(\"Carson\", \"Sievert\", role = c(\"aut\", \"cre\"),\n email = \"carson@posit.co\", comment = c(ORCID = \"0000-0002-4958-2844\")),\n person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\")),\n person(family = \"jQuery Foundation\", role = \"cph\",\n comment = \"jQuery library and jQuery UI library\"),\n person(family = \"jQuery contributors\", role = c(\"ctb\", \"cph\"),\n comment = \"jQuery library; authors listed in inst/www/shared/jquery-AUTHORS.txt\"),\n person(\"Mark\", \"Otto\", role = \"ctb\",\n comment = \"Bootstrap library\"),\n person(\"Jacob\", \"Thornton\", role = \"ctb\",\n comment = \"Bootstrap library\"),\n person(family = \"Bootstrap contributors\", role = \"ctb\",\n comment = \"Bootstrap library\"),\n person(family = \"Twitter, Inc\", role = \"cph\",\n comment = \"Bootstrap library\"),\n person(\"Brian\", \"Reavis\", role = c(\"ctb\", \"cph\"),\n comment = \"selectize.js library\"),\n person(\"Kristopher Michael\", \"Kowal\", role = c(\"ctb\", \"cph\"),\n comment = \"es5-shim library\"),\n person(family = \"es5-shim contributors\", role = c(\"ctb\", \"cph\"),\n comment = \"es5-shim library\"),\n person(\"Denis\", \"Ineshin\", role = c(\"ctb\", \"cph\"),\n comment = \"ion.rangeSlider library\"),\n person(\"Sami\", \"Samhuri\", role = c(\"ctb\", \"cph\"),\n comment = \"Javascript strftime library\")\n )", + "Description": "Provides building blocks for allowing HTML widgets to communicate\n with each other, with Shiny or without (i.e. static .html files). Currently\n supports linked brushing and filtering.", + "License": "MIT + file LICENSE", + "Imports": "htmltools (>= 0.3.6), jsonlite, lazyeval, R6", + "Suggests": "shiny, ggplot2, testthat (>= 2.1.0), sass, bslib", + "URL": "https://rstudio.github.io/crosstalk/,\nhttps://github.com/rstudio/crosstalk", + "BugReports": "https://github.com/rstudio/crosstalk/issues", + "RoxygenNote": "7.2.3", + "Encoding": "UTF-8", + "NeedsCompilation": "no", + "Packaged": "2023-11-22 16:29:50 UTC; cpsievert", + "Author": "Joe Cheng [aut],\n Carson Sievert [aut, cre] (),\n Posit Software, PBC [cph, fnd],\n jQuery Foundation [cph] (jQuery library and jQuery UI library),\n jQuery contributors [ctb, cph] (jQuery library; authors listed in\n inst/www/shared/jquery-AUTHORS.txt),\n Mark Otto [ctb] (Bootstrap library),\n Jacob Thornton [ctb] (Bootstrap library),\n Bootstrap contributors [ctb] (Bootstrap library),\n Twitter, Inc [cph] (Bootstrap library),\n Brian Reavis [ctb, cph] (selectize.js library),\n Kristopher Michael Kowal [ctb, cph] (es5-shim library),\n es5-shim contributors [ctb, cph] (es5-shim library),\n Denis Ineshin [ctb, cph] (ion.rangeSlider library),\n Sami Samhuri [ctb, cph] (Javascript strftime library)", + "Maintainer": "Carson Sievert ", + "Repository": "RSPM", + "Date/Publication": "2023-11-23 08:50:07 UTC", + "Built": "R 4.5.0; ; 2025-04-06 04:43:12 UTC; unix" + } + }, + "curl": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "curl", + "Type": "Package", + "Title": "A Modern and Flexible Web Client for R", + "Version": "6.4.0", + "Authors@R": "c(\n person(\"Jeroen\", \"Ooms\", role = c(\"aut\", \"cre\"), email = \"jeroenooms@gmail.com\",\n comment = c(ORCID = \"0000-0002-4035-0289\")),\n person(\"Hadley\", \"Wickham\", role = \"ctb\"),\n person(\"Posit Software, PBC\", role = \"cph\"))", + "Description": "Bindings to 'libcurl' for performing fully\n configurable HTTP/FTP requests where responses can be processed in memory, on\n disk, or streaming via the callback or connection interfaces. Some knowledge\n of 'libcurl' is recommended; for a more-user-friendly web client see the \n 'httr2' package which builds on this package with http specific tools and logic.", + "License": "MIT + file LICENSE", + "SystemRequirements": "libcurl (>= 7.73): libcurl-devel (rpm) or\nlibcurl4-openssl-dev (deb)", + "URL": "https://jeroen.r-universe.dev/curl", + "BugReports": "https://github.com/jeroen/curl/issues", + "Suggests": "spelling, testthat (>= 1.0.0), knitr, jsonlite, later,\nrmarkdown, httpuv (>= 1.4.4), webutils", + "VignetteBuilder": "knitr", + "Depends": "R (>= 3.0.0)", + "RoxygenNote": "7.3.2.9000", + "Encoding": "UTF-8", + "Language": "en-US", + "NeedsCompilation": "yes", + "Packaged": "2025-06-21 19:18:13 UTC; jeroen", + "Author": "Jeroen Ooms [aut, cre] (ORCID: ),\n Hadley Wickham [ctb],\n Posit Software, PBC [cph]", + "Maintainer": "Jeroen Ooms ", + "Repository": "RSPM", + "Date/Publication": "2025-06-22 10:40:02 UTC", + "Built": "R 4.5.0; x86_64-pc-linux-gnu; 2025-06-23 17:59:14 UTC; unix" + } + }, + "data.table": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "data.table", + "Version": "1.17.8", + "Title": "Extension of `data.frame`", + "Depends": "R (>= 3.3.0)", + "Imports": "methods", + "Suggests": "bit64 (>= 4.0.0), bit (>= 4.0.4), R.utils, xts, zoo (>=\n1.8-1), yaml, knitr, markdown", + "Description": "Fast aggregation of large data (e.g. 100GB in RAM), fast ordered joins, fast add/modify/delete of columns by group using no copies at all, list columns, friendly and fast character-separated-value read/write. Offers a natural and flexible syntax, for faster development.", + "License": "MPL-2.0 | file LICENSE", + "URL": "https://r-datatable.com, https://Rdatatable.gitlab.io/data.table,\nhttps://github.com/Rdatatable/data.table", + "BugReports": "https://github.com/Rdatatable/data.table/issues", + "VignetteBuilder": "knitr", + "Encoding": "UTF-8", + "ByteCompile": "TRUE", + "Authors@R": "c(\n person(\"Tyson\",\"Barrett\", role=c(\"aut\",\"cre\"), email=\"t.barrett88@gmail.com\", comment = c(ORCID=\"0000-0002-2137-1391\")),\n person(\"Matt\",\"Dowle\", role=\"aut\", email=\"mattjdowle@gmail.com\"),\n person(\"Arun\",\"Srinivasan\", role=\"aut\", email=\"asrini@pm.me\"),\n person(\"Jan\",\"Gorecki\", role=\"aut\"),\n person(\"Michael\",\"Chirico\", role=\"aut\", comment = c(ORCID=\"0000-0003-0787-087X\")),\n person(\"Toby\",\"Hocking\", role=\"aut\", comment = c(ORCID=\"0000-0002-3146-0865\")),\n person(\"Benjamin\",\"Schwendinger\",role=\"aut\", comment = c(ORCID=\"0000-0003-3315-8114\")),\n person(\"Ivan\", \"Krylov\", role=\"aut\", email=\"ikrylov@disroot.org\", comment = c(ORCID=\"0000-0002-0172-3812\")),\n person(\"Pasha\",\"Stetsenko\", role=\"ctb\"),\n person(\"Tom\",\"Short\", role=\"ctb\"),\n person(\"Steve\",\"Lianoglou\", role=\"ctb\"),\n person(\"Eduard\",\"Antonyan\", role=\"ctb\"),\n person(\"Markus\",\"Bonsch\", role=\"ctb\"),\n person(\"Hugh\",\"Parsonage\", role=\"ctb\"),\n person(\"Scott\",\"Ritchie\", role=\"ctb\"),\n person(\"Kun\",\"Ren\", role=\"ctb\"),\n person(\"Xianying\",\"Tan\", role=\"ctb\"),\n person(\"Rick\",\"Saporta\", role=\"ctb\"),\n person(\"Otto\",\"Seiskari\", role=\"ctb\"),\n person(\"Xianghui\",\"Dong\", role=\"ctb\"),\n person(\"Michel\",\"Lang\", role=\"ctb\"),\n person(\"Watal\",\"Iwasaki\", role=\"ctb\"),\n person(\"Seth\",\"Wenchel\", role=\"ctb\"),\n person(\"Karl\",\"Broman\", role=\"ctb\"),\n person(\"Tobias\",\"Schmidt\", role=\"ctb\"),\n person(\"David\",\"Arenburg\", role=\"ctb\"),\n person(\"Ethan\",\"Smith\", role=\"ctb\"),\n person(\"Francois\",\"Cocquemas\", role=\"ctb\"),\n person(\"Matthieu\",\"Gomez\", role=\"ctb\"),\n person(\"Philippe\",\"Chataignon\", role=\"ctb\"),\n person(\"Nello\",\"Blaser\", role=\"ctb\"),\n person(\"Dmitry\",\"Selivanov\", role=\"ctb\"),\n person(\"Andrey\",\"Riabushenko\", role=\"ctb\"),\n person(\"Cheng\",\"Lee\", role=\"ctb\"),\n person(\"Declan\",\"Groves\", role=\"ctb\"),\n person(\"Daniel\",\"Possenriede\", role=\"ctb\"),\n person(\"Felipe\",\"Parages\", role=\"ctb\"),\n person(\"Denes\",\"Toth\", role=\"ctb\"),\n person(\"Mus\",\"Yaramaz-David\", role=\"ctb\"),\n person(\"Ayappan\",\"Perumal\", role=\"ctb\"),\n person(\"James\",\"Sams\", role=\"ctb\"),\n person(\"Martin\",\"Morgan\", role=\"ctb\"),\n person(\"Michael\",\"Quinn\", role=\"ctb\"),\n person(\"@javrucebo\",\"\", role=\"ctb\"),\n person(\"@marc-outins\",\"\", role=\"ctb\"),\n person(\"Roy\",\"Storey\", role=\"ctb\"),\n person(\"Manish\",\"Saraswat\", role=\"ctb\"),\n person(\"Morgan\",\"Jacob\", role=\"ctb\"),\n person(\"Michael\",\"Schubmehl\", role=\"ctb\"),\n person(\"Davis\",\"Vaughan\", role=\"ctb\"),\n person(\"Leonardo\",\"Silvestri\", role=\"ctb\"),\n person(\"Jim\",\"Hester\", role=\"ctb\"),\n person(\"Anthony\",\"Damico\", role=\"ctb\"),\n person(\"Sebastian\",\"Freundt\", role=\"ctb\"),\n person(\"David\",\"Simons\", role=\"ctb\"),\n person(\"Elliott\",\"Sales de Andrade\", role=\"ctb\"),\n person(\"Cole\",\"Miller\", role=\"ctb\"),\n person(\"Jens Peder\",\"Meldgaard\", role=\"ctb\"),\n person(\"Vaclav\",\"Tlapak\", role=\"ctb\"),\n person(\"Kevin\",\"Ushey\", role=\"ctb\"),\n person(\"Dirk\",\"Eddelbuettel\", role=\"ctb\"),\n person(\"Tony\",\"Fischetti\", role=\"ctb\"),\n person(\"Ofek\",\"Shilon\", role=\"ctb\"),\n person(\"Vadim\",\"Khotilovich\", role=\"ctb\"),\n person(\"Hadley\",\"Wickham\", role=\"ctb\"),\n person(\"Bennet\",\"Becker\", role=\"ctb\"),\n person(\"Kyle\",\"Haynes\", role=\"ctb\"),\n person(\"Boniface Christian\",\"Kamgang\", role=\"ctb\"),\n person(\"Olivier\",\"Delmarcell\", role=\"ctb\"),\n person(\"Josh\",\"O'Brien\", role=\"ctb\"),\n person(\"Dereck\",\"de Mezquita\", role=\"ctb\"),\n person(\"Michael\",\"Czekanski\", role=\"ctb\"),\n person(\"Dmitry\", \"Shemetov\", role=\"ctb\"),\n person(\"Nitish\", \"Jha\", role=\"ctb\"),\n person(\"Joshua\", \"Wu\", role=\"ctb\"),\n person(\"Iago\", \"Giné-Vázquez\", role=\"ctb\"),\n person(\"Anirban\", \"Chetia\", role=\"ctb\"),\n person(\"Doris\", \"Amoakohene\", role=\"ctb\"),\n person(\"Angel\", \"Feliz\", role=\"ctb\"),\n person(\"Michael\",\"Young\", role=\"ctb\"),\n person(\"Mark\", \"Seeto\", role=\"ctb\"),\n person(\"Philippe\", \"Grosjean\", role=\"ctb\"),\n person(\"Vincent\", \"Runge\", role=\"ctb\"),\n person(\"Christian\", \"Wia\", role=\"ctb\"),\n person(\"Elise\", \"Maigné\", role=\"ctb\"),\n person(\"Vincent\", \"Rocher\", role=\"ctb\"),\n person(\"Vijay\", \"Lulla\", role=\"ctb\"),\n person(\"Aljaž\", \"Sluga\", role=\"ctb\"),\n person(\"Bill\", \"Evans\", role=\"ctb\")\n )", + "NeedsCompilation": "yes", + "Packaged": "2025-07-07 16:02:15 UTC; root", + "Author": "Tyson Barrett [aut, cre] (ORCID:\n ),\n Matt Dowle [aut],\n Arun Srinivasan [aut],\n Jan Gorecki [aut],\n Michael Chirico [aut] (ORCID: ),\n Toby Hocking [aut] (ORCID: ),\n Benjamin Schwendinger [aut] (ORCID:\n ),\n Ivan Krylov [aut] (ORCID: ),\n Pasha Stetsenko [ctb],\n Tom Short [ctb],\n Steve Lianoglou [ctb],\n Eduard Antonyan [ctb],\n Markus Bonsch [ctb],\n Hugh Parsonage [ctb],\n Scott Ritchie [ctb],\n Kun Ren [ctb],\n Xianying Tan [ctb],\n Rick Saporta [ctb],\n Otto Seiskari [ctb],\n Xianghui Dong [ctb],\n Michel Lang [ctb],\n Watal Iwasaki [ctb],\n Seth Wenchel [ctb],\n Karl Broman [ctb],\n Tobias Schmidt [ctb],\n David Arenburg [ctb],\n Ethan Smith [ctb],\n Francois Cocquemas [ctb],\n Matthieu Gomez [ctb],\n Philippe Chataignon [ctb],\n Nello Blaser [ctb],\n Dmitry Selivanov [ctb],\n Andrey Riabushenko [ctb],\n Cheng Lee [ctb],\n Declan Groves [ctb],\n Daniel Possenriede [ctb],\n Felipe Parages [ctb],\n Denes Toth [ctb],\n Mus Yaramaz-David [ctb],\n Ayappan Perumal [ctb],\n James Sams [ctb],\n Martin Morgan [ctb],\n Michael Quinn [ctb],\n @javrucebo [ctb],\n @marc-outins [ctb],\n Roy Storey [ctb],\n Manish Saraswat [ctb],\n Morgan Jacob [ctb],\n Michael Schubmehl [ctb],\n Davis Vaughan [ctb],\n Leonardo Silvestri [ctb],\n Jim Hester [ctb],\n Anthony Damico [ctb],\n Sebastian Freundt [ctb],\n David Simons [ctb],\n Elliott Sales de Andrade [ctb],\n Cole Miller [ctb],\n Jens Peder Meldgaard [ctb],\n Vaclav Tlapak [ctb],\n Kevin Ushey [ctb],\n Dirk Eddelbuettel [ctb],\n Tony Fischetti [ctb],\n Ofek Shilon [ctb],\n Vadim Khotilovich [ctb],\n Hadley Wickham [ctb],\n Bennet Becker [ctb],\n Kyle Haynes [ctb],\n Boniface Christian Kamgang [ctb],\n Olivier Delmarcell [ctb],\n Josh O'Brien [ctb],\n Dereck de Mezquita [ctb],\n Michael Czekanski [ctb],\n Dmitry Shemetov [ctb],\n Nitish Jha [ctb],\n Joshua Wu [ctb],\n Iago Giné-Vázquez [ctb],\n Anirban Chetia [ctb],\n Doris Amoakohene [ctb],\n Angel Feliz [ctb],\n Michael Young [ctb],\n Mark Seeto [ctb],\n Philippe Grosjean [ctb],\n Vincent Runge [ctb],\n Christian Wia [ctb],\n Elise Maigné [ctb],\n Vincent Rocher [ctb],\n Vijay Lulla [ctb],\n Aljaž Sluga [ctb],\n Bill Evans [ctb]", + "Maintainer": "Tyson Barrett ", + "Repository": "RSPM", + "Date/Publication": "2025-07-10 10:30:05 UTC", + "Built": "R 4.5.0; x86_64-pc-linux-gnu; 2025-07-11 05:04:47 UTC; unix" + } + }, + "desc": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "desc", + "Title": "Manipulate DESCRIPTION Files", + "Version": "1.4.3", + "Authors@R": "c(\n person(\"Gábor\", \"Csárdi\", , \"csardi.gabor@gmail.com\", role = c(\"aut\", \"cre\")),\n person(\"Kirill\", \"Müller\", role = \"aut\"),\n person(\"Jim\", \"Hester\", , \"james.f.hester@gmail.com\", role = \"aut\"),\n person(\"Maëlle\", \"Salmon\", role = \"ctb\",\n comment = c(ORCID = \"0000-0002-2815-0399\")),\n person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\"))\n )", + "Maintainer": "Gábor Csárdi ", + "Description": "Tools to read, write, create, and manipulate DESCRIPTION\n files. It is intended for packages that create or manipulate other\n packages.", + "License": "MIT + file LICENSE", + "URL": "https://desc.r-lib.org/, https://github.com/r-lib/desc", + "BugReports": "https://github.com/r-lib/desc/issues", + "Depends": "R (>= 3.4)", + "Imports": "cli, R6, utils", + "Suggests": "callr, covr, gh, spelling, testthat, whoami, withr", + "Config/Needs/website": "tidyverse/tidytemplate", + "Config/testthat/edition": "3", + "Encoding": "UTF-8", + "Language": "en-US", + "RoxygenNote": "7.2.3", + "Collate": "'assertions.R' 'authors-at-r.R' 'built.R' 'classes.R'\n'collate.R' 'constants.R' 'deps.R' 'desc-package.R'\n'description.R' 'encoding.R' 'find-package-root.R' 'latex.R'\n'non-oo-api.R' 'package-archives.R' 'read.R' 'remotes.R'\n'str.R' 'syntax_checks.R' 'urls.R' 'utils.R' 'validate.R'\n'version.R'", + "NeedsCompilation": "no", + "Packaged": "2023-12-10 11:07:50 UTC; gaborcsardi", + "Author": "Gábor Csárdi [aut, cre],\n Kirill Müller [aut],\n Jim Hester [aut],\n Maëlle Salmon [ctb] (),\n Posit Software, PBC [cph, fnd]", + "Repository": "RSPM", + "Date/Publication": "2023-12-10 11:40:08 UTC", + "Built": "R 4.5.0; ; 2025-04-06 04:42:51 UTC; unix" + } + }, + "diagram": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "diagram", + "Version": "1.6.5", + "Title": "Functions for Visualising Simple Graphs (Networks), Plotting\nFlow Diagrams", + "Author": "Karline Soetaert ", + "Maintainer": "Karline Soetaert ", + "Depends": "R (>= 2.01), shape", + "Imports": "stats, graphics", + "Description": "Visualises simple graphs (networks) based on a transition matrix, utilities to plot flow diagrams, \n visualising webs, electrical networks, etc.\n Support for the book \"A practical guide to ecological modelling -\n using R as a simulation platform\"\n by Karline Soetaert and Peter M.J. Herman (2009), Springer.\n and the book \"Solving Differential Equations in R\"\n by Karline Soetaert, Jeff Cash and Francesca Mazzia (2012), Springer.\n Includes demo(flowchart), demo(plotmat), demo(plotweb).", + "License": "GPL (>= 2)", + "LazyData": "yes", + "NeedsCompilation": "no", + "Packaged": "2020-09-29 06:59:04 UTC; karlines", + "Repository": "RSPM", + "Date/Publication": "2020-09-30 07:20:02 UTC", + "Encoding": "UTF-8", + "Built": "R 4.5.0; ; 2025-04-08 03:11:17 UTC; unix" + } + }, + "diffobj": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "diffobj", + "Type": "Package", + "Title": "Diffs for R Objects", + "Description": "Generate a colorized diff of two R objects for an intuitive\n visualization of their differences.", + "Version": "0.3.6", + "Authors@R": "c(\n person(\n \"Brodie\", \"Gaslam\", email=\"brodie.gaslam@yahoo.com\",\n role=c(\"aut\", \"cre\")),\n person(\n \"Michael B.\", \"Allen\", email=\"ioplex@gmail.com\",\n role=c(\"ctb\", \"cph\"),\n comment=\"Original C implementation of Myers Diff Algorithm\"))", + "Depends": "R (>= 3.1.0)", + "License": "GPL-2 | GPL-3", + "URL": "https://github.com/brodieG/diffobj", + "BugReports": "https://github.com/brodieG/diffobj/issues", + "RoxygenNote": "7.2.3", + "VignetteBuilder": "knitr", + "Encoding": "UTF-8", + "Suggests": "knitr, rmarkdown", + "Collate": "'capt.R' 'options.R' 'pager.R' 'check.R' 'finalizer.R'\n'misc.R' 'html.R' 'styles.R' 's4.R' 'core.R' 'diff.R' 'get.R'\n'guides.R' 'hunks.R' 'layout.R' 'myerssimple.R' 'rdiff.R'\n'rds.R' 'set.R' 'subset.R' 'summmary.R' 'system.R' 'text.R'\n'tochar.R' 'trim.R' 'word.R'", + "Imports": "crayon (>= 1.3.2), tools, methods, utils, stats", + "NeedsCompilation": "yes", + "Packaged": "2025-04-21 00:11:01 UTC; brodie", + "Author": "Brodie Gaslam [aut, cre],\n Michael B. Allen [ctb, cph] (Original C implementation of Myers Diff\n Algorithm)", + "Maintainer": "Brodie Gaslam ", + "Repository": "RSPM", + "Date/Publication": "2025-04-21 08:30:02 UTC", + "Built": "R 4.5.0; x86_64-pc-linux-gnu; 2025-04-22 04:37:03 UTC; unix" + } + }, + "digest": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "digest", + "Authors@R": "c(person(\"Dirk\", \"Eddelbuettel\", role = c(\"aut\", \"cre\"), email = \"edd@debian.org\",\n comment = c(ORCID = \"0000-0001-6419-907X\")),\n person(\"Antoine\", \"Lucas\", role=\"ctb\"),\n person(\"Jarek\", \"Tuszynski\", role=\"ctb\"),\n person(\"Henrik\", \"Bengtsson\", role=\"ctb\", comment = c(ORCID = \"0000-0002-7579-5165\")),\n person(\"Simon\", \"Urbanek\", role=\"ctb\", comment = c(ORCID = \"0000-0003-2297-1732\")),\n person(\"Mario\", \"Frasca\", role=\"ctb\"),\n person(\"Bryan\", \"Lewis\", role=\"ctb\"),\n person(\"Murray\", \"Stokely\", role=\"ctb\"),\n person(\"Hannes\", \"Muehleisen\", role=\"ctb\"),\n person(\"Duncan\", \"Murdoch\", role=\"ctb\"),\n person(\"Jim\", \"Hester\", role=\"ctb\"),\n person(\"Wush\", \"Wu\", role=\"ctb\", comment = c(ORCID = \"0000-0001-5180-0567\")),\n person(\"Qiang\", \"Kou\", role=\"ctb\", comment = c(ORCID = \"0000-0001-6786-5453\")),\n person(\"Thierry\", \"Onkelinx\", role=\"ctb\", comment = c(ORCID = \"0000-0001-8804-4216\")),\n person(\"Michel\", \"Lang\", role=\"ctb\", comment = c(ORCID = \"0000-0001-9754-0393\")),\n person(\"Viliam\", \"Simko\", role=\"ctb\"),\n person(\"Kurt\", \"Hornik\", role=\"ctb\", comment = c(ORCID = \"0000-0003-4198-9911\")),\n person(\"Radford\", \"Neal\", role=\"ctb\", comment = c(ORCID = \"0000-0002-2473-3407\")),\n person(\"Kendon\", \"Bell\", role=\"ctb\", comment = c(ORCID = \"0000-0002-9093-8312\")),\n person(\"Matthew\", \"de Queljoe\", role=\"ctb\"),\n person(\"Dmitry\", \"Selivanov\", role=\"ctb\"),\n person(\"Ion\", \"Suruceanu\", role=\"ctb\"),\n person(\"Bill\", \"Denney\", role=\"ctb\"),\n person(\"Dirk\", \"Schumacher\", role=\"ctb\"),\n person(\"András\", \"Svraka\", role=\"ctb\"),\n person(\"Sergey\", \"Fedorov\", role=\"ctb\"),\n person(\"Will\", \"Landau\", role=\"ctb\", comment = c(ORCID = \"0000-0003-1878-3253\")),\n person(\"Floris\", \"Vanderhaeghe\", role=\"ctb\", comment = c(ORCID = \"0000-0002-6378-6229\")),\n person(\"Kevin\", \"Tappe\", role=\"ctb\"),\n person(\"Harris\", \"McGehee\", role=\"ctb\"),\n person(\"Tim\", \"Mastny\", role=\"ctb\"),\n person(\"Aaron\", \"Peikert\", role=\"ctb\", comment = c(ORCID = \"0000-0001-7813-818X\")),\n person(\"Mark\", \"van der Loo\", role=\"ctb\", comment = c(ORCID = \"0000-0002-9807-4686\")),\n person(\"Chris\", \"Muir\", role=\"ctb\", comment = c(ORCID = \"0000-0003-2555-3878\")),\n person(\"Moritz\", \"Beller\", role=\"ctb\", comment = c(ORCID = \"0000-0003-4852-0526\")),\n person(\"Sebastian\", \"Campbell\", role=\"ctb\"),\n person(\"Winston\", \"Chang\", role=\"ctb\", comment = c(ORCID = \"0000-0002-1576-2126\")),\n person(\"Dean\", \"Attali\", role=\"ctb\", comment = c(ORCID = \"0000-0002-5645-3493\")),\n person(\"Michael\", \"Chirico\", role=\"ctb\", comment = c(ORCID = \"0000-0003-0787-087X\")),\n person(\"Kevin\", \"Ushey\", role=\"ctb\"))", + "Version": "0.6.37", + "Date": "2024-08-19", + "Title": "Create Compact Hash Digests of R Objects", + "Description": "Implementation of a function 'digest()' for the creation of hash\n digests of arbitrary R objects (using the 'md5', 'sha-1', 'sha-256', 'crc32',\n 'xxhash', 'murmurhash', 'spookyhash', 'blake3', 'crc32c', 'xxh3_64', and 'xxh3_128'\n algorithms) permitting easy comparison of R language objects, as well as functions\n such as'hmac()' to create hash-based message authentication code. Please note that\n this package is not meant to be deployed for cryptographic purposes for which more\n comprehensive (and widely tested) libraries such as 'OpenSSL' should be used.", + "URL": "https://github.com/eddelbuettel/digest,\nhttps://dirk.eddelbuettel.com/code/digest.html", + "BugReports": "https://github.com/eddelbuettel/digest/issues", + "Depends": "R (>= 3.3.0)", + "Imports": "utils", + "License": "GPL (>= 2)", + "Suggests": "tinytest, simplermarkdown", + "VignetteBuilder": "simplermarkdown", + "Encoding": "UTF-8", + "NeedsCompilation": "yes", + "Packaged": "2024-08-19 12:16:05 UTC; edd", + "Author": "Dirk Eddelbuettel [aut, cre] (),\n Antoine Lucas [ctb],\n Jarek Tuszynski [ctb],\n Henrik Bengtsson [ctb] (),\n Simon Urbanek [ctb] (),\n Mario Frasca [ctb],\n Bryan Lewis [ctb],\n Murray Stokely [ctb],\n Hannes Muehleisen [ctb],\n Duncan Murdoch [ctb],\n Jim Hester [ctb],\n Wush Wu [ctb] (),\n Qiang Kou [ctb] (),\n Thierry Onkelinx [ctb] (),\n Michel Lang [ctb] (),\n Viliam Simko [ctb],\n Kurt Hornik [ctb] (),\n Radford Neal [ctb] (),\n Kendon Bell [ctb] (),\n Matthew de Queljoe [ctb],\n Dmitry Selivanov [ctb],\n Ion Suruceanu [ctb],\n Bill Denney [ctb],\n Dirk Schumacher [ctb],\n András Svraka [ctb],\n Sergey Fedorov [ctb],\n Will Landau [ctb] (),\n Floris Vanderhaeghe [ctb] (),\n Kevin Tappe [ctb],\n Harris McGehee [ctb],\n Tim Mastny [ctb],\n Aaron Peikert [ctb] (),\n Mark van der Loo [ctb] (),\n Chris Muir [ctb] (),\n Moritz Beller [ctb] (),\n Sebastian Campbell [ctb],\n Winston Chang [ctb] (),\n Dean Attali [ctb] (),\n Michael Chirico [ctb] (),\n Kevin Ushey [ctb]", + "Maintainer": "Dirk Eddelbuettel ", + "Repository": "RSPM", + "Date/Publication": "2024-08-19 14:10:07 UTC", + "Built": "R 4.5.0; x86_64-pc-linux-gnu; 2025-04-06 04:42:34 UTC; unix" + } + }, + "dplyr": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Type": "Package", + "Package": "dplyr", + "Title": "A Grammar of Data Manipulation", + "Version": "1.1.4", + "Authors@R": "c(\n person(\"Hadley\", \"Wickham\", , \"hadley@posit.co\", role = c(\"aut\", \"cre\"),\n comment = c(ORCID = \"0000-0003-4757-117X\")),\n person(\"Romain\", \"François\", role = \"aut\",\n comment = c(ORCID = \"0000-0002-2444-4226\")),\n person(\"Lionel\", \"Henry\", role = \"aut\"),\n person(\"Kirill\", \"Müller\", role = \"aut\",\n comment = c(ORCID = \"0000-0002-1416-3412\")),\n person(\"Davis\", \"Vaughan\", , \"davis@posit.co\", role = \"aut\",\n comment = c(ORCID = \"0000-0003-4777-038X\")),\n person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\"))\n )", + "Description": "A fast, consistent tool for working with data frame like\n objects, both in memory and out of memory.", + "License": "MIT + file LICENSE", + "URL": "https://dplyr.tidyverse.org, https://github.com/tidyverse/dplyr", + "BugReports": "https://github.com/tidyverse/dplyr/issues", + "Depends": "R (>= 3.5.0)", + "Imports": "cli (>= 3.4.0), generics, glue (>= 1.3.2), lifecycle (>=\n1.0.3), magrittr (>= 1.5), methods, pillar (>= 1.9.0), R6,\nrlang (>= 1.1.0), tibble (>= 3.2.0), tidyselect (>= 1.2.0),\nutils, vctrs (>= 0.6.4)", + "Suggests": "bench, broom, callr, covr, DBI, dbplyr (>= 2.2.1), ggplot2,\nknitr, Lahman, lobstr, microbenchmark, nycflights13, purrr,\nrmarkdown, RMySQL, RPostgreSQL, RSQLite, stringi (>= 1.7.6),\ntestthat (>= 3.1.5), tidyr (>= 1.3.0), withr", + "VignetteBuilder": "knitr", + "Config/Needs/website": "tidyverse, shiny, pkgdown, tidyverse/tidytemplate", + "Config/testthat/edition": "3", + "Encoding": "UTF-8", + "LazyData": "true", + "RoxygenNote": "7.2.3", + "NeedsCompilation": "yes", + "Packaged": "2023-11-16 21:48:56 UTC; hadleywickham", + "Author": "Hadley Wickham [aut, cre] (),\n Romain François [aut] (),\n Lionel Henry [aut],\n Kirill Müller [aut] (),\n Davis Vaughan [aut] (),\n Posit Software, PBC [cph, fnd]", + "Maintainer": "Hadley Wickham ", + "Repository": "RSPM", + "Date/Publication": "2023-11-17 16:50:02 UTC", + "Built": "R 4.5.0; x86_64-pc-linux-gnu; 2025-04-06 04:44:32 UTC; unix" + } + }, + "echarts4r": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "echarts4r", + "Title": "Create Interactive Graphs with 'Echarts JavaScript' Version 5", + "Date": "2023-06-08", + "Version": "0.4.5", + "Authors@R": "c(\n person(\"John\", \"Coene\", email = \"jcoenep@gmail.com\", role = c(\"aut\", \"cph\")),\n person(\"David\", \"Munoz Tord\", email = \"david.munoztord@mailbox.org\", role = c(\"cre\", \"ctb\"), comment = c(ORCID = \"0000-0001-7954-8295\")),\n person(given = \"Wei\", family = \"Su\", email = \"swsoyee@gmail.com\", role = \"ctb\"),\n person(family = \"Helgasoft\", email = \"contact@helgasoft.com\", role = \"ctb\"),\n person(\"Xianying\", \"Tan\", email = \"shrektan@126.com\", role = \"ctb\", comment = c(ORCID = \"0000-0002-6072-3521\")),\n person(\"Robin\", \"Cura\", email = \"robin.cura@gmail.com\", role = \"ctb\", comment = c(ORCID = \"0000-0001-5926-1828\")),\n person(\"Mathida\", \"Chuk\", email = \"mathidachuk@gmail.com\", role = \"ctb\"),\n person(\"Robert\", \"Koetsier\", email = \"rk8roko@gmail.com \", role = \"ctb\", comment = c(ORCID = \"0000-0002-4477-5401\")),\n person(\"Jelle\", \"Geertsma\", email = \"rdatasculptor@gmail.com\", role = \"ctb\")\n )", + "Description": "Easily create interactive charts by leveraging the 'Echarts Javascript' library which includes\n 36 chart types, themes, 'Shiny' proxies and animations.", + "License": "Apache License (>= 2.0)", + "Encoding": "UTF-8", + "Imports": "htmlwidgets, dplyr (>= 0.7.0), purrr, countrycode, broom,\nshiny, scales, corrplot, htmltools, jsonlite, rstudioapi", + "Suggests": "tidyr, testthat, knitr, rmarkdown, covr, data.tree, leaflet,\ntibble", + "Depends": "R (>= 4.1.0)", + "RoxygenNote": "7.2.3", + "URL": "https://echarts4r.john-coene.com/,\nhttps://github.com/JohnCoene/echarts4r", + "BugReports": "https://github.com/JohnCoene/echarts4r/issues/", + "NeedsCompilation": "no", + "Packaged": "2023-06-16 14:02:03 UTC; david", + "Author": "John Coene [aut, cph],\n David Munoz Tord [cre, ctb] (),\n Wei Su [ctb],\n Helgasoft [ctb],\n Xianying Tan [ctb] (),\n Robin Cura [ctb] (),\n Mathida Chuk [ctb],\n Robert Koetsier [ctb] (),\n Jelle Geertsma [ctb]", + "Maintainer": "David Munoz Tord ", + "Repository": "RSPM", + "Date/Publication": "2023-06-16 23:30:02 UTC", + "Built": "R 4.5.0; ; 2025-04-09 07:12:43 UTC; unix" + } + }, + "evaluate": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Type": "Package", + "Package": "evaluate", + "Title": "Parsing and Evaluation Tools that Provide More Details than the\nDefault", + "Version": "1.0.4", + "Authors@R": "c(\n person(\"Hadley\", \"Wickham\", , \"hadley@posit.co\", role = c(\"aut\", \"cre\")),\n person(\"Yihui\", \"Xie\", role = \"aut\",\n comment = c(ORCID = \"0000-0003-0645-5666\")),\n person(\"Michael\", \"Lawrence\", role = \"ctb\"),\n person(\"Thomas\", \"Kluyver\", role = \"ctb\"),\n person(\"Jeroen\", \"Ooms\", role = \"ctb\"),\n person(\"Barret\", \"Schloerke\", role = \"ctb\"),\n person(\"Adam\", \"Ryczkowski\", role = \"ctb\"),\n person(\"Hiroaki\", \"Yutani\", role = \"ctb\"),\n person(\"Michel\", \"Lang\", role = \"ctb\"),\n person(\"Karolis\", \"Koncevičius\", role = \"ctb\"),\n person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\"))\n )", + "Description": "Parsing and evaluation tools that make it easy to recreate\n the command line behaviour of R.", + "License": "MIT + file LICENSE", + "URL": "https://evaluate.r-lib.org/, https://github.com/r-lib/evaluate", + "BugReports": "https://github.com/r-lib/evaluate/issues", + "Depends": "R (>= 3.6.0)", + "Suggests": "callr, covr, ggplot2 (>= 3.3.6), lattice, methods, pkgload,\nragg (>= 1.4.0), rlang (>= 1.1.5), knitr, testthat (>= 3.0.0),\nwithr", + "Config/Needs/website": "tidyverse/tidytemplate", + "Config/testthat/edition": "3", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.2", + "NeedsCompilation": "no", + "Packaged": "2025-06-17 18:21:29 UTC; hadleywickham", + "Author": "Hadley Wickham [aut, cre],\n Yihui Xie [aut] (ORCID: ),\n Michael Lawrence [ctb],\n Thomas Kluyver [ctb],\n Jeroen Ooms [ctb],\n Barret Schloerke [ctb],\n Adam Ryczkowski [ctb],\n Hiroaki Yutani [ctb],\n Michel Lang [ctb],\n Karolis Koncevičius [ctb],\n Posit Software, PBC [cph, fnd]", + "Maintainer": "Hadley Wickham ", + "Repository": "RSPM", + "Date/Publication": "2025-06-18 04:40:16 UTC", + "Built": "R 4.5.0; ; 2025-06-19 04:31:35 UTC; unix" + } + }, + "farver": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Type": "Package", + "Package": "farver", + "Title": "High Performance Colour Space Manipulation", + "Version": "2.1.2", + "Authors@R": "c(\n person(\"Thomas Lin\", \"Pedersen\", , \"thomas.pedersen@posit.co\", role = c(\"cre\", \"aut\"),\n comment = c(ORCID = \"0000-0002-5147-4711\")),\n person(\"Berendea\", \"Nicolae\", role = \"aut\",\n comment = \"Author of the ColorSpace C++ library\"),\n person(\"Romain\", \"François\", , \"romain@purrple.cat\", role = \"aut\",\n comment = c(ORCID = \"0000-0002-2444-4226\")),\n person(\"Posit, PBC\", role = c(\"cph\", \"fnd\"))\n )", + "Description": "The encoding of colour can be handled in many different ways,\n using different colour spaces. As different colour spaces have\n different uses, efficient conversion between these representations are\n important. The 'farver' package provides a set of functions that gives\n access to very fast colour space conversion and comparisons\n implemented in C++, and offers speed improvements over the\n 'convertColor' function in the 'grDevices' package.", + "License": "MIT + file LICENSE", + "URL": "https://farver.data-imaginist.com,\nhttps://github.com/thomasp85/farver", + "BugReports": "https://github.com/thomasp85/farver/issues", + "Suggests": "covr, testthat (>= 3.0.0)", + "Config/testthat/edition": "3", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.1", + "NeedsCompilation": "yes", + "Packaged": "2024-05-13 08:31:27 UTC; thomas", + "Author": "Thomas Lin Pedersen [cre, aut]\n (),\n Berendea Nicolae [aut] (Author of the ColorSpace C++ library),\n Romain François [aut] (),\n Posit, PBC [cph, fnd]", + "Maintainer": "Thomas Lin Pedersen ", + "Repository": "RSPM", + "Date/Publication": "2024-05-13 09:33:09 UTC", + "Built": "R 4.5.0; x86_64-pc-linux-gnu; 2025-04-06 04:42:39 UTC; unix" + } + }, + "fastmap": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "fastmap", + "Title": "Fast Data Structures", + "Version": "1.2.0", + "Authors@R": "c(\n person(\"Winston\", \"Chang\", email = \"winston@posit.co\", role = c(\"aut\", \"cre\")),\n person(given = \"Posit Software, PBC\", role = c(\"cph\", \"fnd\")),\n person(given = \"Tessil\", role = \"cph\", comment = \"hopscotch_map library\")\n )", + "Description": "Fast implementation of data structures, including a key-value\n store, stack, and queue. Environments are commonly used as key-value stores\n in R, but every time a new key is used, it is added to R's global symbol\n table, causing a small amount of memory leakage. This can be problematic in\n cases where many different keys are used. Fastmap avoids this memory leak\n issue by implementing the map using data structures in C++.", + "License": "MIT + file LICENSE", + "Encoding": "UTF-8", + "RoxygenNote": "7.2.3", + "Suggests": "testthat (>= 2.1.1)", + "URL": "https://r-lib.github.io/fastmap/, https://github.com/r-lib/fastmap", + "BugReports": "https://github.com/r-lib/fastmap/issues", + "NeedsCompilation": "yes", + "Packaged": "2024-05-14 17:54:13 UTC; winston", + "Author": "Winston Chang [aut, cre],\n Posit Software, PBC [cph, fnd],\n Tessil [cph] (hopscotch_map library)", + "Maintainer": "Winston Chang ", + "Repository": "RSPM", + "Date/Publication": "2024-05-15 09:00:07 UTC", + "Built": "R 4.5.0; x86_64-pc-linux-gnu; 2025-04-06 04:42:22 UTC; unix" + } + }, + "fontawesome": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Type": "Package", + "Package": "fontawesome", + "Version": "0.5.3", + "Title": "Easily Work with 'Font Awesome' Icons", + "Description": "Easily and flexibly insert 'Font Awesome' icons into 'R Markdown'\n documents and 'Shiny' apps. These icons can be inserted into HTML content\n through inline 'SVG' tags or 'i' tags. There is also a utility function for\n exporting 'Font Awesome' icons as 'PNG' images for those situations where\n raster graphics are needed.", + "Authors@R": "c(\n person(\"Richard\", \"Iannone\", , \"rich@posit.co\", c(\"aut\", \"cre\"),\n comment = c(ORCID = \"0000-0003-3925-190X\")),\n person(\"Christophe\", \"Dervieux\", , \"cderv@posit.co\", role = \"ctb\",\n comment = c(ORCID = \"0000-0003-4474-2498\")),\n person(\"Winston\", \"Chang\", , \"winston@posit.co\", role = \"ctb\"),\n person(\"Dave\", \"Gandy\", role = c(\"ctb\", \"cph\"),\n comment = \"Font-Awesome font\"),\n person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\"))\n )", + "License": "MIT + file LICENSE", + "URL": "https://github.com/rstudio/fontawesome,\nhttps://rstudio.github.io/fontawesome/", + "BugReports": "https://github.com/rstudio/fontawesome/issues", + "Encoding": "UTF-8", + "ByteCompile": "true", + "RoxygenNote": "7.3.2", + "Depends": "R (>= 3.3.0)", + "Imports": "rlang (>= 1.0.6), htmltools (>= 0.5.1.1)", + "Suggests": "covr, dplyr (>= 1.0.8), gt (>= 0.9.0), knitr (>= 1.31),\ntestthat (>= 3.0.0), rsvg", + "Config/testthat/edition": "3", + "NeedsCompilation": "no", + "Packaged": "2024-11-16 17:06:16 UTC; riannone", + "Author": "Richard Iannone [aut, cre] (),\n Christophe Dervieux [ctb] (),\n Winston Chang [ctb],\n Dave Gandy [ctb, cph] (Font-Awesome font),\n Posit Software, PBC [cph, fnd]", + "Maintainer": "Richard Iannone ", + "Repository": "RSPM", + "Date/Publication": "2024-11-16 17:30:02 UTC", + "Built": "R 4.5.0; ; 2025-04-06 04:43:09 UTC; unix" + } + }, + "forcats": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "forcats", + "Title": "Tools for Working with Categorical Variables (Factors)", + "Version": "1.0.0", + "Authors@R": "c(\n person(\"Hadley\", \"Wickham\", , \"hadley@rstudio.com\", role = c(\"aut\", \"cre\")),\n person(\"RStudio\", role = c(\"cph\", \"fnd\"))\n )", + "Description": "Helpers for reordering factor levels (including moving\n specified levels to front, ordering by first appearance, reversing,\n and randomly shuffling), and tools for modifying factor levels\n (including collapsing rare levels into other, 'anonymising', and\n manually 'recoding').", + "License": "MIT + file LICENSE", + "URL": "https://forcats.tidyverse.org/,\nhttps://github.com/tidyverse/forcats", + "BugReports": "https://github.com/tidyverse/forcats/issues", + "Depends": "R (>= 3.4)", + "Imports": "cli (>= 3.4.0), glue, lifecycle, magrittr, rlang (>= 1.0.0),\ntibble", + "Suggests": "covr, dplyr, ggplot2, knitr, readr, rmarkdown, testthat (>=\n3.0.0), withr", + "VignetteBuilder": "knitr", + "Config/Needs/website": "tidyverse/tidytemplate", + "Config/testthat/edition": "3", + "Encoding": "UTF-8", + "LazyData": "true", + "RoxygenNote": "7.2.3", + "NeedsCompilation": "no", + "Packaged": "2023-01-27 14:11:11 UTC; hadleywickham", + "Author": "Hadley Wickham [aut, cre],\n RStudio [cph, fnd]", + "Maintainer": "Hadley Wickham ", + "Repository": "RSPM", + "Date/Publication": "2023-01-29 22:20:02 UTC", + "Built": "R 4.5.0; ; 2025-04-06 04:44:24 UTC; unix" + } + }, + "forecast": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "forecast", + "Version": "8.24.0", + "Title": "Forecasting Functions for Time Series and Linear Models", + "Description": "Methods and tools for displaying and analysing\n univariate time series forecasts including exponential smoothing\n via state space models and automatic ARIMA modelling.", + "Depends": "R (>= 3.5.0),", + "Imports": "colorspace, fracdiff, generics (>= 0.1.2), ggplot2 (>= 2.2.1),\ngraphics, lmtest, magrittr, nnet, parallel, Rcpp (>= 0.11.0),\nstats, timeDate, tseries, urca, withr, zoo", + "Suggests": "forecTheta, knitr, methods, rmarkdown, rticles, scales,\nseasonal, testthat (>= 3.0.0), uroot", + "LinkingTo": "Rcpp (>= 0.11.0), RcppArmadillo (>= 0.2.35)", + "LazyData": "yes", + "ByteCompile": "TRUE", + "Authors@R": "c(\n person(\"Rob\", \"Hyndman\", email = \"Rob.Hyndman@monash.edu\", role = c(\"aut\", \"cre\", \"cph\"), comment = c(ORCID = \"0000-0002-2140-5352\")),\n person(\"George\", \"Athanasopoulos\", role = \"aut\", comment = c(ORCID = \"0000-0002-5389-2802\")),\n person(\"Christoph\", \"Bergmeir\", role = \"aut\", comment = c(ORCID = \"0000-0002-3665-9021\")),\n person(\"Gabriel\", \"Caceres\", role = \"aut\", comment = c(ORCID = \"0000-0002-2947-2023\")),\n person(\"Leanne\", \"Chhay\", role = \"aut\"),\n person(\"Kirill\", \"Kuroptev\", role = \"aut\"),\n person(\"Mitchell\", \"O'Hara-Wild\", role = \"aut\", comment = c(ORCID = \"0000-0001-6729-7695\")),\n person(\"Fotios\", \"Petropoulos\", role = \"aut\", comment = c(ORCID = \"0000-0003-3039-4955\")),\n person(\"Slava\", \"Razbash\", role = \"aut\"),\n person(\"Earo\", \"Wang\", role = \"aut\", comment = c(ORCID = \"0000-0001-6448-5260\")),\n person(\"Farah\", \"Yasmeen\", role = \"aut\", comment = c(ORCID = \"0000-0002-1479-5401\")),\n person(\"Federico\", \"Garza\", role = \"ctb\"),\n person(\"Daniele\", \"Girolimetto\", role = \"ctb\"),\n person(\"Ross\", \"Ihaka\", role = c(\"ctb\", \"cph\")),\n person(\"R Core Team\", role = c(\"ctb\", \"cph\")),\n person(\"Daniel\", \"Reid\", role = \"ctb\"),\n person(\"David\", \"Shaub\", role = \"ctb\"),\n person(\"Yuan\", \"Tang\", role = \"ctb\", comment = c(ORCID = \"0000-0001-5243-233X\")),\n person(\"Xiaoqian\", \"Wang\", role = \"ctb\"),\n person(\"Zhenyu\", \"Zhou\", role = \"ctb\")\n )", + "BugReports": "https://github.com/robjhyndman/forecast/issues", + "License": "GPL-3", + "URL": "https://pkg.robjhyndman.com/forecast/,\nhttps://github.com/robjhyndman/forecast", + "VignetteBuilder": "knitr", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.2", + "Config/testthat/edition": "3", + "NeedsCompilation": "yes", + "Packaged": "2025-04-08 05:47:31 UTC; hyndman", + "Author": "Rob Hyndman [aut, cre, cph] (),\n George Athanasopoulos [aut] (),\n Christoph Bergmeir [aut] (),\n Gabriel Caceres [aut] (),\n Leanne Chhay [aut],\n Kirill Kuroptev [aut],\n Mitchell O'Hara-Wild [aut] (),\n Fotios Petropoulos [aut] (),\n Slava Razbash [aut],\n Earo Wang [aut] (),\n Farah Yasmeen [aut] (),\n Federico Garza [ctb],\n Daniele Girolimetto [ctb],\n Ross Ihaka [ctb, cph],\n R Core Team [ctb, cph],\n Daniel Reid [ctb],\n David Shaub [ctb],\n Yuan Tang [ctb] (),\n Xiaoqian Wang [ctb],\n Zhenyu Zhou [ctb]", + "Maintainer": "Rob Hyndman ", + "Repository": "RSPM", + "Date/Publication": "2025-04-08 06:50:02 UTC", + "Built": "R 4.5.0; x86_64-pc-linux-gnu; 2025-07-03 14:16:27 UTC; unix" + } + }, + "fracdiff": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "fracdiff", + "Version": "1.5-3", + "VersionNote": "Released 1.5-0 on 2019-12-09, 1.5-1 on 2020-01-20, 1.5-2\non 2022-10-31", + "Date": "2024-02-01", + "Title": "Fractionally Differenced ARIMA aka ARFIMA(P,d,q) Models", + "Authors@R": "c(person(\"Martin\",\"Maechler\", role=c(\"aut\",\"cre\"), email=\"maechler@stat.math.ethz.ch\",\n\t \t\t\t\t comment = c(ORCID = \"0000-0002-8685-9910\"))\n , person(\"Chris\", \"Fraley\", role=c(\"ctb\",\"cph\"), comment = \"S original; Fortran code\")\n , person(\"Friedrich\", \"Leisch\", role = \"ctb\",\n comment = c(\"R port\", ORCID = \"0000-0001-7278-1983\"))\n , person(\"Valderio\", \"Reisen\", role=\"ctb\", comment = \"fdGPH() & fdSperio()\")\n , person(\"Artur\", \"Lemonte\", role=\"ctb\", comment = \"fdGPH() & fdSperio()\")\n , person(\"Rob\", \"Hyndman\", email=\"Rob.Hyndman@monash.edu\", role=\"ctb\",\n \t comment = c(\"residuals() & fitted()\", ORCID = \"0000-0002-2140-5352\"))\n )", + "Description": "Maximum likelihood estimation of the parameters of a fractionally\n differenced ARIMA(p,d,q) model (Haslett and Raftery, Appl.Statistics, 1989);\n including inference and basic methods. Some alternative algorithms to estimate \"H\".", + "Imports": "stats", + "Suggests": "longmemo, forecast, urca", + "License": "GPL (>= 2)", + "URL": "https://github.com/mmaechler/fracdiff", + "BugReports": "https://github.com/mmaechler/fracdiff/issues", + "Encoding": "UTF-8", + "NeedsCompilation": "yes", + "Packaged": "2024-02-01 08:45:38 UTC; maechler", + "Author": "Martin Maechler [aut, cre] (),\n Chris Fraley [ctb, cph] (S original; Fortran code),\n Friedrich Leisch [ctb] (R port,\n ),\n Valderio Reisen [ctb] (fdGPH() & fdSperio()),\n Artur Lemonte [ctb] (fdGPH() & fdSperio()),\n Rob Hyndman [ctb] (residuals() & fitted(),\n )", + "Maintainer": "Martin Maechler ", + "Repository": "RSPM", + "Date/Publication": "2024-02-01 10:00:02 UTC", + "Built": "R 4.5.0; x86_64-pc-linux-gnu; 2025-04-08 03:10:20 UTC; unix" + } + }, + "fs": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "fs", + "Title": "Cross-Platform File System Operations Based on 'libuv'", + "Version": "1.6.6", + "Authors@R": "c(\n person(\"Jim\", \"Hester\", role = \"aut\"),\n person(\"Hadley\", \"Wickham\", , \"hadley@posit.co\", role = \"aut\"),\n person(\"Gábor\", \"Csárdi\", , \"csardi.gabor@gmail.com\", role = c(\"aut\", \"cre\")),\n person(\"libuv project contributors\", role = \"cph\",\n comment = \"libuv library\"),\n person(\"Joyent, Inc. and other Node contributors\", role = \"cph\",\n comment = \"libuv library\"),\n person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\"))\n )", + "Description": "A cross-platform interface to file system operations, built\n on top of the 'libuv' C library.", + "License": "MIT + file LICENSE", + "URL": "https://fs.r-lib.org, https://github.com/r-lib/fs", + "BugReports": "https://github.com/r-lib/fs/issues", + "Depends": "R (>= 3.6)", + "Imports": "methods", + "Suggests": "covr, crayon, knitr, pillar (>= 1.0.0), rmarkdown, spelling,\ntestthat (>= 3.0.0), tibble (>= 1.1.0), vctrs (>= 0.3.0), withr", + "VignetteBuilder": "knitr", + "ByteCompile": "true", + "Config/Needs/website": "tidyverse/tidytemplate", + "Config/testthat/edition": "3", + "Copyright": "file COPYRIGHTS", + "Encoding": "UTF-8", + "Language": "en-US", + "RoxygenNote": "7.2.3", + "SystemRequirements": "GNU make", + "NeedsCompilation": "yes", + "Packaged": "2025-04-12 09:39:13 UTC; gaborcsardi", + "Author": "Jim Hester [aut],\n Hadley Wickham [aut],\n Gábor Csárdi [aut, cre],\n libuv project contributors [cph] (libuv library),\n Joyent, Inc. and other Node contributors [cph] (libuv library),\n Posit Software, PBC [cph, fnd]", + "Maintainer": "Gábor Csárdi ", + "Repository": "RSPM", + "Date/Publication": "2025-04-12 10:40:02 UTC", + "Built": "R 4.5.0; x86_64-pc-linux-gnu; 2025-04-14 17:54:09 UTC; unix" + } + }, + "furrr": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "furrr", + "Title": "Apply Mapping Functions in Parallel using Futures", + "Version": "0.3.1", + "Authors@R": "c(\n person(\"Davis\", \"Vaughan\", , \"davis@rstudio.com\", role = c(\"aut\", \"cre\")),\n person(\"Matt\", \"Dancho\", , \"mdancho@business-science.io\", role = \"aut\"),\n person(\"RStudio\", role = c(\"cph\", \"fnd\"))\n )", + "Description": "Implementations of the family of map() functions from 'purrr'\n that can be resolved using any 'future'-supported backend, e.g.\n parallel on the local machine or distributed on a compute cluster.", + "License": "MIT + file LICENSE", + "URL": "https://github.com/DavisVaughan/furrr,\nhttps://furrr.futureverse.org/", + "BugReports": "https://github.com/DavisVaughan/furrr/issues", + "Depends": "future (>= 1.25.0), R (>= 3.4.0)", + "Imports": "globals (>= 0.14.0), lifecycle (>= 1.0.1), purrr (>= 0.3.4),\nrlang (>= 1.0.2), vctrs (>= 0.4.1)", + "Suggests": "carrier, covr, dplyr (>= 0.7.4), knitr, listenv (>= 0.6.0),\nmagrittr, rmarkdown, testthat (>= 3.0.0), tidyselect, withr", + "Config/Needs/website": "progressr", + "Config/testthat/edition": "3", + "Encoding": "UTF-8", + "RoxygenNote": "7.2.1", + "NeedsCompilation": "no", + "Packaged": "2022-08-15 19:00:06 UTC; davis", + "Author": "Davis Vaughan [aut, cre],\n Matt Dancho [aut],\n RStudio [cph, fnd]", + "Maintainer": "Davis Vaughan ", + "Repository": "RSPM", + "Date/Publication": "2022-08-15 19:40:02 UTC", + "Built": "R 4.5.0; ; 2025-04-06 04:44:02 UTC; unix" + } + }, + "future": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "future", + "Version": "1.67.0", + "Title": "Unified Parallel and Distributed Processing in R for Everyone", + "Depends": "R (>= 3.2.0)", + "Imports": "digest, globals (>= 0.18.0), listenv (>= 0.8.0), parallel,\nparallelly (>= 1.44.0), utils", + "Suggests": "methods, RhpcBLASctl, R.rsp, markdown", + "VignetteBuilder": "R.rsp", + "Authors@R": "c(person(\"Henrik\", \"Bengtsson\",\n role = c(\"aut\", \"cre\", \"cph\"),\n email = \"henrikb@braju.com\",\n comment = c(ORCID = \"0000-0002-7579-5165\")))", + "Description": "The purpose of this package is to provide a lightweight and\n unified Future API for sequential and parallel processing of R\n expression via futures. The simplest way to evaluate an expression\n in parallel is to use `x %<-% { expression }` with `plan(multisession)`.\n This package implements sequential, multicore, multisession, and\n cluster futures. With these, R expressions can be evaluated on the\n local machine, in parallel a set of local machines, or distributed\n on a mix of local and remote machines.\n Extensions to this package implement additional backends for\n processing futures via compute cluster schedulers, etc.\n Because of its unified API, there is no need to modify any code in order\n switch from sequential on the local machine to, say, distributed\n processing on a remote compute cluster.\n Another strength of this package is that global variables and functions\n are automatically identified and exported as needed, making it\n straightforward to tweak existing code to make use of futures.", + "License": "LGPL (>= 2.1)", + "LazyLoad": "TRUE", + "ByteCompile": "TRUE", + "URL": "https://future.futureverse.org,\nhttps://github.com/futureverse/future", + "BugReports": "https://github.com/futureverse/future/issues", + "Language": "en-US", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.2", + "Collate": "'000.bquote.R' '000.import.R' '000.re-exports.R'\n'010.tweakable.R' '010.utils-parallelly.R'\n'backend_api-01-FutureBackend-class.R'\n'backend_api-03.MultiprocessFutureBackend-class.R'\n'backend_api-11.ClusterFutureBackend-class.R'\n'backend_api-11.MulticoreFutureBackend-class.R'\n'backend_api-11.SequentialFutureBackend-class.R'\n'backend_api-13.MultisessionFutureBackend-class.R'\n'backend_api-ConstantFuture-class.R'\n'backend_api-Future-class.R' 'backend_api-FutureRegistry.R'\n'backend_api-UniprocessFuture-class.R'\n'backend_api-evalFuture.R' 'core_api-cancel.R'\n'core_api-future.R' 'core_api-reset.R' 'core_api-resolved.R'\n'core_api-value.R' 'delayed_api-futureAssign.R'\n'delayed_api-futureOf.R' 'demo_api-mandelbrot.R'\n'infix_api-01-futureAssign_OP.R' 'infix_api-02-globals_OP.R'\n'infix_api-03-seed_OP.R' 'infix_api-04-stdout_OP.R'\n'infix_api-05-conditions_OP.R' 'infix_api-06-lazy_OP.R'\n'infix_api-07-label_OP.R' 'infix_api-08-plan_OP.R'\n'infix_api-09-tweak_OP.R'\n'protected_api-FutureCondition-class.R'\n'protected_api-FutureGlobals-class.R'\n'protected_api-FutureResult-class.R' 'protected_api-futures.R'\n'protected_api-globals.R' 'protected_api-journal.R'\n'protected_api-resolve.R' 'protected_api-signalConditions.R'\n'testme.R' 'utils-basic.R' 'utils-conditions.R'\n'utils-connections.R' 'utils-debug.R'\n'utils-immediateCondition.R' 'utils-marshalling.R'\n'utils-objectSize.R' 'utils-options.R' 'utils-prune_pkg_code.R'\n'utils-registerClusterTypes.R' 'utils-rng_utils.R'\n'utils-signalEarly.R' 'utils-stealth_sample.R'\n'utils-sticky_globals.R' 'utils-tweakExpression.R'\n'utils-uuid.R' 'utils-whichIndex.R' 'utils_api-backtrace.R'\n'utils_api-capture_journals.R' 'utils_api-futureCall.R'\n'utils_api-futureSessionInfo.R' 'utils_api-makeClusterFuture.R'\n'utils_api-minifuture.R' 'utils_api-nbrOfWorkers.R'\n'utils_api-plan.R' 'utils_api-plan-with.R'\n'utils_api-sessionDetails.R' 'utils_api-tweak.R' 'zzz.R'", + "NeedsCompilation": "no", + "Packaged": "2025-07-29 10:07:18 UTC; henrik", + "Author": "Henrik Bengtsson [aut, cre, cph] (ORCID:\n )", + "Maintainer": "Henrik Bengtsson ", + "Repository": "RSPM", + "Date/Publication": "2025-07-29 12:50:07 UTC", + "Built": "R 4.5.1; ; 2025-07-31 10:41:33 UTC; unix" + } + }, + "future.apply": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "future.apply", + "Version": "1.20.0", + "Title": "Apply Function to Elements in Parallel using Futures", + "Depends": "R (>= 3.2.0), future (>= 1.49.0)", + "Imports": "globals, parallel, utils", + "Suggests": "datasets, stats, tools, listenv, R.rsp, markdown", + "VignetteBuilder": "R.rsp", + "Authors@R": "c(person(\"Henrik\", \"Bengtsson\",\n role = c(\"aut\", \"cre\", \"cph\"),\n email = \"henrikb@braju.com\",\n comment = c(ORCID = \"0000-0002-7579-5165\")),\n person(\"R Core Team\", role = c(\"cph\", \"ctb\")))", + "Description": "Implementations of apply(), by(), eapply(), lapply(), Map(), .mapply(), mapply(), replicate(), sapply(), tapply(), and vapply() that can be resolved using any future-supported backend, e.g. parallel on the local machine or distributed on a compute cluster. These future_*apply() functions come with the same pros and cons as the corresponding base-R *apply() functions but with the additional feature of being able to be processed via the future framework .", + "License": "GPL (>= 2)", + "LazyLoad": "TRUE", + "URL": "https://future.apply.futureverse.org,\nhttps://github.com/futureverse/future.apply", + "BugReports": "https://github.com/futureverse/future.apply/issues", + "Language": "en-US", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.2", + "NeedsCompilation": "no", + "Packaged": "2025-06-06 06:39:06 UTC; henrik", + "Author": "Henrik Bengtsson [aut, cre, cph] (ORCID:\n ),\n R Core Team [cph, ctb]", + "Maintainer": "Henrik Bengtsson ", + "Repository": "RSPM", + "Date/Publication": "2025-06-06 08:00:02 UTC", + "Built": "R 4.5.0; ; 2025-06-07 04:39:13 UTC; unix" + } + }, + "generics": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "generics", + "Title": "Common S3 Generics not Provided by Base R Methods Related to\nModel Fitting", + "Version": "0.1.4", + "Authors@R": "c(\n person(\"Hadley\", \"Wickham\", , \"hadley@posit.co\", role = c(\"aut\", \"cre\"),\n comment = c(ORCID = \"0000-0003-4757-117X\")),\n person(\"Max\", \"Kuhn\", , \"max@posit.co\", role = \"aut\"),\n person(\"Davis\", \"Vaughan\", , \"davis@posit.co\", role = \"aut\"),\n person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\"),\n comment = c(ROR = \"https://ror.org/03wc8by49\"))\n )", + "Description": "In order to reduce potential package dependencies and\n conflicts, generics provides a number of commonly used S3 generics.", + "License": "MIT + file LICENSE", + "URL": "https://generics.r-lib.org, https://github.com/r-lib/generics", + "BugReports": "https://github.com/r-lib/generics/issues", + "Depends": "R (>= 3.6)", + "Imports": "methods", + "Suggests": "covr, pkgload, testthat (>= 3.0.0), tibble, withr", + "Config/Needs/website": "tidyverse/tidytemplate", + "Config/testthat/edition": "3", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.2", + "NeedsCompilation": "no", + "Packaged": "2025-05-09 18:17:41 UTC; hadleywickham", + "Author": "Hadley Wickham [aut, cre] (ORCID:\n ),\n Max Kuhn [aut],\n Davis Vaughan [aut],\n Posit Software, PBC [cph, fnd] (ROR: )", + "Maintainer": "Hadley Wickham ", + "Repository": "RSPM", + "Date/Publication": "2025-05-09 23:50:06 UTC", + "Built": "R 4.5.0; ; 2025-05-10 11:00:35 UTC; unix" + } + }, + "ggplot2": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "ggplot2", + "Version": "3.5.2", + "Title": "Create Elegant Data Visualisations Using the Grammar of Graphics", + "Authors@R": "c(\n person(\"Hadley\", \"Wickham\", , \"hadley@posit.co\", role = \"aut\",\n comment = c(ORCID = \"0000-0003-4757-117X\")),\n person(\"Winston\", \"Chang\", role = \"aut\",\n comment = c(ORCID = \"0000-0002-1576-2126\")),\n person(\"Lionel\", \"Henry\", role = \"aut\"),\n person(\"Thomas Lin\", \"Pedersen\", , \"thomas.pedersen@posit.co\", role = c(\"aut\", \"cre\"),\n comment = c(ORCID = \"0000-0002-5147-4711\")),\n person(\"Kohske\", \"Takahashi\", role = \"aut\"),\n person(\"Claus\", \"Wilke\", role = \"aut\",\n comment = c(ORCID = \"0000-0002-7470-9261\")),\n person(\"Kara\", \"Woo\", role = \"aut\",\n comment = c(ORCID = \"0000-0002-5125-4188\")),\n person(\"Hiroaki\", \"Yutani\", role = \"aut\",\n comment = c(ORCID = \"0000-0002-3385-7233\")),\n person(\"Dewey\", \"Dunnington\", role = \"aut\",\n comment = c(ORCID = \"0000-0002-9415-4582\")),\n person(\"Teun\", \"van den Brand\", role = \"aut\",\n comment = c(ORCID = \"0000-0002-9335-7468\")),\n person(\"Posit, PBC\", role = c(\"cph\", \"fnd\"))\n )", + "Description": "A system for 'declaratively' creating graphics, based on \"The\n Grammar of Graphics\". You provide the data, tell 'ggplot2' how to map\n variables to aesthetics, what graphical primitives to use, and it\n takes care of the details.", + "License": "MIT + file LICENSE", + "URL": "https://ggplot2.tidyverse.org,\nhttps://github.com/tidyverse/ggplot2", + "BugReports": "https://github.com/tidyverse/ggplot2/issues", + "Depends": "R (>= 3.5)", + "Imports": "cli, glue, grDevices, grid, gtable (>= 0.1.1), isoband,\nlifecycle (> 1.0.1), MASS, mgcv, rlang (>= 1.1.0), scales (>=\n1.3.0), stats, tibble, vctrs (>= 0.6.0), withr (>= 2.5.0)", + "Suggests": "covr, dplyr, ggplot2movies, hexbin, Hmisc, knitr, mapproj,\nmaps, multcomp, munsell, nlme, profvis, quantreg, ragg (>=\n1.2.6), RColorBrewer, rmarkdown, rpart, sf (>= 0.7-3), svglite\n(>= 2.1.2), testthat (>= 3.1.2), vdiffr (>= 1.0.6), xml2", + "Enhances": "sp", + "VignetteBuilder": "knitr", + "Config/Needs/website": "ggtext, tidyr, forcats, tidyverse/tidytemplate", + "Config/testthat/edition": "3", + "Encoding": "UTF-8", + "LazyData": "true", + "RoxygenNote": "7.3.2", + "Collate": "'ggproto.R' 'ggplot-global.R' 'aaa-.R'\n'aes-colour-fill-alpha.R' 'aes-evaluation.R'\n'aes-group-order.R' 'aes-linetype-size-shape.R'\n'aes-position.R' 'compat-plyr.R' 'utilities.R' 'aes.R'\n'utilities-checks.R' 'legend-draw.R' 'geom-.R'\n'annotation-custom.R' 'annotation-logticks.R' 'geom-polygon.R'\n'geom-map.R' 'annotation-map.R' 'geom-raster.R'\n'annotation-raster.R' 'annotation.R' 'autolayer.R' 'autoplot.R'\n'axis-secondary.R' 'backports.R' 'bench.R' 'bin.R' 'coord-.R'\n'coord-cartesian-.R' 'coord-fixed.R' 'coord-flip.R'\n'coord-map.R' 'coord-munch.R' 'coord-polar.R'\n'coord-quickmap.R' 'coord-radial.R' 'coord-sf.R'\n'coord-transform.R' 'data.R' 'docs_layer.R' 'facet-.R'\n'facet-grid-.R' 'facet-null.R' 'facet-wrap.R' 'fortify-lm.R'\n'fortify-map.R' 'fortify-multcomp.R' 'fortify-spatial.R'\n'fortify.R' 'stat-.R' 'geom-abline.R' 'geom-rect.R'\n'geom-bar.R' 'geom-bin2d.R' 'geom-blank.R' 'geom-boxplot.R'\n'geom-col.R' 'geom-path.R' 'geom-contour.R' 'geom-count.R'\n'geom-crossbar.R' 'geom-segment.R' 'geom-curve.R'\n'geom-defaults.R' 'geom-ribbon.R' 'geom-density.R'\n'geom-density2d.R' 'geom-dotplot.R' 'geom-errorbar.R'\n'geom-errorbarh.R' 'geom-freqpoly.R' 'geom-function.R'\n'geom-hex.R' 'geom-histogram.R' 'geom-hline.R' 'geom-jitter.R'\n'geom-label.R' 'geom-linerange.R' 'geom-point.R'\n'geom-pointrange.R' 'geom-quantile.R' 'geom-rug.R' 'geom-sf.R'\n'geom-smooth.R' 'geom-spoke.R' 'geom-text.R' 'geom-tile.R'\n'geom-violin.R' 'geom-vline.R' 'ggplot2-package.R'\n'grob-absolute.R' 'grob-dotstack.R' 'grob-null.R' 'grouping.R'\n'theme-elements.R' 'guide-.R' 'guide-axis.R'\n'guide-axis-logticks.R' 'guide-axis-stack.R'\n'guide-axis-theta.R' 'guide-legend.R' 'guide-bins.R'\n'guide-colorbar.R' 'guide-colorsteps.R' 'guide-custom.R'\n'layer.R' 'guide-none.R' 'guide-old.R' 'guides-.R'\n'guides-grid.R' 'hexbin.R' 'import-standalone-obj-type.R'\n'import-standalone-types-check.R' 'labeller.R' 'labels.R'\n'layer-sf.R' 'layout.R' 'limits.R' 'margins.R' 'performance.R'\n'plot-build.R' 'plot-construction.R' 'plot-last.R' 'plot.R'\n'position-.R' 'position-collide.R' 'position-dodge.R'\n'position-dodge2.R' 'position-identity.R' 'position-jitter.R'\n'position-jitterdodge.R' 'position-nudge.R' 'position-stack.R'\n'quick-plot.R' 'reshape-add-margins.R' 'save.R' 'scale-.R'\n'scale-alpha.R' 'scale-binned.R' 'scale-brewer.R'\n'scale-colour.R' 'scale-continuous.R' 'scale-date.R'\n'scale-discrete-.R' 'scale-expansion.R' 'scale-gradient.R'\n'scale-grey.R' 'scale-hue.R' 'scale-identity.R'\n'scale-linetype.R' 'scale-linewidth.R' 'scale-manual.R'\n'scale-shape.R' 'scale-size.R' 'scale-steps.R' 'scale-type.R'\n'scale-view.R' 'scale-viridis.R' 'scales-.R' 'stat-align.R'\n'stat-bin.R' 'stat-bin2d.R' 'stat-bindot.R' 'stat-binhex.R'\n'stat-boxplot.R' 'stat-contour.R' 'stat-count.R'\n'stat-density-2d.R' 'stat-density.R' 'stat-ecdf.R'\n'stat-ellipse.R' 'stat-function.R' 'stat-identity.R'\n'stat-qq-line.R' 'stat-qq.R' 'stat-quantilemethods.R'\n'stat-sf-coordinates.R' 'stat-sf.R' 'stat-smooth-methods.R'\n'stat-smooth.R' 'stat-sum.R' 'stat-summary-2d.R'\n'stat-summary-bin.R' 'stat-summary-hex.R' 'stat-summary.R'\n'stat-unique.R' 'stat-ydensity.R' 'summarise-plot.R'\n'summary.R' 'theme.R' 'theme-defaults.R' 'theme-current.R'\n'utilities-break.R' 'utilities-grid.R' 'utilities-help.R'\n'utilities-matrix.R' 'utilities-patterns.R'\n'utilities-resolution.R' 'utilities-tidy-eval.R' 'zxx.R'\n'zzz.R'", + "NeedsCompilation": "no", + "Packaged": "2025-04-08 10:58:01 UTC; thomas", + "Author": "Hadley Wickham [aut] (),\n Winston Chang [aut] (),\n Lionel Henry [aut],\n Thomas Lin Pedersen [aut, cre]\n (),\n Kohske Takahashi [aut],\n Claus Wilke [aut] (),\n Kara Woo [aut] (),\n Hiroaki Yutani [aut] (),\n Dewey Dunnington [aut] (),\n Teun van den Brand [aut] (),\n Posit, PBC [cph, fnd]", + "Maintainer": "Thomas Lin Pedersen ", + "Repository": "RSPM", + "Date/Publication": "2025-04-09 09:40:10 UTC", + "Built": "R 4.5.0; ; 2025-04-10 19:44:07 UTC; unix" + } + }, + "globals": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "globals", + "Version": "0.18.0", + "Depends": "R (>= 3.1.2)", + "Imports": "codetools", + "Title": "Identify Global Objects in R Expressions", + "Authors@R": "c(\n person(\"Henrik\", \"Bengtsson\", role=c(\"aut\", \"cre\", \"cph\"),\n email=\"henrikb@braju.com\"),\n person(\"Davis\",\"Vaughan\", role=\"ctb\",\n email=\"davis@posit.co\"))", + "Description": "Identifies global (\"unknown\" or \"free\") objects in R expressions\n by code inspection using various strategies (ordered, liberal,\n conservative, or deep-first search). The objective of this package is to\n make it as simple as possible to identify global objects for the purpose\n of exporting them in parallel, distributed compute environments.", + "License": "LGPL (>= 2.1)", + "LazyLoad": "TRUE", + "ByteCompile": "TRUE", + "Language": "en-US", + "Encoding": "UTF-8", + "URL": "https://globals.futureverse.org,\nhttps://github.com/futureverse/globals", + "BugReports": "https://github.com/futureverse/globals/issues", + "RoxygenNote": "7.3.2", + "NeedsCompilation": "no", + "Packaged": "2025-05-08 08:30:29 UTC; henrik", + "Author": "Henrik Bengtsson [aut, cre, cph],\n Davis Vaughan [ctb]", + "Maintainer": "Henrik Bengtsson ", + "Repository": "RSPM", + "Date/Publication": "2025-05-08 09:00:03 UTC", + "Built": "R 4.5.0; ; 2025-05-09 05:02:41 UTC; unix" + } + }, + "glue": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "glue", + "Title": "Interpreted String Literals", + "Version": "1.8.0", + "Authors@R": "c(\n person(\"Jim\", \"Hester\", role = \"aut\",\n comment = c(ORCID = \"0000-0002-2739-7082\")),\n person(\"Jennifer\", \"Bryan\", , \"jenny@posit.co\", role = c(\"aut\", \"cre\"),\n comment = c(ORCID = \"0000-0002-6983-2759\")),\n person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\"))\n )", + "Description": "An implementation of interpreted string literals, inspired by\n Python's Literal String Interpolation\n and Docstrings\n and Julia's Triple-Quoted\n String Literals\n .", + "License": "MIT + file LICENSE", + "URL": "https://glue.tidyverse.org/, https://github.com/tidyverse/glue", + "BugReports": "https://github.com/tidyverse/glue/issues", + "Depends": "R (>= 3.6)", + "Imports": "methods", + "Suggests": "crayon, DBI (>= 1.2.0), dplyr, knitr, magrittr, rlang,\nrmarkdown, RSQLite, testthat (>= 3.2.0), vctrs (>= 0.3.0),\nwaldo (>= 0.5.3), withr", + "VignetteBuilder": "knitr", + "ByteCompile": "true", + "Config/Needs/website": "bench, forcats, ggbeeswarm, ggplot2, R.utils,\nrprintf, tidyr, tidyverse/tidytemplate", + "Config/testthat/edition": "3", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.2", + "NeedsCompilation": "yes", + "Packaged": "2024-09-27 16:00:45 UTC; jenny", + "Author": "Jim Hester [aut] (),\n Jennifer Bryan [aut, cre] (),\n Posit Software, PBC [cph, fnd]", + "Maintainer": "Jennifer Bryan ", + "Repository": "RSPM", + "Date/Publication": "2024-09-30 22:30:01 UTC", + "Built": "R 4.5.0; x86_64-pc-linux-gnu; 2025-04-06 04:42:08 UTC; unix" + } + }, + "gower": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "gower", + "Maintainer": "Mark van der Loo ", + "License": "GPL-3", + "Title": "Gower's Distance", + "Type": "Package", + "LazyLoad": "yes", + "Authors@R": "c( person(\"Mark\", \"van der Loo\", role=c(\"aut\",\"cre\"),email=\"mark.vanderloo@gmail.com\")\n , person(\"David\", \"Turner\", role=\"ctb\"))", + "Description": "Compute Gower's distance (or similarity) coefficient between records. Compute \n the top-n matches between records. Core algorithms are executed in parallel on systems\n supporting OpenMP.", + "Version": "1.0.2", + "URL": "https://github.com/markvanderloo/gower", + "BugReports": "https://github.com/markvanderloo/gower/issues", + "Suggests": "tinytest (>= 0.9.3),", + "RoxygenNote": "7.3.2", + "NeedsCompilation": "yes", + "Packaged": "2024-12-16 15:36:14 UTC; mark", + "Author": "Mark van der Loo [aut, cre],\n David Turner [ctb]", + "Repository": "RSPM", + "Date/Publication": "2024-12-17 08:10:02 UTC", + "Encoding": "UTF-8", + "Built": "R 4.5.0; x86_64-pc-linux-gnu; 2025-04-08 03:13:02 UTC; unix" + } + }, + "gtable": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "gtable", + "Title": "Arrange 'Grobs' in Tables", + "Version": "0.3.6", + "Authors@R": "c(\n person(\"Hadley\", \"Wickham\", , \"hadley@posit.co\", role = \"aut\"),\n person(\"Thomas Lin\", \"Pedersen\", , \"thomas.pedersen@posit.co\", role = c(\"aut\", \"cre\")),\n person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\"))\n )", + "Description": "Tools to make it easier to work with \"tables\" of 'grobs'. The\n 'gtable' package defines a 'gtable' grob class that specifies a grid\n along with a list of grobs and their placement in the grid. Further\n the package makes it easy to manipulate and combine 'gtable' objects\n so that complex compositions can be built up sequentially.", + "License": "MIT + file LICENSE", + "URL": "https://gtable.r-lib.org, https://github.com/r-lib/gtable", + "BugReports": "https://github.com/r-lib/gtable/issues", + "Depends": "R (>= 4.0)", + "Imports": "cli, glue, grid, lifecycle, rlang (>= 1.1.0), stats", + "Suggests": "covr, ggplot2, knitr, profvis, rmarkdown, testthat (>= 3.0.0)", + "VignetteBuilder": "knitr", + "Config/Needs/website": "tidyverse/tidytemplate", + "Config/testthat/edition": "3", + "Config/usethis/last-upkeep": "2024-10-25", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.2", + "NeedsCompilation": "no", + "Packaged": "2024-10-25 12:42:05 UTC; thomas", + "Author": "Hadley Wickham [aut],\n Thomas Lin Pedersen [aut, cre],\n Posit Software, PBC [cph, fnd]", + "Maintainer": "Thomas Lin Pedersen ", + "Repository": "RSPM", + "Date/Publication": "2024-10-25 13:20:02 UTC", + "Built": "R 4.5.0; ; 2025-04-06 04:43:03 UTC; unix" + } + }, + "hardhat": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "hardhat", + "Title": "Construct Modeling Packages", + "Version": "1.4.1", + "Authors@R": "c(\n person(\"Hannah\", \"Frick\", , \"hannah@posit.co\", role = c(\"aut\", \"cre\"),\n comment = c(ORCID = \"0000-0002-6049-5258\")),\n person(\"Davis\", \"Vaughan\", , \"davis@posit.co\", role = \"aut\"),\n person(\"Max\", \"Kuhn\", , \"max@posit.co\", role = \"aut\"),\n person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\"))\n )", + "Description": "Building modeling packages is hard. A large amount of effort\n generally goes into providing an implementation for a new method that\n is efficient, fast, and correct, but often less emphasis is put on the\n user interface. A good interface requires specialized knowledge about\n S3 methods and formulas, which the average package developer might not\n have. The goal of 'hardhat' is to reduce the burden around building\n new modeling packages by providing functionality for preprocessing,\n predicting, and validating input.", + "License": "MIT + file LICENSE", + "URL": "https://github.com/tidymodels/hardhat,\nhttps://hardhat.tidymodels.org", + "BugReports": "https://github.com/tidymodels/hardhat/issues", + "Depends": "R (>= 3.5.0)", + "Imports": "cli (>= 3.6.0), glue (>= 1.6.2), rlang (>= 1.1.0), sparsevctrs\n(>= 0.2.0), tibble (>= 3.2.1), vctrs (>= 0.6.0)", + "Suggests": "covr, crayon, devtools, knitr, Matrix, modeldata (>= 0.0.2),\nrecipes (>= 1.0.5), rmarkdown (>= 2.3), roxygen2, testthat (>=\n3.0.0), usethis (>= 2.1.5), withr (>= 3.0.0)", + "VignetteBuilder": "knitr", + "Config/Needs/website": "tidyverse/tidytemplate", + "Config/testthat/edition": "3", + "Encoding": "UTF-8", + "LazyData": "true", + "RoxygenNote": "7.3.2", + "NeedsCompilation": "no", + "Packaged": "2025-01-29 15:09:25 UTC; hannah", + "Author": "Hannah Frick [aut, cre] (),\n Davis Vaughan [aut],\n Max Kuhn [aut],\n Posit Software, PBC [cph, fnd]", + "Maintainer": "Hannah Frick ", + "Repository": "RSPM", + "Date/Publication": "2025-01-31 15:20:05 UTC", + "Built": "R 4.5.0; ; 2025-04-08 03:12:16 UTC; unix" + } + }, + "here": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "here", + "Title": "A Simpler Way to Find Your Files", + "Version": "1.0.1", + "Date": "2020-12-13", + "Authors@R": "\n c(person(given = \"Kirill\",\n family = \"M\\u00fcller\",\n role = c(\"aut\", \"cre\"),\n email = \"krlmlr+r@mailbox.org\",\n comment = c(ORCID = \"0000-0002-1416-3412\")),\n person(given = \"Jennifer\",\n family = \"Bryan\",\n role = \"ctb\",\n email = \"jenny@rstudio.com\",\n comment = c(ORCID = \"0000-0002-6983-2759\")))", + "Description": "Constructs paths to your project's files.\n Declare the relative path of a file within your project with 'i_am()'.\n Use the 'here()' function as a drop-in replacement for 'file.path()',\n it will always locate the files relative to your project root.", + "License": "MIT + file LICENSE", + "URL": "https://here.r-lib.org/, https://github.com/r-lib/here", + "BugReports": "https://github.com/r-lib/here/issues", + "Imports": "rprojroot (>= 2.0.2)", + "Suggests": "conflicted, covr, fs, knitr, palmerpenguins, plyr, readr,\nrlang, rmarkdown, testthat, uuid, withr", + "VignetteBuilder": "knitr", + "Encoding": "UTF-8", + "LazyData": "true", + "RoxygenNote": "7.1.1.9000", + "Config/testthat/edition": "3", + "NeedsCompilation": "no", + "Packaged": "2020-12-13 06:59:33 UTC; kirill", + "Author": "Kirill Müller [aut, cre] (),\n Jennifer Bryan [ctb] ()", + "Maintainer": "Kirill Müller ", + "Repository": "RSPM", + "Date/Publication": "2020-12-13 07:30:02 UTC", + "Built": "R 4.5.0; ; 2025-04-09 06:16:24 UTC; unix" + } + }, + "highr": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "highr", + "Type": "Package", + "Title": "Syntax Highlighting for R Source Code", + "Version": "0.11", + "Authors@R": "c(\n person(\"Yihui\", \"Xie\", role = c(\"aut\", \"cre\"), email = \"xie@yihui.name\", comment = c(ORCID = \"0000-0003-0645-5666\")),\n person(\"Yixuan\", \"Qiu\", role = \"aut\"),\n person(\"Christopher\", \"Gandrud\", role = \"ctb\"),\n person(\"Qiang\", \"Li\", role = \"ctb\")\n )", + "Description": "Provides syntax highlighting for R source code. Currently it\n supports LaTeX and HTML output. Source code of other languages is supported\n via Andre Simon's highlight package ().", + "Depends": "R (>= 3.3.0)", + "Imports": "xfun (>= 0.18)", + "Suggests": "knitr, markdown, testit", + "License": "GPL", + "URL": "https://github.com/yihui/highr", + "BugReports": "https://github.com/yihui/highr/issues", + "VignetteBuilder": "knitr", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.1", + "NeedsCompilation": "no", + "Packaged": "2024-05-26 19:27:21 UTC; yihui", + "Author": "Yihui Xie [aut, cre] (),\n Yixuan Qiu [aut],\n Christopher Gandrud [ctb],\n Qiang Li [ctb]", + "Maintainer": "Yihui Xie ", + "Repository": "RSPM", + "Date/Publication": "2024-05-26 20:00:03 UTC", + "Built": "R 4.5.0; ; 2025-04-06 04:42:22 UTC; unix" + } + }, + "hms": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "hms", + "Title": "Pretty Time of Day", + "Date": "2023-03-21", + "Version": "1.1.3", + "Authors@R": "c(\n person(\"Kirill\", \"Müller\", role = c(\"aut\", \"cre\"), email = \"kirill@cynkra.com\", comment = c(ORCID = \"0000-0002-1416-3412\")),\n person(\"R Consortium\", role = \"fnd\"),\n person(\"RStudio\", role = \"fnd\")\n )", + "Description": "Implements an S3 class for storing and formatting time-of-day\n values, based on the 'difftime' class.", + "Imports": "lifecycle, methods, pkgconfig, rlang (>= 1.0.2), vctrs (>=\n0.3.8)", + "Suggests": "crayon, lubridate, pillar (>= 1.1.0), testthat (>= 3.0.0)", + "License": "MIT + file LICENSE", + "Encoding": "UTF-8", + "URL": "https://hms.tidyverse.org/, https://github.com/tidyverse/hms", + "BugReports": "https://github.com/tidyverse/hms/issues", + "RoxygenNote": "7.2.3", + "Config/testthat/edition": "3", + "Config/autostyle/scope": "line_breaks", + "Config/autostyle/strict": "false", + "Config/Needs/website": "tidyverse/tidytemplate", + "NeedsCompilation": "no", + "Packaged": "2023-03-21 16:52:11 UTC; kirill", + "Author": "Kirill Müller [aut, cre] (),\n R Consortium [fnd],\n RStudio [fnd]", + "Maintainer": "Kirill Müller ", + "Repository": "RSPM", + "Date/Publication": "2023-03-21 18:10:02 UTC", + "Built": "R 4.5.0; ; 2025-04-06 04:43:37 UTC; unix" + } + }, + "htmltools": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Type": "Package", + "Package": "htmltools", + "Title": "Tools for HTML", + "Version": "0.5.8.1", + "Authors@R": "c(\n person(\"Joe\", \"Cheng\", , \"joe@posit.co\", role = \"aut\"),\n person(\"Carson\", \"Sievert\", , \"carson@posit.co\", role = c(\"aut\", \"cre\"),\n comment = c(ORCID = \"0000-0002-4958-2844\")),\n person(\"Barret\", \"Schloerke\", , \"barret@posit.co\", role = \"aut\",\n comment = c(ORCID = \"0000-0001-9986-114X\")),\n person(\"Winston\", \"Chang\", , \"winston@posit.co\", role = \"aut\",\n comment = c(ORCID = \"0000-0002-1576-2126\")),\n person(\"Yihui\", \"Xie\", , \"yihui@posit.co\", role = \"aut\"),\n person(\"Jeff\", \"Allen\", role = \"aut\"),\n person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\"))\n )", + "Description": "Tools for HTML generation and output.", + "License": "GPL (>= 2)", + "URL": "https://github.com/rstudio/htmltools,\nhttps://rstudio.github.io/htmltools/", + "BugReports": "https://github.com/rstudio/htmltools/issues", + "Depends": "R (>= 2.14.1)", + "Imports": "base64enc, digest, fastmap (>= 1.1.0), grDevices, rlang (>=\n1.0.0), utils", + "Suggests": "Cairo, markdown, ragg, shiny, testthat, withr", + "Enhances": "knitr", + "Config/Needs/check": "knitr", + "Config/Needs/website": "rstudio/quillt, bench", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.1", + "Collate": "'colors.R' 'fill.R' 'html_dependency.R' 'html_escape.R'\n'html_print.R' 'htmltools-package.R' 'images.R' 'known_tags.R'\n'selector.R' 'staticimports.R' 'tag_query.R' 'utils.R' 'tags.R'\n'template.R'", + "NeedsCompilation": "yes", + "Packaged": "2024-04-02 14:26:15 UTC; cpsievert", + "Author": "Joe Cheng [aut],\n Carson Sievert [aut, cre] (),\n Barret Schloerke [aut] (),\n Winston Chang [aut] (),\n Yihui Xie [aut],\n Jeff Allen [aut],\n Posit Software, PBC [cph, fnd]", + "Maintainer": "Carson Sievert ", + "Repository": "RSPM", + "Date/Publication": "2024-04-04 05:03:00 UTC", + "Built": "R 4.5.0; x86_64-pc-linux-gnu; 2025-04-06 04:42:53 UTC; unix" + } + }, + "htmlwidgets": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Type": "Package", + "Package": "htmlwidgets", + "Title": "HTML Widgets for R", + "Version": "1.6.4", + "Authors@R": "c(\n person(\"Ramnath\", \"Vaidyanathan\", role = c(\"aut\", \"cph\")),\n person(\"Yihui\", \"Xie\", role = \"aut\"),\n person(\"JJ\", \"Allaire\", role = \"aut\"),\n person(\"Joe\", \"Cheng\", , \"joe@posit.co\", role = \"aut\"),\n person(\"Carson\", \"Sievert\", , \"carson@posit.co\", role = c(\"aut\", \"cre\"),\n comment = c(ORCID = \"0000-0002-4958-2844\")),\n person(\"Kenton\", \"Russell\", role = c(\"aut\", \"cph\")),\n person(\"Ellis\", \"Hughes\", role = \"ctb\"),\n person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\"))\n )", + "Description": "A framework for creating HTML widgets that render in various\n contexts including the R console, 'R Markdown' documents, and 'Shiny'\n web applications.", + "License": "MIT + file LICENSE", + "URL": "https://github.com/ramnathv/htmlwidgets", + "BugReports": "https://github.com/ramnathv/htmlwidgets/issues", + "Imports": "grDevices, htmltools (>= 0.5.7), jsonlite (>= 0.9.16), knitr\n(>= 1.8), rmarkdown, yaml", + "Suggests": "testthat", + "Enhances": "shiny (>= 1.1)", + "VignetteBuilder": "knitr", + "Encoding": "UTF-8", + "RoxygenNote": "7.2.3", + "NeedsCompilation": "no", + "Packaged": "2023-12-06 00:11:16 UTC; cpsievert", + "Author": "Ramnath Vaidyanathan [aut, cph],\n Yihui Xie [aut],\n JJ Allaire [aut],\n Joe Cheng [aut],\n Carson Sievert [aut, cre] (),\n Kenton Russell [aut, cph],\n Ellis Hughes [ctb],\n Posit Software, PBC [cph, fnd]", + "Maintainer": "Carson Sievert ", + "Repository": "RSPM", + "Date/Publication": "2023-12-06 06:00:06 UTC", + "Built": "R 4.5.0; ; 2025-04-06 04:47:46 UTC; unix" + } + }, + "httpuv": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Type": "Package", + "Package": "httpuv", + "Title": "HTTP and WebSocket Server Library", + "Version": "1.6.16", + "Authors@R": "c(\n person(\"Joe\", \"Cheng\", , \"joe@posit.co\", role = \"aut\"),\n person(\"Winston\", \"Chang\", , \"winston@posit.co\", role = c(\"aut\", \"cre\")),\n person(\"Posit, PBC\", \"fnd\", role = \"cph\"),\n person(\"Hector\", \"Corrada Bravo\", role = \"ctb\"),\n person(\"Jeroen\", \"Ooms\", role = \"ctb\"),\n person(\"Andrzej\", \"Krzemienski\", role = \"cph\",\n comment = \"optional.hpp\"),\n person(\"libuv project contributors\", role = \"cph\",\n comment = \"libuv library, see src/libuv/AUTHORS file\"),\n person(\"Joyent, Inc. and other Node contributors\", role = \"cph\",\n comment = \"libuv library, see src/libuv/AUTHORS file; and http-parser library, see src/http-parser/AUTHORS file\"),\n person(\"Niels\", \"Provos\", role = \"cph\",\n comment = \"libuv subcomponent: tree.h\"),\n person(\"Internet Systems Consortium, Inc.\", role = \"cph\",\n comment = \"libuv subcomponent: inet_pton and inet_ntop, contained in src/libuv/src/inet.c\"),\n person(\"Alexander\", \"Chemeris\", role = \"cph\",\n comment = \"libuv subcomponent: stdint-msvc2008.h (from msinttypes)\"),\n person(\"Google, Inc.\", role = \"cph\",\n comment = \"libuv subcomponent: pthread-fixes.c\"),\n person(\"Sony Mobile Communcations AB\", role = \"cph\",\n comment = \"libuv subcomponent: pthread-fixes.c\"),\n person(\"Berkeley Software Design Inc.\", role = \"cph\",\n comment = \"libuv subcomponent: android-ifaddrs.h, android-ifaddrs.c\"),\n person(\"Kenneth\", \"MacKay\", role = \"cph\",\n comment = \"libuv subcomponent: android-ifaddrs.h, android-ifaddrs.c\"),\n person(\"Emergya (Cloud4all, FP7/2007-2013, grant agreement no 289016)\", role = \"cph\",\n comment = \"libuv subcomponent: android-ifaddrs.h, android-ifaddrs.c\"),\n person(\"Steve\", \"Reid\", role = \"aut\",\n comment = \"SHA-1 implementation\"),\n person(\"James\", \"Brown\", role = \"aut\",\n comment = \"SHA-1 implementation\"),\n person(\"Bob\", \"Trower\", role = \"aut\",\n comment = \"base64 implementation\"),\n person(\"Alexander\", \"Peslyak\", role = \"aut\",\n comment = \"MD5 implementation\"),\n person(\"Trantor Standard Systems\", role = \"cph\",\n comment = \"base64 implementation\"),\n person(\"Igor\", \"Sysoev\", role = \"cph\",\n comment = \"http-parser\")\n )", + "Description": "Provides low-level socket and protocol support for handling\n HTTP and WebSocket requests directly from within R. It is primarily\n intended as a building block for other packages, rather than making it\n particularly easy to create complete web applications using httpuv\n alone. httpuv is built on top of the libuv and http-parser C\n libraries, both of which were developed by Joyent, Inc. (See LICENSE\n file for libuv and http-parser license information.)", + "License": "GPL (>= 2) | file LICENSE", + "URL": "https://github.com/rstudio/httpuv", + "BugReports": "https://github.com/rstudio/httpuv/issues", + "Depends": "R (>= 2.15.1)", + "Imports": "later (>= 0.8.0), promises, R6, Rcpp (>= 1.0.7), utils", + "Suggests": "callr, curl, jsonlite, testthat, websocket", + "LinkingTo": "later, Rcpp", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.2", + "SystemRequirements": "GNU make, zlib", + "Collate": "'RcppExports.R' 'httpuv.R' 'random_port.R' 'server.R'\n'staticServer.R' 'static_paths.R' 'utils.R'", + "NeedsCompilation": "yes", + "Packaged": "2025-04-15 17:47:41 UTC; cg334", + "Author": "Joe Cheng [aut],\n Winston Chang [aut, cre],\n Posit, PBC fnd [cph],\n Hector Corrada Bravo [ctb],\n Jeroen Ooms [ctb],\n Andrzej Krzemienski [cph] (optional.hpp),\n libuv project contributors [cph] (libuv library, see src/libuv/AUTHORS\n file),\n Joyent, Inc. and other Node contributors [cph] (libuv library, see\n src/libuv/AUTHORS file; and http-parser library, see\n src/http-parser/AUTHORS file),\n Niels Provos [cph] (libuv subcomponent: tree.h),\n Internet Systems Consortium, Inc. [cph] (libuv subcomponent: inet_pton\n and inet_ntop, contained in src/libuv/src/inet.c),\n Alexander Chemeris [cph] (libuv subcomponent: stdint-msvc2008.h (from\n msinttypes)),\n Google, Inc. [cph] (libuv subcomponent: pthread-fixes.c),\n Sony Mobile Communcations AB [cph] (libuv subcomponent:\n pthread-fixes.c),\n Berkeley Software Design Inc. [cph] (libuv subcomponent:\n android-ifaddrs.h, android-ifaddrs.c),\n Kenneth MacKay [cph] (libuv subcomponent: android-ifaddrs.h,\n android-ifaddrs.c),\n Emergya (Cloud4all, FP7/2007-2013, grant agreement no 289016) [cph]\n (libuv subcomponent: android-ifaddrs.h, android-ifaddrs.c),\n Steve Reid [aut] (SHA-1 implementation),\n James Brown [aut] (SHA-1 implementation),\n Bob Trower [aut] (base64 implementation),\n Alexander Peslyak [aut] (MD5 implementation),\n Trantor Standard Systems [cph] (base64 implementation),\n Igor Sysoev [cph] (http-parser)", + "Maintainer": "Winston Chang ", + "Repository": "RSPM", + "Date/Publication": "2025-04-16 08:00:06 UTC", + "Built": "R 4.5.0; x86_64-pc-linux-gnu; 2025-07-03 14:37:25 UTC; unix" + } + }, + "httr": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "httr", + "Title": "Tools for Working with URLs and HTTP", + "Version": "1.4.7", + "Authors@R": "c(\n person(\"Hadley\", \"Wickham\", , \"hadley@posit.co\", role = c(\"aut\", \"cre\")),\n person(\"Posit, PBC\", role = c(\"cph\", \"fnd\"))\n )", + "Description": "Useful tools for working with HTTP organised by HTTP verbs\n (GET(), POST(), etc). Configuration functions make it easy to control\n additional request components (authenticate(), add_headers() and so\n on).", + "License": "MIT + file LICENSE", + "URL": "https://httr.r-lib.org/, https://github.com/r-lib/httr", + "BugReports": "https://github.com/r-lib/httr/issues", + "Depends": "R (>= 3.5)", + "Imports": "curl (>= 5.0.2), jsonlite, mime, openssl (>= 0.8), R6", + "Suggests": "covr, httpuv, jpeg, knitr, png, readr, rmarkdown, testthat\n(>= 0.8.0), xml2", + "VignetteBuilder": "knitr", + "Config/Needs/website": "tidyverse/tidytemplate", + "Encoding": "UTF-8", + "RoxygenNote": "7.2.3", + "NeedsCompilation": "no", + "Packaged": "2023-08-15 02:56:56 UTC; hadleywickham", + "Author": "Hadley Wickham [aut, cre],\n Posit, PBC [cph, fnd]", + "Maintainer": "Hadley Wickham ", + "Repository": "RSPM", + "Date/Publication": "2023-08-15 09:00:02 UTC", + "Built": "R 4.5.0; ; 2025-04-06 04:43:05 UTC; unix" + } + }, + "imola": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "imola", + "Type": "Package", + "Title": "CSS Layouts (Grid and Flexbox) Implementation for R/Shiny", + "Version": "0.5.0", + "Authors@R": "person(\"Pedro\", \"Silva\", email = \"pedrocoutinhosilva@gmail.com\",\n role = c(\"aut\", \"cre\"))", + "Description": "Allows easy creation of CSS layouts (grid and flexbox)\n directly from R without added CSS.", + "License": "MIT + file LICENSE", + "URL": "https://github.com/pedrocoutinhosilva/imola", + "Encoding": "UTF-8", + "VignetteBuilder": "knitr", + "Imports": "shiny, htmltools, magrittr, stringi, glue, yaml", + "Suggests": "testthat (>= 3.0.0), rvest, devtools, covr, rmarkdown, knitr", + "RoxygenNote": "7.1.2", + "Config/testthat/edition": "3", + "Language": "en-US", + "NeedsCompilation": "no", + "Packaged": "2022-04-10 17:12:00 UTC; spark", + "Author": "Pedro Silva [aut, cre]", + "Maintainer": "Pedro Silva ", + "Repository": "RSPM", + "Date/Publication": "2022-04-19 09:32:30 UTC", + "Built": "R 4.5.0; ; 2025-04-09 06:30:37 UTC; unix" + } + }, + "ipred": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "ipred", + "Title": "Improved Predictors", + "Version": "0.9-15", + "Date": "2024-07-18", + "Authors@R": "c(person(\"Andrea\", \"Peters\", role = \"aut\"),\n person(\"Torsten\", \"Hothorn\", role = c(\"aut\", \"cre\"),\n email = \"Torsten.Hothorn@R-project.org\"),\n person(\"Brian D.\", \"Ripley\", role = \"ctb\"),\n person(\"Terry\", \"Therneau\", role = \"ctb\"), \n person(\"Beth\", \"Atkinson\", role = \"ctb\"))", + "Description": "Improved predictive models by indirect classification and\n bagging for classification, regression and survival problems \n as well as resampling based estimators of prediction error. ", + "Depends": "R (>= 2.10)", + "Imports": "rpart (>= 3.1-8), MASS, survival, nnet, class, prodlim", + "Suggests": "mvtnorm, mlbench, TH.data, randomForest, party", + "License": "GPL (>= 2)", + "NeedsCompilation": "yes", + "Packaged": "2024-07-18 11:48:25 UTC; hothorn", + "Author": "Andrea Peters [aut],\n Torsten Hothorn [aut, cre],\n Brian D. Ripley [ctb],\n Terry Therneau [ctb],\n Beth Atkinson [ctb]", + "Maintainer": "Torsten Hothorn ", + "Repository": "RSPM", + "Date/Publication": "2024-07-18 13:00:02 UTC", + "Encoding": "UTF-8", + "Built": "R 4.5.0; x86_64-pc-linux-gnu; 2025-04-08 03:13:15 UTC; unix" + } + }, + "isoband": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "isoband", + "Title": "Generate Isolines and Isobands from Regularly Spaced Elevation\nGrids", + "Version": "0.2.7", + "Authors@R": "c(\n person(\"Hadley\", \"Wickham\", , \"hadley@posit.co\", role = c(\"aut\", \"cre\"),\n comment = c(ORCID = \"0000-0003-4757-117X\")),\n person(\"Claus O.\", \"Wilke\", , \"wilke@austin.utexas.edu\", role = \"aut\",\n comment = c(\"Original author\", ORCID = \"0000-0002-7470-9261\")),\n person(\"Thomas Lin\", \"Pedersen\", , \"thomasp85@gmail.com\", role = \"aut\",\n comment = c(ORCID = \"0000-0002-5147-4711\"))\n )", + "Description": "A fast C++ implementation to generate contour lines\n (isolines) and contour polygons (isobands) from regularly spaced grids\n containing elevation data.", + "License": "MIT + file LICENSE", + "URL": "https://isoband.r-lib.org", + "BugReports": "https://github.com/r-lib/isoband/issues", + "Imports": "grid, utils", + "Suggests": "covr, ggplot2, knitr, magick, microbenchmark, rmarkdown, sf,\ntestthat, xml2", + "VignetteBuilder": "knitr", + "Config/Needs/website": "tidyverse/tidytemplate", + "Config/testthat/edition": "3", + "Encoding": "UTF-8", + "RoxygenNote": "7.2.3", + "SystemRequirements": "C++11", + "NeedsCompilation": "yes", + "Packaged": "2022-12-19 20:10:02 UTC; hadleywickham", + "Author": "Hadley Wickham [aut, cre] (),\n Claus O. Wilke [aut] (Original author,\n ),\n Thomas Lin Pedersen [aut] ()", + "Maintainer": "Hadley Wickham ", + "Repository": "RSPM", + "Date/Publication": "2022-12-20 10:00:13 UTC", + "Built": "R 4.5.0; x86_64-pc-linux-gnu; 2025-04-06 04:42:33 UTC; unix" + } + }, + "jquerylib": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "jquerylib", + "Title": "Obtain 'jQuery' as an HTML Dependency Object", + "Version": "0.1.4", + "Authors@R": "c(\n person(\"Carson\", \"Sievert\", role = c(\"aut\", \"cre\"), email = \"carson@rstudio.com\", comment = c(ORCID = \"0000-0002-4958-2844\")),\n person(\"Joe\", \"Cheng\", role = \"aut\", email = \"joe@rstudio.com\"),\n person(family = \"RStudio\", role = \"cph\"),\n person(family = \"jQuery Foundation\", role = \"cph\",\n comment = \"jQuery library and jQuery UI library\"),\n person(family = \"jQuery contributors\", role = c(\"ctb\", \"cph\"),\n comment = \"jQuery library; authors listed in inst/lib/jquery-AUTHORS.txt\")\n )", + "Description": "Obtain any major version of 'jQuery' () and use it in any webpage generated by 'htmltools' (e.g. 'shiny', 'htmlwidgets', and 'rmarkdown').\n Most R users don't need to use this package directly, but other R packages (e.g. 'shiny', 'rmarkdown', etc.) depend on this package to avoid bundling redundant copies of 'jQuery'.", + "License": "MIT + file LICENSE", + "Encoding": "UTF-8", + "Config/testthat/edition": "3", + "RoxygenNote": "7.0.2", + "Imports": "htmltools", + "Suggests": "testthat", + "NeedsCompilation": "no", + "Packaged": "2021-04-26 16:40:21 UTC; cpsievert", + "Author": "Carson Sievert [aut, cre] (),\n Joe Cheng [aut],\n RStudio [cph],\n jQuery Foundation [cph] (jQuery library and jQuery UI library),\n jQuery contributors [ctb, cph] (jQuery library; authors listed in\n inst/lib/jquery-AUTHORS.txt)", + "Maintainer": "Carson Sievert ", + "Repository": "RSPM", + "Date/Publication": "2021-04-26 17:10:02 UTC", + "Built": "R 4.5.0; ; 2025-04-06 04:43:09 UTC; unix" + } + }, + "jsonlite": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "jsonlite", + "Version": "2.0.0", + "Title": "A Simple and Robust JSON Parser and Generator for R", + "License": "MIT + file LICENSE", + "Depends": "methods", + "Authors@R": "c(\n person(\"Jeroen\", \"Ooms\", role = c(\"aut\", \"cre\"), email = \"jeroenooms@gmail.com\",\n comment = c(ORCID = \"0000-0002-4035-0289\")),\n person(\"Duncan\", \"Temple Lang\", role = \"ctb\"),\n person(\"Lloyd\", \"Hilaiel\", role = \"cph\", comment=\"author of bundled libyajl\"))", + "URL": "https://jeroen.r-universe.dev/jsonlite\nhttps://arxiv.org/abs/1403.2805", + "BugReports": "https://github.com/jeroen/jsonlite/issues", + "Maintainer": "Jeroen Ooms ", + "VignetteBuilder": "knitr, R.rsp", + "Description": "A reasonably fast JSON parser and generator, optimized for statistical \n data and the web. Offers simple, flexible tools for working with JSON in R, and\n is particularly powerful for building pipelines and interacting with a web API. \n The implementation is based on the mapping described in the vignette (Ooms, 2014).\n In addition to converting JSON data from/to R objects, 'jsonlite' contains \n functions to stream, validate, and prettify JSON data. The unit tests included \n with the package verify that all edge cases are encoded and decoded consistently \n for use with dynamic data in systems and applications.", + "Suggests": "httr, vctrs, testthat, knitr, rmarkdown, R.rsp, sf", + "RoxygenNote": "7.3.2", + "Encoding": "UTF-8", + "NeedsCompilation": "yes", + "Packaged": "2025-03-26 11:36:10 UTC; jeroen", + "Author": "Jeroen Ooms [aut, cre] (),\n Duncan Temple Lang [ctb],\n Lloyd Hilaiel [cph] (author of bundled libyajl)", + "Repository": "RSPM", + "Date/Publication": "2025-03-27 06:40:02 UTC", + "Built": "R 4.5.0; x86_64-pc-linux-gnu; 2025-04-06 04:42:10 UTC; unix" + } + }, + "knitr": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "knitr", + "Type": "Package", + "Title": "A General-Purpose Package for Dynamic Report Generation in R", + "Version": "1.50", + "Authors@R": "c(\n person(\"Yihui\", \"Xie\", role = c(\"aut\", \"cre\"), email = \"xie@yihui.name\", comment = c(ORCID = \"0000-0003-0645-5666\", URL = \"https://yihui.org\")),\n person(\"Abhraneel\", \"Sarma\", role = \"ctb\"),\n person(\"Adam\", \"Vogt\", role = \"ctb\"),\n person(\"Alastair\", \"Andrew\", role = \"ctb\"),\n person(\"Alex\", \"Zvoleff\", role = \"ctb\"),\n person(\"Amar\", \"Al-Zubaidi\", role = \"ctb\"),\n person(\"Andre\", \"Simon\", role = \"ctb\", comment = \"the CSS files under inst/themes/ were derived from the Highlight package http://www.andre-simon.de\"),\n person(\"Aron\", \"Atkins\", role = \"ctb\"),\n person(\"Aaron\", \"Wolen\", role = \"ctb\"),\n person(\"Ashley\", \"Manton\", role = \"ctb\"),\n person(\"Atsushi\", \"Yasumoto\", role = \"ctb\", comment = c(ORCID = \"0000-0002-8335-495X\")),\n person(\"Ben\", \"Baumer\", role = \"ctb\"),\n person(\"Brian\", \"Diggs\", role = \"ctb\"),\n person(\"Brian\", \"Zhang\", role = \"ctb\"),\n person(\"Bulat\", \"Yapparov\", role = \"ctb\"),\n person(\"Cassio\", \"Pereira\", role = \"ctb\"),\n person(\"Christophe\", \"Dervieux\", role = \"ctb\"),\n person(\"David\", \"Hall\", role = \"ctb\"),\n person(\"David\", \"Hugh-Jones\", role = \"ctb\"),\n person(\"David\", \"Robinson\", role = \"ctb\"),\n person(\"Doug\", \"Hemken\", role = \"ctb\"),\n person(\"Duncan\", \"Murdoch\", role = \"ctb\"),\n person(\"Elio\", \"Campitelli\", role = \"ctb\"),\n person(\"Ellis\", \"Hughes\", role = \"ctb\"),\n person(\"Emily\", \"Riederer\", role = \"ctb\"),\n person(\"Fabian\", \"Hirschmann\", role = \"ctb\"),\n person(\"Fitch\", \"Simeon\", role = \"ctb\"),\n person(\"Forest\", \"Fang\", role = \"ctb\"),\n person(c(\"Frank\", \"E\", \"Harrell\", \"Jr\"), role = \"ctb\", comment = \"the Sweavel package at inst/misc/Sweavel.sty\"),\n person(\"Garrick\", \"Aden-Buie\", role = \"ctb\"),\n person(\"Gregoire\", \"Detrez\", role = \"ctb\"),\n person(\"Hadley\", \"Wickham\", role = \"ctb\"),\n person(\"Hao\", \"Zhu\", role = \"ctb\"),\n person(\"Heewon\", \"Jeon\", role = \"ctb\"),\n person(\"Henrik\", \"Bengtsson\", role = \"ctb\"),\n person(\"Hiroaki\", \"Yutani\", role = \"ctb\"),\n person(\"Ian\", \"Lyttle\", role = \"ctb\"),\n person(\"Hodges\", \"Daniel\", role = \"ctb\"),\n person(\"Jacob\", \"Bien\", role = \"ctb\"),\n person(\"Jake\", \"Burkhead\", role = \"ctb\"),\n person(\"James\", \"Manton\", role = \"ctb\"),\n person(\"Jared\", \"Lander\", role = \"ctb\"),\n person(\"Jason\", \"Punyon\", role = \"ctb\"),\n person(\"Javier\", \"Luraschi\", role = \"ctb\"),\n person(\"Jeff\", \"Arnold\", role = \"ctb\"),\n person(\"Jenny\", \"Bryan\", role = \"ctb\"),\n person(\"Jeremy\", \"Ashkenas\", role = c(\"ctb\", \"cph\"), comment = \"the CSS file at inst/misc/docco-classic.css\"),\n person(\"Jeremy\", \"Stephens\", role = \"ctb\"),\n person(\"Jim\", \"Hester\", role = \"ctb\"),\n person(\"Joe\", \"Cheng\", role = \"ctb\"),\n person(\"Johannes\", \"Ranke\", role = \"ctb\"),\n person(\"John\", \"Honaker\", role = \"ctb\"),\n person(\"John\", \"Muschelli\", role = \"ctb\"),\n person(\"Jonathan\", \"Keane\", role = \"ctb\"),\n person(\"JJ\", \"Allaire\", role = \"ctb\"),\n person(\"Johan\", \"Toloe\", role = \"ctb\"),\n person(\"Jonathan\", \"Sidi\", role = \"ctb\"),\n person(\"Joseph\", \"Larmarange\", role = \"ctb\"),\n person(\"Julien\", \"Barnier\", role = \"ctb\"),\n person(\"Kaiyin\", \"Zhong\", role = \"ctb\"),\n person(\"Kamil\", \"Slowikowski\", role = \"ctb\"),\n person(\"Karl\", \"Forner\", role = \"ctb\"),\n person(c(\"Kevin\", \"K.\"), \"Smith\", role = \"ctb\"),\n person(\"Kirill\", \"Mueller\", role = \"ctb\"),\n person(\"Kohske\", \"Takahashi\", role = \"ctb\"),\n person(\"Lorenz\", \"Walthert\", role = \"ctb\"),\n person(\"Lucas\", \"Gallindo\", role = \"ctb\"),\n person(\"Marius\", \"Hofert\", role = \"ctb\"),\n person(\"Martin\", \"Modrák\", role = \"ctb\"),\n person(\"Michael\", \"Chirico\", role = \"ctb\"),\n person(\"Michael\", \"Friendly\", role = \"ctb\"),\n person(\"Michal\", \"Bojanowski\", role = \"ctb\"),\n person(\"Michel\", \"Kuhlmann\", role = \"ctb\"),\n person(\"Miller\", \"Patrick\", role = \"ctb\"),\n person(\"Nacho\", \"Caballero\", role = \"ctb\"),\n person(\"Nick\", \"Salkowski\", role = \"ctb\"),\n person(\"Niels Richard\", \"Hansen\", role = \"ctb\"),\n person(\"Noam\", \"Ross\", role = \"ctb\"),\n person(\"Obada\", \"Mahdi\", role = \"ctb\"),\n person(\"Pavel N.\", \"Krivitsky\", role = \"ctb\", comment=c(ORCID = \"0000-0002-9101-3362\")),\n person(\"Pedro\", \"Faria\", role = \"ctb\"),\n person(\"Qiang\", \"Li\", role = \"ctb\"),\n person(\"Ramnath\", \"Vaidyanathan\", role = \"ctb\"),\n person(\"Richard\", \"Cotton\", role = \"ctb\"),\n person(\"Robert\", \"Krzyzanowski\", role = \"ctb\"),\n person(\"Rodrigo\", \"Copetti\", role = \"ctb\"),\n person(\"Romain\", \"Francois\", role = \"ctb\"),\n person(\"Ruaridh\", \"Williamson\", role = \"ctb\"),\n person(\"Sagiru\", \"Mati\", role = \"ctb\", comment = c(ORCID = \"0000-0003-1413-3974\")),\n person(\"Scott\", \"Kostyshak\", role = \"ctb\"),\n person(\"Sebastian\", \"Meyer\", role = \"ctb\"),\n person(\"Sietse\", \"Brouwer\", role = \"ctb\"),\n person(c(\"Simon\", \"de\"), \"Bernard\", role = \"ctb\"),\n person(\"Sylvain\", \"Rousseau\", role = \"ctb\"),\n person(\"Taiyun\", \"Wei\", role = \"ctb\"),\n person(\"Thibaut\", \"Assus\", role = \"ctb\"),\n person(\"Thibaut\", \"Lamadon\", role = \"ctb\"),\n person(\"Thomas\", \"Leeper\", role = \"ctb\"),\n person(\"Tim\", \"Mastny\", role = \"ctb\"),\n person(\"Tom\", \"Torsney-Weir\", role = \"ctb\"),\n person(\"Trevor\", \"Davis\", role = \"ctb\"),\n person(\"Viktoras\", \"Veitas\", role = \"ctb\"),\n person(\"Weicheng\", \"Zhu\", role = \"ctb\"),\n person(\"Wush\", \"Wu\", role = \"ctb\"),\n person(\"Zachary\", \"Foster\", role = \"ctb\"),\n person(\"Zhian N.\", \"Kamvar\", role = \"ctb\", comment = c(ORCID = \"0000-0003-1458-7108\")),\n person(given = \"Posit Software, PBC\", role = c(\"cph\", \"fnd\"))\n )", + "Description": "Provides a general-purpose tool for dynamic report generation in R\n using Literate Programming techniques.", + "Depends": "R (>= 3.6.0)", + "Imports": "evaluate (>= 0.15), highr (>= 0.11), methods, tools, xfun (>=\n0.51), yaml (>= 2.1.19)", + "Suggests": "bslib, codetools, DBI (>= 0.4-1), digest, formatR, gifski,\ngridSVG, htmlwidgets (>= 0.7), jpeg, JuliaCall (>= 0.11.1),\nmagick, litedown, markdown (>= 1.3), png, ragg, reticulate (>=\n1.4), rgl (>= 0.95.1201), rlang, rmarkdown, sass, showtext,\nstyler (>= 1.2.0), targets (>= 0.6.0), testit, tibble,\ntikzDevice (>= 0.10), tinytex (>= 0.56), webshot, rstudioapi,\nsvglite", + "License": "GPL", + "URL": "https://yihui.org/knitr/", + "BugReports": "https://github.com/yihui/knitr/issues", + "Encoding": "UTF-8", + "VignetteBuilder": "litedown, knitr", + "SystemRequirements": "Package vignettes based on R Markdown v2 or\nreStructuredText require Pandoc (http://pandoc.org). The\nfunction rst2pdf() requires rst2pdf\n(https://github.com/rst2pdf/rst2pdf).", + "Collate": "'block.R' 'cache.R' 'citation.R' 'hooks-html.R' 'plot.R'\n'utils.R' 'defaults.R' 'concordance.R' 'engine.R' 'highlight.R'\n'themes.R' 'header.R' 'hooks-asciidoc.R' 'hooks-chunk.R'\n'hooks-extra.R' 'hooks-latex.R' 'hooks-md.R' 'hooks-rst.R'\n'hooks-textile.R' 'hooks.R' 'output.R' 'package.R' 'pandoc.R'\n'params.R' 'parser.R' 'pattern.R' 'rocco.R' 'spin.R' 'table.R'\n'template.R' 'utils-conversion.R' 'utils-rd2html.R'\n'utils-string.R' 'utils-sweave.R' 'utils-upload.R'\n'utils-vignettes.R' 'zzz.R'", + "RoxygenNote": "7.3.2", + "NeedsCompilation": "no", + "Packaged": "2025-03-15 00:17:19 UTC; runner", + "Author": "Yihui Xie [aut, cre] (,\n https://yihui.org),\n Abhraneel Sarma [ctb],\n Adam Vogt [ctb],\n Alastair Andrew [ctb],\n Alex Zvoleff [ctb],\n Amar Al-Zubaidi [ctb],\n Andre Simon [ctb] (the CSS files under inst/themes/ were derived from\n the Highlight package http://www.andre-simon.de),\n Aron Atkins [ctb],\n Aaron Wolen [ctb],\n Ashley Manton [ctb],\n Atsushi Yasumoto [ctb] (),\n Ben Baumer [ctb],\n Brian Diggs [ctb],\n Brian Zhang [ctb],\n Bulat Yapparov [ctb],\n Cassio Pereira [ctb],\n Christophe Dervieux [ctb],\n David Hall [ctb],\n David Hugh-Jones [ctb],\n David Robinson [ctb],\n Doug Hemken [ctb],\n Duncan Murdoch [ctb],\n Elio Campitelli [ctb],\n Ellis Hughes [ctb],\n Emily Riederer [ctb],\n Fabian Hirschmann [ctb],\n Fitch Simeon [ctb],\n Forest Fang [ctb],\n Frank E Harrell Jr [ctb] (the Sweavel package at inst/misc/Sweavel.sty),\n Garrick Aden-Buie [ctb],\n Gregoire Detrez [ctb],\n Hadley Wickham [ctb],\n Hao Zhu [ctb],\n Heewon Jeon [ctb],\n Henrik Bengtsson [ctb],\n Hiroaki Yutani [ctb],\n Ian Lyttle [ctb],\n Hodges Daniel [ctb],\n Jacob Bien [ctb],\n Jake Burkhead [ctb],\n James Manton [ctb],\n Jared Lander [ctb],\n Jason Punyon [ctb],\n Javier Luraschi [ctb],\n Jeff Arnold [ctb],\n Jenny Bryan [ctb],\n Jeremy Ashkenas [ctb, cph] (the CSS file at\n inst/misc/docco-classic.css),\n Jeremy Stephens [ctb],\n Jim Hester [ctb],\n Joe Cheng [ctb],\n Johannes Ranke [ctb],\n John Honaker [ctb],\n John Muschelli [ctb],\n Jonathan Keane [ctb],\n JJ Allaire [ctb],\n Johan Toloe [ctb],\n Jonathan Sidi [ctb],\n Joseph Larmarange [ctb],\n Julien Barnier [ctb],\n Kaiyin Zhong [ctb],\n Kamil Slowikowski [ctb],\n Karl Forner [ctb],\n Kevin K. Smith [ctb],\n Kirill Mueller [ctb],\n Kohske Takahashi [ctb],\n Lorenz Walthert [ctb],\n Lucas Gallindo [ctb],\n Marius Hofert [ctb],\n Martin Modrák [ctb],\n Michael Chirico [ctb],\n Michael Friendly [ctb],\n Michal Bojanowski [ctb],\n Michel Kuhlmann [ctb],\n Miller Patrick [ctb],\n Nacho Caballero [ctb],\n Nick Salkowski [ctb],\n Niels Richard Hansen [ctb],\n Noam Ross [ctb],\n Obada Mahdi [ctb],\n Pavel N. Krivitsky [ctb] (),\n Pedro Faria [ctb],\n Qiang Li [ctb],\n Ramnath Vaidyanathan [ctb],\n Richard Cotton [ctb],\n Robert Krzyzanowski [ctb],\n Rodrigo Copetti [ctb],\n Romain Francois [ctb],\n Ruaridh Williamson [ctb],\n Sagiru Mati [ctb] (),\n Scott Kostyshak [ctb],\n Sebastian Meyer [ctb],\n Sietse Brouwer [ctb],\n Simon de Bernard [ctb],\n Sylvain Rousseau [ctb],\n Taiyun Wei [ctb],\n Thibaut Assus [ctb],\n Thibaut Lamadon [ctb],\n Thomas Leeper [ctb],\n Tim Mastny [ctb],\n Tom Torsney-Weir [ctb],\n Trevor Davis [ctb],\n Viktoras Veitas [ctb],\n Weicheng Zhu [ctb],\n Wush Wu [ctb],\n Zachary Foster [ctb],\n Zhian N. Kamvar [ctb] (),\n Posit Software, PBC [cph, fnd]", + "Maintainer": "Yihui Xie ", + "Repository": "RSPM", + "Date/Publication": "2025-03-16 09:20:02 UTC", + "Built": "R 4.5.0; ; 2025-04-06 04:43:04 UTC; unix" + } + }, + "labeling": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "labeling", + "Type": "Package", + "Title": "Axis Labeling", + "Version": "0.4.3", + "Date": "2023-08-29", + "Author": "Justin Talbot,", + "Maintainer": "Nuno Sempere ", + "Description": "Functions which provide a range of axis labeling algorithms. ", + "License": "MIT + file LICENSE | Unlimited", + "Collate": "'labeling.R'", + "NeedsCompilation": "no", + "Imports": "stats, graphics", + "Packaged": "2023-08-29 21:01:57 UTC; loki", + "Repository": "RSPM", + "Date/Publication": "2023-08-29 22:20:02 UTC", + "Encoding": "UTF-8", + "Built": "R 4.5.0; ; 2025-04-06 04:42:04 UTC; unix" + } + }, + "later": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "later", + "Type": "Package", + "Title": "Utilities for Scheduling Functions to Execute Later with Event\nLoops", + "Version": "1.4.2", + "Authors@R": "c(\n person(\"Winston\", \"Chang\", role = c(\"aut\", \"cre\"), email = \"winston@posit.co\"),\n person(\"Joe\", \"Cheng\", role = c(\"aut\"), email = \"joe@posit.co\"),\n person(\"Charlie\", \"Gao\", role = c(\"aut\"), email = \"charlie.gao@shikokuchuo.net\", comment = c(ORCID = \"0000-0002-0750-061X\")),\n person(family = \"Posit Software, PBC\", role = \"cph\"),\n person(\"Marcus\", \"Geelnard\", role = c(\"ctb\", \"cph\"), comment = \"TinyCThread library, https://tinycthread.github.io/\"),\n person(\"Evan\", \"Nemerson\", role = c(\"ctb\", \"cph\"), comment = \"TinyCThread library, https://tinycthread.github.io/\")\n )", + "Description": "Executes arbitrary R or C functions some time after the current\n time, after the R execution stack has emptied. The functions are scheduled\n in an event loop.", + "URL": "https://r-lib.github.io/later/, https://github.com/r-lib/later", + "BugReports": "https://github.com/r-lib/later/issues", + "License": "MIT + file LICENSE", + "Imports": "Rcpp (>= 0.12.9), rlang", + "LinkingTo": "Rcpp", + "RoxygenNote": "7.3.2", + "Suggests": "knitr, nanonext, R6, rmarkdown, testthat (>= 2.1.0)", + "VignetteBuilder": "knitr", + "Encoding": "UTF-8", + "NeedsCompilation": "yes", + "Packaged": "2025-04-07 20:25:00 UTC; cg334", + "Author": "Winston Chang [aut, cre],\n Joe Cheng [aut],\n Charlie Gao [aut] (),\n Posit Software, PBC [cph],\n Marcus Geelnard [ctb, cph] (TinyCThread library,\n https://tinycthread.github.io/),\n Evan Nemerson [ctb, cph] (TinyCThread library,\n https://tinycthread.github.io/)", + "Maintainer": "Winston Chang ", + "Repository": "RSPM", + "Date/Publication": "2025-04-08 08:50:01 UTC", + "Built": "R 4.5.0; x86_64-pc-linux-gnu; 2025-07-03 14:31:14 UTC; unix" + } + }, + "lattice": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "lattice", + "Version": "0.22-7", + "Date": "2025-03-31", + "Priority": "recommended", + "Title": "Trellis Graphics for R", + "Authors@R": "c(person(\"Deepayan\", \"Sarkar\", role = c(\"aut\", \"cre\"),\n\t email = \"deepayan.sarkar@r-project.org\",\n\t\t comment = c(ORCID = \"0000-0003-4107-1553\")),\n person(\"Felix\", \"Andrews\", role = \"ctb\"),\n\t person(\"Kevin\", \"Wright\", role = \"ctb\", comment = \"documentation\"),\n\t person(\"Neil\", \"Klepeis\", role = \"ctb\"),\n\t person(\"Johan\", \"Larsson\", role = \"ctb\", comment = \"miscellaneous improvements\"),\n person(\"Zhijian (Jason)\", \"Wen\", role = \"cph\", comment = \"filled contour code\"),\n person(\"Paul\", \"Murrell\", role = \"ctb\", email = \"paul@stat.auckland.ac.nz\"),\n\t person(\"Stefan\", \"Eng\", role = \"ctb\", comment = \"violin plot improvements\"),\n\t person(\"Achim\", \"Zeileis\", role = \"ctb\", comment = \"modern colors\"),\n person(\"Alexandre\", \"Courtiol\", role = \"ctb\", comment = \"generics for larrows, lpolygon, lrect and lsegments\")\n\t )", + "Description": "A powerful and elegant high-level data visualization\n system inspired by Trellis graphics, with an emphasis on\n multivariate data. Lattice is sufficient for typical graphics needs,\n and is also flexible enough to handle most nonstandard requirements.\n See ?Lattice for an introduction.", + "Depends": "R (>= 4.0.0)", + "Suggests": "KernSmooth, MASS, latticeExtra, colorspace", + "Imports": "grid, grDevices, graphics, stats, utils", + "Enhances": "chron, zoo", + "LazyLoad": "yes", + "LazyData": "yes", + "License": "GPL (>= 2)", + "URL": "https://lattice.r-forge.r-project.org/", + "BugReports": "https://github.com/deepayan/lattice/issues", + "NeedsCompilation": "yes", + "Packaged": "2025-04-02 04:55:57 UTC; deepayan", + "Author": "Deepayan Sarkar [aut, cre] (),\n Felix Andrews [ctb],\n Kevin Wright [ctb] (documentation),\n Neil Klepeis [ctb],\n Johan Larsson [ctb] (miscellaneous improvements),\n Zhijian (Jason) Wen [cph] (filled contour code),\n Paul Murrell [ctb],\n Stefan Eng [ctb] (violin plot improvements),\n Achim Zeileis [ctb] (modern colors),\n Alexandre Courtiol [ctb] (generics for larrows, lpolygon, lrect and\n lsegments)", + "Maintainer": "Deepayan Sarkar ", + "Repository": "CRAN", + "Date/Publication": "2025-04-02 15:40:02 UTC", + "Built": "R 4.5.1; aarch64-apple-darwin20; 2025-06-14 01:29:47 UTC; unix" + } + }, + "lava": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "lava", + "Type": "Package", + "Title": "Latent Variable Models", + "Version": "1.8.1", + "Authors@R": "c(person(\"Klaus K.\", \"Holst\", email=\"klaus@holst.it\", role=c(\"aut\", \"cre\")),\n\t\t person(\"Brice\", \"Ozenne\", role = \"ctb\"),\n\t\t person(\"Thomas\", \"Gerds\", role = \"ctb\"))", + "Author": "Klaus K. Holst [aut, cre],\n Brice Ozenne [ctb],\n Thomas Gerds [ctb]", + "Maintainer": "Klaus K. Holst ", + "Description": "A general implementation of Structural Equation Models\n\twith latent variables (MLE, 2SLS, and composite likelihood\n\testimators) with both continuous, censored, and ordinal\n\toutcomes (Holst and Budtz-Joergensen (2013) ).\n\tMixture latent variable models and non-linear latent variable models\n\t(Holst and Budtz-Joergensen (2020) ).\n\tThe package also provides methods for graph exploration (d-separation,\n\tback-door criterion), simulation of general non-linear latent variable\n\tmodels, and estimation of influence functions for a broad range of\n\tstatistical models.", + "URL": "https://kkholst.github.io/lava/", + "BugReports": "https://github.com/kkholst/lava/issues", + "License": "GPL-3", + "LazyLoad": "yes", + "Depends": "R (>= 3.0)", + "Imports": "cli, future.apply, graphics, grDevices, methods, numDeriv,\nprogressr, stats, survival, SQUAREM, utils", + "Suggests": "KernSmooth, Rgraphviz, data.table, ellipse, fields, geepack,\ngraph, knitr, rmarkdown, igraph (>= 0.6), lavaSearch2, lme4 (>=\n1.1.35.1), MASS, Matrix (>= 1.6.3), mets (>= 1.1), nlme,\noptimx, polycor, quantreg, rgl, targeted (>= 0.4), testthat (>=\n0.11), visNetwork", + "VignetteBuilder": "knitr,rmarkdown", + "ByteCompile": "yes", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.2", + "NeedsCompilation": "no", + "Packaged": "2025-01-11 22:47:53 UTC; klaus", + "Repository": "RSPM", + "Date/Publication": "2025-01-12 11:40:02 UTC", + "Built": "R 4.5.0; ; 2025-04-08 03:11:31 UTC; unix" + } + }, + "lazyeval": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "lazyeval", + "Version": "0.2.2", + "Title": "Lazy (Non-Standard) Evaluation", + "Description": "An alternative approach to non-standard evaluation using\n formulas. Provides a full implementation of LISP style 'quasiquotation',\n making it easier to generate code with other code.", + "Authors@R": "c(\n person(\"Hadley\", \"Wickham\", ,\"hadley@rstudio.com\", c(\"aut\", \"cre\")),\n person(\"RStudio\", role = \"cph\")\n )", + "License": "GPL-3", + "LazyData": "true", + "Depends": "R (>= 3.1.0)", + "Suggests": "knitr, rmarkdown (>= 0.2.65), testthat, covr", + "VignetteBuilder": "knitr", + "RoxygenNote": "6.1.1", + "NeedsCompilation": "yes", + "Packaged": "2019-03-15 14:18:01 UTC; lionel", + "Author": "Hadley Wickham [aut, cre],\n RStudio [cph]", + "Maintainer": "Hadley Wickham ", + "Repository": "RSPM", + "Date/Publication": "2019-03-15 17:50:07 UTC", + "Encoding": "UTF-8", + "Built": "R 4.5.0; x86_64-pc-linux-gnu; 2025-06-22 22:52:02 UTC; unix" + } + }, + "lifecycle": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "lifecycle", + "Title": "Manage the Life Cycle of your Package Functions", + "Version": "1.0.4", + "Authors@R": "c(\n person(\"Lionel\", \"Henry\", , \"lionel@posit.co\", role = c(\"aut\", \"cre\")),\n person(\"Hadley\", \"Wickham\", , \"hadley@posit.co\", role = \"aut\",\n comment = c(ORCID = \"0000-0003-4757-117X\")),\n person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\"))\n )", + "Description": "Manage the life cycle of your exported functions with shared\n conventions, documentation badges, and user-friendly deprecation\n warnings.", + "License": "MIT + file LICENSE", + "URL": "https://lifecycle.r-lib.org/, https://github.com/r-lib/lifecycle", + "BugReports": "https://github.com/r-lib/lifecycle/issues", + "Depends": "R (>= 3.6)", + "Imports": "cli (>= 3.4.0), glue, rlang (>= 1.1.0)", + "Suggests": "covr, crayon, knitr, lintr, rmarkdown, testthat (>= 3.0.1),\ntibble, tidyverse, tools, vctrs, withr", + "VignetteBuilder": "knitr", + "Config/Needs/website": "tidyverse/tidytemplate, usethis", + "Config/testthat/edition": "3", + "Encoding": "UTF-8", + "RoxygenNote": "7.2.1", + "NeedsCompilation": "no", + "Packaged": "2023-11-06 16:07:36 UTC; lionel", + "Author": "Lionel Henry [aut, cre],\n Hadley Wickham [aut] (),\n Posit Software, PBC [cph, fnd]", + "Maintainer": "Lionel Henry ", + "Repository": "RSPM", + "Date/Publication": "2023-11-07 10:10:10 UTC", + "Built": "R 4.5.0; ; 2025-04-06 04:42:52 UTC; unix" + } + }, + "lintr": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "lintr", + "Title": "A 'Linter' for R Code", + "Version": "3.2.0", + "Authors@R": "c(\n person(\"Jim\", \"Hester\", , role = \"aut\"),\n person(\"Florent\", \"Angly\", role = \"aut\",\n comment = \"fangly\"),\n person(\"Russ\", \"Hyde\", role = \"aut\"),\n person(\"Michael\", \"Chirico\", email = \"michaelchirico4@gmail.com\", role = c(\"aut\", \"cre\")),\n person(\"Kun\", \"Ren\", role = \"aut\"),\n person(\"Alexander\", \"Rosenstock\", role = \"aut\",\n comment = \"AshesITR\"),\n person(\"Indrajeet\", \"Patil\", , \"patilindrajeet.science@gmail.com\", role = \"aut\",\n comment = c(ORCID = \"0000-0003-1995-6531\", Twitter = \"@patilindrajeets\"))\n )", + "Description": "Checks adherence to a given style, syntax errors and possible\n semantic issues. Supports on the fly checking of R code edited with\n 'RStudio IDE', 'Emacs', 'Vim', 'Sublime Text', 'Atom' and 'Visual\n Studio Code'.", + "License": "MIT + file LICENSE", + "URL": "https://lintr.r-lib.org, https://github.com/r-lib/lintr", + "BugReports": "https://github.com/r-lib/lintr/issues", + "Depends": "R (>= 4.0)", + "Imports": "backports (>= 1.4.0), cli (>= 3.4.0), codetools, digest, glue,\nknitr, rex, stats, utils, xml2 (>= 1.0.0), xmlparsedata (>=\n1.0.5)", + "Suggests": "bookdown, cyclocomp, jsonlite, patrick (>= 0.2.0), rlang,\nrmarkdown, rstudioapi (>= 0.2), testthat (>= 3.2.1), tibble,\ntufte, withr (>= 2.5.0)", + "Enhances": "data.table", + "VignetteBuilder": "knitr", + "Config/Needs/website": "tidyverse/tidytemplate", + "Config/Needs/development": "pkgload, cli, testthat, patrick", + "Config/testthat/edition": "3", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.2", + "Collate": "'make_linter_from_xpath.R' 'xp_utils.R' 'utils.R' 'AAA.R'\n'T_and_F_symbol_linter.R' 'absolute_path_linter.R' 'actions.R'\n'addins.R' 'any_duplicated_linter.R' 'any_is_na_linter.R'\n'assignment_linter.R' 'backport_linter.R'\n'boolean_arithmetic_linter.R' 'brace_linter.R' 'cache.R'\n'class_equals_linter.R' 'commas_linter.R'\n'commented_code_linter.R' 'comparison_negation_linter.R'\n'condition_call_linter.R' 'condition_message_linter.R'\n'conjunct_test_linter.R' 'consecutive_assertion_linter.R'\n'consecutive_mutate_linter.R' 'cyclocomp_linter.R'\n'declared_functions.R' 'deprecated.R'\n'duplicate_argument_linter.R' 'empty_assignment_linter.R'\n'equals_na_linter.R' 'exclude.R' 'expect_comparison_linter.R'\n'expect_identical_linter.R' 'expect_length_linter.R'\n'expect_lint.R' 'expect_named_linter.R' 'expect_not_linter.R'\n'expect_null_linter.R' 'expect_s3_class_linter.R'\n'expect_s4_class_linter.R' 'expect_true_false_linter.R'\n'expect_type_linter.R' 'extract.R' 'fixed_regex_linter.R'\n'for_loop_index_linter.R' 'function_argument_linter.R'\n'function_left_parentheses_linter.R' 'function_return_linter.R'\n'get_source_expressions.R' 'ids_with_token.R'\n'if_not_else_linter.R' 'if_switch_linter.R'\n'ifelse_censor_linter.R' 'implicit_assignment_linter.R'\n'implicit_integer_linter.R' 'indentation_linter.R'\n'infix_spaces_linter.R' 'inner_combine_linter.R'\n'is_lint_level.R' 'is_numeric_linter.R'\n'keyword_quote_linter.R' 'length_levels_linter.R'\n'length_test_linter.R' 'lengths_linter.R'\n'library_call_linter.R' 'line_length_linter.R' 'lint.R'\n'linter_tag_docs.R' 'linter_tags.R' 'lintr-deprecated.R'\n'lintr-package.R' 'list_comparison_linter.R'\n'literal_coercion_linter.R' 'make_linter_from_regex.R'\n'matrix_apply_linter.R' 'methods.R' 'missing_argument_linter.R'\n'missing_package_linter.R' 'namespace.R' 'namespace_linter.R'\n'nested_ifelse_linter.R' 'nested_pipe_linter.R'\n'nonportable_path_linter.R' 'shared_constants.R'\n'nrow_subset_linter.R' 'numeric_leading_zero_linter.R'\n'nzchar_linter.R' 'object_length_linter.R'\n'object_name_linter.R' 'object_overwrite_linter.R'\n'object_usage_linter.R' 'one_call_pipe_linter.R'\n'outer_negation_linter.R' 'package_hooks_linter.R'\n'paren_body_linter.R' 'paste_linter.R' 'path_utils.R'\n'pipe_call_linter.R' 'pipe_consistency_linter.R'\n'pipe_continuation_linter.R' 'pipe_return_linter.R'\n'print_linter.R' 'quotes_linter.R' 'redundant_equals_linter.R'\n'redundant_ifelse_linter.R' 'regex_subset_linter.R'\n'rep_len_linter.R' 'repeat_linter.R' 'return_linter.R'\n'routine_registration_linter.R' 'sample_int_linter.R'\n'scalar_in_linter.R' 'semicolon_linter.R' 'seq_linter.R'\n'settings.R' 'settings_utils.R' 'sort_linter.R'\n'source_utils.R' 'spaces_inside_linter.R'\n'spaces_left_parentheses_linter.R' 'sprintf_linter.R'\n'stopifnot_all_linter.R' 'string_boundary_linter.R'\n'strings_as_factors_linter.R' 'system_file_linter.R'\n'terminal_close_linter.R' 'todo_comment_linter.R'\n'trailing_blank_lines_linter.R' 'trailing_whitespace_linter.R'\n'tree_utils.R' 'undesirable_function_linter.R'\n'undesirable_operator_linter.R'\n'unnecessary_concatenation_linter.R'\n'unnecessary_lambda_linter.R' 'unnecessary_nesting_linter.R'\n'unnecessary_placeholder_linter.R' 'unreachable_code_linter.R'\n'unused_import_linter.R' 'use_lintr.R' 'vector_logic_linter.R'\n'which_grepl_linter.R' 'whitespace_linter.R' 'with.R'\n'with_id.R' 'xml_nodes_to_lints.R' 'xml_utils.R'\n'yoda_test_linter.R' 'zzz.R'", + "Language": "en-US", + "NeedsCompilation": "no", + "Packaged": "2025-02-12 00:10:30 UTC; root", + "Author": "Jim Hester [aut],\n Florent Angly [aut] (fangly),\n Russ Hyde [aut],\n Michael Chirico [aut, cre],\n Kun Ren [aut],\n Alexander Rosenstock [aut] (AshesITR),\n Indrajeet Patil [aut] (,\n @patilindrajeets)", + "Maintainer": "Michael Chirico ", + "Repository": "RSPM", + "Date/Publication": "2025-02-12 15:00:02 UTC", + "Built": "R 4.5.0; ; 2025-04-09 06:48:15 UTC; unix" + } + }, + "listenv": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "listenv", + "Version": "0.9.1", + "Depends": "R (>= 3.1.2)", + "Suggests": "R.utils, R.rsp, markdown", + "VignetteBuilder": "R.rsp", + "Title": "Environments Behaving (Almost) as Lists", + "Authors@R": "c(person(\"Henrik\", \"Bengtsson\", role=c(\"aut\", \"cre\", \"cph\"),\n email = \"henrikb@braju.com\"))", + "Description": "List environments are environments that have list-like properties. For instance, the elements of a list environment are ordered and can be accessed and iterated over using index subsetting, e.g. 'x <- listenv(a = 1, b = 2); for (i in seq_along(x)) x[[i]] <- x[[i]] ^ 2; y <- as.list(x)'.", + "License": "LGPL (>= 2.1)", + "LazyLoad": "TRUE", + "URL": "https://listenv.futureverse.org,\nhttps://github.com/HenrikBengtsson/listenv", + "BugReports": "https://github.com/HenrikBengtsson/listenv/issues", + "RoxygenNote": "7.3.1", + "NeedsCompilation": "no", + "Packaged": "2024-01-28 20:40:45 UTC; henrik", + "Author": "Henrik Bengtsson [aut, cre, cph]", + "Maintainer": "Henrik Bengtsson ", + "Repository": "RSPM", + "Date/Publication": "2024-01-29 13:10:06 UTC", + "Encoding": "UTF-8", + "Built": "R 4.5.0; ; 2025-04-06 04:42:27 UTC; unix" + } + }, + "lmtest": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "lmtest", + "Title": "Testing Linear Regression Models", + "Version": "0.9-40", + "Date": "2022-03-21", + "Authors@R": "c(person(given = \"Torsten\", family = \"Hothorn\", role = \"aut\", email = \"Torsten.Hothorn@R-project.org\",\n comment = c(ORCID = \"0000-0001-8301-0471\")),\n person(given = \"Achim\", family = \"Zeileis\", role = c(\"aut\", \"cre\"), email = \"Achim.Zeileis@R-project.org\",\n comment = c(ORCID = \"0000-0003-0918-3766\")),\n person(given = c(\"Richard\", \"W.\"), family = \"Farebrother\", role = \"aut\", comment = \"pan.f\"),\n person(given = \"Clint\", family = \"Cummins\", role = \"aut\", comment = \"pan.f\"),\n person(given = \"Giovanni\", family = \"Millo\", role = \"ctb\"),\n person(given = \"David\", family = \"Mitchell\", role = \"ctb\"))", + "Description": "A collection of tests, data sets, and examples\n for diagnostic checking in linear regression models. Furthermore,\n some generic tools for inference in parametric models are provided.", + "LazyData": "yes", + "Depends": "R (>= 3.0.0), stats, zoo", + "Suggests": "car, strucchange, sandwich, dynlm, stats4, survival, AER", + "Imports": "graphics", + "License": "GPL-2 | GPL-3", + "NeedsCompilation": "yes", + "Packaged": "2022-03-21 20:25:17 UTC; zeileis", + "Author": "Torsten Hothorn [aut] (),\n Achim Zeileis [aut, cre] (),\n Richard W. Farebrother [aut] (pan.f),\n Clint Cummins [aut] (pan.f),\n Giovanni Millo [ctb],\n David Mitchell [ctb]", + "Maintainer": "Achim Zeileis ", + "Repository": "RSPM", + "Date/Publication": "2022-03-21 23:00:02 UTC", + "Encoding": "UTF-8", + "Built": "R 4.5.0; x86_64-pc-linux-gnu; 2025-04-06 04:42:40 UTC; unix" + } + }, + "logger": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Type": "Package", + "Package": "logger", + "Title": "A Lightweight, Modern and Flexible Logging Utility", + "Version": "0.4.0", + "Date": "2024-10-19", + "Authors@R": "c(\n person(\"Gergely\", \"Daróczi\", , \"daroczig@rapporter.net\", role = c(\"aut\", \"cre\"),\n comment = c(ORCID = \"0000-0003-3149-8537\")),\n person(\"Hadley\", \"Wickham\", , \"hadley@posit.co\", role = \"aut\",\n comment = c(ORCID = \"0000-0003-4757-117X\")),\n person(\"System1\", role = \"fnd\")\n )", + "Description": "Inspired by the the 'futile.logger' R package and 'logging'\n Python module, this utility provides a flexible and extensible way of\n formatting and delivering log messages with low overhead.", + "License": "MIT + file LICENSE", + "URL": "https://daroczig.github.io/logger/", + "BugReports": "https://github.com/daroczig/logger/issues", + "Depends": "R (>= 4.0.0)", + "Imports": "utils", + "Suggests": "botor, covr, crayon, devtools, glue, jsonlite, knitr, mirai\n(>= 1.3.0), pander, parallel, R.utils, rmarkdown, roxygen2,\nRPushbullet, rsyslog, shiny, slackr (>= 1.4.1), syslognet,\ntelegram, testthat (>= 3.0.0), withr", + "Enhances": "futile.logger, log4r, logging", + "VignetteBuilder": "knitr", + "Config/testthat/edition": "3", + "Config/testthat/parallel": "TRUE", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.2", + "NeedsCompilation": "no", + "Packaged": "2024-10-20 22:07:23 UTC; daroczig", + "Author": "Gergely Daróczi [aut, cre] (),\n Hadley Wickham [aut] (),\n System1 [fnd]", + "Maintainer": "Gergely Daróczi ", + "Repository": "RSPM", + "Date/Publication": "2024-10-22 08:00:07 UTC", + "Built": "R 4.5.0; ; 2025-04-09 06:04:44 UTC; unix" + } + }, + "lubridate": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Type": "Package", + "Package": "lubridate", + "Title": "Make Dealing with Dates a Little Easier", + "Version": "1.9.4", + "Authors@R": "c(\n person(\"Vitalie\", \"Spinu\", , \"spinuvit@gmail.com\", role = c(\"aut\", \"cre\")),\n person(\"Garrett\", \"Grolemund\", role = \"aut\"),\n person(\"Hadley\", \"Wickham\", role = \"aut\"),\n person(\"Davis\", \"Vaughan\", role = \"ctb\"),\n person(\"Ian\", \"Lyttle\", role = \"ctb\"),\n person(\"Imanuel\", \"Costigan\", role = \"ctb\"),\n person(\"Jason\", \"Law\", role = \"ctb\"),\n person(\"Doug\", \"Mitarotonda\", role = \"ctb\"),\n person(\"Joseph\", \"Larmarange\", role = \"ctb\"),\n person(\"Jonathan\", \"Boiser\", role = \"ctb\"),\n person(\"Chel Hee\", \"Lee\", role = \"ctb\")\n )", + "Maintainer": "Vitalie Spinu ", + "Description": "Functions to work with date-times and time-spans: fast and\n user friendly parsing of date-time data, extraction and updating of\n components of a date-time (years, months, days, hours, minutes, and\n seconds), algebraic manipulation on date-time and time-span objects.\n The 'lubridate' package has a consistent and memorable syntax that\n makes working with dates easy and fun.", + "License": "GPL (>= 2)", + "URL": "https://lubridate.tidyverse.org,\nhttps://github.com/tidyverse/lubridate", + "BugReports": "https://github.com/tidyverse/lubridate/issues", + "Depends": "methods, R (>= 3.2)", + "Imports": "generics, timechange (>= 0.3.0)", + "Suggests": "covr, knitr, rmarkdown, testthat (>= 2.1.0), vctrs (>= 0.6.5)", + "Enhances": "chron, data.table, timeDate, tis, zoo", + "VignetteBuilder": "knitr", + "Config/Needs/website": "tidyverse/tidytemplate", + "Config/testthat/edition": "3", + "Encoding": "UTF-8", + "LazyData": "true", + "RoxygenNote": "7.2.3", + "SystemRequirements": "C++11, A system with zoneinfo data (e.g.\n/usr/share/zoneinfo). On Windows the zoneinfo included with R\nis used.", + "Collate": "'Dates.r' 'POSIXt.r' 'util.r' 'parse.r' 'timespans.r'\n'intervals.r' 'difftimes.r' 'durations.r' 'periods.r'\n'accessors-date.R' 'accessors-day.r' 'accessors-dst.r'\n'accessors-hour.r' 'accessors-minute.r' 'accessors-month.r'\n'accessors-quarter.r' 'accessors-second.r' 'accessors-tz.r'\n'accessors-week.r' 'accessors-year.r' 'am-pm.r' 'time-zones.r'\n'numeric.r' 'coercion.r' 'constants.r' 'cyclic_encoding.r'\n'data.r' 'decimal-dates.r' 'deprecated.r' 'format_ISO8601.r'\n'guess.r' 'hidden.r' 'instants.r' 'leap-years.r'\n'ops-addition.r' 'ops-compare.r' 'ops-division.r'\n'ops-integer-division.r' 'ops-m+.r' 'ops-modulo.r'\n'ops-multiplication.r' 'ops-subtraction.r' 'package.r'\n'pretty.r' 'round.r' 'stamp.r' 'tzdir.R' 'update.r' 'vctrs.R'\n'zzz.R'", + "NeedsCompilation": "yes", + "Packaged": "2024-12-07 23:41:45 UTC; vitalie", + "Author": "Vitalie Spinu [aut, cre],\n Garrett Grolemund [aut],\n Hadley Wickham [aut],\n Davis Vaughan [ctb],\n Ian Lyttle [ctb],\n Imanuel Costigan [ctb],\n Jason Law [ctb],\n Doug Mitarotonda [ctb],\n Joseph Larmarange [ctb],\n Jonathan Boiser [ctb],\n Chel Hee Lee [ctb]", + "Repository": "RSPM", + "Date/Publication": "2024-12-08 12:10:02 UTC", + "Built": "R 4.5.0; x86_64-pc-linux-gnu; 2025-04-06 04:43:10 UTC; unix" + } + }, + "magrittr": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Type": "Package", + "Package": "magrittr", + "Title": "A Forward-Pipe Operator for R", + "Version": "2.0.3", + "Authors@R": "c(\n person(\"Stefan Milton\", \"Bache\", , \"stefan@stefanbache.dk\", role = c(\"aut\", \"cph\"),\n comment = \"Original author and creator of magrittr\"),\n person(\"Hadley\", \"Wickham\", , \"hadley@rstudio.com\", role = \"aut\"),\n person(\"Lionel\", \"Henry\", , \"lionel@rstudio.com\", role = \"cre\"),\n person(\"RStudio\", role = c(\"cph\", \"fnd\"))\n )", + "Description": "Provides a mechanism for chaining commands with a new\n forward-pipe operator, %>%. This operator will forward a value, or the\n result of an expression, into the next function call/expression.\n There is flexible support for the type of right-hand side expressions.\n For more information, see package vignette. To quote Rene Magritte,\n \"Ceci n'est pas un pipe.\"", + "License": "MIT + file LICENSE", + "URL": "https://magrittr.tidyverse.org,\nhttps://github.com/tidyverse/magrittr", + "BugReports": "https://github.com/tidyverse/magrittr/issues", + "Depends": "R (>= 3.4.0)", + "Suggests": "covr, knitr, rlang, rmarkdown, testthat", + "VignetteBuilder": "knitr", + "ByteCompile": "Yes", + "Config/Needs/website": "tidyverse/tidytemplate", + "Encoding": "UTF-8", + "RoxygenNote": "7.1.2", + "NeedsCompilation": "yes", + "Packaged": "2022-03-29 09:34:37 UTC; lionel", + "Author": "Stefan Milton Bache [aut, cph] (Original author and creator of\n magrittr),\n Hadley Wickham [aut],\n Lionel Henry [cre],\n RStudio [cph, fnd]", + "Maintainer": "Lionel Henry ", + "Repository": "RSPM", + "Date/Publication": "2022-03-30 07:30:09 UTC", + "Built": "R 4.5.0; x86_64-pc-linux-gnu; 2025-04-06 04:42:33 UTC; unix" + } + }, + "memoise": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "memoise", + "Title": "'Memoisation' of Functions", + "Version": "2.0.1", + "Authors@R": "\n c(person(given = \"Hadley\",\n family = \"Wickham\",\n role = \"aut\",\n email = \"hadley@rstudio.com\"),\n person(given = \"Jim\",\n family = \"Hester\",\n role = \"aut\"),\n person(given = \"Winston\",\n family = \"Chang\",\n role = c(\"aut\", \"cre\"),\n email = \"winston@rstudio.com\"),\n person(given = \"Kirill\",\n family = \"Müller\",\n role = \"aut\",\n email = \"krlmlr+r@mailbox.org\"),\n person(given = \"Daniel\",\n family = \"Cook\",\n role = \"aut\",\n email = \"danielecook@gmail.com\"),\n person(given = \"Mark\",\n family = \"Edmondson\",\n role = \"ctb\",\n email = \"r@sunholo.com\"))", + "Description": "Cache the results of a function so that when you\n call it again with the same arguments it returns the previously computed\n value.", + "License": "MIT + file LICENSE", + "URL": "https://memoise.r-lib.org, https://github.com/r-lib/memoise", + "BugReports": "https://github.com/r-lib/memoise/issues", + "Imports": "rlang (>= 0.4.10), cachem", + "Suggests": "digest, aws.s3, covr, googleAuthR, googleCloudStorageR, httr,\ntestthat", + "Encoding": "UTF-8", + "RoxygenNote": "7.1.2", + "NeedsCompilation": "no", + "Packaged": "2021-11-24 21:24:50 UTC; jhester", + "Author": "Hadley Wickham [aut],\n Jim Hester [aut],\n Winston Chang [aut, cre],\n Kirill Müller [aut],\n Daniel Cook [aut],\n Mark Edmondson [ctb]", + "Maintainer": "Winston Chang ", + "Repository": "RSPM", + "Date/Publication": "2021-11-26 16:11:10 UTC", + "Built": "R 4.5.0; ; 2025-04-06 04:43:00 UTC; unix" + } + }, + "mgcv": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "mgcv", + "Version": "1.9-3", + "Authors@R": "person(given = \"Simon\",\n family = \"Wood\",\n role = c(\"aut\", \"cre\"),\n email = \"simon.wood@r-project.org\")", + "Title": "Mixed GAM Computation Vehicle with Automatic Smoothness\nEstimation", + "Description": "Generalized additive (mixed) models, some of their extensions and \n other generalized ridge regression with multiple smoothing \n parameter estimation by (Restricted) Marginal Likelihood, \n Generalized Cross Validation and similar, or using iterated \n nested Laplace approximation for fully Bayesian inference. See \n Wood (2017) for an overview. \n Includes a gam() function, a wide variety of smoothers, 'JAGS' \n support and distributions beyond the exponential family. ", + "Priority": "recommended", + "Depends": "R (>= 3.6.0), nlme (>= 3.1-64)", + "Imports": "methods, stats, graphics, Matrix, splines, utils", + "Suggests": "parallel, survival, MASS", + "LazyLoad": "yes", + "ByteCompile": "yes", + "License": "GPL (>= 2)", + "NeedsCompilation": "yes", + "Packaged": "2025-04-03 13:22:13 UTC; sw283", + "Author": "Simon Wood [aut, cre]", + "Maintainer": "Simon Wood ", + "Repository": "CRAN", + "Date/Publication": "2025-04-04 05:40:02 UTC", + "Built": "R 4.5.1; aarch64-apple-darwin20; 2025-06-14 01:30:21 UTC; unix" + } + }, + "mime": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "mime", + "Type": "Package", + "Title": "Map Filenames to MIME Types", + "Version": "0.13", + "Authors@R": "c(\n person(\"Yihui\", \"Xie\", role = c(\"aut\", \"cre\"), email = \"xie@yihui.name\", comment = c(ORCID = \"0000-0003-0645-5666\", URL = \"https://yihui.org\")),\n person(\"Jeffrey\", \"Horner\", role = \"ctb\"),\n person(\"Beilei\", \"Bian\", role = \"ctb\")\n )", + "Description": "Guesses the MIME type from a filename extension using the data\n derived from /etc/mime.types in UNIX-type systems.", + "Imports": "tools", + "License": "GPL", + "URL": "https://github.com/yihui/mime", + "BugReports": "https://github.com/yihui/mime/issues", + "RoxygenNote": "7.3.2", + "Encoding": "UTF-8", + "NeedsCompilation": "yes", + "Packaged": "2025-03-17 19:54:24 UTC; runner", + "Author": "Yihui Xie [aut, cre] (,\n https://yihui.org),\n Jeffrey Horner [ctb],\n Beilei Bian [ctb]", + "Maintainer": "Yihui Xie ", + "Repository": "RSPM", + "Date/Publication": "2025-03-17 20:20:02 UTC", + "Built": "R 4.5.0; x86_64-pc-linux-gnu; 2025-04-06 04:42:22 UTC; unix" + } + }, + "mirai": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Type": "Package", + "Package": "mirai", + "Title": "Minimalist Async Evaluation Framework for R", + "Version": "2.4.1", + "Authors@R": "c(\n person(\"Charlie\", \"Gao\", , \"charlie.gao@posit.co\", role = c(\"aut\", \"cre\"),\n comment = c(ORCID = \"0000-0002-0750-061X\")),\n person(\"Joe\", \"Cheng\", , \"joe@posit.co\", role = \"ctb\"),\n person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\"),\n comment = c(ROR = \"03wc8by49\")),\n person(\"Hibiki AI Limited\", role = \"cph\")\n )", + "Description": "Designed for simplicity, a 'mirai' evaluates an R expression\n asynchronously in a parallel process, locally or distributed over the\n network. Modern networking and concurrency, built on 'nanonext' and\n 'NNG', ensures reliable scheduling over fast inter-process\n communications or TCP/IP secured by TLS. Launch remote resources via\n SSH or cluster managers for distributed computing. Scales efficiently\n to millions of tasks over thousands of connections, requiring no\n storage on the file system due to its inherently queued architecture.\n Innovative features include event-driven promises, asynchronous\n parallel map, and seamless serialization of otherwise non-exportable\n reference objects.", + "License": "MIT + file LICENSE", + "URL": "https://mirai.r-lib.org, https://github.com/r-lib/mirai", + "BugReports": "https://github.com/r-lib/mirai/issues", + "Depends": "R (>= 3.6)", + "Imports": "nanonext (>= 1.6.2)", + "Suggests": "cli, litedown", + "Enhances": "parallel, promises", + "VignetteBuilder": "litedown", + "Config/Needs/website": "tidyverse/tidytemplate", + "Config/usethis/last-upkeep": "2025-04-23", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.2", + "NeedsCompilation": "no", + "Packaged": "2025-07-15 07:40:16 UTC; cg334", + "Author": "Charlie Gao [aut, cre] (ORCID: ),\n Joe Cheng [ctb],\n Posit Software, PBC [cph, fnd] (ROR: ),\n Hibiki AI Limited [cph]", + "Maintainer": "Charlie Gao ", + "Repository": "RSPM", + "Date/Publication": "2025-07-15 08:10:02 UTC", + "Built": "R 4.5.0; ; 2025-07-16 11:15:08 UTC; unix" + } + }, + "nanonext": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Type": "Package", + "Package": "nanonext", + "Title": "NNG (Nanomsg Next Gen) Lightweight Messaging Library", + "Version": "1.6.2", + "Authors@R": "c(\n person(\"Charlie\", \"Gao\", , \"charlie.gao@posit.co\", role = c(\"aut\", \"cre\"),\n comment = c(ORCID = \"0000-0002-0750-061X\")),\n person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\"),\n comment = c(ROR = \"03wc8by49\")),\n person(\"Hibiki AI Limited\", role = \"cph\"),\n person(\"R Consortium\", role = \"fnd\")\n )", + "Description": "R binding for NNG (Nanomsg Next Gen), a successor to ZeroMQ.\n NNG is a socket library for reliable, high-performance messaging over\n in-process, IPC, TCP, WebSocket and secure TLS transports. Implements\n 'Scalability Protocols', a standard for common communications patterns\n including publish/subscribe, request/reply and service discovery. As\n its own threaded concurrency framework, provides a toolkit for\n asynchronous programming and distributed computing. Intuitive 'aio'\n objects resolve automatically when asynchronous operations complete,\n and synchronisation primitives allow R to wait upon events signalled\n by concurrent threads.", + "License": "MIT + file LICENSE", + "URL": "https://nanonext.r-lib.org, https://github.com/r-lib/nanonext", + "BugReports": "https://github.com/r-lib/nanonext/issues", + "Depends": "R (>= 3.6)", + "Suggests": "later, litedown", + "Enhances": "promises", + "VignetteBuilder": "litedown", + "Biarch": "true", + "Config/build/compilation-database": "true", + "Config/Needs/website": "tidyverse/tidytemplate", + "Config/usethis/last-upkeep": "2025-04-23", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.2", + "SystemRequirements": "'libnng' >= 1.9 and 'libmbedtls' >= 2.5, or 'cmake'\nand 'xz' to compile NNG and/or Mbed TLS included in package\nsources", + "NeedsCompilation": "yes", + "Packaged": "2025-07-14 07:19:05 UTC; cg334", + "Author": "Charlie Gao [aut, cre] (ORCID: ),\n Posit Software, PBC [cph, fnd] (ROR: ),\n Hibiki AI Limited [cph],\n R Consortium [fnd]", + "Maintainer": "Charlie Gao ", + "Repository": "RSPM", + "Date/Publication": "2025-07-14 07:50:02 UTC", + "Built": "R 4.5.0; x86_64-pc-linux-gnu; 2025-07-15 04:44:43 UTC; unix" + } + }, + "nlme": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "nlme", + "Version": "3.1-168", + "Date": "2025-03-31", + "Priority": "recommended", + "Title": "Linear and Nonlinear Mixed Effects Models", + "Authors@R": "c(person(\"José\", \"Pinheiro\", role = \"aut\", comment = \"S version\"),\n person(\"Douglas\", \"Bates\", role = \"aut\", comment = \"up to 2007\"),\n person(\"Saikat\", \"DebRoy\", role = \"ctb\", comment = \"up to 2002\"),\n person(\"Deepayan\", \"Sarkar\", role = \"ctb\", comment = \"up to 2005\"),\n person(\"EISPACK authors\", role = \"ctb\", comment = \"src/rs.f\"),\n\t person(\"Siem\", \"Heisterkamp\", role = \"ctb\", comment = \"Author fixed sigma\"),\n person(\"Bert\", \"Van Willigen\",role = \"ctb\", comment = \"Programmer fixed sigma\"),\n person(\"Johannes\", \"Ranke\", role = \"ctb\", comment = \"varConstProp()\"),\n\t person(\"R Core Team\", email = \"R-core@R-project.org\",\n role = c(\"aut\", \"cre\"), comment = c(ROR = \"02zz1nj61\")))", + "Contact": "see 'MailingList'", + "Description": "Fit and compare Gaussian linear and nonlinear mixed-effects models.", + "Depends": "R (>= 3.6.0)", + "Imports": "graphics, stats, utils, lattice", + "Suggests": "MASS, SASmixed", + "LazyData": "yes", + "Encoding": "UTF-8", + "License": "GPL (>= 2)", + "BugReports": "https://bugs.r-project.org", + "MailingList": "R-help@r-project.org", + "URL": "https://svn.r-project.org/R-packages/trunk/nlme/", + "NeedsCompilation": "yes", + "Packaged": "2025-03-31 11:19:09 UTC; ripley", + "Author": "José Pinheiro [aut] (S version),\n Douglas Bates [aut] (up to 2007),\n Saikat DebRoy [ctb] (up to 2002),\n Deepayan Sarkar [ctb] (up to 2005),\n EISPACK authors [ctb] (src/rs.f),\n Siem Heisterkamp [ctb] (Author fixed sigma),\n Bert Van Willigen [ctb] (Programmer fixed sigma),\n Johannes Ranke [ctb] (varConstProp()),\n R Core Team [aut, cre] (02zz1nj61)", + "Maintainer": "R Core Team ", + "Repository": "CRAN", + "Date/Publication": "2025-03-31 11:21:01 UTC", + "Built": "R 4.5.1; aarch64-apple-darwin20; 2025-06-14 01:29:51 UTC; unix" + } + }, + "nnet": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "nnet", + "Priority": "recommended", + "Version": "7.3-20", + "Date": "2025-01-01", + "Depends": "R (>= 3.0.0), stats, utils", + "Suggests": "MASS", + "Authors@R": "c(person(\"Brian\", \"Ripley\", role = c(\"aut\", \"cre\", \"cph\"),\n email = \"Brian.Ripley@R-project.org\"),\n person(\"William\", \"Venables\", role = \"cph\"))", + "Description": "Software for feed-forward neural networks with a single\n hidden layer, and for multinomial log-linear models.", + "Title": "Feed-Forward Neural Networks and Multinomial Log-Linear Models", + "ByteCompile": "yes", + "License": "GPL-2 | GPL-3", + "URL": "http://www.stats.ox.ac.uk/pub/MASS4/", + "NeedsCompilation": "yes", + "Packaged": "2025-01-01 07:07:13 UTC; ripley", + "Author": "Brian Ripley [aut, cre, cph],\n William Venables [cph]", + "Maintainer": "Brian Ripley ", + "Repository": "CRAN", + "Date/Publication": "2025-01-01 10:25:43 UTC", + "Built": "R 4.5.1; aarch64-apple-darwin20; 2025-06-14 01:29:47 UTC; unix" + } + }, + "numDeriv": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "numDeriv", + "Version": "2016.8-1.1", + "Title": "Accurate Numerical Derivatives", + "Description": "Methods for calculating (usually) accurate\n\tnumerical first and second order derivatives. Accurate calculations \n\tare done using 'Richardson''s' extrapolation or, when applicable, a\n\tcomplex step derivative is available. A simple difference \n\tmethod is also provided. Simple difference is (usually) less accurate\n\tbut is much quicker than 'Richardson''s' extrapolation and provides a \n\tuseful cross-check. \n\tMethods are provided for real scalar and vector valued functions. ", + "Depends": "R (>= 2.11.1)", + "LazyLoad": "yes", + "ByteCompile": "yes", + "License": "GPL-2", + "Copyright": "2006-2011, Bank of Canada. 2012-2016, Paul Gilbert", + "Author": "Paul Gilbert and Ravi Varadhan", + "Maintainer": "Paul Gilbert ", + "URL": "http://optimizer.r-forge.r-project.org/", + "NeedsCompilation": "no", + "Packaged": "2019-06-04 11:04:44 UTC; hornik", + "Repository": "RSPM", + "Date/Publication": "2019-06-06 09:51:09 UTC", + "Encoding": "UTF-8", + "Built": "R 4.5.0; ; 2025-04-06 04:42:06 UTC; unix" + } + }, + "openssl": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "openssl", + "Type": "Package", + "Title": "Toolkit for Encryption, Signatures and Certificates Based on\nOpenSSL", + "Version": "2.3.3", + "Authors@R": "c(person(\"Jeroen\", \"Ooms\", role = c(\"aut\", \"cre\"), email = \"jeroenooms@gmail.com\",\n comment = c(ORCID = \"0000-0002-4035-0289\")),\n person(\"Oliver\", \"Keyes\", role = \"ctb\"))", + "Description": "Bindings to OpenSSL libssl and libcrypto, plus custom SSH key parsers.\n Supports RSA, DSA and EC curves P-256, P-384, P-521, and curve25519. Cryptographic\n signatures can either be created and verified manually or via x509 certificates. \n AES can be used in cbc, ctr or gcm mode for symmetric encryption; RSA for asymmetric\n (public key) encryption or EC for Diffie Hellman. High-level envelope functions \n combine RSA and AES for encrypting arbitrary sized data. Other utilities include key\n generators, hash functions (md5, sha1, sha256, etc), base64 encoder, a secure random\n number generator, and 'bignum' math methods for manually performing crypto \n calculations on large multibyte integers.", + "License": "MIT + file LICENSE", + "URL": "https://jeroen.r-universe.dev/openssl", + "BugReports": "https://github.com/jeroen/openssl/issues", + "SystemRequirements": "OpenSSL >= 1.0.2", + "VignetteBuilder": "knitr", + "Imports": "askpass", + "Suggests": "curl, testthat (>= 2.1.0), digest, knitr, rmarkdown,\njsonlite, jose, sodium", + "RoxygenNote": "7.3.2", + "Encoding": "UTF-8", + "NeedsCompilation": "yes", + "Packaged": "2025-05-26 09:13:50 UTC; jeroen", + "Author": "Jeroen Ooms [aut, cre] (ORCID: ),\n Oliver Keyes [ctb]", + "Maintainer": "Jeroen Ooms ", + "Repository": "RSPM", + "Date/Publication": "2025-05-26 13:00:02 UTC", + "Built": "R 4.5.0; x86_64-pc-linux-gnu; 2025-05-27 04:55:44 UTC; unix" + } + }, + "padr": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "padr", + "Type": "Package", + "Title": "Quickly Get Datetime Data Ready for Analysis", + "Version": "0.6.3", + "Authors@R": "person(given = \"Edwin\",\n family = \"Thoen\",\n role = c(\"aut\", \"cre\"),\n email = \"edwinthoen@gmail.com\")", + "Description": "Transforms datetime data into a format ready for analysis.\n It offers two core functionalities; aggregating data to a higher level interval\n (thicken) and imputing records where observations were absent (pad). ", + "License": "MIT + file LICENSE", + "Encoding": "UTF-8", + "LazyData": "true", + "Depends": "R (>= 3.0.0)", + "Imports": "Rcpp, dplyr (>= 1.0.0), lubridate, rlang", + "Suggests": "ggplot2, testthat, knitr, rmarkdown, lazyeval, tidyr,\ndata.table", + "RoxygenNote": "7.2.1", + "LinkingTo": "Rcpp", + "VignetteBuilder": "knitr", + "URL": "https://edwinth.github.io/padr/, https://github.com/EdwinTh/padr", + "BugReports": "https://github.com/EdwinTh/padr/issues", + "ByteCompile": "true", + "NeedsCompilation": "yes", + "Packaged": "2024-11-21 15:48:04 UTC; edwinthoen", + "Author": "Edwin Thoen [aut, cre]", + "Maintainer": "Edwin Thoen ", + "Repository": "RSPM", + "Date/Publication": "2024-11-21 18:10:02 UTC", + "Built": "R 4.5.0; x86_64-pc-linux-gnu; 2025-07-03 14:42:08 UTC; unix" + } + }, + "parallelly": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "parallelly", + "Version": "1.45.1", + "Title": "Enhancing the 'parallel' Package", + "Imports": "parallel, tools, utils", + "Suggests": "commonmark, base64enc", + "VignetteBuilder": "parallelly", + "Authors@R": "c(\n person(\"Henrik\", \"Bengtsson\",\n role = c(\"aut\", \"cre\", \"cph\"),\n email = \"henrikb@braju.com\",\n comment = c(ORCID = \"0000-0002-7579-5165\")),\n person(\"Mike\", \"Cheng\",\n role = c(\"ctb\"),\n email = \"mikefc@coolbutuseless.com\")\n )", + "Description": "Utility functions that enhance the 'parallel' package and support the built-in parallel backends of the 'future' package. For example, availableCores() gives the number of CPU cores available to your R process as given by the operating system, 'cgroups' and Linux containers, R options, and environment variables, including those set by job schedulers on high-performance compute clusters. If none is set, it will fall back to parallel::detectCores(). Another example is makeClusterPSOCK(), which is backward compatible with parallel::makePSOCKcluster() while doing a better job in setting up remote cluster workers without the need for configuring the firewall to do port-forwarding to your local computer.", + "License": "LGPL (>= 2.1)", + "LazyLoad": "TRUE", + "ByteCompile": "TRUE", + "URL": "https://parallelly.futureverse.org,\nhttps://github.com/futureverse/parallelly", + "BugReports": "https://github.com/futureverse/parallelly/issues", + "Language": "en-US", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.2", + "NeedsCompilation": "yes", + "Packaged": "2025-07-24 14:11:31 UTC; henrik", + "Author": "Henrik Bengtsson [aut, cre, cph] (ORCID:\n ),\n Mike Cheng [ctb]", + "Maintainer": "Henrik Bengtsson ", + "Repository": "RSPM", + "Date/Publication": "2025-07-24 15:50:02 UTC", + "Built": "R 4.5.0; x86_64-pc-linux-gnu; 2025-07-25 05:16:49 UTC; unix" + } + }, + "pillar": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "pillar", + "Title": "Coloured Formatting for Columns", + "Version": "1.11.0", + "Authors@R": "\n c(person(given = \"Kirill\",\n family = \"M\\u00fcller\",\n role = c(\"aut\", \"cre\"),\n email = \"kirill@cynkra.com\",\n comment = c(ORCID = \"0000-0002-1416-3412\")),\n person(given = \"Hadley\",\n family = \"Wickham\",\n role = \"aut\"),\n person(given = \"RStudio\",\n role = \"cph\"))", + "Description": "Provides 'pillar' and 'colonnade' generics designed\n for formatting columns of data using the full range of colours\n provided by modern terminals.", + "License": "MIT + file LICENSE", + "URL": "https://pillar.r-lib.org/, https://github.com/r-lib/pillar", + "BugReports": "https://github.com/r-lib/pillar/issues", + "Imports": "cli (>= 2.3.0), glue, lifecycle, rlang (>= 1.0.2), utf8 (>=\n1.1.0), utils, vctrs (>= 0.5.0)", + "Suggests": "bit64, DBI, debugme, DiagrammeR, dplyr, formattable, ggplot2,\nknitr, lubridate, nanotime, nycflights13, palmerpenguins,\nrmarkdown, scales, stringi, survival, testthat (>= 3.1.1),\ntibble, units (>= 0.7.2), vdiffr, withr", + "VignetteBuilder": "knitr", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.2.9000", + "Config/testthat/edition": "3", + "Config/testthat/parallel": "true", + "Config/testthat/start-first": "format_multi_fuzz, format_multi_fuzz_2,\nformat_multi, ctl_colonnade, ctl_colonnade_1, ctl_colonnade_2", + "Config/autostyle/scope": "line_breaks", + "Config/autostyle/strict": "true", + "Config/gha/extra-packages": "units=?ignore-before-r=4.3.0", + "Config/Needs/website": "tidyverse/tidytemplate", + "NeedsCompilation": "no", + "Packaged": "2025-07-04 18:25:31 UTC; kirill", + "Author": "Kirill Müller [aut, cre] (ORCID:\n ),\n Hadley Wickham [aut],\n RStudio [cph]", + "Maintainer": "Kirill Müller ", + "Repository": "RSPM", + "Date/Publication": "2025-07-04 19:20:02 UTC", + "Built": "R 4.5.0; ; 2025-07-05 04:41:15 UTC; unix" + } + }, + "pingr": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "pingr", + "Title": "Check if a Remote Computer is Up", + "Version": "2.0.5", + "Authors@R": "c(\n person(\"Gábor\", \"Csárdi\", , \"csardi.gabor@gmail.com\", role = c(\"aut\", \"cre\")),\n person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\"))\n )", + "Description": "Check if a remote computer is up. It can either just call the\n system ping command, or check a specified TCP port.", + "License": "MIT + file LICENSE", + "URL": "https://r-lib.github.io/pingr/, https://github.com/r-lib/pingr", + "BugReports": "https://github.com/r-lib/pingr/issues", + "Depends": "R (>= 3.6)", + "Imports": "processx, utils", + "Suggests": "covr, ps, testthat (>= 3.0.0)", + "Config/Needs/website": "tidyverse/tidytemplate", + "Config/testthat/edition": "3", + "Encoding": "UTF-8", + "RoxygenNote": "7.2.3", + "Biarch": "true", + "NeedsCompilation": "yes", + "Packaged": "2024-12-12 09:19:43 UTC; gaborcsardi", + "Author": "Gábor Csárdi [aut, cre],\n Posit Software, PBC [cph, fnd]", + "Maintainer": "Gábor Csárdi ", + "Repository": "RSPM", + "Date/Publication": "2024-12-12 10:10:02 UTC", + "Built": "R 4.5.0; x86_64-pc-linux-gnu; 2025-04-09 06:12:26 UTC; unix" + } + }, + "pkgbuild": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "pkgbuild", + "Title": "Find Tools Needed to Build R Packages", + "Version": "1.4.8", + "Authors@R": "c(\n person(\"Hadley\", \"Wickham\", role = \"aut\"),\n person(\"Jim\", \"Hester\", role = \"aut\"),\n person(\"Gábor\", \"Csárdi\", , \"csardi.gabor@gmail.com\", role = c(\"aut\", \"cre\")),\n person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\"),\n comment = c(ROR = \"03wc8by49\"))\n )", + "Description": "Provides functions used to build R packages. Locates\n compilers needed to build R packages on various platforms and ensures\n the PATH is configured appropriately so R can use them.", + "License": "MIT + file LICENSE", + "URL": "https://github.com/r-lib/pkgbuild, https://pkgbuild.r-lib.org", + "BugReports": "https://github.com/r-lib/pkgbuild/issues", + "Depends": "R (>= 3.5)", + "Imports": "callr (>= 3.2.0), cli (>= 3.4.0), desc, processx, R6", + "Suggests": "covr, cpp11, knitr, Rcpp, rmarkdown, testthat (>= 3.2.0),\nwithr (>= 2.3.0)", + "Config/Needs/website": "tidyverse/tidytemplate", + "Config/testthat/edition": "3", + "Config/usethis/last-upkeep": "2025-04-30", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.2", + "NeedsCompilation": "no", + "Packaged": "2025-05-26 10:36:48 UTC; gaborcsardi", + "Author": "Hadley Wickham [aut],\n Jim Hester [aut],\n Gábor Csárdi [aut, cre],\n Posit Software, PBC [cph, fnd] (ROR: )", + "Maintainer": "Gábor Csárdi ", + "Repository": "RSPM", + "Date/Publication": "2025-05-26 14:10:06 UTC", + "Built": "R 4.5.0; ; 2025-05-27 04:57:01 UTC; unix" + } + }, + "pkgconfig": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "pkgconfig", + "Title": "Private Configuration for 'R' Packages", + "Version": "2.0.3", + "Author": "Gábor Csárdi", + "Maintainer": "Gábor Csárdi ", + "Description": "Set configuration options on a per-package basis.\n Options set by a given package only apply to that package,\n other packages are unaffected.", + "License": "MIT + file LICENSE", + "LazyData": "true", + "Imports": "utils", + "Suggests": "covr, testthat, disposables (>= 1.0.3)", + "URL": "https://github.com/r-lib/pkgconfig#readme", + "BugReports": "https://github.com/r-lib/pkgconfig/issues", + "Encoding": "UTF-8", + "NeedsCompilation": "no", + "Packaged": "2019-09-22 08:42:40 UTC; gaborcsardi", + "Repository": "RSPM", + "Date/Publication": "2019-09-22 09:20:02 UTC", + "Built": "R 4.5.0; ; 2025-04-06 04:41:32 UTC; unix" + } + }, + "pkgload": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "pkgload", + "Title": "Simulate Package Installation and Attach", + "Version": "1.4.0", + "Authors@R": "c(\n person(\"Hadley\", \"Wickham\", role = \"aut\"),\n person(\"Winston\", \"Chang\", role = \"aut\"),\n person(\"Jim\", \"Hester\", role = \"aut\"),\n person(\"Lionel\", \"Henry\", , \"lionel@posit.co\", role = c(\"aut\", \"cre\")),\n person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\")),\n person(\"R Core team\", role = \"ctb\",\n comment = \"Some namespace and vignette code extracted from base R\")\n )", + "Description": "Simulates the process of installing a package and then\n attaching it. This is a key part of the 'devtools' package as it\n allows you to rapidly iterate while developing a package.", + "License": "GPL-3", + "URL": "https://github.com/r-lib/pkgload, https://pkgload.r-lib.org", + "BugReports": "https://github.com/r-lib/pkgload/issues", + "Depends": "R (>= 3.4.0)", + "Imports": "cli (>= 3.3.0), desc, fs, glue, lifecycle, methods, pkgbuild,\nprocessx, rlang (>= 1.1.1), rprojroot, utils, withr (>= 2.4.3)", + "Suggests": "bitops, jsonlite, mathjaxr, pak, Rcpp, remotes, rstudioapi,\ntestthat (>= 3.2.1.1), usethis", + "Config/Needs/website": "tidyverse/tidytemplate, ggplot2", + "Config/testthat/edition": "3", + "Config/testthat/parallel": "TRUE", + "Config/testthat/start-first": "dll", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.1", + "NeedsCompilation": "no", + "Packaged": "2024-06-28 10:36:56 UTC; lionel", + "Author": "Hadley Wickham [aut],\n Winston Chang [aut],\n Jim Hester [aut],\n Lionel Henry [aut, cre],\n Posit Software, PBC [cph, fnd],\n R Core team [ctb] (Some namespace and vignette code extracted from base\n R)", + "Maintainer": "Lionel Henry ", + "Repository": "RSPM", + "Date/Publication": "2024-06-28 11:30:02 UTC", + "Built": "R 4.5.0; ; 2025-04-06 04:43:53 UTC; unix" + } + }, + "plotly": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "plotly", + "Title": "Create Interactive Web Graphics via 'plotly.js'", + "Version": "4.11.0", + "Authors@R": "c(person(\"Carson\", \"Sievert\", role = c(\"aut\", \"cre\"),\n email = \"cpsievert1@gmail.com\", comment = c(ORCID = \"0000-0002-4958-2844\")),\n person(\"Chris\", \"Parmer\", role = \"aut\",\n email = \"chris@plot.ly\"),\n person(\"Toby\", \"Hocking\", role = \"aut\",\n email = \"tdhock5@gmail.com\"),\n person(\"Scott\", \"Chamberlain\", role = \"aut\",\n email = \"myrmecocystus@gmail.com\"),\n person(\"Karthik\", \"Ram\", role = \"aut\",\n email = \"karthik.ram@gmail.com\"),\n person(\"Marianne\", \"Corvellec\", role = \"aut\",\n email = \"marianne.corvellec@igdore.org\", comment = c(ORCID = \"0000-0002-1994-3581\")),\n person(\"Pedro\", \"Despouy\", role = \"aut\",\n email = \"pedro@plot.ly\"),\n person(\"Salim\", \"Brüggemann\", role = \"ctb\",\n email = \"salim-b@pm.me\", comment = c(ORCID = \"0000-0002-5329-5987\")),\n person(\"Plotly Technologies Inc.\", role = \"cph\"))", + "License": "MIT + file LICENSE", + "Description": "Create interactive web graphics from 'ggplot2' graphs and/or a custom interface to the (MIT-licensed) JavaScript library 'plotly.js' inspired by the grammar of graphics.", + "URL": "https://plotly-r.com, https://github.com/plotly/plotly.R,\nhttps://plotly.com/r/", + "BugReports": "https://github.com/plotly/plotly.R/issues", + "Depends": "R (>= 3.2.0), ggplot2 (>= 3.0.0)", + "Imports": "tools, scales, httr (>= 1.3.0), jsonlite (>= 1.6), magrittr,\ndigest, viridisLite, base64enc, htmltools (>= 0.3.6),\nhtmlwidgets (>= 1.5.2.9001), tidyr (>= 1.0.0), RColorBrewer,\ndplyr, vctrs, tibble, lazyeval (>= 0.2.0), rlang (>= 1.0.0),\ncrosstalk, purrr, data.table, promises", + "Suggests": "MASS, maps, hexbin, ggthemes, GGally, ggalluvial, testthat,\nknitr, shiny (>= 1.1.0), shinytest2, curl, rmarkdown, Cairo,\nbroom, webshot, listviewer, dendextend, sf, png, IRdisplay,\nprocessx, plotlyGeoAssets, forcats, withr, palmerpenguins,\nrversions, reticulate, rsvg, ggridges", + "LazyData": "true", + "RoxygenNote": "7.3.2", + "Encoding": "UTF-8", + "Config/Needs/check": "tidyverse/ggplot2, ggobi/GGally, rcmdcheck,\ndevtools, reshape2, s2", + "NeedsCompilation": "no", + "Packaged": "2025-06-19 15:43:06 UTC; cpsievert", + "Author": "Carson Sievert [aut, cre] (ORCID:\n ),\n Chris Parmer [aut],\n Toby Hocking [aut],\n Scott Chamberlain [aut],\n Karthik Ram [aut],\n Marianne Corvellec [aut] (ORCID:\n ),\n Pedro Despouy [aut],\n Salim Brüggemann [ctb] (ORCID: ),\n Plotly Technologies Inc. [cph]", + "Maintainer": "Carson Sievert ", + "Repository": "RSPM", + "Date/Publication": "2025-06-19 18:30:02 UTC", + "Built": "R 4.5.0; ; 2025-06-20 04:59:42 UTC; unix" + } + }, + "praise": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "praise", + "Title": "Praise Users", + "Version": "1.0.0", + "Author": "Gabor Csardi, Sindre Sorhus", + "Maintainer": "Gabor Csardi ", + "Description": "Build friendly R packages that\n praise their users if they have done something\n good, or they just need it to feel better.", + "License": "MIT + file LICENSE", + "LazyData": "true", + "URL": "https://github.com/gaborcsardi/praise", + "BugReports": "https://github.com/gaborcsardi/praise/issues", + "Suggests": "testthat", + "Collate": "'adjective.R' 'adverb.R' 'exclamation.R' 'verb.R' 'rpackage.R'\n'package.R'", + "NeedsCompilation": "no", + "Packaged": "2015-08-11 02:01:43 UTC; gaborcsardi", + "Repository": "RSPM", + "Date/Publication": "2015-08-11 08:22:28", + "Encoding": "UTF-8", + "Built": "R 4.5.0; ; 2025-04-06 04:41:34 UTC; unix" + } + }, + "prettyunits": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "prettyunits", + "Title": "Pretty, Human Readable Formatting of Quantities", + "Version": "1.2.0", + "Authors@R": "c(\n person(\"Gabor\", \"Csardi\", email=\"csardi.gabor@gmail.com\", role=c(\"aut\", \"cre\")),\n person(\"Bill\", \"Denney\", email=\"wdenney@humanpredictions.com\", role=c(\"ctb\"), comment=c(ORCID=\"0000-0002-5759-428X\")),\n person(\"Christophe\", \"Regouby\", email=\"christophe.regouby@free.fr\", role=c(\"ctb\"))\n )", + "Description": "Pretty, human readable formatting of quantities.\n Time intervals: '1337000' -> '15d 11h 23m 20s'.\n Vague time intervals: '2674000' -> 'about a month ago'.\n Bytes: '1337' -> '1.34 kB'.\n Rounding: '99' with 3 significant digits -> '99.0'\n p-values: '0.00001' -> '<0.0001'.\n Colors: '#FF0000' -> 'red'.\n Quantities: '1239437' -> '1.24 M'.", + "License": "MIT + file LICENSE", + "URL": "https://github.com/r-lib/prettyunits", + "BugReports": "https://github.com/r-lib/prettyunits/issues", + "Depends": "R(>= 2.10)", + "Suggests": "codetools, covr, testthat", + "RoxygenNote": "7.2.3", + "Encoding": "UTF-8", + "NeedsCompilation": "no", + "Packaged": "2023-09-24 10:53:19 UTC; gaborcsardi", + "Author": "Gabor Csardi [aut, cre],\n Bill Denney [ctb] (),\n Christophe Regouby [ctb]", + "Maintainer": "Gabor Csardi ", + "Repository": "RSPM", + "Date/Publication": "2023-09-24 21:10:02 UTC", + "Built": "R 4.5.0; ; 2025-04-06 04:41:38 UTC; unix" + } + }, + "processx": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "processx", + "Title": "Execute and Control System Processes", + "Version": "3.8.6", + "Authors@R": "c(\n person(\"Gábor\", \"Csárdi\", , \"csardi.gabor@gmail.com\", role = c(\"aut\", \"cre\", \"cph\"),\n comment = c(ORCID = \"0000-0001-7098-9676\")),\n person(\"Winston\", \"Chang\", role = \"aut\"),\n person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\")),\n person(\"Ascent Digital Services\", role = c(\"cph\", \"fnd\"))\n )", + "Description": "Tools to run system processes in the background. It can\n check if a background process is running; wait on a background process\n to finish; get the exit status of finished processes; kill background\n processes. It can read the standard output and error of the processes,\n using non-blocking connections. 'processx' can poll a process for\n standard output or error, with a timeout. It can also poll several\n processes at once.", + "License": "MIT + file LICENSE", + "URL": "https://processx.r-lib.org, https://github.com/r-lib/processx", + "BugReports": "https://github.com/r-lib/processx/issues", + "Depends": "R (>= 3.4.0)", + "Imports": "ps (>= 1.2.0), R6, utils", + "Suggests": "callr (>= 3.7.3), cli (>= 3.3.0), codetools, covr, curl,\ndebugme, parallel, rlang (>= 1.0.2), testthat (>= 3.0.0),\nwebfakes, withr", + "Config/Needs/website": "tidyverse/tidytemplate", + "Config/testthat/edition": "3", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.1.9000", + "NeedsCompilation": "yes", + "Packaged": "2025-02-19 21:20:47 UTC; gaborcsardi", + "Author": "Gábor Csárdi [aut, cre, cph] (),\n Winston Chang [aut],\n Posit Software, PBC [cph, fnd],\n Ascent Digital Services [cph, fnd]", + "Maintainer": "Gábor Csárdi ", + "Repository": "RSPM", + "Date/Publication": "2025-02-21 17:00:01 UTC", + "Built": "R 4.5.0; x86_64-pc-linux-gnu; 2025-04-06 04:42:52 UTC; unix" + } + }, + "prodlim": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "prodlim", + "Title": "Product-Limit Estimation for Censored Event History Analysis", + "Version": "2025.04.28", + "Authors@R": "person(given = c(\"Thomas\", \"A.\"),\n family = \"Gerds\",\n role = c(\"aut\", \"cre\"),\n email = \"tag@biostat.ku.dk\")", + "Description": "Fast and user friendly implementation of nonparametric estimators\n for censored event history (survival) analysis. Kaplan-Meier and\n Aalen-Johansen method.", + "Depends": "R (>= 4.1.0)", + "Imports": "Rcpp (>= 0.11.5), stats, rlang, data.table, grDevices,\nggplot2, graphics, diagram, survival, KernSmooth, lava", + "Suggests": "tibble, pammtools, ggthemes", + "LinkingTo": "Rcpp", + "Maintainer": "Thomas A. Gerds ", + "BugReports": "https://github.com/tagteam/prodlim/issues", + "License": "GPL (>= 2)", + "Packaged": "2025-04-28 12:08:49 UTC; tag", + "RoxygenNote": "7.3.2", + "NeedsCompilation": "yes", + "Author": "Thomas A. Gerds [aut, cre]", + "Repository": "RSPM", + "Date/Publication": "2025-04-28 18:40:05 UTC", + "Encoding": "UTF-8", + "Built": "R 4.5.0; x86_64-pc-linux-gnu; 2025-07-03 15:01:08 UTC; unix" + } + }, + "progress": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "progress", + "Title": "Terminal Progress Bars", + "Version": "1.2.3", + "Authors@R": "c(\n person(\"Gábor\", \"Csárdi\", , \"csardi.gabor@gmail.com\", role = c(\"aut\", \"cre\")),\n person(\"Rich\", \"FitzJohn\", role = \"aut\"),\n person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\"))\n )", + "Description": "Configurable Progress bars, they may include percentage,\n elapsed time, and/or the estimated completion time. They work in\n terminals, in 'Emacs' 'ESS', 'RStudio', 'Windows' 'Rgui' and the\n 'macOS' 'R.app'. The package also provides a 'C++' 'API', that works\n with or without 'Rcpp'.", + "License": "MIT + file LICENSE", + "URL": "https://github.com/r-lib/progress#readme,\nhttp://r-lib.github.io/progress/", + "BugReports": "https://github.com/r-lib/progress/issues", + "Depends": "R (>= 3.6)", + "Imports": "crayon, hms, prettyunits, R6", + "Suggests": "Rcpp, testthat (>= 3.0.0), withr", + "Config/Needs/website": "tidyverse/tidytemplate", + "Config/testthat/edition": "3", + "Encoding": "UTF-8", + "RoxygenNote": "7.2.3", + "NeedsCompilation": "no", + "Packaged": "2023-12-05 09:33:10 UTC; gaborcsardi", + "Author": "Gábor Csárdi [aut, cre],\n Rich FitzJohn [aut],\n Posit Software, PBC [cph, fnd]", + "Maintainer": "Gábor Csárdi ", + "Repository": "RSPM", + "Date/Publication": "2023-12-06 10:30:02 UTC", + "Built": "R 4.5.0; ; 2025-04-06 04:43:57 UTC; unix" + } + }, + "progressr": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "progressr", + "Version": "0.15.1", + "Title": "An Inclusive, Unifying API for Progress Updates", + "Description": "A minimal, unifying API for scripts and packages to report progress updates from anywhere including when using parallel processing. The package is designed such that the developer can to focus on what progress should be reported on without having to worry about how to present it. The end user has full control of how, where, and when to render these progress updates, e.g. in the terminal using utils::txtProgressBar(), cli::cli_progress_bar(), in a graphical user interface using utils::winProgressBar(), tcltk::tkProgressBar() or shiny::withProgress(), via the speakers using beepr::beep(), or on a file system via the size of a file. Anyone can add additional, customized, progression handlers. The 'progressr' package uses R's condition framework for signaling progress updated. Because of this, progress can be reported from almost anywhere in R, e.g. from classical for and while loops, from map-reduce API:s like the lapply() family of functions, 'purrr', 'plyr', and 'foreach'. It will also work with parallel processing via the 'future' framework, e.g. future.apply::future_lapply(), furrr::future_map(), and 'foreach' with 'doFuture'. The package is compatible with Shiny applications.", + "Authors@R": "c(person(\"Henrik\", \"Bengtsson\",\n role = c(\"aut\", \"cre\", \"cph\"),\n email = \"henrikb@braju.com\",\n comment = c(ORCID = \"0000-0002-7579-5165\")))", + "License": "GPL (>= 3)", + "Depends": "R (>= 3.5.0)", + "Imports": "digest, utils", + "Suggests": "graphics, tcltk, beepr, cli, crayon, pbmcapply, progress,\npurrr, foreach, plyr, doFuture, future, future.apply, furrr,\nntfy, RPushbullet, rstudioapi, shiny, commonmark, base64enc,\ntools", + "VignetteBuilder": "progressr", + "URL": "https://progressr.futureverse.org,\nhttps://github.com/futureverse/progressr", + "BugReports": "https://github.com/futureverse/progressr/issues", + "RoxygenNote": "7.3.2", + "NeedsCompilation": "no", + "Packaged": "2024-11-21 06:18:27 UTC; henrik", + "Author": "Henrik Bengtsson [aut, cre, cph]\n ()", + "Maintainer": "Henrik Bengtsson ", + "Repository": "RSPM", + "Date/Publication": "2024-11-22 14:20:06 UTC", + "Encoding": "UTF-8", + "Built": "R 4.5.0; ; 2025-04-06 04:42:50 UTC; unix" + } + }, + "promises": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Type": "Package", + "Package": "promises", + "Title": "Abstractions for Promise-Based Asynchronous Programming", + "Version": "1.3.3", + "Authors@R": "c(\n person(\"Joe\", \"Cheng\", , \"joe@posit.co\", role = c(\"aut\", \"cre\")),\n person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\"), comment = c(ROR = \"03wc8by49\"))\n )", + "Description": "Provides fundamental abstractions for doing asynchronous\n programming in R using promises. Asynchronous programming is useful\n for allowing a single R process to orchestrate multiple tasks in the\n background while also attending to something else. Semantics are\n similar to 'JavaScript' promises, but with a syntax that is idiomatic\n R.", + "License": "MIT + file LICENSE", + "URL": "https://rstudio.github.io/promises/,\nhttps://github.com/rstudio/promises", + "BugReports": "https://github.com/rstudio/promises/issues", + "Imports": "fastmap (>= 1.1.0), later, magrittr (>= 1.5), R6, Rcpp, rlang,\nstats", + "Suggests": "future (>= 1.21.0), knitr, purrr, rmarkdown, spelling,\ntestthat (>= 3.0.0), vembedr", + "LinkingTo": "later, Rcpp", + "VignetteBuilder": "knitr", + "Config/Needs/website": "rsconnect, tidyverse/tidytemplate", + "Config/testthat/edition": "3", + "Config/usethis/last-upkeep": "2025-05-27", + "Encoding": "UTF-8", + "Language": "en-US", + "RoxygenNote": "7.3.2", + "NeedsCompilation": "yes", + "Packaged": "2025-05-29 15:29:40 UTC; barret", + "Author": "Joe Cheng [aut, cre],\n Posit Software, PBC [cph, fnd] (ROR: )", + "Maintainer": "Joe Cheng ", + "Repository": "RSPM", + "Date/Publication": "2025-05-29 16:30:02 UTC", + "Built": "R 4.5.0; x86_64-pc-linux-gnu; 2025-07-03 14:34:39 UTC; unix" + } + }, + "ps": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "ps", + "Title": "List, Query, Manipulate System Processes", + "Version": "1.9.1", + "Authors@R": "c(\n person(\"Jay\", \"Loden\", role = \"aut\"),\n person(\"Dave\", \"Daeschler\", role = \"aut\"),\n person(\"Giampaolo\", \"Rodola'\", role = \"aut\"),\n person(\"Gábor\", \"Csárdi\", , \"csardi.gabor@gmail.com\", role = c(\"aut\", \"cre\")),\n person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\"))\n )", + "Description": "List, query and manipulate all system processes, on\n 'Windows', 'Linux' and 'macOS'.", + "License": "MIT + file LICENSE", + "URL": "https://github.com/r-lib/ps, https://ps.r-lib.org/", + "BugReports": "https://github.com/r-lib/ps/issues", + "Depends": "R (>= 3.4)", + "Imports": "utils", + "Suggests": "callr, covr, curl, pillar, pingr, processx (>= 3.1.0), R6,\nrlang, testthat (>= 3.0.0), webfakes, withr", + "Biarch": "true", + "Config/Needs/website": "tidyverse/tidytemplate", + "Config/testthat/edition": "3", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.2", + "NeedsCompilation": "yes", + "Packaged": "2025-04-12 09:23:06 UTC; gaborcsardi", + "Author": "Jay Loden [aut],\n Dave Daeschler [aut],\n Giampaolo Rodola' [aut],\n Gábor Csárdi [aut, cre],\n Posit Software, PBC [cph, fnd]", + "Maintainer": "Gábor Csárdi ", + "Repository": "RSPM", + "Date/Publication": "2025-04-12 09:50:01 UTC", + "Built": "R 4.5.0; x86_64-pc-linux-gnu; 2025-04-14 17:54:00 UTC; unix" + } + }, + "purrr": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "purrr", + "Title": "Functional Programming Tools", + "Version": "1.1.0", + "Authors@R": "c(\n person(\"Hadley\", \"Wickham\", , \"hadley@posit.co\", role = c(\"aut\", \"cre\"),\n comment = c(ORCID = \"0000-0003-4757-117X\")),\n person(\"Lionel\", \"Henry\", , \"lionel@posit.co\", role = \"aut\"),\n person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\"),\n comment = c(ROR = \"https://ror.org/03wc8by49\"))\n )", + "Description": "A complete and consistent functional programming toolkit for\n R.", + "License": "MIT + file LICENSE", + "URL": "https://purrr.tidyverse.org/, https://github.com/tidyverse/purrr", + "BugReports": "https://github.com/tidyverse/purrr/issues", + "Depends": "R (>= 4.1)", + "Imports": "cli (>= 3.6.1), lifecycle (>= 1.0.3), magrittr (>= 1.5.0),\nrlang (>= 1.1.1), vctrs (>= 0.6.3)", + "Suggests": "carrier (>= 0.2.0), covr, dplyr (>= 0.7.8), httr, knitr,\nlubridate, mirai (>= 2.4.0), rmarkdown, testthat (>= 3.0.0),\ntibble, tidyselect", + "LinkingTo": "cli", + "VignetteBuilder": "knitr", + "Biarch": "true", + "Config/build/compilation-database": "true", + "Config/Needs/website": "tidyverse/tidytemplate, tidyr", + "Config/testthat/edition": "3", + "Config/testthat/parallel": "TRUE", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.2", + "NeedsCompilation": "yes", + "Packaged": "2025-07-10 12:22:53 UTC; hadleywickham", + "Author": "Hadley Wickham [aut, cre] (ORCID:\n ),\n Lionel Henry [aut],\n Posit Software, PBC [cph, fnd] (ROR: )", + "Maintainer": "Hadley Wickham ", + "Repository": "RSPM", + "Date/Publication": "2025-07-10 17:50:02 UTC", + "Built": "R 4.5.0; x86_64-pc-linux-gnu; 2025-07-11 05:05:15 UTC; unix" + } + }, + "quadprog": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "quadprog", + "Type": "Package", + "Title": "Functions to Solve Quadratic Programming Problems", + "Version": "1.5-8", + "Date": "2019-11-20", + "Author": "S original by Berwin A. Turlach \n R port by Andreas Weingessel \n Fortran contributions from Cleve Moler (dposl/LINPACK and\n (a modified version of) dpodi/LINPACK) ", + "Maintainer": "Berwin A. Turlach ", + "Description": "This package contains routines and documentation for\n solving quadratic programming problems.", + "Depends": "R (>= 3.1.0)", + "License": "GPL (>= 2)", + "NeedsCompilation": "yes", + "Packaged": "2019-11-20 06:04:34 UTC; berwin", + "Repository": "RSPM", + "Date/Publication": "2019-11-20 08:20:02 UTC", + "Encoding": "UTF-8", + "Built": "R 4.5.0; x86_64-pc-linux-gnu; 2025-04-06 04:41:40 UTC; unix" + } + }, + "quantmod": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "quantmod", + "Type": "Package", + "Title": "Quantitative Financial Modelling Framework", + "Version": "0.4.28", + "Authors@R": "c(\n person(given=c(\"Jeffrey\",\"A.\"), family=\"Ryan\", role=c(\"aut\",\"cph\")),\n person(given=c(\"Joshua\",\"M.\"), family=\"Ulrich\", role=c(\"cre\",\"aut\"), email=\"josh.m.ulrich@gmail.com\"),\n person(given=c(\"Ethan\",\"B.\"), family=\"Smith\", role=\"ctb\"),\n person(given=\"Wouter\", family=\"Thielen\", role=\"ctb\"),\n person(given=\"Paul\", family=\"Teetor\", role=\"ctb\"),\n person(given=\"Steve\", family=\"Bronder\", role=\"ctb\")\n )", + "Depends": "R (>= 3.2.0), xts(>= 0.9-0), zoo, TTR(>= 0.2), methods", + "Imports": "curl, jsonlite(>= 1.1)", + "Suggests": "DBI, RMySQL, RSQLite, timeSeries, xml2, downloader, tinytest", + "Description": "Specify, build, trade, and analyse quantitative financial trading strategies.", + "LazyLoad": "yes", + "License": "GPL-3", + "URL": "https://www.quantmod.com/,\nhttps://github.com/joshuaulrich/quantmod", + "BugReports": "https://github.com/joshuaulrich/quantmod/issues", + "NeedsCompilation": "no", + "Packaged": "2025-06-18 21:49:58 UTC; josh", + "Author": "Jeffrey A. Ryan [aut, cph],\n Joshua M. Ulrich [cre, aut],\n Ethan B. Smith [ctb],\n Wouter Thielen [ctb],\n Paul Teetor [ctb],\n Steve Bronder [ctb]", + "Maintainer": "Joshua M. Ulrich ", + "Repository": "RSPM", + "Date/Publication": "2025-06-19 19:40:06 UTC", + "Encoding": "UTF-8", + "Built": "R 4.5.0; ; 2025-06-20 04:58:37 UTC; unix" + } + }, + "rappdirs": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Type": "Package", + "Package": "rappdirs", + "Title": "Application Directories: Determine Where to Save Data, Caches,\nand Logs", + "Version": "0.3.3", + "Authors@R": "\n c(person(given = \"Hadley\",\n family = \"Wickham\",\n role = c(\"trl\", \"cre\", \"cph\"),\n email = \"hadley@rstudio.com\"),\n person(given = \"RStudio\",\n role = \"cph\"),\n person(given = \"Sridhar\",\n family = \"Ratnakumar\",\n role = \"aut\"),\n person(given = \"Trent\",\n family = \"Mick\",\n role = \"aut\"),\n person(given = \"ActiveState\",\n role = \"cph\",\n comment = \"R/appdir.r, R/cache.r, R/data.r, R/log.r translated from appdirs\"),\n person(given = \"Eddy\",\n family = \"Petrisor\",\n role = \"ctb\"),\n person(given = \"Trevor\",\n family = \"Davis\",\n role = c(\"trl\", \"aut\")),\n person(given = \"Gabor\",\n family = \"Csardi\",\n role = \"ctb\"),\n person(given = \"Gregory\",\n family = \"Jefferis\",\n role = \"ctb\"))", + "Description": "An easy way to determine which directories on the\n users computer you should use to save data, caches and logs. A port of\n Python's 'Appdirs' () to\n R.", + "License": "MIT + file LICENSE", + "URL": "https://rappdirs.r-lib.org, https://github.com/r-lib/rappdirs", + "BugReports": "https://github.com/r-lib/rappdirs/issues", + "Depends": "R (>= 3.2)", + "Suggests": "roxygen2, testthat (>= 3.0.0), covr, withr", + "Copyright": "Original python appdirs module copyright (c) 2010\nActiveState Software Inc. R port copyright Hadley Wickham,\nRStudio. See file LICENSE for details.", + "Encoding": "UTF-8", + "RoxygenNote": "7.1.1", + "Config/testthat/edition": "3", + "NeedsCompilation": "yes", + "Packaged": "2021-01-28 22:29:57 UTC; hadley", + "Author": "Hadley Wickham [trl, cre, cph],\n RStudio [cph],\n Sridhar Ratnakumar [aut],\n Trent Mick [aut],\n ActiveState [cph] (R/appdir.r, R/cache.r, R/data.r, R/log.r translated\n from appdirs),\n Eddy Petrisor [ctb],\n Trevor Davis [trl, aut],\n Gabor Csardi [ctb],\n Gregory Jefferis [ctb]", + "Maintainer": "Hadley Wickham ", + "Repository": "RSPM", + "Date/Publication": "2021-01-31 05:40:02 UTC", + "Built": "R 4.5.0; x86_64-pc-linux-gnu; 2025-04-06 04:41:42 UTC; unix" + } + }, + "reactR": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "reactR", + "Type": "Package", + "Title": "React Helpers", + "Version": "0.6.1", + "Date": "2024-09-14", + "Authors@R": "c(\n person(\n \"Facebook\", \"Inc\"\n , role = c(\"aut\", \"cph\")\n , comment = \"React library in lib, https://reactjs.org/; see AUTHORS for full list of contributors\"\n ),\n person(\n \"Michel\",\"Weststrate\",\n , role = c(\"aut\", \"cph\")\n , comment = \"mobx library in lib, https://github.com/mobxjs\"\n ),\n person(\n \"Kent\", \"Russell\"\n , role = c(\"aut\", \"cre\")\n , comment = \"R interface\"\n , email = \"kent.russell@timelyportfolio.com\"\n ),\n person(\n \"Alan\", \"Dipert\"\n , role = c(\"aut\")\n , comment = \"R interface\"\n , email = \"alan@rstudio.com\"\n ),\n person(\n \"Greg\", \"Lin\"\n , role = c(\"aut\")\n , comment = \"R interface\"\n , email = \"glin@glin.io\"\n )\n )", + "Maintainer": "Kent Russell ", + "Description": "Make it easy to use 'React' in R with 'htmlwidget' scaffolds,\n helper dependency functions, an embedded 'Babel' 'transpiler',\n and examples.", + "URL": "https://github.com/react-R/reactR", + "BugReports": "https://github.com/react-R/reactR/issues", + "License": "MIT + file LICENSE", + "Encoding": "UTF-8", + "Imports": "htmltools", + "Suggests": "htmlwidgets (>= 1.5.3), rmarkdown, shiny, V8, knitr, usethis,\njsonlite", + "RoxygenNote": "7.3.2", + "VignetteBuilder": "knitr", + "NeedsCompilation": "no", + "Packaged": "2024-09-14 13:24:57 UTC; kentr", + "Author": "Facebook Inc [aut, cph] (React library in lib, https://reactjs.org/;\n see AUTHORS for full list of contributors),\n Michel Weststrate [aut, cph] (mobx library in lib,\n https://github.com/mobxjs),\n Kent Russell [aut, cre] (R interface),\n Alan Dipert [aut] (R interface),\n Greg Lin [aut] (R interface)", + "Repository": "RSPM", + "Date/Publication": "2024-09-14 13:50:02 UTC", + "Built": "R 4.5.0; ; 2025-04-09 06:14:52 UTC; unix" + } + }, + "reactable": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "reactable", + "Type": "Package", + "Title": "Interactive Data Tables for R", + "Version": "0.4.4", + "Authors@R": "c(\n person(\"Greg\", \"Lin\", email = \"glin@glin.io\", role = c(\"aut\", \"cre\")),\n person(\"Tanner\", \"Linsley\", role = c(\"ctb\", \"cph\"), comment = \"React Table library\"),\n person(family = \"Emotion team and other contributors\", role = c(\"ctb\", \"cph\"),\n comment = \"Emotion library\"),\n person(\"Kent\", \"Russell\", role = c(\"ctb\", \"cph\"), comment = \"reactR package\"),\n person(\"Ramnath\", \"Vaidyanathan\", role = c(\"ctb\", \"cph\"), comment = \"htmlwidgets package\"),\n person(\"Joe\", \"Cheng\", role = c(\"ctb\", \"cph\"), comment = \"htmlwidgets package\"),\n person(\"JJ\", \"Allaire\", role = c(\"ctb\", \"cph\"), comment = \"htmlwidgets package\"),\n person(\"Yihui\", \"Xie\", role = c(\"ctb\", \"cph\"), comment = \"htmlwidgets package\"),\n person(\"Kenton\", \"Russell\", role = c(\"ctb\", \"cph\"), comment = \"htmlwidgets package\"),\n person(family = \"Facebook, Inc. and its affiliates\", role = c(\"ctb\", \"cph\"), comment = \"React library\"),\n person(family = \"FormatJS\", role = c(\"ctb\", \"cph\"), comment = \"FormatJS libraries\"),\n person(family = \"Feross Aboukhadijeh, and other contributors\", role = c(\"ctb\", \"cph\"),\n comment = \"buffer library\"),\n person(\"Roman\", \"Shtylman\", role = c(\"ctb\", \"cph\"), comment = \"process library\"),\n person(\"James\", \"Halliday\", role = c(\"ctb\", \"cph\"), comment = \"stream-browserify library\"),\n person(family = \"Posit Software, PBC\", role = c(\"fnd\", \"cph\"))\n )", + "Description": "Interactive data tables for R, based on the 'React Table'\n JavaScript library. Provides an HTML widget that can be used in 'R Markdown'\n or 'Quarto' documents, 'Shiny' applications, or viewed from an R console.", + "License": "MIT + file LICENSE", + "URL": "https://glin.github.io/reactable/,\nhttps://github.com/glin/reactable", + "BugReports": "https://github.com/glin/reactable/issues", + "Depends": "R (>= 3.1)", + "Imports": "digest, htmltools (>= 0.5.2), htmlwidgets (>= 1.5.3),\njsonlite, reactR", + "Suggests": "covr, crosstalk, dplyr, fontawesome, knitr, leaflet, MASS,\nrmarkdown, shiny, sparkline, testthat, tippy, V8", + "Encoding": "UTF-8", + "RoxygenNote": "7.2.1", + "Config/testthat/edition": "3", + "NeedsCompilation": "no", + "Packaged": "2023-03-12 00:59:18 UTC; greg", + "Author": "Greg Lin [aut, cre],\n Tanner Linsley [ctb, cph] (React Table library),\n Emotion team and other contributors [ctb, cph] (Emotion library),\n Kent Russell [ctb, cph] (reactR package),\n Ramnath Vaidyanathan [ctb, cph] (htmlwidgets package),\n Joe Cheng [ctb, cph] (htmlwidgets package),\n JJ Allaire [ctb, cph] (htmlwidgets package),\n Yihui Xie [ctb, cph] (htmlwidgets package),\n Kenton Russell [ctb, cph] (htmlwidgets package),\n Facebook, Inc. and its affiliates [ctb, cph] (React library),\n FormatJS [ctb, cph] (FormatJS libraries),\n Feross Aboukhadijeh, and other contributors [ctb, cph] (buffer library),\n Roman Shtylman [ctb, cph] (process library),\n James Halliday [ctb, cph] (stream-browserify library),\n Posit Software, PBC [fnd, cph]", + "Maintainer": "Greg Lin ", + "Repository": "RSPM", + "Date/Publication": "2023-03-12 10:00:10 UTC", + "Built": "R 4.5.0; ; 2025-04-09 06:31:16 UTC; unix" + } + }, + "readr": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "readr", + "Title": "Read Rectangular Text Data", + "Version": "2.1.5", + "Authors@R": "c(\n person(\"Hadley\", \"Wickham\", , \"hadley@posit.co\", role = \"aut\"),\n person(\"Jim\", \"Hester\", role = \"aut\"),\n person(\"Romain\", \"Francois\", role = \"ctb\"),\n person(\"Jennifer\", \"Bryan\", , \"jenny@posit.co\", role = c(\"aut\", \"cre\"),\n comment = c(ORCID = \"0000-0002-6983-2759\")),\n person(\"Shelby\", \"Bearrows\", role = \"ctb\"),\n person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\")),\n person(\"https://github.com/mandreyel/\", role = \"cph\",\n comment = \"mio library\"),\n person(\"Jukka\", \"Jylänki\", role = c(\"ctb\", \"cph\"),\n comment = \"grisu3 implementation\"),\n person(\"Mikkel\", \"Jørgensen\", role = c(\"ctb\", \"cph\"),\n comment = \"grisu3 implementation\")\n )", + "Description": "The goal of 'readr' is to provide a fast and friendly way to\n read rectangular data (like 'csv', 'tsv', and 'fwf'). It is designed\n to flexibly parse many types of data found in the wild, while still\n cleanly failing when data unexpectedly changes.", + "License": "MIT + file LICENSE", + "URL": "https://readr.tidyverse.org, https://github.com/tidyverse/readr", + "BugReports": "https://github.com/tidyverse/readr/issues", + "Depends": "R (>= 3.6)", + "Imports": "cli (>= 3.2.0), clipr, crayon, hms (>= 0.4.1), lifecycle (>=\n0.2.0), methods, R6, rlang, tibble, utils, vroom (>= 1.6.0)", + "Suggests": "covr, curl, datasets, knitr, rmarkdown, spelling, stringi,\ntestthat (>= 3.2.0), tzdb (>= 0.1.1), waldo, withr, xml2", + "LinkingTo": "cpp11, tzdb (>= 0.1.1)", + "VignetteBuilder": "knitr", + "Config/Needs/website": "tidyverse, tidyverse/tidytemplate", + "Config/testthat/edition": "3", + "Config/testthat/parallel": "false", + "Encoding": "UTF-8", + "Language": "en-US", + "RoxygenNote": "7.2.3", + "NeedsCompilation": "yes", + "Packaged": "2024-01-10 21:03:49 UTC; jenny", + "Author": "Hadley Wickham [aut],\n Jim Hester [aut],\n Romain Francois [ctb],\n Jennifer Bryan [aut, cre] (),\n Shelby Bearrows [ctb],\n Posit Software, PBC [cph, fnd],\n https://github.com/mandreyel/ [cph] (mio library),\n Jukka Jylänki [ctb, cph] (grisu3 implementation),\n Mikkel Jørgensen [ctb, cph] (grisu3 implementation)", + "Maintainer": "Jennifer Bryan ", + "Repository": "RSPM", + "Date/Publication": "2024-01-10 23:20:02 UTC", + "Built": "R 4.5.0; x86_64-pc-linux-gnu; 2025-04-06 04:46:24 UTC; unix" + } + }, + "recipes": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "recipes", + "Title": "Preprocessing and Feature Engineering Steps for Modeling", + "Version": "1.3.1", + "Authors@R": "c(\n person(\"Max\", \"Kuhn\", , \"max@posit.co\", role = c(\"aut\", \"cre\")),\n person(\"Hadley\", \"Wickham\", , \"hadley@posit.co\", role = \"aut\"),\n person(\"Emil\", \"Hvitfeldt\", , \"emil.hvitfeldt@posit.co\", role = \"aut\"),\n person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\"),\n comment = c(ROR = \"03wc8by49\"))\n )", + "Description": "A recipe prepares your data for modeling. We provide an\n extensible framework for pipeable sequences of feature engineering\n steps provides preprocessing tools to be applied to data. Statistical\n parameters for the steps can be estimated from an initial data set and\n then applied to other data sets. The resulting processed output can\n then be used as inputs for statistical or machine learning models.", + "License": "MIT + file LICENSE", + "URL": "https://github.com/tidymodels/recipes,\nhttps://recipes.tidymodels.org/", + "BugReports": "https://github.com/tidymodels/recipes/issues", + "Depends": "dplyr (>= 1.1.0), R (>= 4.1)", + "Imports": "cli, clock (>= 0.6.1), generics (>= 0.1.2), glue, gower,\nhardhat (>= 1.4.1), ipred (>= 0.9-12), lifecycle (>= 1.0.3),\nlubridate (>= 1.8.0), magrittr, Matrix, purrr (>= 1.0.0), rlang\n(>= 1.1.0), sparsevctrs (>= 0.3.3), stats, tibble, tidyr (>=\n1.0.0), tidyselect (>= 1.2.0), timeDate, utils, vctrs (>=\n0.5.0), withr", + "Suggests": "covr, ddalpha, dials (>= 1.2.0), ggplot2, igraph, kernlab,\nknitr, methods, modeldata (>= 0.1.1), parsnip (>= 1.2.0), RANN,\nRcppRoll, rmarkdown, rpart, rsample, RSpectra, splines2,\ntestthat (>= 3.0.0), workflows, xml2", + "VignetteBuilder": "knitr", + "RdMacros": "lifecycle", + "Config/Needs/website": "tidyverse/tidytemplate, rmarkdown", + "Config/testthat/edition": "3", + "Config/usethis/last-upkeep": "2025-04-23", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.2", + "NeedsCompilation": "no", + "Packaged": "2025-05-21 12:07:52 UTC; max", + "Author": "Max Kuhn [aut, cre],\n Hadley Wickham [aut],\n Emil Hvitfeldt [aut],\n Posit Software, PBC [cph, fnd] (ROR: )", + "Maintainer": "Max Kuhn ", + "Repository": "RSPM", + "Date/Publication": "2025-05-21 13:00:02 UTC", + "Built": "R 4.5.0; ; 2025-05-22 13:03:59 UTC; unix" + } + }, + "renv": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "renv", + "Type": "Package", + "Title": "Project Environments", + "Version": "1.1.4", + "Authors@R": "c(\n person(\"Kevin\", \"Ushey\", role = c(\"aut\", \"cre\"), email = \"kevin@rstudio.com\",\n comment = c(ORCID = \"0000-0003-2880-7407\")),\n person(\"Hadley\", \"Wickham\", role = c(\"aut\"), email = \"hadley@rstudio.com\",\n comment = c(ORCID = \"0000-0003-4757-117X\")),\n person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\"))\n )", + "Description": "A dependency management toolkit for R. Using 'renv', you can create\n and manage project-local R libraries, save the state of these libraries to\n a 'lockfile', and later restore your library as required. Together, these\n tools can help make your projects more isolated, portable, and reproducible.", + "License": "MIT + file LICENSE", + "URL": "https://rstudio.github.io/renv/, https://github.com/rstudio/renv", + "BugReports": "https://github.com/rstudio/renv/issues", + "Imports": "utils", + "Suggests": "BiocManager, cli, compiler, covr, cpp11, devtools, gitcreds,\njsonlite, jsonvalidate, knitr, miniUI, modules, packrat, pak,\nR6, remotes, reticulate, rmarkdown, rstudioapi, shiny,\ntestthat, uuid, waldo, yaml, webfakes", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.2", + "VignetteBuilder": "knitr", + "Config/Needs/website": "tidyverse/tidytemplate", + "Config/testthat/edition": "3", + "Config/testthat/parallel": "true", + "Config/testthat/start-first": "bioconductor,python,install,restore,snapshot,retrieve,remotes", + "NeedsCompilation": "no", + "Packaged": "2025-03-20 16:43:40 UTC; kevin", + "Author": "Kevin Ushey [aut, cre] (),\n Hadley Wickham [aut] (),\n Posit Software, PBC [cph, fnd]", + "Maintainer": "Kevin Ushey ", + "Repository": "RSPM", + "Date/Publication": "2025-03-20 18:10:01 UTC", + "Built": "R 4.5.1; ; 2025-07-31 10:14:31 UTC; unix" + } + }, + "rex": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Type": "Package", + "Package": "rex", + "Title": "Friendly Regular Expressions", + "Version": "1.2.1", + "Authors@R": "c(\n person(\"Kevin\", \"Ushey\", , \"kevinushey@gmail.com\", role = c(\"aut\", \"cre\")),\n person(\"Jim\", \"Hester\", , \"james.f.hester@gmail.com\", role = \"aut\"),\n person(\"Robert\", \"Krzyzanowski\", , \"rkrzyzanowski@gmail.com\", role = \"aut\")\n )", + "Description": "A friendly interface for the construction of regular\n expressions.", + "License": "MIT + file LICENSE", + "URL": "https://github.com/kevinushey/rex", + "BugReports": "https://github.com/kevinushey/rex/issues", + "Imports": "lazyeval", + "Suggests": "covr, dplyr, ggplot2, Hmisc, knitr, magrittr, rmarkdown,\nroxygen2, rvest, stringr, testthat", + "VignetteBuilder": "knitr", + "Encoding": "UTF-8", + "RoxygenNote": "7.1.2", + "Collate": "'aaa.R' 'utils.R' 'escape.R' 'capture.R' 'character_class.R'\n'counts.R' 'lookarounds.R' 'match.R' 'or.R' 'rex-mode.R'\n'rex.R' 'shortcuts.R' 'wildcards.R' 'zzz.R'", + "NeedsCompilation": "no", + "Packaged": "2021-11-24 20:51:05 UTC; jhester", + "Author": "Kevin Ushey [aut, cre],\n Jim Hester [aut],\n Robert Krzyzanowski [aut]", + "Maintainer": "Kevin Ushey ", + "Repository": "RSPM", + "Date/Publication": "2021-11-26 16:11:02 UTC", + "Built": "R 4.5.0; ; 2025-04-09 06:03:59 UTC; unix" + } + }, + "rhino": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "rhino", + "Title": "A Framework for Enterprise Shiny Applications", + "Version": "1.11.0", + "Authors@R": "\n c(\n person(\"Kamil\", \"Żyła\", role = c(\"aut\", \"cre\"), email = \"opensource+kamil@appsilon.com\"),\n person(\"Jakub\", \"Nowicki\", role = \"aut\", email = \"kuba@appsilon.com\"),\n person(\"Leszek\", \"Siemiński\", role = \"aut\", email = \"leszek.sieminski@appsilon.com\"),\n person(\"Marek\", \"Rogala\", role = \"aut\", email = \"marek@appsilon.com\"),\n person(\"Recle\", \"Vibal\", role = \"aut\", email = \"recle.vibal@appsilon.com\"),\n person(\"Tymoteusz\", \"Makowski\", role = \"aut\", email = \"tymoteusz@appsilon.com\"),\n person(\"Rodrigo\", \"Basa\", role = \"aut\", email = \"rodrigo@appsilon.com\"),\n person(\"Eduardo\", \"Almeida\", role = \"ctb\", email = \"eduardo@appsilon.com\"),\n person(\"Appsilon Sp. z o.o.\", role = \"cph\", email = \"opensource@appsilon.com\")\n )", + "Description": "A framework that supports creating and extending enterprise Shiny applications using best practices.", + "URL": "https://appsilon.github.io/rhino/,\nhttps://github.com/Appsilon/rhino", + "BugReports": "https://github.com/Appsilon/rhino/issues", + "License": "LGPL-3", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.2", + "Depends": "R (>= 2.10)", + "Imports": "box (>= 1.1.3), box.linters (>= 0.10.5), box.lsp, callr, cli,\nconfig, fs, glue, lintr (>= 3.0.0), logger, purrr, renv,\nrstudioapi, sass, shiny, styler, testthat (>= 3.0.0), utils,\nwithr, yaml", + "Suggests": "covr, knitr, lifecycle, mockery, rcmdcheck, rex, rlang,\nrmarkdown, shiny.react, spelling", + "LazyData": "true", + "Config/testthat/edition": "3", + "Config/testthat/parallel": "true", + "Language": "en-US", + "NeedsCompilation": "no", + "Packaged": "2025-04-02 07:15:43 UTC; kuba", + "Author": "Kamil Żyła [aut, cre],\n Jakub Nowicki [aut],\n Leszek Siemiński [aut],\n Marek Rogala [aut],\n Recle Vibal [aut],\n Tymoteusz Makowski [aut],\n Rodrigo Basa [aut],\n Eduardo Almeida [ctb],\n Appsilon Sp. z o.o. [cph]", + "Maintainer": "Kamil Żyła ", + "Repository": "RSPM", + "Date/Publication": "2025-04-02 07:30:02 UTC", + "Built": "R 4.5.0; ; 2025-04-09 06:51:32 UTC; unix" + } + }, + "rlang": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "rlang", + "Version": "1.1.6", + "Title": "Functions for Base Types and Core R and 'Tidyverse' Features", + "Description": "A toolbox for working with base types, core R features\n like the condition system, and core 'Tidyverse' features like tidy\n evaluation.", + "Authors@R": "c(\n person(\"Lionel\", \"Henry\", ,\"lionel@posit.co\", c(\"aut\", \"cre\")),\n person(\"Hadley\", \"Wickham\", ,\"hadley@posit.co\", \"aut\"),\n person(given = \"mikefc\",\n email = \"mikefc@coolbutuseless.com\",\n role = \"cph\",\n comment = \"Hash implementation based on Mike's xxhashlite\"),\n person(given = \"Yann\",\n family = \"Collet\",\n role = \"cph\",\n comment = \"Author of the embedded xxHash library\"),\n person(given = \"Posit, PBC\", role = c(\"cph\", \"fnd\"))\n )", + "License": "MIT + file LICENSE", + "ByteCompile": "true", + "Biarch": "true", + "Depends": "R (>= 3.5.0)", + "Imports": "utils", + "Suggests": "cli (>= 3.1.0), covr, crayon, desc, fs, glue, knitr,\nmagrittr, methods, pillar, pkgload, rmarkdown, stats, testthat\n(>= 3.2.0), tibble, usethis, vctrs (>= 0.2.3), withr", + "Enhances": "winch", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.2", + "URL": "https://rlang.r-lib.org, https://github.com/r-lib/rlang", + "BugReports": "https://github.com/r-lib/rlang/issues", + "Config/build/compilation-database": "true", + "Config/testthat/edition": "3", + "Config/Needs/website": "dplyr, tidyverse/tidytemplate", + "NeedsCompilation": "yes", + "Packaged": "2025-04-10 09:25:27 UTC; lionel", + "Author": "Lionel Henry [aut, cre],\n Hadley Wickham [aut],\n mikefc [cph] (Hash implementation based on Mike's xxhashlite),\n Yann Collet [cph] (Author of the embedded xxHash library),\n Posit, PBC [cph, fnd]", + "Maintainer": "Lionel Henry ", + "Repository": "RSPM", + "Date/Publication": "2025-04-11 08:40:10 UTC", + "Built": "R 4.5.0; x86_64-pc-linux-gnu; 2025-04-14 17:54:05 UTC; unix" + } + }, + "rmarkdown": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Type": "Package", + "Package": "rmarkdown", + "Title": "Dynamic Documents for R", + "Version": "2.29", + "Authors@R": "c(\n person(\"JJ\", \"Allaire\", , \"jj@posit.co\", role = \"aut\"),\n person(\"Yihui\", \"Xie\", , \"xie@yihui.name\", role = c(\"aut\", \"cre\"), comment = c(ORCID = \"0000-0003-0645-5666\")),\n person(\"Christophe\", \"Dervieux\", , \"cderv@posit.co\", role = \"aut\", comment = c(ORCID = \"0000-0003-4474-2498\")),\n person(\"Jonathan\", \"McPherson\", , \"jonathan@posit.co\", role = \"aut\"),\n person(\"Javier\", \"Luraschi\", role = \"aut\"),\n person(\"Kevin\", \"Ushey\", , \"kevin@posit.co\", role = \"aut\"),\n person(\"Aron\", \"Atkins\", , \"aron@posit.co\", role = \"aut\"),\n person(\"Hadley\", \"Wickham\", , \"hadley@posit.co\", role = \"aut\"),\n person(\"Joe\", \"Cheng\", , \"joe@posit.co\", role = \"aut\"),\n person(\"Winston\", \"Chang\", , \"winston@posit.co\", role = \"aut\"),\n person(\"Richard\", \"Iannone\", , \"rich@posit.co\", role = \"aut\", comment = c(ORCID = \"0000-0003-3925-190X\")),\n person(\"Andrew\", \"Dunning\", role = \"ctb\", comment = c(ORCID = \"0000-0003-0464-5036\")),\n person(\"Atsushi\", \"Yasumoto\", role = c(\"ctb\", \"cph\"), comment = c(ORCID = \"0000-0002-8335-495X\", cph = \"Number sections Lua filter\")),\n person(\"Barret\", \"Schloerke\", role = \"ctb\"),\n person(\"Carson\", \"Sievert\", role = \"ctb\", comment = c(ORCID = \"0000-0002-4958-2844\")), \n person(\"Devon\", \"Ryan\", , \"dpryan79@gmail.com\", role = \"ctb\", comment = c(ORCID = \"0000-0002-8549-0971\")),\n person(\"Frederik\", \"Aust\", , \"frederik.aust@uni-koeln.de\", role = \"ctb\", comment = c(ORCID = \"0000-0003-4900-788X\")),\n person(\"Jeff\", \"Allen\", , \"jeff@posit.co\", role = \"ctb\"), \n person(\"JooYoung\", \"Seo\", role = \"ctb\", comment = c(ORCID = \"0000-0002-4064-6012\")),\n person(\"Malcolm\", \"Barrett\", role = \"ctb\"),\n person(\"Rob\", \"Hyndman\", , \"Rob.Hyndman@monash.edu\", role = \"ctb\"),\n person(\"Romain\", \"Lesur\", role = \"ctb\"),\n person(\"Roy\", \"Storey\", role = \"ctb\"),\n person(\"Ruben\", \"Arslan\", , \"ruben.arslan@uni-goettingen.de\", role = \"ctb\"),\n person(\"Sergio\", \"Oller\", role = \"ctb\"),\n person(given = \"Posit Software, PBC\", role = c(\"cph\", \"fnd\")),\n person(, \"jQuery UI contributors\", role = c(\"ctb\", \"cph\"), comment = \"jQuery UI library; authors listed in inst/rmd/h/jqueryui/AUTHORS.txt\"),\n person(\"Mark\", \"Otto\", role = \"ctb\", comment = \"Bootstrap library\"),\n person(\"Jacob\", \"Thornton\", role = \"ctb\", comment = \"Bootstrap library\"),\n person(, \"Bootstrap contributors\", role = \"ctb\", comment = \"Bootstrap library\"),\n person(, \"Twitter, Inc\", role = \"cph\", comment = \"Bootstrap library\"),\n person(\"Alexander\", \"Farkas\", role = c(\"ctb\", \"cph\"), comment = \"html5shiv library\"),\n person(\"Scott\", \"Jehl\", role = c(\"ctb\", \"cph\"), comment = \"Respond.js library\"),\n person(\"Ivan\", \"Sagalaev\", role = c(\"ctb\", \"cph\"), comment = \"highlight.js library\"),\n person(\"Greg\", \"Franko\", role = c(\"ctb\", \"cph\"), comment = \"tocify library\"),\n person(\"John\", \"MacFarlane\", role = c(\"ctb\", \"cph\"), comment = \"Pandoc templates\"),\n person(, \"Google, Inc.\", role = c(\"ctb\", \"cph\"), comment = \"ioslides library\"),\n person(\"Dave\", \"Raggett\", role = \"ctb\", comment = \"slidy library\"),\n person(, \"W3C\", role = \"cph\", comment = \"slidy library\"),\n person(\"Dave\", \"Gandy\", role = c(\"ctb\", \"cph\"), comment = \"Font-Awesome\"),\n person(\"Ben\", \"Sperry\", role = \"ctb\", comment = \"Ionicons\"),\n person(, \"Drifty\", role = \"cph\", comment = \"Ionicons\"),\n person(\"Aidan\", \"Lister\", role = c(\"ctb\", \"cph\"), comment = \"jQuery StickyTabs\"),\n person(\"Benct Philip\", \"Jonsson\", role = c(\"ctb\", \"cph\"), comment = \"pagebreak Lua filter\"),\n person(\"Albert\", \"Krewinkel\", role = c(\"ctb\", \"cph\"), comment = \"pagebreak Lua filter\")\n )", + "Description": "Convert R Markdown documents into a variety of formats.", + "License": "GPL-3", + "URL": "https://github.com/rstudio/rmarkdown,\nhttps://pkgs.rstudio.com/rmarkdown/", + "BugReports": "https://github.com/rstudio/rmarkdown/issues", + "Depends": "R (>= 3.0)", + "Imports": "bslib (>= 0.2.5.1), evaluate (>= 0.13), fontawesome (>=\n0.5.0), htmltools (>= 0.5.1), jquerylib, jsonlite, knitr (>=\n1.43), methods, tinytex (>= 0.31), tools, utils, xfun (>=\n0.36), yaml (>= 2.1.19)", + "Suggests": "digest, dygraphs, fs, rsconnect, downlit (>= 0.4.0), katex\n(>= 1.4.0), sass (>= 0.4.0), shiny (>= 1.6.0), testthat (>=\n3.0.3), tibble, vctrs, cleanrmd, withr (>= 2.4.2), xml2", + "VignetteBuilder": "knitr", + "Config/Needs/website": "rstudio/quillt, pkgdown", + "Config/testthat/edition": "3", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.2", + "SystemRequirements": "pandoc (>= 1.14) - http://pandoc.org", + "NeedsCompilation": "no", + "Packaged": "2024-11-01 19:32:48 UTC; runner", + "Author": "JJ Allaire [aut],\n Yihui Xie [aut, cre] (),\n Christophe Dervieux [aut] (),\n Jonathan McPherson [aut],\n Javier Luraschi [aut],\n Kevin Ushey [aut],\n Aron Atkins [aut],\n Hadley Wickham [aut],\n Joe Cheng [aut],\n Winston Chang [aut],\n Richard Iannone [aut] (),\n Andrew Dunning [ctb] (),\n Atsushi Yasumoto [ctb, cph] (,\n Number sections Lua filter),\n Barret Schloerke [ctb],\n Carson Sievert [ctb] (),\n Devon Ryan [ctb] (),\n Frederik Aust [ctb] (),\n Jeff Allen [ctb],\n JooYoung Seo [ctb] (),\n Malcolm Barrett [ctb],\n Rob Hyndman [ctb],\n Romain Lesur [ctb],\n Roy Storey [ctb],\n Ruben Arslan [ctb],\n Sergio Oller [ctb],\n Posit Software, PBC [cph, fnd],\n jQuery UI contributors [ctb, cph] (jQuery UI library; authors listed in\n inst/rmd/h/jqueryui/AUTHORS.txt),\n Mark Otto [ctb] (Bootstrap library),\n Jacob Thornton [ctb] (Bootstrap library),\n Bootstrap contributors [ctb] (Bootstrap library),\n Twitter, Inc [cph] (Bootstrap library),\n Alexander Farkas [ctb, cph] (html5shiv library),\n Scott Jehl [ctb, cph] (Respond.js library),\n Ivan Sagalaev [ctb, cph] (highlight.js library),\n Greg Franko [ctb, cph] (tocify library),\n John MacFarlane [ctb, cph] (Pandoc templates),\n Google, Inc. [ctb, cph] (ioslides library),\n Dave Raggett [ctb] (slidy library),\n W3C [cph] (slidy library),\n Dave Gandy [ctb, cph] (Font-Awesome),\n Ben Sperry [ctb] (Ionicons),\n Drifty [cph] (Ionicons),\n Aidan Lister [ctb, cph] (jQuery StickyTabs),\n Benct Philip Jonsson [ctb, cph] (pagebreak Lua filter),\n Albert Krewinkel [ctb, cph] (pagebreak Lua filter)", + "Maintainer": "Yihui Xie ", + "Repository": "RSPM", + "Date/Publication": "2024-11-04 12:30:09 UTC", + "Built": "R 4.5.0; ; 2025-04-06 04:46:54 UTC; unix" + } + }, + "rpart": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "rpart", + "Priority": "recommended", + "Version": "4.1.24", + "Date": "2025-01-06", + "Authors@R": "c(person(\"Terry\", \"Therneau\", role = \"aut\",\n\t email = \"therneau@mayo.edu\"),\n person(\"Beth\", \"Atkinson\", role = c(\"aut\", \"cre\"),\n\t email = \"atkinson@mayo.edu\"),\n person(\"Brian\", \"Ripley\", role = \"trl\",\n email = \"ripley@stats.ox.ac.uk\",\n\t\t comment = \"producer of the initial R port, maintainer 1999-2017\"))", + "Description": "Recursive partitioning for classification, \n regression and survival trees. An implementation of most of the \n functionality of the 1984 book by Breiman, Friedman, Olshen and Stone.", + "Title": "Recursive Partitioning and Regression Trees", + "Depends": "R (>= 2.15.0), graphics, stats, grDevices", + "Suggests": "survival", + "License": "GPL-2 | GPL-3", + "LazyData": "yes", + "ByteCompile": "yes", + "NeedsCompilation": "yes", + "Author": "Terry Therneau [aut],\n Beth Atkinson [aut, cre],\n Brian Ripley [trl] (producer of the initial R port, maintainer\n 1999-2017)", + "Maintainer": "Beth Atkinson ", + "Repository": "CRAN", + "URL": "https://github.com/bethatkinson/rpart,\nhttps://cran.r-project.org/package=rpart", + "BugReports": "https://github.com/bethatkinson/rpart/issues", + "Packaged": "2025-01-06 13:26:22 UTC; ripley", + "Date/Publication": "2025-01-07 07:30:14 UTC", + "Built": "R 4.5.1; aarch64-apple-darwin20; 2025-06-14 01:29:47 UTC; unix" + } + }, + "rprojroot": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "rprojroot", + "Title": "Finding Files in Project Subdirectories", + "Version": "2.1.0", + "Authors@R": "\n person(given = \"Kirill\",\n family = \"M\\u00fcller\",\n role = c(\"aut\", \"cre\"),\n email = \"kirill@cynkra.com\",\n comment = c(ORCID = \"0000-0002-1416-3412\"))", + "Description": "Robust, reliable and flexible paths to files below\n a project root. The 'root' of a project is defined as a directory that\n matches a certain criterion, e.g., it contains a certain regular file.", + "License": "MIT + file LICENSE", + "URL": "https://rprojroot.r-lib.org/, https://github.com/r-lib/rprojroot", + "BugReports": "https://github.com/r-lib/rprojroot/issues", + "Depends": "R (>= 3.0.0)", + "Suggests": "covr, knitr, lifecycle, rlang, rmarkdown, testthat (>=\n3.2.0), withr", + "VignetteBuilder": "knitr", + "Config/testthat/edition": "3", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.2.9000", + "Config/autostyle/scope": "line_breaks", + "Config/autostyle/strict": "true", + "Config/Needs/website": "tidyverse/tidytemplate", + "NeedsCompilation": "no", + "Packaged": "2025-07-12 07:59:07 UTC; kirill", + "Author": "Kirill Müller [aut, cre] (ORCID:\n )", + "Maintainer": "Kirill Müller ", + "Repository": "RSPM", + "Date/Publication": "2025-07-12 09:00:02 UTC", + "Built": "R 4.5.0; ; 2025-07-13 04:34:22 UTC; unix" + } + }, + "rsample": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "rsample", + "Title": "General Resampling Infrastructure", + "Version": "1.3.1", + "Authors@R": "c(\n person(\"Hannah\", \"Frick\", , \"hannah@posit.co\", role = c(\"aut\", \"cre\"),\n comment = c(ORCID = \"0000-0002-6049-5258\")),\n person(\"Fanny\", \"Chow\", , \"fannybchow@gmail.com\", role = \"aut\"),\n person(\"Max\", \"Kuhn\", , \"max@posit.co\", role = \"aut\"),\n person(\"Michael\", \"Mahoney\", , \"mike.mahoney.218@gmail.com\", role = \"aut\",\n comment = c(ORCID = \"0000-0003-2402-304X\")),\n person(\"Julia\", \"Silge\", , \"julia.silge@posit.co\", role = \"aut\",\n comment = c(ORCID = \"0000-0002-3671-836X\")),\n person(\"Hadley\", \"Wickham\", , \"hadley@posit.co\", role = \"aut\"),\n person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\"),\n comment = c(ROR = \"03wc8by49\"))\n )", + "Description": "Classes and functions to create and summarize different types\n of resampling objects (e.g. bootstrap, cross-validation).", + "License": "MIT + file LICENSE", + "URL": "https://rsample.tidymodels.org,\nhttps://github.com/tidymodels/rsample", + "BugReports": "https://github.com/tidymodels/rsample/issues", + "Depends": "R (>= 4.1)", + "Imports": "cli, dplyr (>= 1.1.1), furrr, generics, glue, lifecycle,\nmethods, pillar, purrr (>= 1.0.0), rlang (>= 1.1.0), slider (>=\n0.1.5), tibble, tidyr, tidyselect, vctrs (>= 0.5.0)", + "Suggests": "broom, covr, ggplot2, knitr, modeldata, recipes (>= 0.1.4),\nrmarkdown, stats, testthat (>= 3.0.0), utils, whisker, withr,\nxml2", + "VignetteBuilder": "knitr", + "Config/Needs/website": "GGally, nlstools, tidymodels,\ntidyverse/tidytemplate", + "Config/testthat/edition": "3", + "Config/usethis/last-upkeep": "2025-04-23", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.2", + "NeedsCompilation": "no", + "Packaged": "2025-07-29 13:06:28 UTC; hannah", + "Author": "Hannah Frick [aut, cre] (ORCID:\n ),\n Fanny Chow [aut],\n Max Kuhn [aut],\n Michael Mahoney [aut] (ORCID: ),\n Julia Silge [aut] (ORCID: ),\n Hadley Wickham [aut],\n Posit Software, PBC [cph, fnd] (ROR: )", + "Maintainer": "Hannah Frick ", + "Repository": "RSPM", + "Date/Publication": "2025-07-29 13:50:02 UTC", + "Built": "R 4.5.1; ; 2025-07-31 10:41:40 UTC; unix" + } + }, + "rstudioapi": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "rstudioapi", + "Title": "Safely Access the RStudio API", + "Description": "Access the RStudio API (if available) and provide informative error\n messages when it's not.", + "Version": "0.17.1", + "Authors@R": "c(\n person(\"Kevin\", \"Ushey\", role = c(\"aut\", \"cre\"), email = \"kevin@rstudio.com\"),\n person(\"JJ\", \"Allaire\", role = c(\"aut\"), email = \"jj@posit.co\"),\n person(\"Hadley\", \"Wickham\", role = c(\"aut\"), email = \"hadley@posit.co\"),\n person(\"Gary\", \"Ritchie\", role = c(\"aut\"), email = \"gary@posit.co\"),\n person(family = \"RStudio\", role = \"cph\")\n )", + "Maintainer": "Kevin Ushey ", + "License": "MIT + file LICENSE", + "URL": "https://rstudio.github.io/rstudioapi/,\nhttps://github.com/rstudio/rstudioapi", + "BugReports": "https://github.com/rstudio/rstudioapi/issues", + "RoxygenNote": "7.3.2", + "Suggests": "testthat, knitr, rmarkdown, clipr, covr", + "VignetteBuilder": "knitr", + "Encoding": "UTF-8", + "NeedsCompilation": "no", + "Packaged": "2024-10-22 20:55:52 UTC; kevin", + "Author": "Kevin Ushey [aut, cre],\n JJ Allaire [aut],\n Hadley Wickham [aut],\n Gary Ritchie [aut],\n RStudio [cph]", + "Repository": "RSPM", + "Date/Publication": "2024-10-22 22:40:02 UTC", + "Built": "R 4.5.0; ; 2025-04-06 04:41:51 UTC; unix" + } + }, + "sass": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Type": "Package", + "Package": "sass", + "Version": "0.4.10", + "Title": "Syntactically Awesome Style Sheets ('Sass')", + "Description": "An 'SCSS' compiler, powered by the 'LibSass' library. With this,\n R developers can use variables, inheritance, and functions to generate\n dynamic style sheets. The package uses the 'Sass CSS' extension language,\n which is stable, powerful, and CSS compatible.", + "Authors@R": "c(\n person(\"Joe\", \"Cheng\", , \"joe@rstudio.com\", \"aut\"),\n person(\"Timothy\", \"Mastny\", , \"tim.mastny@gmail.com\", \"aut\"),\n person(\"Richard\", \"Iannone\", , \"rich@rstudio.com\", \"aut\",\n comment = c(ORCID = \"0000-0003-3925-190X\")),\n person(\"Barret\", \"Schloerke\", , \"barret@rstudio.com\", \"aut\",\n comment = c(ORCID = \"0000-0001-9986-114X\")),\n person(\"Carson\", \"Sievert\", , \"carson@rstudio.com\", c(\"aut\", \"cre\"),\n comment = c(ORCID = \"0000-0002-4958-2844\")),\n person(\"Christophe\", \"Dervieux\", , \"cderv@rstudio.com\", c(\"ctb\"),\n comment = c(ORCID = \"0000-0003-4474-2498\")),\n person(family = \"RStudio\", role = c(\"cph\", \"fnd\")),\n person(family = \"Sass Open Source Foundation\", role = c(\"ctb\", \"cph\"),\n comment = \"LibSass library\"),\n person(\"Greter\", \"Marcel\", role = c(\"ctb\", \"cph\"),\n comment = \"LibSass library\"),\n person(\"Mifsud\", \"Michael\", role = c(\"ctb\", \"cph\"),\n comment = \"LibSass library\"),\n person(\"Hampton\", \"Catlin\", role = c(\"ctb\", \"cph\"),\n comment = \"LibSass library\"),\n person(\"Natalie\", \"Weizenbaum\", role = c(\"ctb\", \"cph\"),\n comment = \"LibSass library\"),\n person(\"Chris\", \"Eppstein\", role = c(\"ctb\", \"cph\"),\n comment = \"LibSass library\"),\n person(\"Adams\", \"Joseph\", role = c(\"ctb\", \"cph\"),\n comment = \"json.cpp\"),\n person(\"Trifunovic\", \"Nemanja\", role = c(\"ctb\", \"cph\"),\n comment = \"utf8.h\")\n )", + "License": "MIT + file LICENSE", + "URL": "https://rstudio.github.io/sass/, https://github.com/rstudio/sass", + "BugReports": "https://github.com/rstudio/sass/issues", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.2", + "SystemRequirements": "GNU make", + "Imports": "fs (>= 1.2.4), rlang (>= 0.4.10), htmltools (>= 0.5.1), R6,\nrappdirs", + "Suggests": "testthat, knitr, rmarkdown, withr, shiny, curl", + "VignetteBuilder": "knitr", + "Config/testthat/edition": "3", + "NeedsCompilation": "yes", + "Packaged": "2025-04-11 18:34:19 UTC; cpsievert", + "Author": "Joe Cheng [aut],\n Timothy Mastny [aut],\n Richard Iannone [aut] (),\n Barret Schloerke [aut] (),\n Carson Sievert [aut, cre] (),\n Christophe Dervieux [ctb] (),\n RStudio [cph, fnd],\n Sass Open Source Foundation [ctb, cph] (LibSass library),\n Greter Marcel [ctb, cph] (LibSass library),\n Mifsud Michael [ctb, cph] (LibSass library),\n Hampton Catlin [ctb, cph] (LibSass library),\n Natalie Weizenbaum [ctb, cph] (LibSass library),\n Chris Eppstein [ctb, cph] (LibSass library),\n Adams Joseph [ctb, cph] (json.cpp),\n Trifunovic Nemanja [ctb, cph] (utf8.h)", + "Maintainer": "Carson Sievert ", + "Repository": "RSPM", + "Date/Publication": "2025-04-11 19:50:02 UTC", + "Built": "R 4.5.0; x86_64-pc-linux-gnu; 2025-04-14 17:55:05 UTC; unix" + } + }, + "scales": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "scales", + "Title": "Scale Functions for Visualization", + "Version": "1.4.0", + "Authors@R": "c(\n person(\"Hadley\", \"Wickham\", , \"hadley@posit.co\", role = \"aut\"),\n person(\"Thomas Lin\", \"Pedersen\", , \"thomas.pedersen@posit.co\", role = c(\"cre\", \"aut\"),\n comment = c(ORCID = \"0000-0002-5147-4711\")),\n person(\"Dana\", \"Seidel\", role = \"aut\"),\n person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\"),\n comment = c(ROR = \"03wc8by49\"))\n )", + "Description": "Graphical scales map data to aesthetics, and provide methods\n for automatically determining breaks and labels for axes and legends.", + "License": "MIT + file LICENSE", + "URL": "https://scales.r-lib.org, https://github.com/r-lib/scales", + "BugReports": "https://github.com/r-lib/scales/issues", + "Depends": "R (>= 4.1)", + "Imports": "cli, farver (>= 2.0.3), glue, labeling, lifecycle, R6,\nRColorBrewer, rlang (>= 1.1.0), viridisLite", + "Suggests": "bit64, covr, dichromat, ggplot2, hms (>= 0.5.0), stringi,\ntestthat (>= 3.0.0)", + "Config/Needs/website": "tidyverse/tidytemplate", + "Config/testthat/edition": "3", + "Config/usethis/last-upkeep": "2025-04-23", + "Encoding": "UTF-8", + "LazyLoad": "yes", + "RoxygenNote": "7.3.2", + "NeedsCompilation": "no", + "Packaged": "2025-04-23 18:27:04 UTC; thomas", + "Author": "Hadley Wickham [aut],\n Thomas Lin Pedersen [cre, aut]\n (),\n Dana Seidel [aut],\n Posit Software, PBC [cph, fnd] (03wc8by49)", + "Maintainer": "Thomas Lin Pedersen ", + "Repository": "RSPM", + "Date/Publication": "2025-04-24 11:00:02 UTC", + "Built": "R 4.5.0; ; 2025-04-25 04:52:06 UTC; unix" + } + }, + "shape": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "shape", + "Version": "1.4.6.1", + "Title": "Functions for Plotting Graphical Shapes, Colors", + "Author": "Karline Soetaert ", + "Maintainer": "Karline Soetaert ", + "Depends": "R (>= 2.01)", + "Imports": "stats, graphics, grDevices", + "Description": "Functions for plotting graphical shapes\n such as ellipses, circles, cylinders, arrows, ...", + "License": "GPL (>= 3)", + "NeedsCompilation": "no", + "Packaged": "2024-02-18 12:52:04 UTC; karlines", + "Repository": "RSPM", + "Date/Publication": "2024-02-23 13:00:02 UTC", + "Encoding": "UTF-8", + "Built": "R 4.5.0; ; 2025-04-06 04:41:55 UTC; unix" + } + }, + "shiny": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "shiny", + "Type": "Package", + "Title": "Web Application Framework for R", + "Version": "1.11.1", + "Authors@R": "c(\n person(\"Winston\", \"Chang\", role = c(\"aut\", \"cre\"), email = \"winston@posit.co\", comment = c(ORCID = \"0000-0002-1576-2126\")),\n person(\"Joe\", \"Cheng\", role = \"aut\", email = \"joe@posit.co\"),\n person(\"JJ\", \"Allaire\", role = \"aut\", email = \"jj@posit.co\"),\n person(\"Carson\", \"Sievert\", role = \"aut\", email = \"carson@posit.co\", comment = c(ORCID = \"0000-0002-4958-2844\")),\n person(\"Barret\", \"Schloerke\", role = \"aut\", email = \"barret@posit.co\", comment = c(ORCID = \"0000-0001-9986-114X\")),\n person(\"Yihui\", \"Xie\", role = \"aut\", email = \"yihui@posit.co\"),\n person(\"Jeff\", \"Allen\", role = \"aut\"),\n person(\"Jonathan\", \"McPherson\", role = \"aut\", email = \"jonathan@posit.co\"),\n person(\"Alan\", \"Dipert\", role = \"aut\"),\n person(\"Barbara\", \"Borges\", role = \"aut\"),\n person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\")),\n person(family = \"jQuery Foundation\", role = \"cph\",\n comment = \"jQuery library and jQuery UI library\"),\n person(family = \"jQuery contributors\", role = c(\"ctb\", \"cph\"),\n comment = \"jQuery library; authors listed in inst/www/shared/jquery-AUTHORS.txt\"),\n person(family = \"jQuery UI contributors\", role = c(\"ctb\", \"cph\"),\n comment = \"jQuery UI library; authors listed in inst/www/shared/jqueryui/AUTHORS.txt\"),\n person(\"Mark\", \"Otto\", role = \"ctb\",\n comment = \"Bootstrap library\"),\n person(\"Jacob\", \"Thornton\", role = \"ctb\",\n comment = \"Bootstrap library\"),\n person(family = \"Bootstrap contributors\", role = \"ctb\",\n comment = \"Bootstrap library\"),\n person(family = \"Twitter, Inc\", role = \"cph\",\n comment = \"Bootstrap library\"),\n person(\"Prem Nawaz\", \"Khan\", role = \"ctb\",\n comment = \"Bootstrap accessibility plugin\"),\n person(\"Victor\", \"Tsaran\", role = \"ctb\",\n comment = \"Bootstrap accessibility plugin\"),\n person(\"Dennis\", \"Lembree\", role = \"ctb\",\n comment = \"Bootstrap accessibility plugin\"),\n person(\"Srinivasu\", \"Chakravarthula\", role = \"ctb\",\n comment = \"Bootstrap accessibility plugin\"),\n person(\"Cathy\", \"O'Connor\", role = \"ctb\",\n comment = \"Bootstrap accessibility plugin\"),\n person(family = \"PayPal, Inc\", role = \"cph\",\n comment = \"Bootstrap accessibility plugin\"),\n person(\"Stefan\", \"Petre\", role = c(\"ctb\", \"cph\"),\n comment = \"Bootstrap-datepicker library\"),\n person(\"Andrew\", \"Rowls\", role = c(\"ctb\", \"cph\"),\n comment = \"Bootstrap-datepicker library\"),\n person(\"Brian\", \"Reavis\", role = c(\"ctb\", \"cph\"),\n comment = \"selectize.js library\"),\n person(\"Salmen\", \"Bejaoui\", role = c(\"ctb\", \"cph\"),\n comment = \"selectize-plugin-a11y library\"),\n person(\"Denis\", \"Ineshin\", role = c(\"ctb\", \"cph\"),\n comment = \"ion.rangeSlider library\"),\n person(\"Sami\", \"Samhuri\", role = c(\"ctb\", \"cph\"),\n comment = \"Javascript strftime library\"),\n person(family = \"SpryMedia Limited\", role = c(\"ctb\", \"cph\"),\n comment = \"DataTables library\"),\n person(\"John\", \"Fraser\", role = c(\"ctb\", \"cph\"),\n comment = \"showdown.js library\"),\n person(\"John\", \"Gruber\", role = c(\"ctb\", \"cph\"),\n comment = \"showdown.js library\"),\n person(\"Ivan\", \"Sagalaev\", role = c(\"ctb\", \"cph\"),\n comment = \"highlight.js library\"),\n person(given = \"R Core Team\", role = c(\"ctb\", \"cph\"),\n comment = \"tar implementation from R\")\n )", + "Description": "Makes it incredibly easy to build interactive web\n applications with R. Automatic \"reactive\" binding between inputs and\n outputs and extensive prebuilt widgets make it possible to build\n beautiful, responsive, and powerful applications with minimal effort.", + "License": "GPL-3 | file LICENSE", + "Depends": "R (>= 3.0.2), methods", + "Imports": "utils, grDevices, httpuv (>= 1.5.2), mime (>= 0.3), jsonlite\n(>= 0.9.16), xtable, fontawesome (>= 0.4.0), htmltools (>=\n0.5.4), R6 (>= 2.0), sourcetools, later (>= 1.0.0), promises\n(>= 1.3.2), tools, cli, rlang (>= 0.4.10), fastmap (>= 1.1.1),\nwithr, commonmark (>= 1.7), glue (>= 1.3.2), bslib (>= 0.6.0),\ncachem (>= 1.1.0), lifecycle (>= 0.2.0)", + "Suggests": "coro (>= 1.1.0), datasets, DT, Cairo (>= 1.5-5), testthat (>=\n3.2.1), knitr (>= 1.6), markdown, rmarkdown, ggplot2, reactlog\n(>= 1.0.0), magrittr, yaml, mirai, future, dygraphs, ragg,\nshowtext, sass, watcher", + "URL": "https://shiny.posit.co/, https://github.com/rstudio/shiny", + "BugReports": "https://github.com/rstudio/shiny/issues", + "Collate": "'globals.R' 'app-state.R' 'app_template.R' 'bind-cache.R'\n'bind-event.R' 'bookmark-state-local.R' 'bookmark-state.R'\n'bootstrap-deprecated.R' 'bootstrap-layout.R' 'conditions.R'\n'map.R' 'utils.R' 'bootstrap.R' 'busy-indicators-spinners.R'\n'busy-indicators.R' 'cache-utils.R' 'deprecated.R' 'devmode.R'\n'diagnose.R' 'extended-task.R' 'fileupload.R' 'graph.R'\n'reactives.R' 'reactive-domains.R' 'history.R' 'hooks.R'\n'html-deps.R' 'image-interact-opts.R' 'image-interact.R'\n'imageutils.R' 'input-action.R' 'input-checkbox.R'\n'input-checkboxgroup.R' 'input-date.R' 'input-daterange.R'\n'input-file.R' 'input-numeric.R' 'input-password.R'\n'input-radiobuttons.R' 'input-select.R' 'input-slider.R'\n'input-submit.R' 'input-text.R' 'input-textarea.R'\n'input-utils.R' 'insert-tab.R' 'insert-ui.R' 'jqueryui.R'\n'knitr.R' 'middleware-shiny.R' 'middleware.R' 'timer.R'\n'shiny.R' 'mock-session.R' 'modal.R' 'modules.R'\n'notifications.R' 'priorityqueue.R' 'progress.R' 'react.R'\n'reexports.R' 'render-cached-plot.R' 'render-plot.R'\n'render-table.R' 'run-url.R' 'runapp.R' 'serializers.R'\n'server-input-handlers.R' 'server-resource-paths.R' 'server.R'\n'shiny-options.R' 'shiny-package.R' 'shinyapp.R' 'shinyui.R'\n'shinywrappers.R' 'showcase.R' 'snapshot.R' 'staticimports.R'\n'tar.R' 'test-export.R' 'test-server.R' 'test.R'\n'update-input.R' 'utils-lang.R' 'version_bs_date_picker.R'\n'version_ion_range_slider.R' 'version_jquery.R'\n'version_jqueryui.R' 'version_selectize.R' 'version_strftime.R'\n'viewer.R'", + "RoxygenNote": "7.3.2", + "Encoding": "UTF-8", + "Config/testthat/edition": "3", + "Config/Needs/check": "shinytest2", + "NeedsCompilation": "no", + "Packaged": "2025-07-03 01:15:18 UTC; cpsievert", + "Author": "Winston Chang [aut, cre] (ORCID:\n ),\n Joe Cheng [aut],\n JJ Allaire [aut],\n Carson Sievert [aut] (ORCID: ),\n Barret Schloerke [aut] (ORCID: ),\n Yihui Xie [aut],\n Jeff Allen [aut],\n Jonathan McPherson [aut],\n Alan Dipert [aut],\n Barbara Borges [aut],\n Posit Software, PBC [cph, fnd],\n jQuery Foundation [cph] (jQuery library and jQuery UI library),\n jQuery contributors [ctb, cph] (jQuery library; authors listed in\n inst/www/shared/jquery-AUTHORS.txt),\n jQuery UI contributors [ctb, cph] (jQuery UI library; authors listed in\n inst/www/shared/jqueryui/AUTHORS.txt),\n Mark Otto [ctb] (Bootstrap library),\n Jacob Thornton [ctb] (Bootstrap library),\n Bootstrap contributors [ctb] (Bootstrap library),\n Twitter, Inc [cph] (Bootstrap library),\n Prem Nawaz Khan [ctb] (Bootstrap accessibility plugin),\n Victor Tsaran [ctb] (Bootstrap accessibility plugin),\n Dennis Lembree [ctb] (Bootstrap accessibility plugin),\n Srinivasu Chakravarthula [ctb] (Bootstrap accessibility plugin),\n Cathy O'Connor [ctb] (Bootstrap accessibility plugin),\n PayPal, Inc [cph] (Bootstrap accessibility plugin),\n Stefan Petre [ctb, cph] (Bootstrap-datepicker library),\n Andrew Rowls [ctb, cph] (Bootstrap-datepicker library),\n Brian Reavis [ctb, cph] (selectize.js library),\n Salmen Bejaoui [ctb, cph] (selectize-plugin-a11y library),\n Denis Ineshin [ctb, cph] (ion.rangeSlider library),\n Sami Samhuri [ctb, cph] (Javascript strftime library),\n SpryMedia Limited [ctb, cph] (DataTables library),\n John Fraser [ctb, cph] (showdown.js library),\n John Gruber [ctb, cph] (showdown.js library),\n Ivan Sagalaev [ctb, cph] (highlight.js library),\n R Core Team [ctb, cph] (tar implementation from R)", + "Maintainer": "Winston Chang ", + "Repository": "RSPM", + "Date/Publication": "2025-07-03 06:20:02 UTC", + "Built": "R 4.5.0; ; 2025-07-04 04:45:28 UTC; unix" + } + }, + "shinyWidgets": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "shinyWidgets", + "Title": "Custom Inputs Widgets for Shiny", + "Version": "0.9.0", + "Authors@R": "c(\n person(\"Victor\", \"Perrier\", email = \"victor.perrier@dreamrs.fr\", role = c(\"aut\", \"cre\", \"cph\")),\n person(\"Fanny\", \"Meyer\", role = \"aut\"),\n person(\"David\", \"Granjon\", role = \"aut\"),\n person(\"Ian\", \"Fellows\", role = \"ctb\", comment = \"Methods for mutating vertical tabs & updateMultiInput\"),\n person(\"Wil\", \"Davis\", role = \"ctb\", comment = \"numericRangeInput function\"),\n person(\"Spencer\", \"Matthews\", role = \"ctb\", comment = \"autoNumeric methods\"),\n person(family = \"JavaScript and CSS libraries authors\", role = c(\"ctb\", \"cph\"), comment = \"All authors are listed in LICENSE.md\")\n )", + "Description": "Collection of custom input controls and user interface components for 'Shiny' applications. \n Give your applications a unique and colorful style !", + "URL": "https://github.com/dreamRs/shinyWidgets,\nhttps://dreamrs.github.io/shinyWidgets/", + "BugReports": "https://github.com/dreamRs/shinyWidgets/issues", + "License": "GPL-3", + "Encoding": "UTF-8", + "LazyData": "true", + "RoxygenNote": "7.3.2", + "Depends": "R (>= 3.1.0)", + "Imports": "bslib, sass, shiny (>= 1.6.0), htmltools (>= 0.5.1), jsonlite,\ngrDevices, rlang", + "Suggests": "testthat, covr, ggplot2, DT, scales, shinydashboard,\nshinydashboardPlus", + "NeedsCompilation": "no", + "Packaged": "2025-02-21 09:09:48 UTC; perri", + "Author": "Victor Perrier [aut, cre, cph],\n Fanny Meyer [aut],\n David Granjon [aut],\n Ian Fellows [ctb] (Methods for mutating vertical tabs &\n updateMultiInput),\n Wil Davis [ctb] (numericRangeInput function),\n Spencer Matthews [ctb] (autoNumeric methods),\n JavaScript and CSS libraries authors [ctb, cph] (All authors are listed\n in LICENSE.md)", + "Maintainer": "Victor Perrier ", + "Repository": "RSPM", + "Date/Publication": "2025-02-21 12:30:02 UTC", + "Built": "R 4.5.0; ; 2025-04-09 06:37:36 UTC; unix" + } + }, + "shinyjs": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "shinyjs", + "Title": "Easily Improve the User Experience of Your Shiny Apps in Seconds", + "Version": "2.1.0", + "Authors@R": "person(\"Dean\", \"Attali\", \n email = \"daattali@gmail.com\",\n role = c(\"aut\", \"cre\"),\n comment= c(ORCID=\"0000-0002-5645-3493\"))", + "Description": "Perform common useful JavaScript operations in Shiny apps that will\n greatly improve your apps without having to know any JavaScript. Examples\n include: hiding an element, disabling an input, resetting an input back to\n its original value, delaying code execution by a few seconds, and many more\n useful functions for both the end user and the developer. 'shinyjs' can also\n be used to easily call your own custom JavaScript functions from R.", + "URL": "https://deanattali.com/shinyjs/", + "BugReports": "https://github.com/daattali/shinyjs/issues", + "Depends": "R (>= 3.1.0)", + "Imports": "digest (>= 0.6.8), jsonlite, shiny (>= 1.0.0)", + "Suggests": "htmltools (>= 0.2.9), knitr (>= 1.7), rmarkdown, shinyAce,\nshinydisconnect, testthat (>= 0.9.1)", + "License": "MIT + file LICENSE", + "VignetteBuilder": "knitr", + "RoxygenNote": "7.1.1", + "Encoding": "UTF-8", + "NeedsCompilation": "no", + "Packaged": "2021-12-21 11:32:22 UTC; Dean-X1C", + "Author": "Dean Attali [aut, cre] ()", + "Maintainer": "Dean Attali ", + "Repository": "RSPM", + "Date/Publication": "2021-12-23 10:10:02 UTC", + "Built": "R 4.5.0; ; 2025-04-06 04:48:03 UTC; unix" + } + }, + "shinytest2": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "shinytest2", + "Title": "Testing for Shiny Applications", + "Version": "0.4.1", + "Authors@R": "\n c(\n person(\"Barret\", \"Schloerke\", role = c(\"cre\", \"aut\"), email = \"barret@posit.co\", comment = c(ORCID = \"0000-0001-9986-114X\")),\n person(family = \"Posit Software, PBC\", role = c(\"cph\", \"fnd\")),\n person(\"Winston\", \"Chang\", role =\"ctb\", email = \"winston@posit.co\", comment = \"Original author to rstudio/shinytest\"),\n person(\"Gábor\", \"Csárdi\", role = \"ctb\", email = \"gabor@posit.co\", comment = \"Original author to rstudio/shinytest\"),\n person(\"Hadley\", \"Wickham\", role = \"ctb\", email = \"hadley@posit.co\", comment = \"Original author to rstudio/shinytest\"),\n person(family = \"Mango Solutions\", role = c(\"cph\", \"ccp\"), comment = \"Original author to rstudio/shinytest\")\n )", + "Description": "Automated unit testing of Shiny applications through a headless 'Chromium' browser.", + "License": "MIT + file LICENSE", + "Encoding": "UTF-8", + "Language": "en-US", + "RoxygenNote": "7.3.2", + "URL": "https://rstudio.github.io/shinytest2/,\nhttps://github.com/rstudio/shinytest2", + "BugReports": "https://github.com/rstudio/shinytest2/issues", + "VignetteBuilder": "knitr", + "Depends": "testthat (>= 3.1.2)", + "Imports": "R6 (>= 2.4.0), callr, checkmate (>= 2.0.0), chromote (>=\n0.5.0), cli, fs, globals (>= 0.14.0), httr, jsonlite, pingr,\nrlang (>= 1.0.0), rmarkdown, shiny, withr, lifecycle", + "Suggests": "deSolve, diffobj, ggplot2, knitr, plotly, png, rstudioapi,\nshinyWidgets, shinytest (>= 1.5.1), shinyvalidate (>= 0.1.2),\nshowimage, usethis, vdiffr (>= 1.0.0), spelling", + "Config/Needs/check": "rstudio/shiny, bslib", + "Config/Needs/website": "pkgdown, tidyverse/tidytemplate", + "Config/testthat/edition": "3", + "Collate": "'R6-helper.R' 'app-driver-chromote.R' 'app-driver-dir.R'\n'app-driver-expect-download.R' 'app-driver-expect-js.R'\n'app-driver-expect-screenshot.R'\n'app-driver-expect-unique-names.R' 'app-driver-expect-values.R'\n'app-driver-get-log.R' 'app-driver-initialize.R'\n'app-driver-log-message.R' 'app-driver-message.R'\n'app-driver-node.R' 'app-driver-set-inputs.R'\n'app-driver-start.R' 'app-driver-stop.R' 'app-driver-timeout.R'\n'app-driver-upload-file.R' 'app-driver-variant.R'\n'app-driver-wait.R' 'app-driver-window.R' 'app-driver.R'\n'chromote-methods.R' 'compare-screenshot-threshold.R' 'cpp11.R'\n'expect-snapshot.R' 'expr-recurse.R' 'httr.R' 'migrate.R'\n'missing-value.R' 'utils.R' 'platform.R'\n'record-test-unique-name.R' 'record-test.R' 'rstudio.R'\n'save-app.R' 'shiny-browser.R' 'shinytest2-logs.R'\n'shinytest2-package.R' 'test-app.R' 'use.R'", + "LinkingTo": "cpp11", + "NeedsCompilation": "yes", + "Packaged": "2025-04-11 21:20:56 UTC; barret", + "Author": "Barret Schloerke [cre, aut] (),\n Posit Software, PBC [cph, fnd],\n Winston Chang [ctb] (Original author to rstudio/shinytest),\n Gábor Csárdi [ctb] (Original author to rstudio/shinytest),\n Hadley Wickham [ctb] (Original author to rstudio/shinytest),\n Mango Solutions [cph, ccp] (Original author to rstudio/shinytest)", + "Maintainer": "Barret Schloerke ", + "Repository": "RSPM", + "Date/Publication": "2025-04-11 22:20:02 UTC", + "Built": "R 4.5.0; x86_64-pc-linux-gnu; 2025-04-14 18:00:57 UTC; unix" + } + }, + "slider": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "slider", + "Title": "Sliding Window Functions", + "Version": "0.3.2", + "Authors@R": "c(\n person(\"Davis\", \"Vaughan\", , \"davis@posit.co\", role = c(\"aut\", \"cre\")),\n person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\"))\n )", + "Description": "Provides type-stable rolling window functions over any R data\n type. Cumulative and expanding windows are also supported. For more\n advanced usage, an index can be used as a secondary vector that\n defines how sliding windows are to be created.", + "License": "MIT + file LICENSE", + "URL": "https://github.com/r-lib/slider, https://slider.r-lib.org", + "BugReports": "https://github.com/r-lib/slider/issues", + "Depends": "R (>= 4.0.0)", + "Imports": "cli (>= 3.6.1), rlang (>= 1.1.1), vctrs (>= 0.6.3), warp", + "Suggests": "covr, dplyr (>= 1.0.0), knitr, lubridate, rmarkdown, testthat\n(>= 3.0.0)", + "LinkingTo": "vctrs (>= 0.6.3)", + "VignetteBuilder": "knitr", + "Config/build/compilation-database": "true", + "Config/Needs/website": "tidyverse/tidytemplate", + "Config/testthat/edition": "3", + "Config/usethis/last-upkeep": "2024-10-25", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.2", + "Collate": "'arithmetic.R' 'block.R' 'conditions.R' 'hop-common.R'\n'hop-index-common.R' 'hop-index.R' 'hop-index2.R' 'hop.R'\n'hop2.R' 'phop-index.R' 'phop.R' 'slide-index2.R'\n'pslide-index.R' 'slide-period2.R' 'pslide-period.R' 'slide2.R'\n'pslide.R' 'segment-tree.R' 'slide-common.R'\n'slide-index-common.R' 'slide-index.R' 'slide-period-common.R'\n'slide-period.R' 'slide.R' 'slider-package.R' 'summary-index.R'\n'summary-slide.R' 'utils.R' 'zzz.R'", + "NeedsCompilation": "yes", + "Packaged": "2024-10-25 17:10:37 UTC; davis", + "Author": "Davis Vaughan [aut, cre],\n Posit Software, PBC [cph, fnd]", + "Maintainer": "Davis Vaughan ", + "Repository": "RSPM", + "Date/Publication": "2024-10-25 17:40:02 UTC", + "Built": "R 4.5.0; x86_64-pc-linux-gnu; 2025-04-09 06:47:23 UTC; unix" + } + }, + "sourcetools": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "sourcetools", + "Type": "Package", + "Title": "Tools for Reading, Tokenizing and Parsing R Code", + "Version": "0.1.7-1", + "Author": "Kevin Ushey", + "Maintainer": "Kevin Ushey ", + "Description": "Tools for the reading and tokenization of R code. The\n 'sourcetools' package provides both an R and C++ interface for the tokenization\n of R code, and helpers for interacting with the tokenized representation of R\n code.", + "License": "MIT + file LICENSE", + "Depends": "R (>= 3.0.2)", + "Suggests": "testthat", + "RoxygenNote": "5.0.1", + "BugReports": "https://github.com/kevinushey/sourcetools/issues", + "Encoding": "UTF-8", + "NeedsCompilation": "yes", + "Packaged": "2023-01-31 18:03:04 UTC; kevin", + "Repository": "RSPM", + "Date/Publication": "2023-02-01 10:10:02 UTC", + "Built": "R 4.5.0; x86_64-pc-linux-gnu; 2025-04-06 04:41:58 UTC; unix" + } + }, + "sparsevctrs": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "sparsevctrs", + "Title": "Sparse Vectors for Use in Data Frames", + "Version": "0.3.4", + "Authors@R": "c(\n person(\"Emil\", \"Hvitfeldt\", , \"emil.hvitfeldt@posit.co\", role = c(\"aut\", \"cre\"),\n comment = c(ORCID = \"0000-0002-0679-1945\")),\n person(\"Davis\", \"Vaughan\", , \"davis@posit.co\", role = \"ctb\"),\n person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\"), comment = c(ROR = \"03wc8by49\"))\n )", + "Description": "Provides sparse vectors powered by ALTREP (Alternative\n Representations for R Objects) that behave like regular vectors, and\n can thus be used in data frames. Also provides tools to convert\n between sparse matrices and data frames with sparse columns and\n functions to interact with sparse vectors.", + "License": "MIT + file LICENSE", + "URL": "https://github.com/r-lib/sparsevctrs,\nhttps://r-lib.github.io/sparsevctrs/", + "BugReports": "https://github.com/r-lib/sparsevctrs/issues", + "Depends": "R (>= 4.1)", + "Imports": "cli (>= 3.4.0), rlang (>= 1.1.0), vctrs", + "Suggests": "knitr, Matrix, methods, rmarkdown, testthat (>= 3.0.0),\ntibble, withr", + "VignetteBuilder": "knitr", + "Config/Needs/website": "tidyverse/tidytemplate, rmarkdown, lobstr,\nggplot2, bench, tidyr, ggbeeswarm", + "Config/testthat/edition": "3", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.2", + "Config/usethis/last-upkeep": "2025-05-25", + "NeedsCompilation": "yes", + "Packaged": "2025-05-25 13:57:53 UTC; emilhvitfeldt", + "Author": "Emil Hvitfeldt [aut, cre] (ORCID:\n ),\n Davis Vaughan [ctb],\n Posit Software, PBC [cph, fnd] (ROR: )", + "Maintainer": "Emil Hvitfeldt ", + "Repository": "RSPM", + "Date/Publication": "2025-05-25 14:30:02 UTC", + "Built": "R 4.5.0; x86_64-pc-linux-gnu; 2025-05-26 04:47:29 UTC; unix" + } + }, + "stringi": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "stringi", + "Version": "1.8.7", + "Date": "2025-03-27", + "Title": "Fast and Portable Character String Processing Facilities", + "Description": "A collection of character string/text/natural language\n processing tools for pattern searching (e.g., with 'Java'-like regular\n expressions or the 'Unicode' collation algorithm), random string generation,\n case mapping, string transliteration, concatenation, sorting, padding,\n wrapping, Unicode normalisation, date-time formatting and parsing,\n and many more. They are fast, consistent, convenient, and -\n thanks to 'ICU' (International Components for Unicode) -\n portable across all locales and platforms. Documentation about 'stringi' is\n provided via its website at and\n the paper by Gagolewski (2022, ).", + "URL": "https://stringi.gagolewski.com/,\nhttps://github.com/gagolews/stringi, https://icu.unicode.org/", + "BugReports": "https://github.com/gagolews/stringi/issues", + "SystemRequirements": "ICU4C (>= 61, optional)", + "Type": "Package", + "Depends": "R (>= 3.4)", + "Imports": "tools, utils, stats", + "Biarch": "TRUE", + "License": "file LICENSE", + "Authors@R": "c(person(given = \"Marek\",\n family = \"Gagolewski\",\n role = c(\"aut\", \"cre\", \"cph\"),\n email = \"marek@gagolewski.com\",\n comment = c(ORCID = \"0000-0003-0637-6028\")),\n person(given = \"Bartek\",\n family = \"Tartanus\",\n role = \"ctb\"),\n person(\"Unicode, Inc. and others\", role=\"ctb\",\n comment = \"ICU4C source code, Unicode Character Database\")\n )", + "RoxygenNote": "7.3.2", + "Encoding": "UTF-8", + "NeedsCompilation": "yes", + "Packaged": "2025-03-27 10:27:19 UTC; gagolews", + "Author": "Marek Gagolewski [aut, cre, cph]\n (),\n Bartek Tartanus [ctb],\n Unicode, Inc. and others [ctb] (ICU4C source code, Unicode Character\n Database)", + "Maintainer": "Marek Gagolewski ", + "License_is_FOSS": "yes", + "Repository": "RSPM", + "Date/Publication": "2025-03-27 13:10:02 UTC", + "Built": "R 4.5.0; x86_64-pc-linux-gnu; 2025-04-06 04:42:16 UTC; unix" + } + }, + "stringr": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "stringr", + "Title": "Simple, Consistent Wrappers for Common String Operations", + "Version": "1.5.1", + "Authors@R": "c(\n person(\"Hadley\", \"Wickham\", , \"hadley@posit.co\", role = c(\"aut\", \"cre\", \"cph\")),\n person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\"))\n )", + "Description": "A consistent, simple and easy to use set of wrappers around\n the fantastic 'stringi' package. All function and argument names (and\n positions) are consistent, all functions deal with \"NA\"'s and zero\n length vectors in the same way, and the output from one function is\n easy to feed into the input of another.", + "License": "MIT + file LICENSE", + "URL": "https://stringr.tidyverse.org,\nhttps://github.com/tidyverse/stringr", + "BugReports": "https://github.com/tidyverse/stringr/issues", + "Depends": "R (>= 3.6)", + "Imports": "cli, glue (>= 1.6.1), lifecycle (>= 1.0.3), magrittr, rlang\n(>= 1.0.0), stringi (>= 1.5.3), vctrs (>= 0.4.0)", + "Suggests": "covr, dplyr, gt, htmltools, htmlwidgets, knitr, rmarkdown,\ntestthat (>= 3.0.0), tibble", + "VignetteBuilder": "knitr", + "Config/Needs/website": "tidyverse/tidytemplate", + "Config/testthat/edition": "3", + "Encoding": "UTF-8", + "LazyData": "true", + "RoxygenNote": "7.2.3", + "NeedsCompilation": "no", + "Packaged": "2023-11-14 15:03:52 UTC; hadleywickham", + "Author": "Hadley Wickham [aut, cre, cph],\n Posit Software, PBC [cph, fnd]", + "Maintainer": "Hadley Wickham ", + "Repository": "RSPM", + "Date/Publication": "2023-11-14 23:10:02 UTC", + "Built": "R 4.5.0; ; 2025-04-06 04:43:52 UTC; unix" + } + }, + "styler": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Type": "Package", + "Package": "styler", + "Title": "Non-Invasive Pretty Printing of R Code", + "Version": "1.10.3", + "Authors@R": "\n c(person(given = \"Kirill\",\n family = \"Müller\",\n role = \"aut\",\n email = \"kirill@cynkra.com\",\n comment = c(ORCID = \"0000-0002-1416-3412\")),\n person(given = \"Lorenz\",\n family = \"Walthert\",\n role = c(\"cre\", \"aut\"),\n email = \"lorenz.walthert@icloud.com\"),\n person(given = \"Indrajeet\",\n family = \"Patil\",\n role = \"ctb\",\n email = \"patilindrajeet.science@gmail.com\",\n comment = c(ORCID = \"0000-0003-1995-6531\", Twitter = \"@patilindrajeets\")))", + "Description": "Pretty-prints R code without changing the user's formatting\n intent.", + "License": "MIT + file LICENSE", + "URL": "https://github.com/r-lib/styler, https://styler.r-lib.org", + "BugReports": "https://github.com/r-lib/styler/issues", + "Depends": "R (>= 3.6.0)", + "Imports": "cli (>= 3.1.1), magrittr (>= 2.0.0), purrr (>= 0.2.3), R.cache\n(>= 0.15.0), rlang (>= 1.0.0), rprojroot (>= 1.1), tools, vctrs\n(>= 0.4.1), withr (>= 2.3.0),", + "Suggests": "data.tree (>= 0.1.6), digest, here, knitr, prettycode,\nrmarkdown, roxygen2, rstudioapi (>= 0.7), tibble (>= 1.4.2),\ntestthat (>= 3.0.0)", + "VignetteBuilder": "knitr", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.1", + "Config/testthat/edition": "3", + "Config/testthat/parallel": "true", + "Collate": "'addins.R' 'communicate.R' 'compat-dplyr.R' 'compat-tidyr.R'\n'detect-alignment-utils.R' 'detect-alignment.R'\n'environments.R' 'expr-is.R' 'indent.R' 'initialize.R' 'io.R'\n'nest.R' 'nested-to-tree.R' 'parse.R' 'reindent.R'\n'token-define.R' 'relevel.R' 'roxygen-examples-add-remove.R'\n'roxygen-examples-find.R' 'roxygen-examples-parse.R'\n'roxygen-examples.R' 'rules-indention.R' 'rules-line-breaks.R'\n'rules-spaces.R' 'rules-tokens.R' 'serialize.R'\n'set-assert-args.R' 'style-guides.R' 'styler-package.R'\n'stylerignore.R' 'testing-mocks.R' 'testing-public-api.R'\n'ui-caching.R' 'testing.R' 'token-create.R' 'transform-block.R'\n'transform-code.R' 'transform-files.R' 'ui-styling.R'\n'unindent.R' 'utils-cache.R' 'utils-files.R'\n'utils-navigate-nest.R' 'utils-strings.R' 'utils.R'\n'vertical.R' 'visit.R' 'zzz.R'", + "NeedsCompilation": "no", + "Packaged": "2024-04-07 19:04:20 UTC; lorenz", + "Author": "Kirill Müller [aut] (),\n Lorenz Walthert [cre, aut],\n Indrajeet Patil [ctb] (,\n @patilindrajeets)", + "Maintainer": "Lorenz Walthert ", + "Repository": "RSPM", + "Date/Publication": "2024-04-07 23:00:02 UTC", + "Built": "R 4.5.0; ; 2025-04-09 06:35:31 UTC; unix" + } + }, + "survival": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Title": "Survival Analysis", + "Priority": "recommended", + "Package": "survival", + "Version": "3.8-3", + "Date": "2024-12-17", + "Depends": "R (>= 3.5.0)", + "Imports": "graphics, Matrix, methods, splines, stats, utils", + "LazyData": "Yes", + "LazyDataCompression": "xz", + "ByteCompile": "Yes", + "Authors@R": "c(person(c(\"Terry\", \"M\"), \"Therneau\",\n email=\"therneau.terry@mayo.edu\",\n\t role=c(\"aut\", \"cre\")),\n person(\"Thomas\", \"Lumley\", role=c(\"ctb\", \"trl\"),\n\t comment=\"original S->R port and R maintainer until 2009\"),\n\t person(\"Atkinson\", \"Elizabeth\", role=\"ctb\"),\n\t person(\"Crowson\", \"Cynthia\", role=\"ctb\"))", + "Description": "Contains the core survival analysis routines, including\n\t definition of Surv objects, \n\t Kaplan-Meier and Aalen-Johansen (multi-state) curves, Cox models,\n\t and parametric accelerated failure time models.", + "License": "LGPL (>= 2)", + "URL": "https://github.com/therneau/survival", + "NeedsCompilation": "yes", + "Packaged": "2024-12-17 16:37:18 UTC; therneau", + "Author": "Terry M Therneau [aut, cre],\n Thomas Lumley [ctb, trl] (original S->R port and R maintainer until\n 2009),\n Atkinson Elizabeth [ctb],\n Crowson Cynthia [ctb]", + "Maintainer": "Terry M Therneau ", + "Repository": "CRAN", + "Date/Publication": "2024-12-17 20:20:02 UTC", + "Built": "R 4.5.1; aarch64-apple-darwin20; 2025-06-14 01:30:21 UTC; unix" + } + }, + "sys": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "sys", + "Type": "Package", + "Title": "Powerful and Reliable Tools for Running System Commands in R", + "Version": "3.4.3", + "Authors@R": "c(person(\"Jeroen\", \"Ooms\", role = c(\"aut\", \"cre\"), \n email = \"jeroenooms@gmail.com\", comment = c(ORCID = \"0000-0002-4035-0289\")),\n person(\"Gábor\", \"Csárdi\", , \"csardi.gabor@gmail.com\", role = \"ctb\"))", + "Description": "Drop-in replacements for the base system2() function with fine control\n and consistent behavior across platforms. Supports clean interruption, timeout, \n background tasks, and streaming STDIN / STDOUT / STDERR over binary or text \n connections. Arguments on Windows automatically get encoded and quoted to work \n on different locales.", + "License": "MIT + file LICENSE", + "URL": "https://jeroen.r-universe.dev/sys", + "BugReports": "https://github.com/jeroen/sys/issues", + "Encoding": "UTF-8", + "RoxygenNote": "7.1.1", + "Suggests": "unix (>= 1.4), spelling, testthat", + "Language": "en-US", + "NeedsCompilation": "yes", + "Packaged": "2024-10-03 14:13:17 UTC; jeroen", + "Author": "Jeroen Ooms [aut, cre] (),\n Gábor Csárdi [ctb]", + "Maintainer": "Jeroen Ooms ", + "Repository": "RSPM", + "Date/Publication": "2024-10-04 09:40:02 UTC", + "Built": "R 4.5.0; x86_64-pc-linux-gnu; 2025-04-06 04:42:01 UTC; unix" + } + }, + "testthat": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "testthat", + "Title": "Unit Testing for R", + "Version": "3.2.3", + "Authors@R": "c(\n person(\"Hadley\", \"Wickham\", , \"hadley@posit.co\", role = c(\"aut\", \"cre\")),\n person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\")),\n person(\"R Core team\", role = \"ctb\",\n comment = \"Implementation of utils::recover()\")\n )", + "Description": "Software testing is important, but, in part because it is\n frustrating and boring, many of us avoid it. 'testthat' is a testing\n framework for R that is easy to learn and use, and integrates with\n your existing 'workflow'.", + "License": "MIT + file LICENSE", + "URL": "https://testthat.r-lib.org, https://github.com/r-lib/testthat", + "BugReports": "https://github.com/r-lib/testthat/issues", + "Depends": "R (>= 3.6.0)", + "Imports": "brio (>= 1.1.3), callr (>= 3.7.3), cli (>= 3.6.1), desc (>=\n1.4.2), digest (>= 0.6.33), evaluate (>= 1.0.1), jsonlite (>=\n1.8.7), lifecycle (>= 1.0.3), magrittr (>= 2.0.3), methods,\npkgload (>= 1.3.2.1), praise (>= 1.0.0), processx (>= 3.8.2),\nps (>= 1.7.5), R6 (>= 2.5.1), rlang (>= 1.1.1), utils, waldo\n(>= 0.6.0), withr (>= 3.0.2)", + "Suggests": "covr, curl (>= 0.9.5), diffviewer (>= 0.1.0), knitr,\nrmarkdown, rstudioapi, S7, shiny, usethis, vctrs (>= 0.1.0),\nxml2", + "VignetteBuilder": "knitr", + "Config/Needs/website": "tidyverse/tidytemplate", + "Config/testthat/edition": "3", + "Config/testthat/parallel": "true", + "Config/testthat/start-first": "watcher, parallel*", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.2", + "NeedsCompilation": "yes", + "Packaged": "2025-01-11 00:11:30 UTC; hadleywickham", + "Author": "Hadley Wickham [aut, cre],\n Posit Software, PBC [cph, fnd],\n R Core team [ctb] (Implementation of utils::recover())", + "Maintainer": "Hadley Wickham ", + "Repository": "RSPM", + "Date/Publication": "2025-01-13 11:20:03 UTC", + "Built": "R 4.5.0; x86_64-pc-linux-gnu; 2025-04-06 04:44:39 UTC; unix" + } + }, + "tibble": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "tibble", + "Title": "Simple Data Frames", + "Version": "3.3.0", + "Authors@R": "\n c(person(given = \"Kirill\",\n family = \"M\\u00fcller\",\n role = c(\"aut\", \"cre\"),\n email = \"kirill@cynkra.com\",\n comment = c(ORCID = \"0000-0002-1416-3412\")),\n person(given = \"Hadley\",\n family = \"Wickham\",\n role = \"aut\",\n email = \"hadley@rstudio.com\"),\n person(given = \"Romain\",\n family = \"Francois\",\n role = \"ctb\",\n email = \"romain@r-enthusiasts.com\"),\n person(given = \"Jennifer\",\n family = \"Bryan\",\n role = \"ctb\",\n email = \"jenny@rstudio.com\"),\n person(given = \"RStudio\",\n role = c(\"cph\", \"fnd\")))", + "Description": "Provides a 'tbl_df' class (the 'tibble') with stricter checking and better formatting than the traditional\n data frame.", + "License": "MIT + file LICENSE", + "URL": "https://tibble.tidyverse.org/, https://github.com/tidyverse/tibble", + "BugReports": "https://github.com/tidyverse/tibble/issues", + "Depends": "R (>= 3.4.0)", + "Imports": "cli, lifecycle (>= 1.0.0), magrittr, methods, pillar (>=\n1.8.1), pkgconfig, rlang (>= 1.0.2), utils, vctrs (>= 0.5.0)", + "Suggests": "bench, bit64, blob, brio, callr, DiagrammeR, dplyr, evaluate,\nformattable, ggplot2, here, hms, htmltools, knitr, lubridate,\nnycflights13, pkgload, purrr, rmarkdown, stringi, testthat (>=\n3.0.2), tidyr, withr", + "VignetteBuilder": "knitr", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.2.9000", + "Config/testthat/edition": "3", + "Config/testthat/parallel": "true", + "Config/testthat/start-first": "vignette-formats, as_tibble, add,\ninvariants", + "Config/autostyle/scope": "line_breaks", + "Config/autostyle/strict": "true", + "Config/autostyle/rmd": "false", + "Config/Needs/website": "tidyverse/tidytemplate", + "NeedsCompilation": "yes", + "Packaged": "2025-06-07 08:54:33 UTC; kirill", + "Author": "Kirill Müller [aut, cre] (ORCID:\n ),\n Hadley Wickham [aut],\n Romain Francois [ctb],\n Jennifer Bryan [ctb],\n RStudio [cph, fnd]", + "Maintainer": "Kirill Müller ", + "Repository": "RSPM", + "Date/Publication": "2025-06-08 12:10:02 UTC", + "Built": "R 4.5.0; x86_64-pc-linux-gnu; 2025-06-09 04:40:01 UTC; unix" + } + }, + "tidyr": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "tidyr", + "Title": "Tidy Messy Data", + "Version": "1.3.1", + "Authors@R": "c(\n person(\"Hadley\", \"Wickham\", , \"hadley@posit.co\", role = c(\"aut\", \"cre\")),\n person(\"Davis\", \"Vaughan\", , \"davis@posit.co\", role = \"aut\"),\n person(\"Maximilian\", \"Girlich\", role = \"aut\"),\n person(\"Kevin\", \"Ushey\", , \"kevin@posit.co\", role = \"ctb\"),\n person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\"))\n )", + "Description": "Tools to help to create tidy data, where each column is a\n variable, each row is an observation, and each cell contains a single\n value. 'tidyr' contains tools for changing the shape (pivoting) and\n hierarchy (nesting and 'unnesting') of a dataset, turning deeply\n nested lists into rectangular data frames ('rectangling'), and\n extracting values out of string columns. It also includes tools for\n working with missing values (both implicit and explicit).", + "License": "MIT + file LICENSE", + "URL": "https://tidyr.tidyverse.org, https://github.com/tidyverse/tidyr", + "BugReports": "https://github.com/tidyverse/tidyr/issues", + "Depends": "R (>= 3.6)", + "Imports": "cli (>= 3.4.1), dplyr (>= 1.0.10), glue, lifecycle (>= 1.0.3),\nmagrittr, purrr (>= 1.0.1), rlang (>= 1.1.1), stringr (>=\n1.5.0), tibble (>= 2.1.1), tidyselect (>= 1.2.0), utils, vctrs\n(>= 0.5.2)", + "Suggests": "covr, data.table, knitr, readr, repurrrsive (>= 1.1.0),\nrmarkdown, testthat (>= 3.0.0)", + "LinkingTo": "cpp11 (>= 0.4.0)", + "VignetteBuilder": "knitr", + "Config/Needs/website": "tidyverse/tidytemplate", + "Config/testthat/edition": "3", + "Encoding": "UTF-8", + "LazyData": "true", + "RoxygenNote": "7.3.0", + "NeedsCompilation": "yes", + "Packaged": "2024-01-23 14:27:23 UTC; hadleywickham", + "Author": "Hadley Wickham [aut, cre],\n Davis Vaughan [aut],\n Maximilian Girlich [aut],\n Kevin Ushey [ctb],\n Posit Software, PBC [cph, fnd]", + "Maintainer": "Hadley Wickham ", + "Repository": "RSPM", + "Date/Publication": "2024-01-24 14:50:09 UTC", + "Built": "R 4.5.0; x86_64-pc-linux-gnu; 2025-04-06 04:45:22 UTC; unix" + } + }, + "tidyselect": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "tidyselect", + "Title": "Select from a Set of Strings", + "Version": "1.2.1", + "Authors@R": "c(\n person(\"Lionel\", \"Henry\", , \"lionel@posit.co\", role = c(\"aut\", \"cre\")),\n person(\"Hadley\", \"Wickham\", , \"hadley@posit.co\", role = \"aut\"),\n person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\"))\n )", + "Description": "A backend for the selecting functions of the 'tidyverse'. It\n makes it easy to implement select-like functions in your own packages\n in a way that is consistent with other 'tidyverse' interfaces for\n selection.", + "License": "MIT + file LICENSE", + "URL": "https://tidyselect.r-lib.org, https://github.com/r-lib/tidyselect", + "BugReports": "https://github.com/r-lib/tidyselect/issues", + "Depends": "R (>= 3.4)", + "Imports": "cli (>= 3.3.0), glue (>= 1.3.0), lifecycle (>= 1.0.3), rlang\n(>= 1.0.4), vctrs (>= 0.5.2), withr", + "Suggests": "covr, crayon, dplyr, knitr, magrittr, rmarkdown, stringr,\ntestthat (>= 3.1.1), tibble (>= 2.1.3)", + "VignetteBuilder": "knitr", + "ByteCompile": "true", + "Config/testthat/edition": "3", + "Config/Needs/website": "tidyverse/tidytemplate", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.0.9000", + "NeedsCompilation": "yes", + "Packaged": "2024-03-11 11:46:04 UTC; lionel", + "Author": "Lionel Henry [aut, cre],\n Hadley Wickham [aut],\n Posit Software, PBC [cph, fnd]", + "Maintainer": "Lionel Henry ", + "Repository": "RSPM", + "Date/Publication": "2024-03-11 14:10:02 UTC", + "Built": "R 4.5.0; ; 2025-04-06 04:43:37 UTC; unix" + } + }, + "timeDate": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "timeDate", + "Title": "Rmetrics - Chronological and Calendar Objects", + "Version": "4041.110", + "Authors@R": "c(person(\"Diethelm\", \"Wuertz\", role=\"aut\", comment = \"original code\")\n\t , person(\"Tobias\", \"Setz\", role = c(\"aut\"), email = \"tobias.setz@live.com\")\n\t , person(\"Yohan\", \"Chalabi\", role = \"aut\")\n\t , person(\"Martin\",\"Maechler\", role = \"ctb\", email = \"maechler@stat.math.ethz.ch\", comment = c(ORCID = \"0000-0002-8685-9910\"))\n\t , person(given = c(\"Joe\", \"W.\"), family = \"Byers\", role = \"ctb\")\n\t , person(given = c(\"Georgi\", \"N.\"), family = \"Boshnakov\", \n role = c(\"cre\", \"aut\"), email = \"georgi.boshnakov@manchester.ac.uk\") )", + "Description": "The 'timeDate' class fulfils the conventions of the ISO 8601 \n\tstandard as well as of the ANSI C and POSIX standards. Beyond\n\tthese standards it provides the \"Financial Center\" concept\n\twhich allows to handle data records collected in different time \n\tzones and mix them up to have always the proper time stamps with \n\trespect to your personal financial center, or alternatively to the GMT\n\treference time. It can thus also handle time stamps from historical \n\tdata records from the same time zone, even if the financial \n\tcenters changed day light saving times at different calendar\n\tdates.", + "Depends": "R (>= 3.6.0), methods", + "Imports": "graphics, utils, stats", + "Suggests": "RUnit", + "License": "GPL (>= 2)", + "Encoding": "UTF-8", + "URL": "https://geobosh.github.io/timeDateDoc/ (doc),\nhttps://r-forge.r-project.org/scm/viewvc.php/pkg/timeDate/?root=rmetrics\n(devel), https://www.rmetrics.org", + "BugReports": "https://r-forge.r-project.org/projects/rmetrics", + "NeedsCompilation": "no", + "Packaged": "2024-09-16 11:17:35 UTC; georgi", + "Author": "Diethelm Wuertz [aut] (original code),\n Tobias Setz [aut],\n Yohan Chalabi [aut],\n Martin Maechler [ctb] (),\n Joe W. Byers [ctb],\n Georgi N. Boshnakov [cre, aut]", + "Maintainer": "Georgi N. Boshnakov ", + "Repository": "RSPM", + "Date/Publication": "2024-09-22 10:10:17 UTC", + "Built": "R 4.5.0; ; 2025-04-08 03:11:26 UTC; unix" + } + }, + "timechange": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "timechange", + "Title": "Efficient Manipulation of Date-Times", + "Version": "0.3.0", + "Authors@R": "c(person(\"Vitalie\", \"Spinu\", email = \"spinuvit@gmail.com\", role = c(\"aut\", \"cre\")),\n person(\"Google Inc.\", role = c(\"ctb\", \"cph\")))", + "Description": "Efficient routines for manipulation of date-time objects while\n accounting for time-zones and daylight saving times. The package includes\n utilities for updating of date-time components (year, month, day etc.),\n modification of time-zones, rounding of date-times, period addition and\n subtraction etc. Parts of the 'CCTZ' source code, released under the Apache\n 2.0 License, are included in this package. See\n for more details.", + "Depends": "R (>= 3.3)", + "License": "GPL (>= 3)", + "Encoding": "UTF-8", + "LinkingTo": "cpp11 (>= 0.2.7)", + "Suggests": "testthat (>= 0.7.1.99), knitr", + "SystemRequirements": "A system with zoneinfo data (e.g.\n/usr/share/zoneinfo) as well as a recent-enough C++11 compiler\n(such as g++-4.8 or later). On Windows the zoneinfo included\nwith R is used.", + "BugReports": "https://github.com/vspinu/timechange/issues", + "URL": "https://github.com/vspinu/timechange/", + "RoxygenNote": "7.2.1", + "NeedsCompilation": "yes", + "Packaged": "2024-01-18 08:57:24 UTC; vspinu", + "Author": "Vitalie Spinu [aut, cre],\n Google Inc. [ctb, cph]", + "Maintainer": "Vitalie Spinu ", + "Repository": "RSPM", + "Date/Publication": "2024-01-18 09:20:02 UTC", + "Built": "R 4.5.0; x86_64-pc-linux-gnu; 2025-04-06 04:42:42 UTC; unix" + } + }, + "timetk": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "timetk", + "Type": "Package", + "Title": "A Tool Kit for Working with Time Series", + "Version": "2.9.0", + "Authors@R": "c(\n person(\"Matt\", \"Dancho\", email = \"mdancho@business-science.io\", role = c(\"aut\", \"cre\")),\n person(\"Davis\", \"Vaughan\", email = \"dvaughan@business-science.io\", role = c(\"aut\"))\n )", + "Description": "\n Easy visualization, wrangling, and feature engineering of time series data for \n forecasting and machine learning prediction. Consolidates and extends time series functionality \n from packages including 'dplyr', 'stats', 'xts', 'forecast', 'slider', 'padr', 'recipes', and 'rsample'.", + "URL": "https://github.com/business-science/timetk,\nhttps://business-science.github.io/timetk/", + "BugReports": "https://github.com/business-science/timetk/issues", + "License": "GPL (>= 3)", + "Encoding": "UTF-8", + "LazyData": "true", + "Depends": "R (>= 3.3.0)", + "Imports": "recipes (>= 1.0.4), rsample, dplyr (>= 1.0.0), ggplot2 (>=\n3.4.0), forcats, stringr, plotly, lubridate (>= 1.6.0), padr\n(>= 0.5.2), purrr (>= 0.2.2), readr (>= 1.3.0), stringi (>=\n1.4.6), tibble (>= 3.0.3), tidyr (>= 1.1.0), xts (>= 0.9-7),\nzoo (>= 1.7-14), rlang (>= 1.1.1), tidyselect (>= 1.1.0),\nslider, anytime, timeDate, forecast, tsfeatures, hms, generics", + "Suggests": "modeltime, glmnet, workflows, parsnip, tune (>= 0.1.2),\nknitr, rmarkdown, broom, scales, testthat, fracdiff,\ntimeSeries, tseries, trelliscopejs", + "RoxygenNote": "7.2.3", + "VignetteBuilder": "knitr", + "NeedsCompilation": "no", + "Packaged": "2023-10-31 19:15:26 UTC; mdancho", + "Author": "Matt Dancho [aut, cre],\n Davis Vaughan [aut]", + "Maintainer": "Matt Dancho ", + "Repository": "RSPM", + "Date/Publication": "2023-10-31 22:30:02 UTC", + "Built": "R 4.5.0; ; 2025-04-09 07:44:50 UTC; unix" + } + }, + "tinytex": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "tinytex", + "Type": "Package", + "Title": "Helper Functions to Install and Maintain TeX Live, and Compile\nLaTeX Documents", + "Version": "0.57", + "Authors@R": "c(\n person(\"Yihui\", \"Xie\", role = c(\"aut\", \"cre\", \"cph\"), email = \"xie@yihui.name\", comment = c(ORCID = \"0000-0003-0645-5666\")),\n person(given = \"Posit Software, PBC\", role = c(\"cph\", \"fnd\")),\n person(\"Christophe\", \"Dervieux\", role = \"ctb\", comment = c(ORCID = \"0000-0003-4474-2498\")),\n person(\"Devon\", \"Ryan\", role = \"ctb\", email = \"dpryan79@gmail.com\", comment = c(ORCID = \"0000-0002-8549-0971\")),\n person(\"Ethan\", \"Heinzen\", role = \"ctb\"),\n person(\"Fernando\", \"Cagua\", role = \"ctb\"),\n person()\n )", + "Description": "Helper functions to install and maintain the 'LaTeX' distribution\n named 'TinyTeX' (), a lightweight, cross-platform,\n portable, and easy-to-maintain version of 'TeX Live'. This package also\n contains helper functions to compile 'LaTeX' documents, and install missing\n 'LaTeX' packages automatically.", + "Imports": "xfun (>= 0.48)", + "Suggests": "testit, rstudioapi", + "License": "MIT + file LICENSE", + "URL": "https://github.com/rstudio/tinytex", + "BugReports": "https://github.com/rstudio/tinytex/issues", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.2", + "NeedsCompilation": "no", + "Packaged": "2025-04-15 14:48:13 UTC; yihui", + "Author": "Yihui Xie [aut, cre, cph] (),\n Posit Software, PBC [cph, fnd],\n Christophe Dervieux [ctb] (),\n Devon Ryan [ctb] (),\n Ethan Heinzen [ctb],\n Fernando Cagua [ctb]", + "Maintainer": "Yihui Xie ", + "Repository": "RSPM", + "Date/Publication": "2025-04-15 15:50:03 UTC", + "Built": "R 4.5.0; ; 2025-04-16 04:39:53 UTC; unix" + } + }, + "tseries": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "tseries", + "Version": "0.10-58", + "Title": "Time Series Analysis and Computational Finance", + "Authors@R": "c(person(\"Adrian\", \"Trapletti\", role = \"aut\",\n email = \"adrian@trapletti.org\"),\n person(\"Kurt\", \"Hornik\", role = c(\"aut\", \"cre\"),\n email = \"Kurt.Hornik@R-project.org\",\n\t\t comment = c(ORCID = \"0000-0003-4198-9911\")),\n person(\"Blake\", \"LeBaron\", role = \"ctb\",\n comment = \"BDS test code\"))", + "Description": "Time series analysis and computational finance.", + "Depends": "R (>= 3.4.0)", + "Imports": "graphics, stats, utils, quadprog, zoo, quantmod (>= 0.4-9),\njsonlite", + "License": "GPL-2 | GPL-3", + "NeedsCompilation": "yes", + "Packaged": "2024-09-23 09:27:59 UTC; hornik", + "Author": "Adrian Trapletti [aut],\n Kurt Hornik [aut, cre] (),\n Blake LeBaron [ctb] (BDS test code)", + "Maintainer": "Kurt Hornik ", + "Repository": "RSPM", + "Date/Publication": "2024-09-23 10:00:16 UTC", + "Encoding": "UTF-8", + "Built": "R 4.5.0; x86_64-pc-linux-gnu; 2025-04-08 03:12:51 UTC; unix" + } + }, + "tsfeatures": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "tsfeatures", + "Title": "Time Series Feature Extraction", + "Version": "1.1.1", + "Authors@R": "c(\n person(\"Rob\", \"Hyndman\", email = \"Rob.Hyndman@monash.edu\", role = c(\"aut\",\"cre\"), comment = c(ORCID = \"0000-0002-2140-5352\")),\n person(\"Yanfei\", \"Kang\", role = \"aut\", comment = c(ORCID = \"0000-0001-8769-6650\")),\n person(\"Pablo\", \"Montero-Manso\", email=\"p.montero.manso@udc.es\", role=\"aut\"),\n person(\"Mitchell\", \"O'Hara-Wild\", role=\"aut\", comment=c(ORCID = \"0000-0001-6729-7695\")),\n person(\"Thiyanga\", \"Talagala\", role = \"aut\", comment=c(ORCID = \"0000-0002-0656-9789\")),\n person(\"Earo\", \"Wang\", role = \"aut\", comment=c(ORCID = \"0000-0001-6448-5260\")),\n person(\"Yangzhuoran\", \"Yang\", email = \"Fin.Yang@monash.edu\", role = \"aut\"),\n person(\"Souhaib\", \"Ben Taieb\", role = \"ctb\"),\n person(\"Cao\", \"Hanqing\", role=\"ctb\"),\n person(\"D K\", \"Lake\", role=\"ctb\"),\n person(\"Nikolay\", \"Laptev\", role=\"ctb\"),\n person(\"J R\", \"Moorman\", role=\"ctb\"),\n person(\"Bohan\", \"Zhang\", role = \"ctb\"))", + "Description": "Methods for extracting various features from time series data. The features provided are those from Hyndman, Wang and Laptev (2013) , Kang, Hyndman and Smith-Miles (2017) and from Fulcher, Little and Jones (2013) . Features include spectral entropy, autocorrelations, measures of the strength of seasonality and trend, and so on. Users can also define their own feature functions.", + "Depends": "R (>= 3.6.0)", + "Imports": "fracdiff, forecast (>= 8.3), purrr, RcppRoll (>= 0.2.2),\nstats, tibble, tseries, urca, future, furrr", + "Suggests": "testthat, knitr, rmarkdown, ggplot2, tidyr, dplyr, Mcomp,\nGGally", + "License": "GPL-3", + "ByteCompile": "true", + "URL": "https://pkg.robjhyndman.com/tsfeatures/,\nhttps://github.com/robjhyndman/tsfeatures", + "BugReports": "https://github.com/robjhyndman/tsfeatures/issues", + "RoxygenNote": "7.2.3", + "VignetteBuilder": "knitr", + "Encoding": "UTF-8", + "NeedsCompilation": "no", + "Packaged": "2023-08-28 13:23:56 UTC; robjhyndman", + "Author": "Rob Hyndman [aut, cre] (),\n Yanfei Kang [aut] (),\n Pablo Montero-Manso [aut],\n Mitchell O'Hara-Wild [aut] (),\n Thiyanga Talagala [aut] (),\n Earo Wang [aut] (),\n Yangzhuoran Yang [aut],\n Souhaib Ben Taieb [ctb],\n Cao Hanqing [ctb],\n D K Lake [ctb],\n Nikolay Laptev [ctb],\n J R Moorman [ctb],\n Bohan Zhang [ctb]", + "Maintainer": "Rob Hyndman ", + "Repository": "RSPM", + "Date/Publication": "2023-08-28 14:00:02 UTC", + "Built": "R 4.5.0; ; 2025-04-09 06:52:47 UTC; unix" + } + }, + "tzdb": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "tzdb", + "Title": "Time Zone Database Information", + "Version": "0.5.0", + "Authors@R": "c(\n person(\"Davis\", \"Vaughan\", , \"davis@posit.co\", role = c(\"aut\", \"cre\")),\n person(\"Howard\", \"Hinnant\", role = \"cph\",\n comment = \"Author of the included date library\"),\n person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\"))\n )", + "Description": "Provides an up-to-date copy of the Internet Assigned Numbers\n Authority (IANA) Time Zone Database. It is updated periodically to\n reflect changes made by political bodies to time zone boundaries, UTC\n offsets, and daylight saving time rules. Additionally, this package\n provides a C++ interface for working with the 'date' library. 'date'\n provides comprehensive support for working with dates and date-times,\n which this package exposes to make it easier for other R packages to\n utilize. Headers are provided for calendar specific calculations,\n along with a limited interface for time zone manipulations.", + "License": "MIT + file LICENSE", + "URL": "https://tzdb.r-lib.org, https://github.com/r-lib/tzdb", + "BugReports": "https://github.com/r-lib/tzdb/issues", + "Depends": "R (>= 4.0.0)", + "Suggests": "covr, testthat (>= 3.0.0)", + "LinkingTo": "cpp11 (>= 0.5.2)", + "Biarch": "yes", + "Config/Needs/website": "tidyverse/tidytemplate", + "Config/testthat/edition": "3", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.2", + "NeedsCompilation": "yes", + "Packaged": "2025-03-14 18:41:13 UTC; davis", + "Author": "Davis Vaughan [aut, cre],\n Howard Hinnant [cph] (Author of the included date library),\n Posit Software, PBC [cph, fnd]", + "Maintainer": "Davis Vaughan ", + "Repository": "RSPM", + "Date/Publication": "2025-03-15 22:50:02 UTC", + "Built": "R 4.5.0; x86_64-pc-linux-gnu; 2025-04-06 04:42:42 UTC; unix" + } + }, + "urca": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "urca", + "Version": "1.3-4", + "Date": "2024-05-25", + "Title": "Unit Root and Cointegration Tests for Time Series Data", + "Authors@R": "c(person(\"Bernhard\", \"Pfaff\", email = \"bernhard@pfaffikus.de\", role = c(\"aut\", \"cre\")), person(\"Eric\", \"Zivot\",email = \"ezivot@u.washington.edu\", role = \"ctb\"), person(\"Matthieu\", \"Stigler\", role = \"ctb\"))", + "Depends": "R (>= 2.0.0), methods", + "Imports": "nlme, graphics, stats", + "LazyLoad": "yes", + "Description": "Unit root and cointegration tests encountered in applied \n econometric analysis are implemented.", + "License": "GPL (>= 2)", + "NeedsCompilation": "yes", + "Packaged": "2024-05-25 16:28:23 UTC; bp", + "Author": "Bernhard Pfaff [aut, cre],\n Eric Zivot [ctb],\n Matthieu Stigler [ctb]", + "Maintainer": "Bernhard Pfaff ", + "Repository": "RSPM", + "Date/Publication": "2024-05-27 12:20:03 UTC", + "Encoding": "UTF-8", + "Built": "R 4.5.0; x86_64-pc-linux-gnu; 2025-04-06 04:42:48 UTC; unix" + } + }, + "utf8": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "utf8", + "Title": "Unicode Text Processing", + "Version": "1.2.6", + "Authors@R": "\n c(person(given = c(\"Patrick\", \"O.\"),\n family = \"Perry\",\n role = c(\"aut\", \"cph\")),\n person(given = \"Kirill\",\n family = \"M\\u00fcller\",\n role = \"cre\",\n email = \"kirill@cynkra.com\",\n comment = c(ORCID = \"0000-0002-1416-3412\")),\n person(given = \"Unicode, Inc.\",\n role = c(\"cph\", \"dtc\"),\n comment = \"Unicode Character Database\"))", + "Description": "Process and print 'UTF-8' encoded international\n text (Unicode). Input, validate, normalize, encode, format, and\n display.", + "License": "Apache License (== 2.0) | file LICENSE", + "URL": "https://krlmlr.github.io/utf8/, https://github.com/krlmlr/utf8", + "BugReports": "https://github.com/krlmlr/utf8/issues", + "Depends": "R (>= 2.10)", + "Suggests": "cli, covr, knitr, rlang, rmarkdown, testthat (>= 3.0.0),\nwithr", + "VignetteBuilder": "knitr, rmarkdown", + "Config/testthat/edition": "3", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.2.9000", + "NeedsCompilation": "yes", + "Packaged": "2025-06-08 18:28:11 UTC; kirill", + "Author": "Patrick O. Perry [aut, cph],\n Kirill Müller [cre] (ORCID: ),\n Unicode, Inc. [cph, dtc] (Unicode Character Database)", + "Maintainer": "Kirill Müller ", + "Repository": "RSPM", + "Date/Publication": "2025-06-08 19:00:02 UTC", + "Built": "R 4.5.0; x86_64-pc-linux-gnu; 2025-06-09 04:39:33 UTC; unix" + } + }, + "uuid": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "uuid", + "Version": "1.2-1", + "Title": "Tools for Generating and Handling of UUIDs", + "Author": "Simon Urbanek [aut, cre, cph] (https://urbanek.org,\n ),\n Theodore Ts'o [aut, cph] (libuuid)", + "Maintainer": "Simon Urbanek ", + "Authors@R": "c(person(\"Simon\", \"Urbanek\", role=c(\"aut\",\"cre\",\"cph\"), email=\"Simon.Urbanek@r-project.org\", comment=c(\"https://urbanek.org\", ORCID=\"0000-0003-2297-1732\")), person(\"Theodore\",\"Ts'o\", email=\"tytso@thunk.org\", role=c(\"aut\",\"cph\"), comment=\"libuuid\"))", + "Depends": "R (>= 2.9.0)", + "Description": "Tools for generating and handling of UUIDs (Universally Unique Identifiers).", + "License": "MIT + file LICENSE", + "URL": "https://www.rforge.net/uuid", + "BugReports": "https://github.com/s-u/uuid/issues", + "NeedsCompilation": "yes", + "Packaged": "2024-07-29 03:16:54 UTC; rforge", + "Repository": "RSPM", + "Date/Publication": "2024-07-29 07:09:22 UTC", + "Encoding": "UTF-8", + "Built": "R 4.5.0; x86_64-pc-linux-gnu; 2025-04-06 04:42:12 UTC; unix" + } + }, + "vctrs": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "vctrs", + "Title": "Vector Helpers", + "Version": "0.6.5", + "Authors@R": "c(\n person(\"Hadley\", \"Wickham\", , \"hadley@posit.co\", role = \"aut\"),\n person(\"Lionel\", \"Henry\", , \"lionel@posit.co\", role = \"aut\"),\n person(\"Davis\", \"Vaughan\", , \"davis@posit.co\", role = c(\"aut\", \"cre\")),\n person(\"data.table team\", role = \"cph\",\n comment = \"Radix sort based on data.table's forder() and their contribution to R's order()\"),\n person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\"))\n )", + "Description": "Defines new notions of prototype and size that are used to\n provide tools for consistent and well-founded type-coercion and\n size-recycling, and are in turn connected to ideas of type- and\n size-stability useful for analysing function interfaces.", + "License": "MIT + file LICENSE", + "URL": "https://vctrs.r-lib.org/, https://github.com/r-lib/vctrs", + "BugReports": "https://github.com/r-lib/vctrs/issues", + "Depends": "R (>= 3.5.0)", + "Imports": "cli (>= 3.4.0), glue, lifecycle (>= 1.0.3), rlang (>= 1.1.0)", + "Suggests": "bit64, covr, crayon, dplyr (>= 0.8.5), generics, knitr,\npillar (>= 1.4.4), pkgdown (>= 2.0.1), rmarkdown, testthat (>=\n3.0.0), tibble (>= 3.1.3), waldo (>= 0.2.0), withr, xml2,\nzeallot", + "VignetteBuilder": "knitr", + "Config/Needs/website": "tidyverse/tidytemplate", + "Config/testthat/edition": "3", + "Encoding": "UTF-8", + "Language": "en-GB", + "RoxygenNote": "7.2.3", + "NeedsCompilation": "yes", + "Packaged": "2023-12-01 16:27:12 UTC; davis", + "Author": "Hadley Wickham [aut],\n Lionel Henry [aut],\n Davis Vaughan [aut, cre],\n data.table team [cph] (Radix sort based on data.table's forder() and\n their contribution to R's order()),\n Posit Software, PBC [cph, fnd]", + "Maintainer": "Davis Vaughan ", + "Repository": "RSPM", + "Date/Publication": "2023-12-01 23:50:02 UTC", + "Built": "R 4.5.0; x86_64-pc-linux-gnu; 2025-04-06 04:43:04 UTC; unix" + } + }, + "viridisLite": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "viridisLite", + "Type": "Package", + "Title": "Colorblind-Friendly Color Maps (Lite Version)", + "Version": "0.4.2", + "Date": "2023-05-02", + "Authors@R": "c(\n person(\"Simon\", \"Garnier\", email = \"garnier@njit.edu\", role = c(\"aut\", \"cre\")),\n person(\"Noam\", \"Ross\", email = \"noam.ross@gmail.com\", role = c(\"ctb\", \"cph\")),\n person(\"Bob\", \"Rudis\", email = \"bob@rud.is\", role = c(\"ctb\", \"cph\")),\n person(\"Marco\", \"Sciaini\", email = \"sciaini.marco@gmail.com\", role = c(\"ctb\", \"cph\")),\n person(\"Antônio Pedro\", \"Camargo\", role = c(\"ctb\", \"cph\")),\n person(\"Cédric\", \"Scherer\", email = \"scherer@izw-berlin.de\", role = c(\"ctb\", \"cph\"))\n )", + "Maintainer": "Simon Garnier ", + "Description": "Color maps designed to improve graph readability for readers with \n common forms of color blindness and/or color vision deficiency. The color \n maps are also perceptually-uniform, both in regular form and also when \n converted to black-and-white for printing. This is the 'lite' version of the \n 'viridis' package that also contains 'ggplot2' bindings for discrete and \n continuous color and fill scales and can be found at \n .", + "License": "MIT + file LICENSE", + "Encoding": "UTF-8", + "Depends": "R (>= 2.10)", + "Suggests": "hexbin (>= 1.27.0), ggplot2 (>= 1.0.1), testthat, covr", + "URL": "https://sjmgarnier.github.io/viridisLite/,\nhttps://github.com/sjmgarnier/viridisLite/", + "BugReports": "https://github.com/sjmgarnier/viridisLite/issues/", + "RoxygenNote": "7.2.3", + "NeedsCompilation": "no", + "Packaged": "2023-05-02 21:38:46 UTC; simon", + "Author": "Simon Garnier [aut, cre],\n Noam Ross [ctb, cph],\n Bob Rudis [ctb, cph],\n Marco Sciaini [ctb, cph],\n Antônio Pedro Camargo [ctb, cph],\n Cédric Scherer [ctb, cph]", + "Repository": "RSPM", + "Date/Publication": "2023-05-02 23:50:02 UTC", + "Built": "R 4.5.0; ; 2025-04-06 04:42:10 UTC; unix" + } + }, + "vroom": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "vroom", + "Title": "Read and Write Rectangular Text Data Quickly", + "Version": "1.6.5", + "Authors@R": "c(\n person(\"Jim\", \"Hester\", role = \"aut\",\n comment = c(ORCID = \"0000-0002-2739-7082\")),\n person(\"Hadley\", \"Wickham\", , \"hadley@posit.co\", role = \"aut\",\n comment = c(ORCID = \"0000-0003-4757-117X\")),\n person(\"Jennifer\", \"Bryan\", , \"jenny@posit.co\", role = c(\"aut\", \"cre\"),\n comment = c(ORCID = \"0000-0002-6983-2759\")),\n person(\"Shelby\", \"Bearrows\", role = \"ctb\"),\n person(\"https://github.com/mandreyel/\", role = \"cph\",\n comment = \"mio library\"),\n person(\"Jukka\", \"Jylänki\", role = \"cph\",\n comment = \"grisu3 implementation\"),\n person(\"Mikkel\", \"Jørgensen\", role = \"cph\",\n comment = \"grisu3 implementation\"),\n person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\"))\n )", + "Description": "The goal of 'vroom' is to read and write data (like 'csv',\n 'tsv' and 'fwf') quickly. When reading it uses a quick initial\n indexing step, then reads the values lazily , so only the data you\n actually use needs to be read. The writer formats the data in\n parallel and writes to disk asynchronously from formatting.", + "License": "MIT + file LICENSE", + "URL": "https://vroom.r-lib.org, https://github.com/tidyverse/vroom", + "BugReports": "https://github.com/tidyverse/vroom/issues", + "Depends": "R (>= 3.6)", + "Imports": "bit64, cli (>= 3.2.0), crayon, glue, hms, lifecycle (>=\n1.0.3), methods, rlang (>= 0.4.2), stats, tibble (>= 2.0.0),\ntidyselect, tzdb (>= 0.1.1), vctrs (>= 0.2.0), withr", + "Suggests": "archive, bench (>= 1.1.0), covr, curl, dplyr, forcats, fs,\nggplot2, knitr, patchwork, prettyunits, purrr, rmarkdown,\nrstudioapi, scales, spelling, testthat (>= 2.1.0), tidyr,\nutils, waldo, xml2", + "LinkingTo": "cpp11 (>= 0.2.0), progress (>= 1.2.1), tzdb (>= 0.1.1)", + "VignetteBuilder": "knitr", + "Config/Needs/website": "nycflights13, tidyverse/tidytemplate", + "Config/testthat/edition": "3", + "Config/testthat/parallel": "false", + "Copyright": "file COPYRIGHTS", + "Encoding": "UTF-8", + "Language": "en-US", + "RoxygenNote": "7.2.3.9000", + "NeedsCompilation": "yes", + "Packaged": "2023-12-05 16:46:59 UTC; jenny", + "Author": "Jim Hester [aut] (),\n Hadley Wickham [aut] (),\n Jennifer Bryan [aut, cre] (),\n Shelby Bearrows [ctb],\n https://github.com/mandreyel/ [cph] (mio library),\n Jukka Jylänki [cph] (grisu3 implementation),\n Mikkel Jørgensen [cph] (grisu3 implementation),\n Posit Software, PBC [cph, fnd]", + "Maintainer": "Jennifer Bryan ", + "Repository": "RSPM", + "Date/Publication": "2023-12-05 23:50:02 UTC", + "Built": "R 4.5.0; x86_64-pc-linux-gnu; 2025-04-06 04:44:38 UTC; unix" + } + }, + "waldo": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "waldo", + "Title": "Find Differences Between R Objects", + "Version": "0.6.2", + "Authors@R": "c(\n person(\"Hadley\", \"Wickham\", , \"hadley@posit.co\", role = c(\"aut\", \"cre\")),\n person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\"))\n )", + "Description": "Compare complex R objects and reveal the key differences.\n Designed particularly for use in testing packages where being able to\n quickly isolate key differences makes understanding test failures much\n easier.", + "License": "MIT + file LICENSE", + "URL": "https://waldo.r-lib.org, https://github.com/r-lib/waldo", + "BugReports": "https://github.com/r-lib/waldo/issues", + "Depends": "R (>= 4.0)", + "Imports": "cli, diffobj (>= 0.3.4), glue, methods, rlang (>= 1.1.0)", + "Suggests": "bit64, R6, S7, testthat (>= 3.0.0), withr, xml2", + "Config/Needs/website": "tidyverse/tidytemplate", + "Config/testthat/edition": "3", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.2", + "NeedsCompilation": "no", + "Packaged": "2025-07-11 13:27:03 UTC; hadleywickham", + "Author": "Hadley Wickham [aut, cre],\n Posit Software, PBC [cph, fnd]", + "Maintainer": "Hadley Wickham ", + "Repository": "RSPM", + "Date/Publication": "2025-07-11 15:20:02 UTC", + "Built": "R 4.5.0; ; 2025-07-12 04:40:17 UTC; unix" + } + }, + "warp": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "warp", + "Title": "Group Dates", + "Version": "0.2.1", + "Authors@R": "c(\n person(\"Davis\", \"Vaughan\", , \"davis@posit.co\", role = c(\"aut\", \"cre\")),\n person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\"))\n )", + "Description": "Tooling to group dates by a variety of periods including:\n yearly, monthly, by second, by week of the month, and more. The\n groups are defined in such a way that they also represent the distance\n between dates in terms of the period. This extracts valuable\n information that can be used in further calculations that rely on a\n specific temporal spacing between observations.", + "License": "MIT + file LICENSE", + "URL": "https://github.com/DavisVaughan/warp,\nhttps://davisvaughan.github.io/warp/", + "BugReports": "https://github.com/DavisVaughan/warp/issues", + "Depends": "R (>= 3.2)", + "Suggests": "covr, knitr, rmarkdown, testthat (>= 3.0.0)", + "VignetteBuilder": "knitr", + "Config/Needs/website": "tidyverse/tidytemplate", + "Encoding": "UTF-8", + "RoxygenNote": "7.2.3", + "NeedsCompilation": "yes", + "Packaged": "2023-11-02 13:46:26 UTC; davis", + "Author": "Davis Vaughan [aut, cre],\n Posit Software, PBC [cph, fnd]", + "Maintainer": "Davis Vaughan ", + "Repository": "RSPM", + "Date/Publication": "2023-11-02 17:40:02 UTC", + "Built": "R 4.5.0; x86_64-pc-linux-gnu; 2025-04-09 06:43:01 UTC; unix" + } + }, + "websocket": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "websocket", + "Version": "1.4.4", + "Title": "'WebSocket' Client Library", + "Description": "Provides a 'WebSocket' client interface for R.\n 'WebSocket' is a protocol for low-overhead real-time communication:\n .", + "Authors@R": "c(\n person(\"Winston\", \"Chang\", role = c(\"aut\", \"cre\"), email = \"winston@posit.co\"),\n person(\"Joe\", \"Cheng\", role = \"aut\", email = \"joe@posit.co\"),\n person(\"Alan\", \"Dipert\", role = \"aut\"),\n person(\"Barbara\", \"Borges\", role = \"aut\"),\n person(family = \"Posit, PBC\", role = \"cph\"),\n person(\"Peter\", \"Thorson\", role = c(\"ctb\", \"cph\"), comment = \"WebSocket++ library\"),\n person(\"René\", \"Nyffenegger\", role = c(\"ctb\", \"cph\"), comment = \"Base 64 library\"),\n person(\"Micael\", \"Hildenborg\", role = c(\"ctb\", \"cph\"), comment = \"SHA1 library\"),\n person(family = \"Aladdin Enterprises\", role = \"cph\", comment = \"MD5 library\"),\n person(\"Bjoern\", \"Hoehrmann\", role = c(\"ctb\", \"cph\"), comment = \"UTF8 Validation library\"))", + "License": "GPL-2", + "Encoding": "UTF-8", + "ByteCompile": "true", + "Imports": "R6, later (>= 1.2.0)", + "LinkingTo": "cpp11, AsioHeaders, later", + "BugReports": "https://github.com/rstudio/websocket/issues", + "SystemRequirements": "GNU make, OpenSSL >= 1.0.2", + "RoxygenNote": "7.3.2", + "Suggests": "httpuv, testthat, knitr, rmarkdown", + "VignetteBuilder": "knitr", + "NeedsCompilation": "yes", + "Packaged": "2025-04-09 10:46:21 UTC; cg334", + "Author": "Winston Chang [aut, cre],\n Joe Cheng [aut],\n Alan Dipert [aut],\n Barbara Borges [aut],\n Posit, PBC [cph],\n Peter Thorson [ctb, cph] (WebSocket++ library),\n René Nyffenegger [ctb, cph] (Base 64 library),\n Micael Hildenborg [ctb, cph] (SHA1 library),\n Aladdin Enterprises [cph] (MD5 library),\n Bjoern Hoehrmann [ctb, cph] (UTF8 Validation library)", + "Maintainer": "Winston Chang ", + "Repository": "RSPM", + "Date/Publication": "2025-04-10 09:00:02 UTC", + "Built": "R 4.5.0; x86_64-pc-linux-gnu; 2025-07-03 14:38:24 UTC; unix" + } + }, + "withr": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "withr", + "Title": "Run Code 'With' Temporarily Modified Global State", + "Version": "3.0.2", + "Authors@R": "c(\n person(\"Jim\", \"Hester\", role = \"aut\"),\n person(\"Lionel\", \"Henry\", , \"lionel@posit.co\", role = c(\"aut\", \"cre\")),\n person(\"Kirill\", \"Müller\", , \"krlmlr+r@mailbox.org\", role = \"aut\"),\n person(\"Kevin\", \"Ushey\", , \"kevinushey@gmail.com\", role = \"aut\"),\n person(\"Hadley\", \"Wickham\", , \"hadley@posit.co\", role = \"aut\"),\n person(\"Winston\", \"Chang\", role = \"aut\"),\n person(\"Jennifer\", \"Bryan\", role = \"ctb\"),\n person(\"Richard\", \"Cotton\", role = \"ctb\"),\n person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\"))\n )", + "Description": "A set of functions to run code 'with' safely and temporarily\n modified global state. Many of these functions were originally a part\n of the 'devtools' package, this provides a simple package with limited\n dependencies to provide access to these functions.", + "License": "MIT + file LICENSE", + "URL": "https://withr.r-lib.org, https://github.com/r-lib/withr#readme", + "BugReports": "https://github.com/r-lib/withr/issues", + "Depends": "R (>= 3.6.0)", + "Imports": "graphics, grDevices", + "Suggests": "callr, DBI, knitr, methods, rlang, rmarkdown (>= 2.12),\nRSQLite, testthat (>= 3.0.0)", + "VignetteBuilder": "knitr", + "Config/Needs/website": "tidyverse/tidytemplate", + "Config/testthat/edition": "3", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.2", + "Collate": "'aaa.R' 'collate.R' 'connection.R' 'db.R' 'defer-exit.R'\n'standalone-defer.R' 'defer.R' 'devices.R' 'local_.R' 'with_.R'\n'dir.R' 'env.R' 'file.R' 'language.R' 'libpaths.R' 'locale.R'\n'makevars.R' 'namespace.R' 'options.R' 'par.R' 'path.R' 'rng.R'\n'seed.R' 'wrap.R' 'sink.R' 'tempfile.R' 'timezone.R'\n'torture.R' 'utils.R' 'with.R'", + "NeedsCompilation": "no", + "Packaged": "2024-10-28 10:58:18 UTC; lionel", + "Author": "Jim Hester [aut],\n Lionel Henry [aut, cre],\n Kirill Müller [aut],\n Kevin Ushey [aut],\n Hadley Wickham [aut],\n Winston Chang [aut],\n Jennifer Bryan [ctb],\n Richard Cotton [ctb],\n Posit Software, PBC [cph, fnd]", + "Maintainer": "Lionel Henry ", + "Repository": "RSPM", + "Date/Publication": "2024-10-28 13:30:02 UTC", + "Built": "R 4.5.0; ; 2025-04-06 04:42:10 UTC; unix" + } + }, + "xfun": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "xfun", + "Type": "Package", + "Title": "Supporting Functions for Packages Maintained by 'Yihui Xie'", + "Version": "0.52", + "Authors@R": "c(\n person(\"Yihui\", \"Xie\", role = c(\"aut\", \"cre\", \"cph\"), email = \"xie@yihui.name\", comment = c(ORCID = \"0000-0003-0645-5666\", URL = \"https://yihui.org\")),\n person(\"Wush\", \"Wu\", role = \"ctb\"),\n person(\"Daijiang\", \"Li\", role = \"ctb\"),\n person(\"Xianying\", \"Tan\", role = \"ctb\"),\n person(\"Salim\", \"Brüggemann\", role = \"ctb\", email = \"salim-b@pm.me\", comment = c(ORCID = \"0000-0002-5329-5987\")),\n person(\"Christophe\", \"Dervieux\", role = \"ctb\"),\n person()\n )", + "Description": "Miscellaneous functions commonly used in other packages maintained by 'Yihui Xie'.", + "Depends": "R (>= 3.2.0)", + "Imports": "grDevices, stats, tools", + "Suggests": "testit, parallel, codetools, methods, rstudioapi, tinytex (>=\n0.30), mime, litedown (>= 0.4), commonmark, knitr (>= 1.50),\nremotes, pak, curl, xml2, jsonlite, magick, yaml, qs", + "License": "MIT + file LICENSE", + "URL": "https://github.com/yihui/xfun", + "BugReports": "https://github.com/yihui/xfun/issues", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.2", + "VignetteBuilder": "litedown", + "NeedsCompilation": "yes", + "Packaged": "2025-04-02 19:53:53 UTC; runner", + "Author": "Yihui Xie [aut, cre, cph] (,\n https://yihui.org),\n Wush Wu [ctb],\n Daijiang Li [ctb],\n Xianying Tan [ctb],\n Salim Brüggemann [ctb] (),\n Christophe Dervieux [ctb]", + "Maintainer": "Yihui Xie ", + "Repository": "RSPM", + "Date/Publication": "2025-04-02 20:40:02 UTC", + "Built": "R 4.5.0; x86_64-pc-linux-gnu; 2025-04-06 04:42:12 UTC; unix" + } + }, + "xml2": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "xml2", + "Title": "Parse XML", + "Version": "1.3.8", + "Authors@R": "c(\n person(\"Hadley\", \"Wickham\", role = \"aut\"),\n person(\"Jim\", \"Hester\", role = \"aut\"),\n person(\"Jeroen\", \"Ooms\", email = \"jeroenooms@gmail.com\", role = c(\"aut\", \"cre\")),\n person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\")),\n person(\"R Foundation\", role = \"ctb\",\n comment = \"Copy of R-project homepage cached as example\")\n )", + "Description": "Bindings to 'libxml2' for working with XML data using a simple, \n consistent interface based on 'XPath' expressions. Also supports XML schema\n validation; for 'XSLT' transformations see the 'xslt' package.", + "License": "MIT + file LICENSE", + "URL": "https://xml2.r-lib.org, https://r-lib.r-universe.dev/xml2", + "BugReports": "https://github.com/r-lib/xml2/issues", + "Depends": "R (>= 3.6.0)", + "Imports": "cli, methods, rlang (>= 1.1.0)", + "Suggests": "covr, curl, httr, knitr, magrittr, mockery, rmarkdown,\ntestthat (>= 3.2.0), xslt", + "VignetteBuilder": "knitr", + "Config/Needs/website": "tidyverse/tidytemplate", + "Encoding": "UTF-8", + "RoxygenNote": "7.2.3", + "SystemRequirements": "libxml2: libxml2-dev (deb), libxml2-devel (rpm)", + "Collate": "'S4.R' 'as_list.R' 'xml_parse.R' 'as_xml_document.R'\n'classes.R' 'format.R' 'import-standalone-obj-type.R'\n'import-standalone-purrr.R' 'import-standalone-types-check.R'\n'init.R' 'nodeset_apply.R' 'paths.R' 'utils.R' 'xml2-package.R'\n'xml_attr.R' 'xml_children.R' 'xml_document.R' 'xml_find.R'\n'xml_missing.R' 'xml_modify.R' 'xml_name.R' 'xml_namespaces.R'\n'xml_node.R' 'xml_nodeset.R' 'xml_path.R' 'xml_schema.R'\n'xml_serialize.R' 'xml_structure.R' 'xml_text.R' 'xml_type.R'\n'xml_url.R' 'xml_write.R' 'zzz.R'", + "Config/testthat/edition": "3", + "NeedsCompilation": "yes", + "Packaged": "2025-03-14 14:37:00 UTC; jeroen", + "Author": "Hadley Wickham [aut],\n Jim Hester [aut],\n Jeroen Ooms [aut, cre],\n Posit Software, PBC [cph, fnd],\n R Foundation [ctb] (Copy of R-project homepage cached as example)", + "Maintainer": "Jeroen Ooms ", + "Repository": "RSPM", + "Date/Publication": "2025-03-14 19:30:02 UTC", + "Built": "R 4.5.0; x86_64-pc-linux-gnu; 2025-04-06 04:42:58 UTC; unix" + } + }, + "xmlparsedata": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "xmlparsedata", + "Title": "Parse Data of 'R' Code as an 'XML' Tree", + "Version": "1.0.5", + "Author": "Gábor Csárdi", + "Maintainer": "Gábor Csárdi ", + "Description": "Convert the output of 'utils::getParseData()' to an 'XML'\n tree, that one can search via 'XPath', and easier to manipulate in\n general.", + "License": "MIT + file LICENSE", + "LazyData": "true", + "URL": "https://github.com/r-lib/xmlparsedata#readme", + "BugReports": "https://github.com/r-lib/xmlparsedata/issues", + "RoxygenNote": "6.0.1", + "Suggests": "covr, testthat, xml2", + "Depends": "R (>= 3.0.0)", + "Encoding": "UTF-8", + "NeedsCompilation": "no", + "Packaged": "2021-03-06 10:52:40 UTC; gaborcsardi", + "Repository": "RSPM", + "Date/Publication": "2021-03-06 11:10:02 UTC", + "Built": "R 4.5.0; ; 2025-04-09 06:28:28 UTC; unix" + } + }, + "xtable": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "xtable", + "Version": "1.8-4", + "Date": "2019-04-08", + "Title": "Export Tables to LaTeX or HTML", + "Authors@R": "c(person(\"David B.\", \"Dahl\", role=\"aut\"),\n person(\"David\", \"Scott\", role=c(\"aut\",\"cre\"),\n email=\"d.scott@auckland.ac.nz\"),\n person(\"Charles\", \"Roosen\", role=\"aut\"),\n person(\"Arni\", \"Magnusson\", role=\"aut\"),\n person(\"Jonathan\", \"Swinton\", role=\"aut\"),\n person(\"Ajay\", \"Shah\", role=\"ctb\"),\n person(\"Arne\", \"Henningsen\", role=\"ctb\"),\n person(\"Benno\", \"Puetz\", role=\"ctb\"),\n person(\"Bernhard\", \"Pfaff\", role=\"ctb\"),\n person(\"Claudio\", \"Agostinelli\", role=\"ctb\"),\n person(\"Claudius\", \"Loehnert\", role=\"ctb\"),\n person(\"David\", \"Mitchell\", role=\"ctb\"),\n person(\"David\", \"Whiting\", role=\"ctb\"),\n person(\"Fernando da\", \"Rosa\", role=\"ctb\"),\n person(\"Guido\", \"Gay\", role=\"ctb\"),\n person(\"Guido\", \"Schulz\", role=\"ctb\"),\n person(\"Ian\", \"Fellows\", role=\"ctb\"),\n person(\"Jeff\", \"Laake\", role=\"ctb\"),\n person(\"John\", \"Walker\", role=\"ctb\"),\n person(\"Jun\", \"Yan\", role=\"ctb\"),\n person(\"Liviu\", \"Andronic\", role=\"ctb\"),\n person(\"Markus\", \"Loecher\", role=\"ctb\"),\n person(\"Martin\", \"Gubri\", role=\"ctb\"),\n person(\"Matthieu\", \"Stigler\", role=\"ctb\"),\n person(\"Robert\", \"Castelo\", role=\"ctb\"),\n person(\"Seth\", \"Falcon\", role=\"ctb\"),\n person(\"Stefan\", \"Edwards\", role=\"ctb\"),\n person(\"Sven\", \"Garbade\", role=\"ctb\"),\n person(\"Uwe\", \"Ligges\", role=\"ctb\"))", + "Maintainer": "David Scott ", + "Imports": "stats, utils", + "Suggests": "knitr, plm, zoo, survival", + "VignetteBuilder": "knitr", + "Description": "Coerce data to LaTeX and HTML tables.", + "URL": "http://xtable.r-forge.r-project.org/", + "Depends": "R (>= 2.10.0)", + "License": "GPL (>= 2)", + "Repository": "RSPM", + "NeedsCompilation": "no", + "Packaged": "2019-04-21 10:56:51 UTC; dsco036", + "Author": "David B. Dahl [aut],\n David Scott [aut, cre],\n Charles Roosen [aut],\n Arni Magnusson [aut],\n Jonathan Swinton [aut],\n Ajay Shah [ctb],\n Arne Henningsen [ctb],\n Benno Puetz [ctb],\n Bernhard Pfaff [ctb],\n Claudio Agostinelli [ctb],\n Claudius Loehnert [ctb],\n David Mitchell [ctb],\n David Whiting [ctb],\n Fernando da Rosa [ctb],\n Guido Gay [ctb],\n Guido Schulz [ctb],\n Ian Fellows [ctb],\n Jeff Laake [ctb],\n John Walker [ctb],\n Jun Yan [ctb],\n Liviu Andronic [ctb],\n Markus Loecher [ctb],\n Martin Gubri [ctb],\n Matthieu Stigler [ctb],\n Robert Castelo [ctb],\n Seth Falcon [ctb],\n Stefan Edwards [ctb],\n Sven Garbade [ctb],\n Uwe Ligges [ctb]", + "Date/Publication": "2019-04-21 12:20:03 UTC", + "Encoding": "UTF-8", + "Built": "R 4.5.0; ; 2025-04-06 04:42:13 UTC; unix" + } + }, + "xts": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "xts", + "Type": "Package", + "Title": "eXtensible Time Series", + "Version": "0.14.1", + "Authors@R": "c(\n person(given=c(\"Jeffrey\",\"A.\"), family=\"Ryan\", role=c(\"aut\",\"cph\")),\n person(given=c(\"Joshua\",\"M.\"), family=\"Ulrich\", role=c(\"cre\",\"aut\"), email=\"josh.m.ulrich@gmail.com\"),\n person(given=\"Ross\", family=\"Bennett\", role=\"ctb\"),\n person(given=\"Corwin\", family=\"Joy\", role=\"ctb\")\n )", + "Depends": "R (>= 3.6.0), zoo (>= 1.7-12)", + "Imports": "methods", + "LinkingTo": "zoo", + "Suggests": "timeSeries, timeDate, tseries, chron, tinytest", + "LazyLoad": "yes", + "Description": "Provide for uniform handling of R's different time-based data classes by extending zoo, maximizing native format information preservation and allowing for user level customization and extension, while simplifying cross-class interoperability.", + "License": "GPL (>= 2)", + "URL": "https://joshuaulrich.github.io/xts/,\nhttps://github.com/joshuaulrich/xts", + "BugReports": "https://github.com/joshuaulrich/xts/issues", + "Encoding": "UTF-8", + "NeedsCompilation": "yes", + "Packaged": "2024-10-15 15:25:09 UTC; josh", + "Author": "Jeffrey A. Ryan [aut, cph],\n Joshua M. Ulrich [cre, aut],\n Ross Bennett [ctb],\n Corwin Joy [ctb]", + "Maintainer": "Joshua M. Ulrich ", + "Repository": "RSPM", + "Date/Publication": "2024-10-15 17:30:02 UTC", + "Built": "R 4.5.0; x86_64-pc-linux-gnu; 2025-04-11 19:14:08 UTC; unix" + } + }, + "yaml": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "yaml", + "Type": "Package", + "Title": "Methods to Convert R Data to YAML and Back", + "Date": "2024-07-22", + "Version": "2.3.10", + "Suggests": "RUnit", + "Author": "Shawn P Garbett [aut], Jeremy Stephens [aut, cre], Kirill Simonov [aut], Yihui Xie [ctb],\n Zhuoer Dong [ctb], Hadley Wickham [ctb], Jeffrey Horner [ctb], reikoch [ctb],\n Will Beasley [ctb], Brendan O'Connor [ctb], Gregory R. Warnes [ctb],\n Michael Quinn [ctb], Zhian N. Kamvar [ctb], Charlie Gao [ctb]", + "Maintainer": "Shawn Garbett ", + "License": "BSD_3_clause + file LICENSE", + "Description": "Implements the 'libyaml' 'YAML' 1.1 parser and emitter\n () for R.", + "URL": "https://github.com/vubiostat/r-yaml/", + "BugReports": "https://github.com/vubiostat/r-yaml/issues", + "NeedsCompilation": "yes", + "Packaged": "2024-07-22 15:44:18 UTC; garbetsp", + "Repository": "RSPM", + "Date/Publication": "2024-07-26 15:10:02 UTC", + "Encoding": "UTF-8", + "Built": "R 4.5.0; x86_64-pc-linux-gnu; 2025-04-06 04:42:14 UTC; unix" + } + }, + "zip": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "zip", + "Title": "Cross-Platform 'zip' Compression", + "Version": "2.3.3", + "Authors@R": "c(\n person(\"Gábor\", \"Csárdi\", , \"csardi.gabor@gmail.com\", role = c(\"aut\", \"cre\")),\n person(\"Kuba\", \"Podgórski\", role = \"ctb\"),\n person(\"Rich\", \"Geldreich\", role = \"ctb\"),\n person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\"),\n comment = c(ROR = \"03wc8by49\"))\n )", + "Description": "Cross-Platform 'zip' Compression Library. A replacement for\n the 'zip' function, that does not require any additional external\n tools on any platform.", + "License": "MIT + file LICENSE", + "URL": "https://github.com/r-lib/zip, https://r-lib.github.io/zip/", + "BugReports": "https://github.com/r-lib/zip/issues", + "Suggests": "covr, pillar, processx, R6, testthat, withr", + "Config/Needs/website": "tidyverse/tidytemplate", + "Config/testthat/edition": "3", + "Config/usethis/last-upkeep": "2025-05-07", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.2.9000", + "NeedsCompilation": "yes", + "Packaged": "2025-05-13 13:31:44 UTC; gaborcsardi", + "Author": "Gábor Csárdi [aut, cre],\n Kuba Podgórski [ctb],\n Rich Geldreich [ctb],\n Posit Software, PBC [cph, fnd] (ROR: )", + "Maintainer": "Gábor Csárdi ", + "Repository": "RSPM", + "Date/Publication": "2025-05-13 14:10:02 UTC", + "Built": "R 4.5.0; x86_64-pc-linux-gnu; 2025-05-14 05:26:56 UTC; unix" + } + }, + "zoo": { + "Source": "CRAN", + "Repository": "https://packagemanager.posit.co/cran/latest", + "description": { + "Package": "zoo", + "Version": "1.8-14", + "Date": "2025-04-09", + "Title": "S3 Infrastructure for Regular and Irregular Time Series (Z's\nOrdered Observations)", + "Authors@R": "c(person(given = \"Achim\", family = \"Zeileis\", role = c(\"aut\", \"cre\"), email = \"Achim.Zeileis@R-project.org\",\n comment = c(ORCID = \"0000-0003-0918-3766\")),\n person(given = \"Gabor\", family = \"Grothendieck\", role = \"aut\", email = \"ggrothendieck@gmail.com\"),\n person(given = c(\"Jeffrey\", \"A.\"), family = \"Ryan\", role = \"aut\", email = \"jeff.a.ryan@gmail.com\"),\n person(given = c(\"Joshua\", \"M.\"), family = \"Ulrich\", role = \"ctb\", email = \"josh.m.ulrich@gmail.com\"),\n person(given = \"Felix\", family = \"Andrews\", role = \"ctb\", email = \"felix@nfrac.org\"))", + "Description": "An S3 class with methods for totally ordered indexed\n observations. It is particularly aimed at irregular time series\n of numeric vectors/matrices and factors. zoo's key design goals\n are independence of a particular index/date/time class and\n consistency with ts and base R by providing methods to extend\n standard generics.", + "Depends": "R (>= 3.1.0), stats", + "Suggests": "AER, coda, chron, ggplot2 (>= 3.5.0), mondate, scales,\nstinepack, strucchange, timeDate, timeSeries, tinyplot, tis,\ntseries, xts", + "Imports": "utils, graphics, grDevices, lattice (>= 0.20-27)", + "License": "GPL-2 | GPL-3", + "URL": "https://zoo.R-Forge.R-project.org/", + "NeedsCompilation": "yes", + "Packaged": "2025-04-09 16:51:51 UTC; zeileis", + "Author": "Achim Zeileis [aut, cre] (),\n Gabor Grothendieck [aut],\n Jeffrey A. Ryan [aut],\n Joshua M. Ulrich [ctb],\n Felix Andrews [ctb]", + "Maintainer": "Achim Zeileis ", + "Repository": "RSPM", + "Date/Publication": "2025-04-10 06:40:02 UTC", + "Encoding": "UTF-8", + "Built": "R 4.5.0; x86_64-pc-linux-gnu; 2025-04-11 19:13:49 UTC; unix" + } + } + }, + "files": { + "_brand.yml": { + "checksum": "fb30c80ac12ab9f012fe104f371b4725" + }, + ".Rprofile": { + "checksum": "f3a0350397830e42e67166706cd121e5" + }, + "app.R": { + "checksum": "d4103b4dcc8bebfefd99294ba6125f11" + }, + "app/constants/filter_users.yml": { + "checksum": "72bb5d2d41510ad5b64bb2e3782958bd" + }, + "app/logic/__init__.R": { + "checksum": "fc31f56f5159ebec4d48b75df266087e" + }, + "app/logic/aggregation.R": { + "checksum": "ef6c065f0a0d0d317f83214d8ea4b6dd" + }, + "app/logic/charts.R": { + "checksum": "20453c65c0d1d3a2128743ec0388c8f0" + }, + "app/logic/config_settings.R": { + "checksum": "1eff749b1b258c1a2a0652eea270203d" + }, + "app/logic/data_utils.R": { + "checksum": "635bbc125bca53c54f68a434b03a327b" + }, + "app/logic/duration_utils.R": { + "checksum": "9f37b410baf89a47497678574bb9bfe4" + }, + "app/logic/ui_utils.R": { + "checksum": "e73947f75ea65817f4f0eb14b0be4d99" + }, + "app/logic/utils.R": { + "checksum": "1ed9f6470432585e9161250aa0d0be5b" + }, + "app/main.R": { + "checksum": "6717e932a5bca273321e8befd04c020a" + }, + "app/metrics_theme_template.json": { + "checksum": "739a6abf73b5bae26e415f0713215c78" + }, + "app/metrics_theme.json": { + "checksum": "8d5e45f80668c8426c9a225e1b7b69f3" + }, + "app/static/css/app.min.css": { + "checksum": "210db4c2bcb776001e2eed278e325dc9" + }, + "app/static/favicon.ico": { + "checksum": "e72bfa8bd3d984fc2828c1303e165766" + }, + "app/static/images/appsilon-logo.png": { + "checksum": "60839e4d81e577cb2dafb647f410dd8e" + }, + "app/static/images/rhino.png": { + "checksum": "fab8acd0eeb2e68c3509a0ddee752b23" + }, + "app/static/js/app.min.js": { + "checksum": "41f146dae174df1670e407e3eb18becc" + }, + "app/styles/components/_about.scss": { + "checksum": "9cadd5001db169e623f8337e9ee26eb5" + }, + "app/styles/components/_content.scss": { + "checksum": "8dea0a7c7c3434f50cfdbacad50804b1" + }, + "app/styles/components/_footer.scss": { + "checksum": "59eb14c77c03a5e2fcf515cb66d91df5" + }, + "app/styles/components/_navbar.scss": { + "checksum": "bd85f1c4fc6f29aedd1b679bf90b8662" + }, + "app/styles/components/_session_duration.scss": { + "checksum": "38efc6886ad03044d96d73a6be52e931" + }, + "app/styles/components/_sidebar.scss": { + "checksum": "091b480049d6e27629e17e6410a22f2c" + }, + "app/styles/components/_table.scss": { + "checksum": "f539c0ceb1a8365b4f47ee0c7e5caab2" + }, + "app/styles/main.scss": { + "checksum": "316612905a5a0304b530fc15fe3b2401" + }, + "app/styles/utilities/_base.scss": { + "checksum": "dc18e1ebd2e5439531c0d6b21db8d74b" + }, + "app/styles/utilities/_variables.scss": { + "checksum": "218ca669e7f0cd2f44c34511cf4e5523" + }, + "app/view/__init__.R": { + "checksum": "540e8404d0bf10a8237595023d99f5bb" + }, + "app/view/about_section.R": { + "checksum": "07ff68561bcff17a1b58e8a1a8128659" + }, + "app/view/footer.R": { + "checksum": "18353d22eca20424352f6629b48898e2" + }, + "app/view/navbar_section.R": { + "checksum": "2f208ca286eac3d19dc374874ac383f5" + }, + "app/view/session_duration.R": { + "checksum": "3f1621b79db6ef1d49acaa5e7ed7876e" + }, + "app/view/table.R": { + "checksum": "6bea8aa7e6a3dd7c422da0b5d9ae6d54" + }, + "app/view/ui_components.R": { + "checksum": "0fd0f04aad252bbc6e0f437e008fb740" + }, + "config.yml": { + "checksum": "7d6d59a6622045a60df01881177ea207" + }, + "CONTRIBUTE.md": { + "checksum": "2d8e446a69c77281bc99044135bb0648" + }, + "README.md": { + "checksum": "cad74b4da927ed3b78986036b487c7d8" + }, + "renv.lock": { + "checksum": "ea78d481ae93e24b04e1f14a54c683af" + }, + "rhino.yml": { + "checksum": "4f8295c6437069d07ae84698aca26c76" + } + }, + "users": null, + "extension": { + "name": "connect-user-metrics", + "title": "Connect User Metrics", + "description": "Dashboard for presenting the adoption data for the content deployed on Posit Connect, created by Appsilon.", + "homepage": "https://github.com/posit-dev/connect-extensions/tree/main/extensions/connect-user-metrics", + "category": "extension", + "tags": [], + "minimumConnectVersion": "2025.04.0", + "version": "1.0.0" + } +} diff --git a/extensions/connect-user-metrics/renv.lock b/extensions/connect-user-metrics/renv.lock new file mode 100644 index 00000000..1bb45622 --- /dev/null +++ b/extensions/connect-user-metrics/renv.lock @@ -0,0 +1,6851 @@ +{ + "R": { + "Version": "4.3.1", + "Repositories": [ + { + "Name": "CRAN", + "URL": "https://packagemanager.posit.co/cran/latest" + } + ] + }, + "Packages": { + "AsioHeaders": { + "Package": "AsioHeaders", + "Version": "1.30.2-1", + "Source": "Repository", + "Type": "Package", + "Title": "'Asio' C++ Header Files", + "Date": "2025-04-15", + "Authors@R": "c(person(\"Dirk\", \"Eddelbuettel\", role = c(\"aut\", \"cre\"), email = \"edd@debian.org\", comment = c(ORCID = \"0000-0001-6419-907X\")), person(\"Christopher M.\", \"Kohlhoff\", role = \"aut\", comment = \"Author of Asio\"))", + "Description": "'Asio' is a cross-platform C++ library for network and low-level I/O programming that provides developers with a consistent asynchronous model using a modern C++ approach. It is also included in Boost but requires linking when used with Boost. Standalone it can be used header-only (provided a recent compiler). 'Asio' is written and maintained by Christopher M. Kohlhoff, and released under the 'Boost Software License', Version 1.0.", + "Copyright": "file inst/COPYRIGHTS", + "License": "BSL-1.0", + "URL": "https://github.com/eddelbuettel/asioheaders, https://dirk.eddelbuettel.com/code/asioheaders.html", + "BugReports": "https://github.com/eddelbuettel/asioheaders/issues", + "NeedsCompilation": "no", + "Author": "Dirk Eddelbuettel [aut, cre] (), Christopher M. Kohlhoff [aut] (Author of Asio)", + "Maintainer": "Dirk Eddelbuettel ", + "Repository": "CRAN", + "Encoding": "UTF-8" + }, + "BH": { + "Package": "BH", + "Version": "1.87.0-1", + "Source": "Repository", + "Type": "Package", + "Title": "Boost C++ Header Files", + "Date": "2024-12-17", + "Authors@R": "c(person(\"Dirk\", \"Eddelbuettel\", role = c(\"aut\", \"cre\"), email = \"edd@debian.org\", comment = c(ORCID = \"0000-0001-6419-907X\")), person(\"John W.\", \"Emerson\", role = \"aut\"), person(\"Michael J.\", \"Kane\", role = \"aut\", comment = c(ORCID = \"0000-0003-1899-6662\")))", + "Description": "Boost provides free peer-reviewed portable C++ source libraries. A large part of Boost is provided as C++ template code which is resolved entirely at compile-time without linking. This package aims to provide the most useful subset of Boost libraries for template use among CRAN packages. By placing these libraries in this package, we offer a more efficient distribution system for CRAN as replication of this code in the sources of other packages is avoided. As of release 1.84.0-0, the following Boost libraries are included: 'accumulators' 'algorithm' 'align' 'any' 'atomic' 'beast' 'bimap' 'bind' 'circular_buffer' 'compute' 'concept' 'config' 'container' 'date_time' 'detail' 'dynamic_bitset' 'exception' 'flyweight' 'foreach' 'functional' 'fusion' 'geometry' 'graph' 'heap' 'icl' 'integer' 'interprocess' 'intrusive' 'io' 'iostreams' 'iterator' 'lambda2' 'math' 'move' 'mp11' 'mpl' 'multiprecision' 'numeric' 'pending' 'phoenix' 'polygon' 'preprocessor' 'process' 'propery_tree' 'qvm' 'random' 'range' 'scope_exit' 'smart_ptr' 'sort' 'spirit' 'tuple' 'type_traits' 'typeof' 'unordered' 'url' 'utility' 'uuid'.", + "License": "BSL-1.0", + "URL": "https://github.com/eddelbuettel/bh, https://dirk.eddelbuettel.com/code/bh.html", + "BugReports": "https://github.com/eddelbuettel/bh/issues", + "NeedsCompilation": "no", + "Author": "Dirk Eddelbuettel [aut, cre] (), John W. Emerson [aut], Michael J. Kane [aut] ()", + "Maintainer": "Dirk Eddelbuettel ", + "Repository": "RSPM", + "Encoding": "UTF-8" + }, + "KernSmooth": { + "Package": "KernSmooth", + "Version": "2.23-21", + "Source": "Repository", + "Priority": "recommended", + "Date": "2023-05-03", + "Title": "Functions for Kernel Smoothing Supporting Wand & Jones (1995)", + "Authors@R": "c(person(\"Matt\", \"Wand\", role = \"aut\", email = \"Matt.Wand@uts.edu.au\"), person(\"Cleve\", \"Moler\", role = \"ctb\", comment = \"LINPACK routines in src/d*\"), person(\"Brian\", \"Ripley\", role = c(\"trl\", \"cre\", \"ctb\"), email = \"ripley@stats.ox.ac.uk\", comment = \"R port and updates\"))", + "Note": "Maintainers are not available to give advice on using a package they did not author.", + "Depends": [ + "R (>= 2.5.0)", + "stats" + ], + "Suggests": [ + "MASS", + "carData" + ], + "Description": "Functions for kernel smoothing (and density estimation) corresponding to the book: Wand, M.P. and Jones, M.C. (1995) \"Kernel Smoothing\".", + "License": "Unlimited", + "ByteCompile": "yes", + "NeedsCompilation": "yes", + "Author": "Matt Wand [aut], Cleve Moler [ctb] (LINPACK routines in src/d*), Brian Ripley [trl, cre, ctb] (R port and updates)", + "Maintainer": "Brian Ripley ", + "Repository": "CRAN" + }, + "MASS": { + "Package": "MASS", + "Version": "7.3-60", + "Source": "Repository", + "Priority": "recommended", + "Date": "2023-05-02", + "Revision": "$Rev: 3621 $", + "Depends": [ + "R (>= 4.0)", + "grDevices", + "graphics", + "stats", + "utils" + ], + "Imports": [ + "methods" + ], + "Suggests": [ + "lattice", + "nlme", + "nnet", + "survival" + ], + "Authors@R": "c(person(\"Brian\", \"Ripley\", role = c(\"aut\", \"cre\", \"cph\"), email = \"ripley@stats.ox.ac.uk\"), person(\"Bill\", \"Venables\", role = \"ctb\"), person(c(\"Douglas\", \"M.\"), \"Bates\", role = \"ctb\"), person(\"Kurt\", \"Hornik\", role = \"trl\", comment = \"partial port ca 1998\"), person(\"Albrecht\", \"Gebhardt\", role = \"trl\", comment = \"partial port ca 1998\"), person(\"David\", \"Firth\", role = \"ctb\"))", + "Description": "Functions and datasets to support Venables and Ripley, \"Modern Applied Statistics with S\" (4th edition, 2002).", + "Title": "Support Functions and Datasets for Venables and Ripley's MASS", + "LazyData": "yes", + "ByteCompile": "yes", + "License": "GPL-2 | GPL-3", + "URL": "http://www.stats.ox.ac.uk/pub/MASS4/", + "Contact": "", + "NeedsCompilation": "yes", + "Author": "Brian Ripley [aut, cre, cph], Bill Venables [ctb], Douglas M. Bates [ctb], Kurt Hornik [trl] (partial port ca 1998), Albrecht Gebhardt [trl] (partial port ca 1998), David Firth [ctb]", + "Maintainer": "Brian Ripley ", + "Repository": "CRAN" + }, + "Matrix": { + "Package": "Matrix", + "Version": "1.5-4.1", + "Source": "Repository", + "Date": "2023-05-16", + "Priority": "recommended", + "Title": "Sparse and Dense Matrix Classes and Methods", + "Description": "A rich hierarchy of sparse and dense matrix classes, including general, triangular, symmetric, and diagonal matrices with numeric, logical, or pattern entries. Efficient methods for operating on such matrices, often wrapping the 'BLAS', 'LAPACK', and 'SuiteSparse' libraries.", + "License": "GPL (>= 2) | file LICENCE", + "URL": "https://Matrix.R-forge.R-project.org", + "BugReports": "https://R-forge.R-project.org/tracker/?atid=294&group_id=61", + "Contact": "Matrix-authors@R-project.org", + "Authors@R": "c(person(\"Douglas\", \"Bates\", role = \"aut\", comment = c(ORCID = \"0000-0001-8316-9503\")) , person(\"Martin\", \"Maechler\", role = c(\"aut\", \"cre\"), email = \"mmaechler+Matrix@gmail.com\", comment = c(ORCID = \"0000-0002-8685-9910\")) , person(\"Mikael\", \"Jagan\", role = \"aut\", comment = c(ORCID = \"0000-0002-3542-2938\")) , person(\"Timothy A.\", \"Davis\", role = \"ctb\", comment = c(ORCID = \"0000-0001-7614-6899\", \"SuiteSparse libraries, notably CHOLMOD and AMD\", \"collaborators listed in dir(pattern=\\\"^[A-Z]+[.]txt$\\\", full.names=TRUE, system.file(\\\"doc\\\", \\\"SuiteSparse\\\", package=\\\"Matrix\\\"))\")) , person(\"Jens\", \"Oehlschlägel\", role = \"ctb\", comment = \"initial nearPD()\") , person(\"Jason\", \"Riedy\", role = \"ctb\", comment = c(ORCID = \"0000-0002-4345-4200\", \"GNU Octave's condest() and onenormest()\", \"Copyright: Regents of the University of California\")) , person(\"R Core Team\", role = \"ctb\", comment = \"base R's matrix implementation\"))", + "Depends": [ + "R (>= 3.5.0)", + "methods" + ], + "Imports": [ + "graphics", + "grid", + "lattice", + "stats", + "utils" + ], + "Suggests": [ + "MASS", + "expm" + ], + "Enhances": [ + "MatrixModels", + "SparseM", + "graph", + "igraph", + "maptools", + "sfsmisc", + "sp", + "spdep" + ], + "EnhancesNote": "igraph, maptools, sp, spdep for Rd xrefs", + "LazyData": "no", + "LazyDataNote": "not possible, since we use data/*.R and our S4 classes", + "BuildResaveData": "no", + "Encoding": "UTF-8", + "NeedsCompilation": "yes", + "Author": "Douglas Bates [aut] (), Martin Maechler [aut, cre] (), Mikael Jagan [aut] (), Timothy A. Davis [ctb] (, SuiteSparse libraries, notably CHOLMOD and AMD, collaborators listed in dir(pattern=\"^[A-Z]+[.]txt$\", full.names=TRUE, system.file(\"doc\", \"SuiteSparse\", package=\"Matrix\"))), Jens Oehlschlägel [ctb] (initial nearPD()), Jason Riedy [ctb] (, GNU Octave's condest() and onenormest(), Copyright: Regents of the University of California), R Core Team [ctb] (base R's matrix implementation)", + "Maintainer": "Martin Maechler ", + "Repository": "CRAN" + }, + "R.cache": { + "Package": "R.cache", + "Version": "0.17.0", + "Source": "Repository", + "Depends": [ + "R (>= 2.14.0)" + ], + "Imports": [ + "utils", + "R.methodsS3 (>= 1.8.1)", + "R.oo (>= 1.24.0)", + "R.utils (>= 2.10.1)", + "digest (>= 0.6.13)" + ], + "Title": "Fast and Light-Weight Caching (Memoization) of Objects and Results to Speed Up Computations", + "Authors@R": "c(person(\"Henrik\", \"Bengtsson\", role=c(\"aut\", \"cre\", \"cph\"), email = \"henrikb@braju.com\"))", + "Author": "Henrik Bengtsson [aut, cre, cph]", + "Maintainer": "Henrik Bengtsson ", + "Description": "Memoization can be used to speed up repetitive and computational expensive function calls. The first time a function that implements memoization is called the results are stored in a cache memory. The next time the function is called with the same set of parameters, the results are momentarily retrieved from the cache avoiding repeating the calculations. With this package, any R object can be cached in a key-value storage where the key can be an arbitrary set of R objects. The cache memory is persistent (on the file system).", + "License": "LGPL (>= 2.1)", + "LazyLoad": "TRUE", + "URL": "https://github.com/HenrikBengtsson/R.cache", + "BugReports": "https://github.com/HenrikBengtsson/R.cache/issues", + "Encoding": "UTF-8", + "NeedsCompilation": "no", + "Repository": "https://p3m.dev/cran/latest" + }, + "R.methodsS3": { + "Package": "R.methodsS3", + "Version": "1.8.2", + "Source": "Repository", + "Depends": [ + "R (>= 2.13.0)" + ], + "Imports": [ + "utils" + ], + "Suggests": [ + "codetools" + ], + "Title": "S3 Methods Simplified", + "Authors@R": "c(person(\"Henrik\", \"Bengtsson\", role=c(\"aut\", \"cre\", \"cph\"), email = \"henrikb@braju.com\"))", + "Author": "Henrik Bengtsson [aut, cre, cph]", + "Maintainer": "Henrik Bengtsson ", + "Description": "Methods that simplify the setup of S3 generic functions and S3 methods. Major effort has been made in making definition of methods as simple as possible with a minimum of maintenance for package developers. For example, generic functions are created automatically, if missing, and naming conflict are automatically solved, if possible. The method setMethodS3() is a good start for those who in the future may want to migrate to S4. This is a cross-platform package implemented in pure R that generates standard S3 methods.", + "License": "LGPL (>= 2.1)", + "LazyLoad": "TRUE", + "URL": "https://github.com/HenrikBengtsson/R.methodsS3", + "BugReports": "https://github.com/HenrikBengtsson/R.methodsS3/issues", + "NeedsCompilation": "no", + "Repository": "RSPM", + "Encoding": "UTF-8" + }, + "R.oo": { + "Package": "R.oo", + "Version": "1.27.1", + "Source": "Repository", + "Depends": [ + "R (>= 2.13.0)", + "R.methodsS3 (>= 1.8.2)" + ], + "Imports": [ + "methods", + "utils" + ], + "Suggests": [ + "tools" + ], + "Title": "R Object-Oriented Programming with or without References", + "Authors@R": "c(person(\"Henrik\", \"Bengtsson\", role=c(\"aut\", \"cre\", \"cph\"), email = \"henrikb@braju.com\"))", + "Author": "Henrik Bengtsson [aut, cre, cph]", + "Maintainer": "Henrik Bengtsson ", + "Description": "Methods and classes for object-oriented programming in R with or without references. Large effort has been made on making definition of methods as simple as possible with a minimum of maintenance for package developers. The package has been developed since 2001 and is now considered very stable. This is a cross-platform package implemented in pure R that defines standard S3 classes without any tricks.", + "License": "LGPL (>= 2.1)", + "LazyLoad": "TRUE", + "URL": "https://henrikbengtsson.github.io/R.oo/, https://github.com/HenrikBengtsson/R.oo", + "BugReports": "https://github.com/HenrikBengtsson/R.oo/issues", + "NeedsCompilation": "no", + "Repository": "https://p3m.dev/cran/latest", + "Encoding": "UTF-8" + }, + "R.utils": { + "Package": "R.utils", + "Version": "2.13.0", + "Source": "Repository", + "Depends": [ + "R (>= 2.14.0)", + "R.oo" + ], + "Imports": [ + "methods", + "utils", + "tools", + "R.methodsS3" + ], + "Suggests": [ + "datasets", + "digest (>= 0.6.10)" + ], + "Title": "Various Programming Utilities", + "Authors@R": "c(person(\"Henrik\", \"Bengtsson\", role=c(\"aut\", \"cre\", \"cph\"), email = \"henrikb@braju.com\"))", + "Author": "Henrik Bengtsson [aut, cre, cph]", + "Maintainer": "Henrik Bengtsson ", + "Description": "Utility functions useful when programming and developing R packages.", + "License": "LGPL (>= 2.1)", + "LazyLoad": "TRUE", + "URL": "https://henrikbengtsson.github.io/R.utils/, https://github.com/HenrikBengtsson/R.utils", + "BugReports": "https://github.com/HenrikBengtsson/R.utils/issues", + "NeedsCompilation": "no", + "Repository": "https://p3m.dev/cran/latest", + "Encoding": "UTF-8" + }, + "R6": { + "Package": "R6", + "Version": "2.6.1", + "Source": "Repository", + "Title": "Encapsulated Classes with Reference Semantics", + "Authors@R": "c( person(\"Winston\", \"Chang\", , \"winston@posit.co\", role = c(\"aut\", \"cre\")), person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\")) )", + "Description": "Creates classes with reference semantics, similar to R's built-in reference classes. Compared to reference classes, R6 classes are simpler and lighter-weight, and they are not built on S4 classes so they do not require the methods package. These classes allow public and private members, and they support inheritance, even when the classes are defined in different packages.", + "License": "MIT + file LICENSE", + "URL": "https://r6.r-lib.org, https://github.com/r-lib/R6", + "BugReports": "https://github.com/r-lib/R6/issues", + "Depends": [ + "R (>= 3.6)" + ], + "Suggests": [ + "lobstr", + "testthat (>= 3.0.0)" + ], + "Config/Needs/website": "tidyverse/tidytemplate, ggplot2, microbenchmark, scales", + "Config/testthat/edition": "3", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.2", + "NeedsCompilation": "no", + "Author": "Winston Chang [aut, cre], Posit Software, PBC [cph, fnd]", + "Maintainer": "Winston Chang ", + "Repository": "CRAN" + }, + "RColorBrewer": { + "Package": "RColorBrewer", + "Version": "1.1-3", + "Source": "Repository", + "Date": "2022-04-03", + "Title": "ColorBrewer Palettes", + "Authors@R": "c(person(given = \"Erich\", family = \"Neuwirth\", role = c(\"aut\", \"cre\"), email = \"erich.neuwirth@univie.ac.at\"))", + "Author": "Erich Neuwirth [aut, cre]", + "Maintainer": "Erich Neuwirth ", + "Depends": [ + "R (>= 2.0.0)" + ], + "Description": "Provides color schemes for maps (and other graphics) designed by Cynthia Brewer as described at http://colorbrewer2.org.", + "License": "Apache License 2.0", + "NeedsCompilation": "no", + "Repository": "CRAN" + }, + "Rcpp": { + "Package": "Rcpp", + "Version": "1.1.0", + "Source": "Repository", + "Title": "Seamless R and C++ Integration", + "Date": "2025-07-01", + "Authors@R": "c(person(\"Dirk\", \"Eddelbuettel\", role = c(\"aut\", \"cre\"), email = \"edd@debian.org\", comment = c(ORCID = \"0000-0001-6419-907X\")), person(\"Romain\", \"Francois\", role = \"aut\", comment = c(ORCID = \"0000-0002-2444-4226\")), person(\"JJ\", \"Allaire\", role = \"aut\", comment = c(ORCID = \"0000-0003-0174-9868\")), person(\"Kevin\", \"Ushey\", role = \"aut\", comment = c(ORCID = \"0000-0003-2880-7407\")), person(\"Qiang\", \"Kou\", role = \"aut\", comment = c(ORCID = \"0000-0001-6786-5453\")), person(\"Nathan\", \"Russell\", role = \"aut\"), person(\"Iñaki\", \"Ucar\", role = \"aut\", comment = c(ORCID = \"0000-0001-6403-5550\")), person(\"Doug\", \"Bates\", role = \"aut\", comment = c(ORCID = \"0000-0001-8316-9503\")), person(\"John\", \"Chambers\", role = \"aut\"))", + "Description": "The 'Rcpp' package provides R functions as well as C++ classes which offer a seamless integration of R and C++. Many R data types and objects can be mapped back and forth to C++ equivalents which facilitates both writing of new code as well as easier integration of third-party libraries. Documentation about 'Rcpp' is provided by several vignettes included in this package, via the 'Rcpp Gallery' site at , the paper by Eddelbuettel and Francois (2011, ), the book by Eddelbuettel (2013, ) and the paper by Eddelbuettel and Balamuta (2018, ); see 'citation(\"Rcpp\")' for details.", + "Imports": [ + "methods", + "utils" + ], + "Suggests": [ + "tinytest", + "inline", + "rbenchmark", + "pkgKitten (>= 0.1.2)" + ], + "URL": "https://www.rcpp.org, https://dirk.eddelbuettel.com/code/rcpp.html, https://github.com/RcppCore/Rcpp", + "License": "GPL (>= 2)", + "BugReports": "https://github.com/RcppCore/Rcpp/issues", + "MailingList": "rcpp-devel@lists.r-forge.r-project.org", + "RoxygenNote": "6.1.1", + "Encoding": "UTF-8", + "NeedsCompilation": "yes", + "Author": "Dirk Eddelbuettel [aut, cre] (ORCID: ), Romain Francois [aut] (ORCID: ), JJ Allaire [aut] (ORCID: ), Kevin Ushey [aut] (ORCID: ), Qiang Kou [aut] (ORCID: ), Nathan Russell [aut], Iñaki Ucar [aut] (ORCID: ), Doug Bates [aut] (ORCID: ), John Chambers [aut]", + "Maintainer": "Dirk Eddelbuettel ", + "Repository": "CRAN" + }, + "RcppArmadillo": { + "Package": "RcppArmadillo", + "Version": "14.6.0-1", + "Source": "Repository", + "Type": "Package", + "Title": "'Rcpp' Integration for the 'Armadillo' Templated Linear Algebra Library", + "Date": "2025-07-02", + "Authors@R": "c(person(\"Dirk\", \"Eddelbuettel\", role = c(\"aut\", \"cre\"), email = \"edd@debian.org\", comment = c(ORCID = \"0000-0001-6419-907X\")), person(\"Romain\", \"Francois\", role = \"aut\", comment = c(ORCID = \"0000-0002-2444-4226\")), person(\"Doug\", \"Bates\", role = \"aut\", comment = c(ORCID = \"0000-0001-8316-9503\")), person(\"Binxiang\", \"Ni\", role = \"aut\"), person(\"Conrad\", \"Sanderson\", role = \"aut\", comment = c(ORCID = \"0000-0002-0049-4501\")))", + "Description": "'Armadillo' is a templated C++ linear algebra library (by Conrad Sanderson) that aims towards a good balance between speed and ease of use. Integer, floating point and complex numbers are supported, as well as a subset of trigonometric and statistics functions. Various matrix decompositions are provided through optional integration with LAPACK and ATLAS libraries. The 'RcppArmadillo' package includes the header files from the templated 'Armadillo' library. Thus users do not need to install 'Armadillo' itself in order to use 'RcppArmadillo'. From release 7.800.0 on, 'Armadillo' is licensed under Apache License 2; previous releases were under licensed as MPL 2.0 from version 3.800.0 onwards and LGPL-3 prior to that; 'RcppArmadillo' (the 'Rcpp' bindings/bridge to Armadillo) is licensed under the GNU GPL version 2 or later, as is the rest of 'Rcpp'.", + "License": "GPL (>= 2)", + "LazyLoad": "yes", + "Depends": [ + "R (>= 3.3.0)" + ], + "LinkingTo": [ + "Rcpp" + ], + "Imports": [ + "Rcpp (>= 1.0.12)", + "stats", + "utils", + "methods" + ], + "Suggests": [ + "tinytest", + "Matrix (>= 1.3.0)", + "pkgKitten", + "reticulate", + "slam" + ], + "URL": "https://github.com/RcppCore/RcppArmadillo, https://dirk.eddelbuettel.com/code/rcpp.armadillo.html", + "BugReports": "https://github.com/RcppCore/RcppArmadillo/issues", + "RoxygenNote": "6.0.1", + "NeedsCompilation": "yes", + "Author": "Dirk Eddelbuettel [aut, cre] (ORCID: ), Romain Francois [aut] (ORCID: ), Doug Bates [aut] (ORCID: ), Binxiang Ni [aut], Conrad Sanderson [aut] (ORCID: )", + "Maintainer": "Dirk Eddelbuettel ", + "Repository": "CRAN", + "Encoding": "UTF-8" + }, + "RcppRoll": { + "Package": "RcppRoll", + "Version": "0.3.1", + "Source": "Repository", + "Type": "Package", + "Title": "Efficient Rolling / Windowed Operations", + "Author": "Kevin Ushey", + "Maintainer": "Kevin Ushey ", + "Description": "Provides fast and efficient routines for common rolling / windowed operations. Routines for the efficient computation of windowed mean, median, sum, product, minimum, maximum, standard deviation and variance are provided.", + "License": "GPL (>= 2)", + "Depends": [ + "R (>= 2.15.1)" + ], + "Suggests": [ + "zoo", + "testthat" + ], + "Imports": [ + "Rcpp" + ], + "LinkingTo": [ + "Rcpp" + ], + "RoxygenNote": "6.0.1", + "NeedsCompilation": "yes", + "Repository": "RSPM", + "Encoding": "UTF-8" + }, + "SQUAREM": { + "Package": "SQUAREM", + "Version": "2021.1", + "Source": "Repository", + "Date": "2021-01-12", + "Title": "Squared Extrapolation Methods for Accelerating EM-Like Monotone Algorithms", + "Description": "Algorithms for accelerating the convergence of slow, monotone sequences from smooth, contraction mapping such as the EM algorithm. It can be used to accelerate any smooth, linearly convergent acceleration scheme. A tutorial style introduction to this package is available in a vignette on the CRAN download page or, when the package is loaded in an R session, with vignette(\"SQUAREM\"). Refer to the J Stat Software article: .", + "Depends": [ + "R (>= 3.0)" + ], + "Suggests": [ + "setRNG" + ], + "LazyLoad": "yes", + "License": "GPL (>= 2)", + "Author": "Ravi Varadhan", + "Maintainer": "Ravi Varadhan ", + "URL": "https://coah.jhu.edu/people/Faculty_personal_Pages/Varadhan.html", + "Repository": "RSPM", + "NeedsCompilation": "no", + "Encoding": "UTF-8" + }, + "TTR": { + "Package": "TTR", + "Version": "0.24.4", + "Source": "Repository", + "Type": "Package", + "Title": "Technical Trading Rules", + "Authors@R": "c( person(given=\"Joshua\", family=\"Ulrich\", role=c(\"cre\",\"aut\"), email=\"josh.m.ulrich@gmail.com\"), person(given=c(\"Ethan\",\"B.\"), family=\"Smith\", role=\"ctb\") )", + "Imports": [ + "xts (>= 0.10-0)", + "zoo", + "curl" + ], + "LinkingTo": [ + "xts" + ], + "Enhances": [ + "quantmod" + ], + "Suggests": [ + "RUnit" + ], + "Description": "A collection of over 50 technical indicators for creating technical trading rules. The package also provides fast implementations of common rolling-window functions, and several volatility calculations.", + "License": "GPL (>= 2)", + "URL": "https://github.com/joshuaulrich/TTR", + "BugReports": "https://github.com/joshuaulrich/TTR/issues", + "NeedsCompilation": "yes", + "Author": "Joshua Ulrich [cre, aut], Ethan B. Smith [ctb]", + "Maintainer": "Joshua Ulrich ", + "Repository": "RSPM", + "Encoding": "UTF-8" + }, + "anytime": { + "Package": "anytime", + "Version": "0.3.12", + "Source": "Repository", + "Type": "Package", + "Title": "Anything to 'POSIXct' or 'Date' Converter", + "Date": "2025-07-14", + "Authors@R": "person(\"Dirk\", \"Eddelbuettel\", role = c(\"aut\", \"cre\"), email = \"edd@debian.org\", comment = c(ORCID = \"0000-0001-6419-907X\"))", + "Description": "Convert input in any one of character, integer, numeric, factor, or ordered type into 'POSIXct' (or 'Date') objects, using one of a number of predefined formats, and relying on Boost facilities for date and time parsing.", + "URL": "https://github.com/eddelbuettel/anytime, https://dirk.eddelbuettel.com/code/anytime.html", + "BugReports": "https://github.com/eddelbuettel/anytime/issues", + "License": "GPL (>= 2)", + "Encoding": "UTF-8", + "Depends": [ + "R (>= 3.2.0)" + ], + "Imports": [ + "Rcpp (>= 1.0.8)" + ], + "LinkingTo": [ + "Rcpp (>= 1.0.8)", + "BH" + ], + "Suggests": [ + "tinytest (>= 1.0.0)", + "gettz" + ], + "RoxygenNote": "6.0.1", + "NeedsCompilation": "yes", + "Author": "Dirk Eddelbuettel [aut, cre] (ORCID: )", + "Maintainer": "Dirk Eddelbuettel ", + "Repository": "CRAN" + }, + "askpass": { + "Package": "askpass", + "Version": "1.2.1", + "Source": "Repository", + "Type": "Package", + "Title": "Password Entry Utilities for R, Git, and SSH", + "Authors@R": "person(\"Jeroen\", \"Ooms\", role = c(\"aut\", \"cre\"), email = \"jeroenooms@gmail.com\", comment = c(ORCID = \"0000-0002-4035-0289\"))", + "Description": "Cross-platform utilities for prompting the user for credentials or a passphrase, for example to authenticate with a server or read a protected key. Includes native programs for MacOS and Windows, hence no 'tcltk' is required. Password entry can be invoked in two different ways: directly from R via the askpass() function, or indirectly as password-entry back-end for 'ssh-agent' or 'git-credential' via the SSH_ASKPASS and GIT_ASKPASS environment variables. Thereby the user can be prompted for credentials or a passphrase if needed when R calls out to git or ssh.", + "License": "MIT + file LICENSE", + "URL": "https://r-lib.r-universe.dev/askpass", + "BugReports": "https://github.com/r-lib/askpass/issues", + "Encoding": "UTF-8", + "Imports": [ + "sys (>= 2.1)" + ], + "RoxygenNote": "7.2.3", + "Suggests": [ + "testthat" + ], + "Language": "en-US", + "NeedsCompilation": "yes", + "Author": "Jeroen Ooms [aut, cre] ()", + "Maintainer": "Jeroen Ooms ", + "Repository": "CRAN" + }, + "backports": { + "Package": "backports", + "Version": "1.5.0", + "Source": "Repository", + "Type": "Package", + "Title": "Reimplementations of Functions Introduced Since R-3.0.0", + "Authors@R": "c( person(\"Michel\", \"Lang\", NULL, \"michellang@gmail.com\", role = c(\"cre\", \"aut\"), comment = c(ORCID = \"0000-0001-9754-0393\")), person(\"Duncan\", \"Murdoch\", NULL, \"murdoch.duncan@gmail.com\", role = c(\"aut\")), person(\"R Core Team\", role = \"aut\"))", + "Maintainer": "Michel Lang ", + "Description": "Functions introduced or changed since R v3.0.0 are re-implemented in this package. The backports are conditionally exported in order to let R resolve the function name to either the implemented backport, or the respective base version, if available. Package developers can make use of new functions or arguments by selectively importing specific backports to support older installations.", + "URL": "https://github.com/r-lib/backports", + "BugReports": "https://github.com/r-lib/backports/issues", + "License": "GPL-2 | GPL-3", + "NeedsCompilation": "yes", + "ByteCompile": "yes", + "Depends": [ + "R (>= 3.0.0)" + ], + "Encoding": "UTF-8", + "RoxygenNote": "7.3.1", + "Author": "Michel Lang [cre, aut] (), Duncan Murdoch [aut], R Core Team [aut]", + "Repository": "CRAN" + }, + "base64enc": { + "Package": "base64enc", + "Version": "0.1-3", + "Source": "Repository", + "Title": "Tools for base64 encoding", + "Author": "Simon Urbanek ", + "Maintainer": "Simon Urbanek ", + "Depends": [ + "R (>= 2.9.0)" + ], + "Enhances": [ + "png" + ], + "Description": "This package provides tools for handling base64 encoding. It is more flexible than the orphaned base64 package.", + "License": "GPL-2 | GPL-3", + "URL": "http://www.rforge.net/base64enc", + "NeedsCompilation": "yes", + "Repository": "RSPM", + "Encoding": "UTF-8" + }, + "bit": { + "Package": "bit", + "Version": "4.6.0", + "Source": "Repository", + "Title": "Classes and Methods for Fast Memory-Efficient Boolean Selections", + "Authors@R": "c( person(\"Michael\", \"Chirico\", email = \"MichaelChirico4@gmail.com\", role = c(\"aut\", \"cre\")), person(\"Jens\", \"Oehlschlägel\", role = \"aut\"), person(\"Brian\", \"Ripley\", role = \"ctb\") )", + "Depends": [ + "R (>= 3.4.0)" + ], + "Suggests": [ + "testthat (>= 3.0.0)", + "roxygen2", + "knitr", + "markdown", + "rmarkdown", + "microbenchmark", + "bit64 (>= 4.0.0)", + "ff (>= 4.0.0)" + ], + "Description": "Provided are classes for boolean and skewed boolean vectors, fast boolean methods, fast unique and non-unique integer sorting, fast set operations on sorted and unsorted sets of integers, and foundations for ff (range index, compression, chunked processing).", + "License": "GPL-2 | GPL-3", + "LazyLoad": "yes", + "ByteCompile": "yes", + "Encoding": "UTF-8", + "URL": "https://github.com/r-lib/bit", + "VignetteBuilder": "knitr, rmarkdown", + "RoxygenNote": "7.3.2", + "Config/testthat/edition": "3", + "NeedsCompilation": "yes", + "Author": "Michael Chirico [aut, cre], Jens Oehlschlägel [aut], Brian Ripley [ctb]", + "Maintainer": "Michael Chirico ", + "Repository": "CRAN" + }, + "bit64": { + "Package": "bit64", + "Version": "4.6.0-1", + "Source": "Repository", + "Title": "A S3 Class for Vectors of 64bit Integers", + "Authors@R": "c( person(\"Michael\", \"Chirico\", email = \"michaelchirico4@gmail.com\", role = c(\"aut\", \"cre\")), person(\"Jens\", \"Oehlschlägel\", role = \"aut\"), person(\"Leonardo\", \"Silvestri\", role = \"ctb\"), person(\"Ofek\", \"Shilon\", role = \"ctb\") )", + "Depends": [ + "R (>= 3.4.0)", + "bit (>= 4.0.0)" + ], + "Description": "Package 'bit64' provides serializable S3 atomic 64bit (signed) integers. These are useful for handling database keys and exact counting in +-2^63. WARNING: do not use them as replacement for 32bit integers, integer64 are not supported for subscripting by R-core and they have different semantics when combined with double, e.g. integer64 + double => integer64. Class integer64 can be used in vectors, matrices, arrays and data.frames. Methods are available for coercion from and to logicals, integers, doubles, characters and factors as well as many elementwise and summary functions. Many fast algorithmic operations such as 'match' and 'order' support inter- active data exploration and manipulation and optionally leverage caching.", + "License": "GPL-2 | GPL-3", + "LazyLoad": "yes", + "ByteCompile": "yes", + "URL": "https://github.com/r-lib/bit64", + "Encoding": "UTF-8", + "Imports": [ + "graphics", + "methods", + "stats", + "utils" + ], + "Suggests": [ + "testthat (>= 3.0.3)", + "withr" + ], + "Config/testthat/edition": "3", + "Config/needs/development": "testthat", + "RoxygenNote": "7.3.2", + "NeedsCompilation": "yes", + "Author": "Michael Chirico [aut, cre], Jens Oehlschlägel [aut], Leonardo Silvestri [ctb], Ofek Shilon [ctb]", + "Maintainer": "Michael Chirico ", + "Repository": "CRAN" + }, + "box": { + "Package": "box", + "Version": "1.2.0", + "Source": "Repository", + "Title": "Write Reusable, Composable and Modular R Code", + "Authors@R": "c( person( 'Konrad', 'Rudolph', email = 'konrad.rudolph@gmail.com', role = c('aut', 'cre'), comment = c(ORCID = '0000-0002-9866-7051') ), person( 'Michael', 'Schubert', email = 'mschu.dev@gmail.com', role = 'ctb', comment = c(ORCID = '0000-0002-6862-5221') ) )", + "URL": "https://klmr.me/box/, https://github.com/klmr/box", + "BugReports": "https://github.com/klmr/box/issues", + "Description": "A modern module system for R. Organise code into hierarchical, composable, reusable modules, and use it effortlessly across projects via a flexible, declarative dependency loading syntax.", + "Depends": [ + "R (>= 3.6.0)" + ], + "Imports": [ + "tools" + ], + "License": "MIT + file LICENSE", + "Encoding": "UTF-8", + "Suggests": [ + "devtools", + "knitr (>= 1.40)", + "rmarkdown", + "R6", + "rlang", + "roxygen2 (>= 7.2.1)", + "shiny", + "stringr", + "testthat (>= 3.1.7)" + ], + "Enhances": [ + "rstudioapi" + ], + "VignetteBuilder": "knitr", + "RoxygenNote": "7.3.1", + "NeedsCompilation": "yes", + "Author": "Konrad Rudolph [aut, cre] (), Michael Schubert [ctb] ()", + "Maintainer": "Konrad Rudolph ", + "Repository": "CRAN" + }, + "box.linters": { + "Package": "box.linters", + "Version": "0.10.6", + "Source": "Repository", + "Title": "Linters for 'box' Modules", + "Authors@R": "c( person(\"Ricardo Rodrigo\", \"Basa\", role = c(\"aut\", \"cre\"), email = \"opensource+rodrigo@appsilon.com\"), person(\"Jakub\", \"Nowicki\", role = \"aut\", email = \"kuba@appsilon.com\"), person(\"Mateusz\", \"Kołomański\", role = \"ctb\", email = \"mateusz.kolomanski@appsilon.com\"), person(\"Guilherme\", \"Vituri\", role = \"ctb\", email = \"vituri@appsilon.com\"), person(\"Appsilon Sp. z o.o.\", role = \"cph\", email = \"opensource@appsilon.com\") )", + "Description": "Static code analysis of 'box' modules. The package enhances code quality by providing linters that check for common issues, enforce best practices, and ensure consistent coding standards.", + "URL": "https://appsilon.github.io/box.linters/, https://github.com/Appsilon/box.linters", + "License": "LGPL-3", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.2", + "Depends": [ + "R (>= 2.10)" + ], + "Imports": [ + "cli", + "fs", + "glue", + "lintr (>= 3.1.0)", + "purrr", + "rlang", + "stringr", + "withr", + "xfun", + "xml2", + "xmlparsedata" + ], + "Suggests": [ + "box", + "covr", + "dplyr", + "knitr", + "prettycode", + "rcmdcheck", + "rmarkdown", + "R6", + "rex", + "rhino", + "shiny", + "spelling", + "testthat (>= 3.0.0)", + "treesitter", + "treesitter.r (>= 1.1.0)" + ], + "Config/testthat/edition": "3", + "Config/testthat/parallel": "true", + "Language": "en-US", + "NeedsCompilation": "no", + "Author": "Ricardo Rodrigo Basa [aut, cre], Jakub Nowicki [aut], Mateusz Kołomański [ctb], Guilherme Vituri [ctb], Appsilon Sp. z o.o. [cph]", + "Maintainer": "Ricardo Rodrigo Basa ", + "Repository": "CRAN" + }, + "box.lsp": { + "Package": "box.lsp", + "Version": "0.1.3", + "Source": "Repository", + "Title": "Provides 'box' Compatibility for 'languageserver'", + "Authors@R": "c( person(\"Ricardo Rodrigo\", \"Basa\", role = c(\"aut\", \"cre\"), email = \"opensource+rodrigo@appsilon.com\"), person(\"Pavel\", \"Demin\", role = \"aut\", email = \"pavel.demin@appsilon.com\"), person(\"Jakub\", \"Nowicki\", role = \"aut\", email = \"kuba@appsilon.com\"), person(\"Appsilon Sp. z o.o.\", role = \"cph\", email = \"opensource@appsilon.com\") )", + "Description": "A 'box' compatible custom language parser for the 'languageserver' package to provide completion and signature hints in code editors.", + "URL": "https://github.com/Appsilon/box.lsp, https://appsilon.github.io/box.lsp/", + "BugReports": "https://github.com/Appsilon/box.lsp/issues", + "License": "LGPL-3", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.2", + "Imports": [ + "box", + "cli", + "fs", + "rlang" + ], + "Suggests": [ + "languageserver", + "lintr", + "magrittr", + "mockery", + "purrr", + "rprojroot", + "stringi", + "stringr", + "testthat (>= 3.0.0)", + "withr" + ], + "Config/testthat/edition": "3", + "NeedsCompilation": "no", + "Author": "Ricardo Rodrigo Basa [aut, cre], Pavel Demin [aut], Jakub Nowicki [aut], Appsilon Sp. z o.o. [cph]", + "Maintainer": "Ricardo Rodrigo Basa ", + "Repository": "CRAN" + }, + "brio": { + "Package": "brio", + "Version": "1.1.5", + "Source": "Repository", + "Title": "Basic R Input Output", + "Authors@R": "c( person(\"Jim\", \"Hester\", role = \"aut\", comment = c(ORCID = \"0000-0002-2739-7082\")), person(\"Gábor\", \"Csárdi\", , \"csardi.gabor@gmail.com\", role = c(\"aut\", \"cre\")), person(given = \"Posit Software, PBC\", role = c(\"cph\", \"fnd\")) )", + "Description": "Functions to handle basic input output, these functions always read and write UTF-8 (8-bit Unicode Transformation Format) files and provide more explicit control over line endings.", + "License": "MIT + file LICENSE", + "URL": "https://brio.r-lib.org, https://github.com/r-lib/brio", + "BugReports": "https://github.com/r-lib/brio/issues", + "Depends": [ + "R (>= 3.6)" + ], + "Suggests": [ + "covr", + "testthat (>= 3.0.0)" + ], + "Config/Needs/website": "tidyverse/tidytemplate", + "Config/testthat/edition": "3", + "Encoding": "UTF-8", + "RoxygenNote": "7.2.3", + "NeedsCompilation": "yes", + "Author": "Jim Hester [aut] (), Gábor Csárdi [aut, cre], Posit Software, PBC [cph, fnd]", + "Maintainer": "Gábor Csárdi ", + "Repository": "CRAN" + }, + "broom": { + "Package": "broom", + "Version": "1.0.9", + "Source": "Repository", + "Type": "Package", + "Title": "Convert Statistical Objects into Tidy Tibbles", + "Authors@R": "c( person(\"David\", \"Robinson\", , \"admiral.david@gmail.com\", role = \"aut\"), person(\"Alex\", \"Hayes\", , \"alexpghayes@gmail.com\", role = \"aut\", comment = c(ORCID = \"0000-0002-4985-5160\")), person(\"Simon\", \"Couch\", , \"simon.couch@posit.co\", role = c(\"aut\", \"cre\"), comment = c(ORCID = \"0000-0001-5676-5107\")), person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\"), comment = c(ROR = \"03wc8by49\")), person(\"Indrajeet\", \"Patil\", , \"patilindrajeet.science@gmail.com\", role = \"ctb\", comment = c(ORCID = \"0000-0003-1995-6531\")), person(\"Derek\", \"Chiu\", , \"dchiu@bccrc.ca\", role = \"ctb\"), person(\"Matthieu\", \"Gomez\", , \"mattg@princeton.edu\", role = \"ctb\"), person(\"Boris\", \"Demeshev\", , \"boris.demeshev@gmail.com\", role = \"ctb\"), person(\"Dieter\", \"Menne\", , \"dieter.menne@menne-biomed.de\", role = \"ctb\"), person(\"Benjamin\", \"Nutter\", , \"nutter@battelle.org\", role = \"ctb\"), person(\"Luke\", \"Johnston\", , \"luke.johnston@mail.utoronto.ca\", role = \"ctb\"), person(\"Ben\", \"Bolker\", , \"bolker@mcmaster.ca\", role = \"ctb\"), person(\"Francois\", \"Briatte\", , \"f.briatte@gmail.com\", role = \"ctb\"), person(\"Jeffrey\", \"Arnold\", , \"jeffrey.arnold@gmail.com\", role = \"ctb\"), person(\"Jonah\", \"Gabry\", , \"jsg2201@columbia.edu\", role = \"ctb\"), person(\"Luciano\", \"Selzer\", , \"luciano.selzer@gmail.com\", role = \"ctb\"), person(\"Gavin\", \"Simpson\", , \"ucfagls@gmail.com\", role = \"ctb\"), person(\"Jens\", \"Preussner\", , \"jens.preussner@mpi-bn.mpg.de\", role = \"ctb\"), person(\"Jay\", \"Hesselberth\", , \"jay.hesselberth@gmail.com\", role = \"ctb\"), person(\"Hadley\", \"Wickham\", , \"hadley@posit.co\", role = \"ctb\"), person(\"Matthew\", \"Lincoln\", , \"matthew.d.lincoln@gmail.com\", role = \"ctb\"), person(\"Alessandro\", \"Gasparini\", , \"ag475@leicester.ac.uk\", role = \"ctb\"), person(\"Lukasz\", \"Komsta\", , \"lukasz.komsta@umlub.pl\", role = \"ctb\"), person(\"Frederick\", \"Novometsky\", role = \"ctb\"), person(\"Wilson\", \"Freitas\", role = \"ctb\"), person(\"Michelle\", \"Evans\", role = \"ctb\"), person(\"Jason Cory\", \"Brunson\", , \"cornelioid@gmail.com\", role = \"ctb\"), person(\"Simon\", \"Jackson\", , \"drsimonjackson@gmail.com\", role = \"ctb\"), person(\"Ben\", \"Whalley\", , \"ben.whalley@plymouth.ac.uk\", role = \"ctb\"), person(\"Karissa\", \"Whiting\", , \"karissa.whiting@gmail.com\", role = \"ctb\"), person(\"Yves\", \"Rosseel\", , \"yrosseel@gmail.com\", role = \"ctb\"), person(\"Michael\", \"Kuehn\", , \"mkuehn10@gmail.com\", role = \"ctb\"), person(\"Jorge\", \"Cimentada\", , \"cimentadaj@gmail.com\", role = \"ctb\"), person(\"Erle\", \"Holgersen\", , \"erle.holgersen@gmail.com\", role = \"ctb\"), person(\"Karl\", \"Dunkle Werner\", role = \"ctb\", comment = c(ORCID = \"0000-0003-0523-7309\")), person(\"Ethan\", \"Christensen\", , \"christensen.ej@gmail.com\", role = \"ctb\"), person(\"Steven\", \"Pav\", , \"shabbychef@gmail.com\", role = \"ctb\"), person(\"Paul\", \"PJ\", , \"pjpaul.stephens@gmail.com\", role = \"ctb\"), person(\"Ben\", \"Schneider\", , \"benjamin.julius.schneider@gmail.com\", role = \"ctb\"), person(\"Patrick\", \"Kennedy\", , \"pkqstr@protonmail.com\", role = \"ctb\"), person(\"Lily\", \"Medina\", , \"lilymiru@gmail.com\", role = \"ctb\"), person(\"Brian\", \"Fannin\", , \"captain@pirategrunt.com\", role = \"ctb\"), person(\"Jason\", \"Muhlenkamp\", , \"jason.muhlenkamp@gmail.com\", role = \"ctb\"), person(\"Matt\", \"Lehman\", role = \"ctb\"), person(\"Bill\", \"Denney\", , \"wdenney@humanpredictions.com\", role = \"ctb\", comment = c(ORCID = \"0000-0002-5759-428X\")), person(\"Nic\", \"Crane\", role = \"ctb\"), person(\"Andrew\", \"Bates\", role = \"ctb\"), person(\"Vincent\", \"Arel-Bundock\", , \"vincent.arel-bundock@umontreal.ca\", role = \"ctb\", comment = c(ORCID = \"0000-0003-2042-7063\")), person(\"Hideaki\", \"Hayashi\", role = \"ctb\"), person(\"Luis\", \"Tobalina\", role = \"ctb\"), person(\"Annie\", \"Wang\", , \"anniewang.uc@gmail.com\", role = \"ctb\"), person(\"Wei Yang\", \"Tham\", , \"weiyang.tham@gmail.com\", role = \"ctb\"), person(\"Clara\", \"Wang\", , \"clara.wang.94@gmail.com\", role = \"ctb\"), person(\"Abby\", \"Smith\", , \"als1@u.northwestern.edu\", role = \"ctb\", comment = c(ORCID = \"0000-0002-3207-0375\")), person(\"Jasper\", \"Cooper\", , \"jaspercooper@gmail.com\", role = \"ctb\", comment = c(ORCID = \"0000-0002-8639-3188\")), person(\"E Auden\", \"Krauska\", , \"krauskae@gmail.com\", role = \"ctb\", comment = c(ORCID = \"0000-0002-1466-5850\")), person(\"Alex\", \"Wang\", , \"x249wang@uwaterloo.ca\", role = \"ctb\"), person(\"Malcolm\", \"Barrett\", , \"malcolmbarrett@gmail.com\", role = \"ctb\", comment = c(ORCID = \"0000-0003-0299-5825\")), person(\"Charles\", \"Gray\", , \"charlestigray@gmail.com\", role = \"ctb\", comment = c(ORCID = \"0000-0002-9978-011X\")), person(\"Jared\", \"Wilber\", role = \"ctb\"), person(\"Vilmantas\", \"Gegzna\", , \"GegznaV@gmail.com\", role = \"ctb\", comment = c(ORCID = \"0000-0002-9500-5167\")), person(\"Eduard\", \"Szoecs\", , \"eduardszoecs@gmail.com\", role = \"ctb\"), person(\"Frederik\", \"Aust\", , \"frederik.aust@uni-koeln.de\", role = \"ctb\", comment = c(ORCID = \"0000-0003-4900-788X\")), person(\"Angus\", \"Moore\", , \"angusmoore9@gmail.com\", role = \"ctb\"), person(\"Nick\", \"Williams\", , \"ntwilliams.personal@gmail.com\", role = \"ctb\"), person(\"Marius\", \"Barth\", , \"marius.barth.uni.koeln@gmail.com\", role = \"ctb\", comment = c(ORCID = \"0000-0002-3421-6665\")), person(\"Bruna\", \"Wundervald\", , \"brunadaviesw@gmail.com\", role = \"ctb\", comment = c(ORCID = \"0000-0001-8163-220X\")), person(\"Joyce\", \"Cahoon\", , \"joyceyu48@gmail.com\", role = \"ctb\", comment = c(ORCID = \"0000-0001-7217-4702\")), person(\"Grant\", \"McDermott\", , \"grantmcd@uoregon.edu\", role = \"ctb\", comment = c(ORCID = \"0000-0001-7883-8573\")), person(\"Kevin\", \"Zarca\", , \"kevin.zarca@gmail.com\", role = \"ctb\"), person(\"Shiro\", \"Kuriwaki\", , \"shirokuriwaki@gmail.com\", role = \"ctb\", comment = c(ORCID = \"0000-0002-5687-2647\")), person(\"Lukas\", \"Wallrich\", , \"lukas.wallrich@gmail.com\", role = \"ctb\", comment = c(ORCID = \"0000-0003-2121-5177\")), person(\"James\", \"Martherus\", , \"james@martherus.com\", role = \"ctb\", comment = c(ORCID = \"0000-0002-8285-3300\")), person(\"Chuliang\", \"Xiao\", , \"cxiao@umich.edu\", role = \"ctb\", comment = c(ORCID = \"0000-0002-8466-9398\")), person(\"Joseph\", \"Larmarange\", , \"joseph@larmarange.net\", role = \"ctb\"), person(\"Max\", \"Kuhn\", , \"max@posit.co\", role = \"ctb\"), person(\"Michal\", \"Bojanowski\", , \"michal2992@gmail.com\", role = \"ctb\"), person(\"Hakon\", \"Malmedal\", , \"hmalmedal@gmail.com\", role = \"ctb\"), person(\"Clara\", \"Wang\", role = \"ctb\"), person(\"Sergio\", \"Oller\", , \"sergioller@gmail.com\", role = \"ctb\"), person(\"Luke\", \"Sonnet\", , \"luke.sonnet@gmail.com\", role = \"ctb\"), person(\"Jim\", \"Hester\", , \"jim.hester@posit.co\", role = \"ctb\"), person(\"Ben\", \"Schneider\", , \"benjamin.julius.schneider@gmail.com\", role = \"ctb\"), person(\"Bernie\", \"Gray\", , \"bfgray3@gmail.com\", role = \"ctb\", comment = c(ORCID = \"0000-0001-9190-6032\")), person(\"Mara\", \"Averick\", , \"mara@posit.co\", role = \"ctb\"), person(\"Aaron\", \"Jacobs\", , \"atheriel@gmail.com\", role = \"ctb\"), person(\"Andreas\", \"Bender\", , \"bender.at.R@gmail.com\", role = \"ctb\"), person(\"Sven\", \"Templer\", , \"sven.templer@gmail.com\", role = \"ctb\"), person(\"Paul-Christian\", \"Buerkner\", , \"paul.buerkner@gmail.com\", role = \"ctb\"), person(\"Matthew\", \"Kay\", , \"mjskay@umich.edu\", role = \"ctb\"), person(\"Erwan\", \"Le Pennec\", , \"lepennec@gmail.com\", role = \"ctb\"), person(\"Johan\", \"Junkka\", , \"johan.junkka@umu.se\", role = \"ctb\"), person(\"Hao\", \"Zhu\", , \"haozhu233@gmail.com\", role = \"ctb\"), person(\"Benjamin\", \"Soltoff\", , \"soltoffbc@uchicago.edu\", role = \"ctb\"), person(\"Zoe\", \"Wilkinson Saldana\", , \"zoewsaldana@gmail.com\", role = \"ctb\"), person(\"Tyler\", \"Littlefield\", , \"tylurp1@gmail.com\", role = \"ctb\"), person(\"Charles T.\", \"Gray\", , \"charlestigray@gmail.com\", role = \"ctb\"), person(\"Shabbh E.\", \"Banks\", role = \"ctb\"), person(\"Serina\", \"Robinson\", , \"robi0916@umn.edu\", role = \"ctb\"), person(\"Roger\", \"Bivand\", , \"Roger.Bivand@nhh.no\", role = \"ctb\"), person(\"Riinu\", \"Ots\", , \"riinuots@gmail.com\", role = \"ctb\"), person(\"Nicholas\", \"Williams\", , \"ntwilliams.personal@gmail.com\", role = \"ctb\"), person(\"Nina\", \"Jakobsen\", role = \"ctb\"), person(\"Michael\", \"Weylandt\", , \"michael.weylandt@gmail.com\", role = \"ctb\"), person(\"Lisa\", \"Lendway\", , \"llendway@macalester.edu\", role = \"ctb\"), person(\"Karl\", \"Hailperin\", , \"khailper@gmail.com\", role = \"ctb\"), person(\"Josue\", \"Rodriguez\", , \"jerrodriguez@ucdavis.edu\", role = \"ctb\"), person(\"Jenny\", \"Bryan\", , \"jenny@posit.co\", role = \"ctb\"), person(\"Chris\", \"Jarvis\", , \"Christopher1.jarvis@gmail.com\", role = \"ctb\"), person(\"Greg\", \"Macfarlane\", , \"gregmacfarlane@gmail.com\", role = \"ctb\"), person(\"Brian\", \"Mannakee\", , \"bmannakee@gmail.com\", role = \"ctb\"), person(\"Drew\", \"Tyre\", , \"atyre2@unl.edu\", role = \"ctb\"), person(\"Shreyas\", \"Singh\", , \"shreyas.singh.298@gmail.com\", role = \"ctb\"), person(\"Laurens\", \"Geffert\", , \"laurensgeffert@gmail.com\", role = \"ctb\"), person(\"Hong\", \"Ooi\", , \"hongooi@microsoft.com\", role = \"ctb\"), person(\"Henrik\", \"Bengtsson\", , \"henrikb@braju.com\", role = \"ctb\"), person(\"Eduard\", \"Szocs\", , \"eduardszoecs@gmail.com\", role = \"ctb\"), person(\"David\", \"Hugh-Jones\", , \"davidhughjones@gmail.com\", role = \"ctb\"), person(\"Matthieu\", \"Stigler\", , \"Matthieu.Stigler@gmail.com\", role = \"ctb\"), person(\"Hugo\", \"Tavares\", , \"hm533@cam.ac.uk\", role = \"ctb\", comment = c(ORCID = \"0000-0001-9373-2726\")), person(\"R. Willem\", \"Vervoort\", , \"Willemvervoort@gmail.com\", role = \"ctb\"), person(\"Brenton M.\", \"Wiernik\", , \"brenton@wiernik.org\", role = \"ctb\"), person(\"Josh\", \"Yamamoto\", , \"joshuayamamoto5@gmail.com\", role = \"ctb\"), person(\"Jasme\", \"Lee\", role = \"ctb\"), person(\"Taren\", \"Sanders\", , \"taren.sanders@acu.edu.au\", role = \"ctb\", comment = c(ORCID = \"0000-0002-4504-6008\")), person(\"Ilaria\", \"Prosdocimi\", , \"prosdocimi.ilaria@gmail.com\", role = \"ctb\", comment = c(ORCID = \"0000-0001-8565-094X\")), person(\"Daniel D.\", \"Sjoberg\", , \"danield.sjoberg@gmail.com\", role = \"ctb\", comment = c(ORCID = \"0000-0003-0862-2018\")), person(\"Alex\", \"Reinhart\", , \"areinhar@stat.cmu.edu\", role = \"ctb\", comment = c(ORCID = \"0000-0002-6658-514X\")) )", + "Description": "Summarizes key information about statistical objects in tidy tibbles. This makes it easy to report results, create plots and consistently work with large numbers of models at once. Broom provides three verbs that each provide different types of information about a model. tidy() summarizes information about model components such as coefficients of a regression. glance() reports information about an entire model, such as goodness of fit measures like AIC and BIC. augment() adds information about individual observations to a dataset, such as fitted values or influence measures.", + "License": "MIT + file LICENSE", + "URL": "https://broom.tidymodels.org/, https://github.com/tidymodels/broom", + "BugReports": "https://github.com/tidymodels/broom/issues", + "Depends": [ + "R (>= 4.1)" + ], + "Imports": [ + "backports", + "cli", + "dplyr (>= 1.0.0)", + "generics (>= 0.0.2)", + "glue", + "lifecycle", + "purrr", + "rlang (>= 1.1.0)", + "stringr", + "tibble (>= 3.0.0)", + "tidyr (>= 1.0.0)" + ], + "Suggests": [ + "AER", + "AUC", + "bbmle", + "betareg (>= 3.2-1)", + "biglm", + "binGroup", + "boot", + "btergm (>= 1.10.6)", + "car (>= 3.1-2)", + "carData", + "caret", + "cluster", + "cmprsk", + "coda", + "covr", + "drc", + "e1071", + "emmeans", + "epiR (>= 2.0.85)", + "ergm (>= 3.10.4)", + "fixest (>= 0.9.0)", + "gam (>= 1.15)", + "gee", + "geepack", + "ggplot2", + "glmnet", + "glmnetUtils", + "gmm", + "Hmisc", + "interp", + "irlba", + "joineRML", + "Kendall", + "knitr", + "ks", + "Lahman", + "lavaan (>= 0.6.18)", + "leaps", + "lfe", + "lm.beta", + "lme4", + "lmodel2", + "lmtest (>= 0.9.38)", + "lsmeans", + "maps", + "margins", + "MASS", + "mclust", + "mediation", + "metafor", + "mfx", + "mgcv", + "mlogit", + "modeldata", + "modeltests (>= 0.1.6)", + "muhaz", + "multcomp", + "network", + "nnet", + "ordinal", + "plm", + "poLCA", + "psych", + "quantreg", + "rmarkdown", + "robust", + "robustbase", + "rsample", + "sandwich", + "spatialreg", + "spdep (>= 1.1)", + "speedglm", + "spelling", + "survey", + "survival (>= 3.6-4)", + "systemfit", + "testthat (>= 3.0.0)", + "tseries", + "vars", + "zoo" + ], + "VignetteBuilder": "knitr", + "Config/Needs/website": "tidyverse/tidytemplate", + "Config/testthat/edition": "3", + "Config/usethis/last-upkeep": "2025-04-25", + "Encoding": "UTF-8", + "Language": "en-US", + "RoxygenNote": "7.3.2", + "Collate": "'aaa-documentation-helper.R' 'null-and-default.R' 'aer.R' 'auc.R' 'base.R' 'bbmle.R' 'betareg.R' 'biglm.R' 'bingroup.R' 'boot.R' 'broom-package.R' 'broom.R' 'btergm.R' 'car.R' 'caret.R' 'cluster.R' 'cmprsk.R' 'data-frame.R' 'deprecated-0-7-0.R' 'drc.R' 'emmeans.R' 'epiR.R' 'ergm.R' 'fixest.R' 'gam.R' 'geepack.R' 'glmnet-cv-glmnet.R' 'glmnet-glmnet.R' 'gmm.R' 'hmisc.R' 'import-standalone-obj-type.R' 'import-standalone-types-check.R' 'joinerml.R' 'kendall.R' 'ks.R' 'lavaan.R' 'leaps.R' 'lfe.R' 'list-irlba.R' 'list-optim.R' 'list-svd.R' 'list-xyz.R' 'list.R' 'lm-beta.R' 'lmodel2.R' 'lmtest.R' 'maps.R' 'margins.R' 'mass-fitdistr.R' 'mass-negbin.R' 'mass-polr.R' 'mass-ridgelm.R' 'stats-lm.R' 'mass-rlm.R' 'mclust.R' 'mediation.R' 'metafor.R' 'mfx.R' 'mgcv.R' 'mlogit.R' 'muhaz.R' 'multcomp.R' 'nnet.R' 'nobs.R' 'ordinal-clm.R' 'ordinal-clmm.R' 'plm.R' 'polca.R' 'psych.R' 'stats-nls.R' 'quantreg-nlrq.R' 'quantreg-rq.R' 'quantreg-rqs.R' 'robust-glmrob.R' 'robust-lmrob.R' 'robustbase-glmrob.R' 'robustbase-lmrob.R' 'sp.R' 'spdep.R' 'speedglm-speedglm.R' 'speedglm-speedlm.R' 'stats-anova.R' 'stats-arima.R' 'stats-decompose.R' 'stats-factanal.R' 'stats-glm.R' 'stats-htest.R' 'stats-kmeans.R' 'stats-loess.R' 'stats-mlm.R' 'stats-prcomp.R' 'stats-smooth.spline.R' 'stats-summary-lm.R' 'stats-time-series.R' 'survey.R' 'survival-aareg.R' 'survival-cch.R' 'survival-coxph.R' 'survival-pyears.R' 'survival-survdiff.R' 'survival-survexp.R' 'survival-survfit.R' 'survival-survreg.R' 'systemfit.R' 'tseries.R' 'utilities.R' 'vars.R' 'zoo.R' 'zzz.R'", + "NeedsCompilation": "no", + "Author": "David Robinson [aut], Alex Hayes [aut] (ORCID: ), Simon Couch [aut, cre] (ORCID: ), Posit Software, PBC [cph, fnd] (ROR: ), Indrajeet Patil [ctb] (ORCID: ), Derek Chiu [ctb], Matthieu Gomez [ctb], Boris Demeshev [ctb], Dieter Menne [ctb], Benjamin Nutter [ctb], Luke Johnston [ctb], Ben Bolker [ctb], Francois Briatte [ctb], Jeffrey Arnold [ctb], Jonah Gabry [ctb], Luciano Selzer [ctb], Gavin Simpson [ctb], Jens Preussner [ctb], Jay Hesselberth [ctb], Hadley Wickham [ctb], Matthew Lincoln [ctb], Alessandro Gasparini [ctb], Lukasz Komsta [ctb], Frederick Novometsky [ctb], Wilson Freitas [ctb], Michelle Evans [ctb], Jason Cory Brunson [ctb], Simon Jackson [ctb], Ben Whalley [ctb], Karissa Whiting [ctb], Yves Rosseel [ctb], Michael Kuehn [ctb], Jorge Cimentada [ctb], Erle Holgersen [ctb], Karl Dunkle Werner [ctb] (ORCID: ), Ethan Christensen [ctb], Steven Pav [ctb], Paul PJ [ctb], Ben Schneider [ctb], Patrick Kennedy [ctb], Lily Medina [ctb], Brian Fannin [ctb], Jason Muhlenkamp [ctb], Matt Lehman [ctb], Bill Denney [ctb] (ORCID: ), Nic Crane [ctb], Andrew Bates [ctb], Vincent Arel-Bundock [ctb] (ORCID: ), Hideaki Hayashi [ctb], Luis Tobalina [ctb], Annie Wang [ctb], Wei Yang Tham [ctb], Clara Wang [ctb], Abby Smith [ctb] (ORCID: ), Jasper Cooper [ctb] (ORCID: ), E Auden Krauska [ctb] (ORCID: ), Alex Wang [ctb], Malcolm Barrett [ctb] (ORCID: ), Charles Gray [ctb] (ORCID: ), Jared Wilber [ctb], Vilmantas Gegzna [ctb] (ORCID: ), Eduard Szoecs [ctb], Frederik Aust [ctb] (ORCID: ), Angus Moore [ctb], Nick Williams [ctb], Marius Barth [ctb] (ORCID: ), Bruna Wundervald [ctb] (ORCID: ), Joyce Cahoon [ctb] (ORCID: ), Grant McDermott [ctb] (ORCID: ), Kevin Zarca [ctb], Shiro Kuriwaki [ctb] (ORCID: ), Lukas Wallrich [ctb] (ORCID: ), James Martherus [ctb] (ORCID: ), Chuliang Xiao [ctb] (ORCID: ), Joseph Larmarange [ctb], Max Kuhn [ctb], Michal Bojanowski [ctb], Hakon Malmedal [ctb], Clara Wang [ctb], Sergio Oller [ctb], Luke Sonnet [ctb], Jim Hester [ctb], Ben Schneider [ctb], Bernie Gray [ctb] (ORCID: ), Mara Averick [ctb], Aaron Jacobs [ctb], Andreas Bender [ctb], Sven Templer [ctb], Paul-Christian Buerkner [ctb], Matthew Kay [ctb], Erwan Le Pennec [ctb], Johan Junkka [ctb], Hao Zhu [ctb], Benjamin Soltoff [ctb], Zoe Wilkinson Saldana [ctb], Tyler Littlefield [ctb], Charles T. Gray [ctb], Shabbh E. Banks [ctb], Serina Robinson [ctb], Roger Bivand [ctb], Riinu Ots [ctb], Nicholas Williams [ctb], Nina Jakobsen [ctb], Michael Weylandt [ctb], Lisa Lendway [ctb], Karl Hailperin [ctb], Josue Rodriguez [ctb], Jenny Bryan [ctb], Chris Jarvis [ctb], Greg Macfarlane [ctb], Brian Mannakee [ctb], Drew Tyre [ctb], Shreyas Singh [ctb], Laurens Geffert [ctb], Hong Ooi [ctb], Henrik Bengtsson [ctb], Eduard Szocs [ctb], David Hugh-Jones [ctb], Matthieu Stigler [ctb], Hugo Tavares [ctb] (ORCID: ), R. Willem Vervoort [ctb], Brenton M. Wiernik [ctb], Josh Yamamoto [ctb], Jasme Lee [ctb], Taren Sanders [ctb] (ORCID: ), Ilaria Prosdocimi [ctb] (ORCID: ), Daniel D. Sjoberg [ctb] (ORCID: ), Alex Reinhart [ctb] (ORCID: )", + "Maintainer": "Simon Couch ", + "Repository": "CRAN" + }, + "bslib": { + "Package": "bslib", + "Version": "0.9.0", + "Source": "Repository", + "Title": "Custom 'Bootstrap' 'Sass' Themes for 'shiny' and 'rmarkdown'", + "Authors@R": "c( person(\"Carson\", \"Sievert\", , \"carson@posit.co\", role = c(\"aut\", \"cre\"), comment = c(ORCID = \"0000-0002-4958-2844\")), person(\"Joe\", \"Cheng\", , \"joe@posit.co\", role = \"aut\"), person(\"Garrick\", \"Aden-Buie\", , \"garrick@posit.co\", role = \"aut\", comment = c(ORCID = \"0000-0002-7111-0077\")), person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\")), person(, \"Bootstrap contributors\", role = \"ctb\", comment = \"Bootstrap library\"), person(, \"Twitter, Inc\", role = \"cph\", comment = \"Bootstrap library\"), person(\"Javi\", \"Aguilar\", role = c(\"ctb\", \"cph\"), comment = \"Bootstrap colorpicker library\"), person(\"Thomas\", \"Park\", role = c(\"ctb\", \"cph\"), comment = \"Bootswatch library\"), person(, \"PayPal\", role = c(\"ctb\", \"cph\"), comment = \"Bootstrap accessibility plugin\") )", + "Description": "Simplifies custom 'CSS' styling of both 'shiny' and 'rmarkdown' via 'Bootstrap' 'Sass'. Supports 'Bootstrap' 3, 4 and 5 as well as their various 'Bootswatch' themes. An interactive widget is also provided for previewing themes in real time.", + "License": "MIT + file LICENSE", + "URL": "https://rstudio.github.io/bslib/, https://github.com/rstudio/bslib", + "BugReports": "https://github.com/rstudio/bslib/issues", + "Depends": [ + "R (>= 2.10)" + ], + "Imports": [ + "base64enc", + "cachem", + "fastmap (>= 1.1.1)", + "grDevices", + "htmltools (>= 0.5.8)", + "jquerylib (>= 0.1.3)", + "jsonlite", + "lifecycle", + "memoise (>= 2.0.1)", + "mime", + "rlang", + "sass (>= 0.4.9)" + ], + "Suggests": [ + "bsicons", + "curl", + "fontawesome", + "future", + "ggplot2", + "knitr", + "magrittr", + "rappdirs", + "rmarkdown (>= 2.7)", + "shiny (> 1.8.1)", + "testthat", + "thematic", + "tools", + "utils", + "withr", + "yaml" + ], + "Config/Needs/deploy": "BH, chiflights22, colourpicker, commonmark, cpp11, cpsievert/chiflights22, cpsievert/histoslider, dplyr, DT, ggplot2, ggridges, gt, hexbin, histoslider, htmlwidgets, lattice, leaflet, lubridate, markdown, modelr, plotly, reactable, reshape2, rprojroot, rsconnect, rstudio/shiny, scales, styler, tibble", + "Config/Needs/routine": "chromote, desc, renv", + "Config/Needs/website": "brio, crosstalk, dplyr, DT, ggplot2, glue, htmlwidgets, leaflet, lorem, palmerpenguins, plotly, purrr, rprojroot, rstudio/htmltools, scales, stringr, tidyr, webshot2", + "Config/testthat/edition": "3", + "Config/testthat/parallel": "true", + "Config/testthat/start-first": "zzzz-bs-sass, fonts, zzz-precompile, theme-*, rmd-*", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.2", + "Collate": "'accordion.R' 'breakpoints.R' 'bs-current-theme.R' 'bs-dependencies.R' 'bs-global.R' 'bs-remove.R' 'bs-theme-layers.R' 'bs-theme-preset-bootswatch.R' 'bs-theme-preset-brand.R' 'bs-theme-preset-builtin.R' 'bs-theme-preset.R' 'utils.R' 'bs-theme-preview.R' 'bs-theme-update.R' 'bs-theme.R' 'bslib-package.R' 'buttons.R' 'card.R' 'deprecated.R' 'files.R' 'fill.R' 'imports.R' 'input-dark-mode.R' 'input-switch.R' 'layout.R' 'nav-items.R' 'nav-update.R' 'navbar_options.R' 'navs-legacy.R' 'navs.R' 'onLoad.R' 'page.R' 'popover.R' 'precompiled.R' 'print.R' 'shiny-devmode.R' 'sidebar.R' 'staticimports.R' 'tooltip.R' 'utils-deps.R' 'utils-shiny.R' 'utils-tags.R' 'value-box.R' 'version-default.R' 'versions.R'", + "NeedsCompilation": "no", + "Author": "Carson Sievert [aut, cre] (), Joe Cheng [aut], Garrick Aden-Buie [aut] (), Posit Software, PBC [cph, fnd], Bootstrap contributors [ctb] (Bootstrap library), Twitter, Inc [cph] (Bootstrap library), Javi Aguilar [ctb, cph] (Bootstrap colorpicker library), Thomas Park [ctb, cph] (Bootswatch library), PayPal [ctb, cph] (Bootstrap accessibility plugin)", + "Maintainer": "Carson Sievert ", + "Repository": "CRAN" + }, + "cachem": { + "Package": "cachem", + "Version": "1.1.0", + "Source": "Repository", + "Title": "Cache R Objects with Automatic Pruning", + "Description": "Key-value stores with automatic pruning. Caches can limit either their total size or the age of the oldest object (or both), automatically pruning objects to maintain the constraints.", + "Authors@R": "c( person(\"Winston\", \"Chang\", , \"winston@posit.co\", c(\"aut\", \"cre\")), person(family = \"Posit Software, PBC\", role = c(\"cph\", \"fnd\")))", + "License": "MIT + file LICENSE", + "Encoding": "UTF-8", + "ByteCompile": "true", + "URL": "https://cachem.r-lib.org/, https://github.com/r-lib/cachem", + "Imports": [ + "rlang", + "fastmap (>= 1.2.0)" + ], + "Suggests": [ + "testthat" + ], + "RoxygenNote": "7.2.3", + "Config/Needs/routine": "lobstr", + "Config/Needs/website": "pkgdown", + "NeedsCompilation": "yes", + "Author": "Winston Chang [aut, cre], Posit Software, PBC [cph, fnd]", + "Maintainer": "Winston Chang ", + "Repository": "CRAN" + }, + "callr": { + "Package": "callr", + "Version": "3.7.6", + "Source": "Repository", + "Title": "Call R from R", + "Authors@R": "c( person(\"Gábor\", \"Csárdi\", , \"csardi.gabor@gmail.com\", role = c(\"aut\", \"cre\", \"cph\"), comment = c(ORCID = \"0000-0001-7098-9676\")), person(\"Winston\", \"Chang\", role = \"aut\"), person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\")), person(\"Ascent Digital Services\", role = c(\"cph\", \"fnd\")) )", + "Description": "It is sometimes useful to perform a computation in a separate R process, without affecting the current R process at all. This packages does exactly that.", + "License": "MIT + file LICENSE", + "URL": "https://callr.r-lib.org, https://github.com/r-lib/callr", + "BugReports": "https://github.com/r-lib/callr/issues", + "Depends": [ + "R (>= 3.4)" + ], + "Imports": [ + "processx (>= 3.6.1)", + "R6", + "utils" + ], + "Suggests": [ + "asciicast (>= 2.3.1)", + "cli (>= 1.1.0)", + "mockery", + "ps", + "rprojroot", + "spelling", + "testthat (>= 3.2.0)", + "withr (>= 2.3.0)" + ], + "Config/Needs/website": "r-lib/asciicast, glue, htmlwidgets, igraph, tibble, tidyverse/tidytemplate", + "Config/testthat/edition": "3", + "Encoding": "UTF-8", + "Language": "en-US", + "RoxygenNote": "7.3.1.9000", + "NeedsCompilation": "no", + "Author": "Gábor Csárdi [aut, cre, cph] (), Winston Chang [aut], Posit Software, PBC [cph, fnd], Ascent Digital Services [cph, fnd]", + "Maintainer": "Gábor Csárdi ", + "Repository": "CRAN" + }, + "checkmate": { + "Package": "checkmate", + "Version": "2.3.3", + "Source": "Repository", + "Type": "Package", + "Title": "Fast and Versatile Argument Checks", + "Description": "Tests and assertions to perform frequent argument checks. A substantial part of the package was written in C to minimize any worries about execution time overhead.", + "Authors@R": "c( person(\"Michel\", \"Lang\", NULL, \"michellang@gmail.com\", role = c(\"cre\", \"aut\"), comment = c(ORCID = \"0000-0001-9754-0393\")), person(\"Bernd\", \"Bischl\", NULL, \"bernd_bischl@gmx.net\", role = \"ctb\"), person(\"Dénes\", \"Tóth\", NULL, \"toth.denes@kogentum.hu\", role = \"ctb\", comment = c(ORCID = \"0000-0003-4262-3217\")) )", + "URL": "https://mllg.github.io/checkmate/, https://github.com/mllg/checkmate", + "URLNote": "https://github.com/mllg/checkmate", + "BugReports": "https://github.com/mllg/checkmate/issues", + "NeedsCompilation": "yes", + "ByteCompile": "yes", + "Encoding": "UTF-8", + "Depends": [ + "R (>= 3.0.0)" + ], + "Imports": [ + "backports (>= 1.1.0)", + "utils" + ], + "Suggests": [ + "R6", + "fastmatch", + "data.table (>= 1.9.8)", + "devtools", + "ggplot2", + "knitr", + "magrittr", + "microbenchmark", + "rmarkdown", + "testthat (>= 3.0.4)", + "tinytest (>= 1.1.0)", + "tibble" + ], + "License": "BSD_3_clause + file LICENSE", + "VignetteBuilder": "knitr", + "RoxygenNote": "7.3.2", + "Collate": "'AssertCollection.R' 'allMissing.R' 'anyInfinite.R' 'anyMissing.R' 'anyNaN.R' 'asInteger.R' 'assert.R' 'helper.R' 'makeExpectation.R' 'makeTest.R' 'makeAssertion.R' 'checkAccess.R' 'checkArray.R' 'checkAtomic.R' 'checkAtomicVector.R' 'checkCharacter.R' 'checkChoice.R' 'checkClass.R' 'checkComplex.R' 'checkCount.R' 'checkDataFrame.R' 'checkDataTable.R' 'checkDate.R' 'checkDirectoryExists.R' 'checkDisjunct.R' 'checkDouble.R' 'checkEnvironment.R' 'checkFALSE.R' 'checkFactor.R' 'checkFileExists.R' 'checkFlag.R' 'checkFormula.R' 'checkFunction.R' 'checkInt.R' 'checkInteger.R' 'checkIntegerish.R' 'checkList.R' 'checkLogical.R' 'checkMatrix.R' 'checkMultiClass.R' 'checkNamed.R' 'checkNames.R' 'checkNull.R' 'checkNumber.R' 'checkNumeric.R' 'checkOS.R' 'checkPOSIXct.R' 'checkPathForOutput.R' 'checkPermutation.R' 'checkR6.R' 'checkRaw.R' 'checkScalar.R' 'checkScalarNA.R' 'checkSetEqual.R' 'checkString.R' 'checkSubset.R' 'checkTRUE.R' 'checkTibble.R' 'checkVector.R' 'coalesce.R' 'isIntegerish.R' 'matchArg.R' 'qassert.R' 'qassertr.R' 'vname.R' 'wfwl.R' 'zzz.R'", + "Author": "Michel Lang [cre, aut] (ORCID: ), Bernd Bischl [ctb], Dénes Tóth [ctb] (ORCID: )", + "Maintainer": "Michel Lang ", + "Repository": "CRAN" + }, + "chromote": { + "Package": "chromote", + "Version": "0.5.1", + "Source": "Repository", + "Title": "Headless Chrome Web Browser Interface", + "Authors@R": "c( person(\"Garrick\", \"Aden-Buie\", , \"garrick@posit.co\", role = c(\"aut\", \"cre\"), comment = c(ORCID = \"0000-0002-7111-0077\")), person(\"Winston\", \"Chang\", , \"winston@posit.co\", role = \"aut\"), person(\"Barret\", \"Schloerke\", , \"barret@posit.co\", role = \"aut\", comment = c(ORCID = \"0000-0001-9986-114X\")), person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\"), comment = c(ROR = \"03wc8by49\")) )", + "Description": "An implementation of the 'Chrome DevTools Protocol', for controlling a headless Chrome web browser.", + "License": "MIT + file LICENSE", + "URL": "https://rstudio.github.io/chromote/, https://github.com/rstudio/chromote", + "BugReports": "https://github.com/rstudio/chromote/issues", + "Imports": [ + "cli", + "curl", + "fastmap", + "jsonlite", + "later (>= 1.1.0)", + "magrittr", + "processx", + "promises (>= 1.1.1)", + "R6", + "rlang (>= 1.1.0)", + "utils", + "websocket (>= 1.2.0)", + "withr", + "zip" + ], + "Suggests": [ + "knitr", + "rmarkdown", + "showimage", + "testthat (>= 3.0.0)" + ], + "VignetteBuilder": "knitr", + "Config/Needs/website": "r-lib/pkgdown, rstudio/bslib", + "Config/testthat/edition": "3", + "Config/testthat/parallel": "FALSE", + "Config/testthat/start-first": "chromote_session", + "Encoding": "UTF-8", + "Language": "en-US", + "RoxygenNote": "7.3.2", + "SystemRequirements": "Google Chrome or other Chromium-based browser. chromium: chromium (rpm) or chromium-browser (deb)", + "NeedsCompilation": "no", + "Author": "Garrick Aden-Buie [aut, cre] (), Winston Chang [aut], Barret Schloerke [aut] (), Posit Software, PBC [cph, fnd] (03wc8by49)", + "Maintainer": "Garrick Aden-Buie ", + "Repository": "CRAN" + }, + "class": { + "Package": "class", + "Version": "7.3-22", + "Source": "Repository", + "Priority": "recommended", + "Date": "2023-05-02", + "Depends": [ + "R (>= 3.0.0)", + "stats", + "utils" + ], + "Imports": [ + "MASS" + ], + "Authors@R": "c(person(\"Brian\", \"Ripley\", role = c(\"aut\", \"cre\", \"cph\"), email = \"ripley@stats.ox.ac.uk\"), person(\"William\", \"Venables\", role = \"cph\"))", + "Description": "Various functions for classification, including k-nearest neighbour, Learning Vector Quantization and Self-Organizing Maps.", + "Title": "Functions for Classification", + "ByteCompile": "yes", + "License": "GPL-2 | GPL-3", + "URL": "http://www.stats.ox.ac.uk/pub/MASS4/", + "NeedsCompilation": "yes", + "Author": "Brian Ripley [aut, cre, cph], William Venables [cph]", + "Maintainer": "Brian Ripley ", + "Repository": "CRAN" + }, + "cli": { + "Package": "cli", + "Version": "3.6.5", + "Source": "Repository", + "Title": "Helpers for Developing Command Line Interfaces", + "Authors@R": "c( person(\"Gábor\", \"Csárdi\", , \"gabor@posit.co\", role = c(\"aut\", \"cre\")), person(\"Hadley\", \"Wickham\", role = \"ctb\"), person(\"Kirill\", \"Müller\", role = \"ctb\"), person(\"Salim\", \"Brüggemann\", , \"salim-b@pm.me\", role = \"ctb\", comment = c(ORCID = \"0000-0002-5329-5987\")), person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\")) )", + "Description": "A suite of tools to build attractive command line interfaces ('CLIs'), from semantic elements: headings, lists, alerts, paragraphs, etc. Supports custom themes via a 'CSS'-like language. It also contains a number of lower level 'CLI' elements: rules, boxes, trees, and 'Unicode' symbols with 'ASCII' alternatives. It support ANSI colors and text styles as well.", + "License": "MIT + file LICENSE", + "URL": "https://cli.r-lib.org, https://github.com/r-lib/cli", + "BugReports": "https://github.com/r-lib/cli/issues", + "Depends": [ + "R (>= 3.4)" + ], + "Imports": [ + "utils" + ], + "Suggests": [ + "callr", + "covr", + "crayon", + "digest", + "glue (>= 1.6.0)", + "grDevices", + "htmltools", + "htmlwidgets", + "knitr", + "methods", + "processx", + "ps (>= 1.3.4.9000)", + "rlang (>= 1.0.2.9003)", + "rmarkdown", + "rprojroot", + "rstudioapi", + "testthat (>= 3.2.0)", + "tibble", + "whoami", + "withr" + ], + "Config/Needs/website": "r-lib/asciicast, bench, brio, cpp11, decor, desc, fansi, prettyunits, sessioninfo, tidyverse/tidytemplate, usethis, vctrs", + "Config/testthat/edition": "3", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.2", + "NeedsCompilation": "yes", + "Author": "Gábor Csárdi [aut, cre], Hadley Wickham [ctb], Kirill Müller [ctb], Salim Brüggemann [ctb] (), Posit Software, PBC [cph, fnd]", + "Maintainer": "Gábor Csárdi ", + "Repository": "CRAN" + }, + "clipr": { + "Package": "clipr", + "Version": "0.8.0", + "Source": "Repository", + "Type": "Package", + "Title": "Read and Write from the System Clipboard", + "Authors@R": "c( person(\"Matthew\", \"Lincoln\", , \"matthew.d.lincoln@gmail.com\", role = c(\"aut\", \"cre\"), comment = c(ORCID = \"0000-0002-4387-3384\")), person(\"Louis\", \"Maddox\", role = \"ctb\"), person(\"Steve\", \"Simpson\", role = \"ctb\"), person(\"Jennifer\", \"Bryan\", role = \"ctb\") )", + "Description": "Simple utility functions to read from and write to the Windows, OS X, and X11 clipboards.", + "License": "GPL-3", + "URL": "https://github.com/mdlincoln/clipr, http://matthewlincoln.net/clipr/", + "BugReports": "https://github.com/mdlincoln/clipr/issues", + "Imports": [ + "utils" + ], + "Suggests": [ + "covr", + "knitr", + "rmarkdown", + "rstudioapi (>= 0.5)", + "testthat (>= 2.0.0)" + ], + "VignetteBuilder": "knitr", + "Encoding": "UTF-8", + "Language": "en-US", + "RoxygenNote": "7.1.2", + "SystemRequirements": "xclip (https://github.com/astrand/xclip) or xsel (http://www.vergenet.net/~conrad/software/xsel/) for accessing the X11 clipboard, or wl-clipboard (https://github.com/bugaevc/wl-clipboard) for systems using Wayland.", + "NeedsCompilation": "no", + "Author": "Matthew Lincoln [aut, cre] (), Louis Maddox [ctb], Steve Simpson [ctb], Jennifer Bryan [ctb]", + "Maintainer": "Matthew Lincoln ", + "Repository": "CRAN" + }, + "clock": { + "Package": "clock", + "Version": "0.7.3", + "Source": "Repository", + "Title": "Date-Time Types and Tools", + "Authors@R": "c( person(\"Davis\", \"Vaughan\", , \"davis@posit.co\", role = c(\"aut\", \"cre\")), person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\")) )", + "Description": "Provides a comprehensive library for date-time manipulations using a new family of orthogonal date-time classes (durations, time points, zoned-times, and calendars) that partition responsibilities so that the complexities of time zones are only considered when they are really needed. Capabilities include: date-time parsing, formatting, arithmetic, extraction and updating of components, and rounding.", + "License": "MIT + file LICENSE", + "URL": "https://clock.r-lib.org, https://github.com/r-lib/clock", + "BugReports": "https://github.com/r-lib/clock/issues", + "Depends": [ + "R (>= 4.0.0)" + ], + "Imports": [ + "cli (>= 3.6.4)", + "lifecycle (>= 1.0.4)", + "rlang (>= 1.1.5)", + "tzdb (>= 0.5.0)", + "vctrs (>= 0.6.5)" + ], + "Suggests": [ + "covr", + "knitr", + "magrittr", + "pillar", + "rmarkdown", + "slider (>= 0.3.2)", + "testthat (>= 3.0.0)", + "withr" + ], + "LinkingTo": [ + "cpp11 (>= 0.5.2)", + "tzdb (>= 0.5.0)" + ], + "VignetteBuilder": "knitr", + "Config/build/compilation-database": "true", + "Config/Needs/website": "lubridate, tidyverse/tidytemplate", + "Config/testthat/edition": "3", + "Encoding": "UTF-8", + "LazyData": "true", + "RoxygenNote": "7.3.2", + "NeedsCompilation": "yes", + "Author": "Davis Vaughan [aut, cre], Posit Software, PBC [cph, fnd]", + "Maintainer": "Davis Vaughan ", + "Repository": "CRAN" + }, + "codetools": { + "Package": "codetools", + "Version": "0.2-19", + "Source": "Repository", + "Priority": "recommended", + "Author": "Luke Tierney ", + "Description": "Code analysis tools for R.", + "Title": "Code Analysis Tools for R", + "Depends": [ + "R (>= 2.1)" + ], + "Maintainer": "Luke Tierney ", + "URL": "https://gitlab.com/luke-tierney/codetools", + "License": "GPL", + "NeedsCompilation": "no", + "Repository": "CRAN" + }, + "colorspace": { + "Package": "colorspace", + "Version": "2.1-1", + "Source": "Repository", + "Date": "2024-07-26", + "Title": "A Toolbox for Manipulating and Assessing Colors and Palettes", + "Authors@R": "c(person(given = \"Ross\", family = \"Ihaka\", role = \"aut\", email = \"ihaka@stat.auckland.ac.nz\"), person(given = \"Paul\", family = \"Murrell\", role = \"aut\", email = \"paul@stat.auckland.ac.nz\", comment = c(ORCID = \"0000-0002-3224-8858\")), person(given = \"Kurt\", family = \"Hornik\", role = \"aut\", email = \"Kurt.Hornik@R-project.org\", comment = c(ORCID = \"0000-0003-4198-9911\")), person(given = c(\"Jason\", \"C.\"), family = \"Fisher\", role = \"aut\", email = \"jfisher@usgs.gov\", comment = c(ORCID = \"0000-0001-9032-8912\")), person(given = \"Reto\", family = \"Stauffer\", role = \"aut\", email = \"Reto.Stauffer@uibk.ac.at\", comment = c(ORCID = \"0000-0002-3798-5507\")), person(given = c(\"Claus\", \"O.\"), family = \"Wilke\", role = \"aut\", email = \"wilke@austin.utexas.edu\", comment = c(ORCID = \"0000-0002-7470-9261\")), person(given = c(\"Claire\", \"D.\"), family = \"McWhite\", role = \"aut\", email = \"claire.mcwhite@utmail.utexas.edu\", comment = c(ORCID = \"0000-0001-7346-3047\")), person(given = \"Achim\", family = \"Zeileis\", role = c(\"aut\", \"cre\"), email = \"Achim.Zeileis@R-project.org\", comment = c(ORCID = \"0000-0003-0918-3766\")))", + "Description": "Carries out mapping between assorted color spaces including RGB, HSV, HLS, CIEXYZ, CIELUV, HCL (polar CIELUV), CIELAB, and polar CIELAB. Qualitative, sequential, and diverging color palettes based on HCL colors are provided along with corresponding ggplot2 color scales. Color palette choice is aided by an interactive app (with either a Tcl/Tk or a shiny graphical user interface) and shiny apps with an HCL color picker and a color vision deficiency emulator. Plotting functions for displaying and assessing palettes include color swatches, visualizations of the HCL space, and trajectories in HCL and/or RGB spectrum. Color manipulation functions include: desaturation, lightening/darkening, mixing, and simulation of color vision deficiencies (deutanomaly, protanomaly, tritanomaly). Details can be found on the project web page at and in the accompanying scientific paper: Zeileis et al. (2020, Journal of Statistical Software, ).", + "Depends": [ + "R (>= 3.0.0)", + "methods" + ], + "Imports": [ + "graphics", + "grDevices", + "stats" + ], + "Suggests": [ + "datasets", + "utils", + "KernSmooth", + "MASS", + "kernlab", + "mvtnorm", + "vcd", + "tcltk", + "shiny", + "shinyjs", + "ggplot2", + "dplyr", + "scales", + "grid", + "png", + "jpeg", + "knitr", + "rmarkdown", + "RColorBrewer", + "rcartocolor", + "scico", + "viridis", + "wesanderson" + ], + "VignetteBuilder": "knitr", + "License": "BSD_3_clause + file LICENSE", + "URL": "https://colorspace.R-Forge.R-project.org/, https://hclwizard.org/", + "BugReports": "https://colorspace.R-Forge.R-project.org/contact.html", + "LazyData": "yes", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.1", + "NeedsCompilation": "yes", + "Author": "Ross Ihaka [aut], Paul Murrell [aut] (), Kurt Hornik [aut] (), Jason C. Fisher [aut] (), Reto Stauffer [aut] (), Claus O. Wilke [aut] (), Claire D. McWhite [aut] (), Achim Zeileis [aut, cre] ()", + "Maintainer": "Achim Zeileis ", + "Repository": "CRAN" + }, + "commonmark": { + "Package": "commonmark", + "Version": "2.0.0", + "Source": "Repository", + "Type": "Package", + "Title": "High Performance CommonMark and Github Markdown Rendering in R", + "Authors@R": "c( person(\"Jeroen\", \"Ooms\", ,\"jeroenooms@gmail.com\", role = c(\"aut\", \"cre\"), comment = c(ORCID = \"0000-0002-4035-0289\")), person(\"John MacFarlane\", role = \"cph\", comment = \"Author of cmark\"))", + "Description": "The CommonMark specification defines a rationalized version of markdown syntax. This package uses the 'cmark' reference implementation for converting markdown text into various formats including html, latex and groff man. In addition it exposes the markdown parse tree in xml format. Also includes opt-in support for GFM extensions including tables, autolinks, and strikethrough text.", + "License": "BSD_2_clause + file LICENSE", + "URL": "https://docs.ropensci.org/commonmark/ https://ropensci.r-universe.dev/commonmark", + "BugReports": "https://github.com/r-lib/commonmark/issues", + "Suggests": [ + "curl", + "testthat", + "xml2" + ], + "RoxygenNote": "7.3.2", + "Language": "en-US", + "Encoding": "UTF-8", + "NeedsCompilation": "yes", + "Author": "Jeroen Ooms [aut, cre] (ORCID: ), John MacFarlane [cph] (Author of cmark)", + "Maintainer": "Jeroen Ooms ", + "Repository": "CRAN" + }, + "config": { + "Package": "config", + "Version": "0.3.2", + "Source": "Repository", + "Type": "Package", + "Title": "Manage Environment Specific Configuration Values", + "Authors@R": "c( person(\"JJ\", \"Allaire\", role = c(\"aut\"), email = \"jj@rstudio.com\"), person(\"Andrie\", \"de Vries\", role = \"cre\", email = \"apdevries@gmail.com\"), person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\")) )", + "Imports": [ + "yaml (>= 2.1.19)" + ], + "Suggests": [ + "testthat", + "knitr", + "rmarkdown", + "covr", + "spelling", + "withr" + ], + "Description": "Manage configuration values across multiple environments (e.g. development, test, production). Read values using a function that determines the current environment and returns the appropriate value.", + "License": "GPL-3", + "URL": "https://rstudio.github.io/config/, https://github.com/rstudio/config", + "BugReports": "https://github.com/rstudio/config/issues", + "RoxygenNote": "7.2.3", + "VignetteBuilder": "knitr", + "Encoding": "UTF-8", + "Language": "en-US", + "Config/testthat/edition": "3", + "NeedsCompilation": "no", + "Author": "JJ Allaire [aut], Andrie de Vries [cre], Posit Software, PBC [cph, fnd]", + "Maintainer": "Andrie de Vries ", + "Repository": "CRAN" + }, + "connectapi": { + "Package": "connectapi", + "Version": "0.8.0", + "Source": "Repository", + "Type": "Package", + "Title": "Utilities for Interacting with the 'Posit Connect' Server API", + "Authors@R": "c( person(given = \"Toph\", family = \"Allen\", role = c(\"aut\", \"cre\"), email = \"toph@posit.co\"), person(given = \"Neal\", family = \"Richardson\", role = c(\"aut\")), person(given = \"Sean\", family = \"Lopp\", role = c(\"aut\")), person(given = \"Cole\", family = \"Arendt\", role = c(\"aut\")), person(given = \"Posit, PBC\", role = c(\"cph\", \"fnd\")))", + "Description": "Provides a helpful 'R6' class and methods for interacting with the 'Posit Connect' Server API along with some meaningful utility functions for regular tasks. API documentation varies by 'Posit Connect' installation and version, but the latest documentation is also hosted publicly at .", + "License": "MIT + file LICENSE", + "URL": "https://posit-dev.github.io/connectapi/, https://github.com/posit-dev/connectapi", + "BugReports": "https://github.com/posit-dev/connectapi/issues", + "Imports": [ + "bit64", + "fs", + "glue", + "httr", + "mime", + "jsonlite", + "lifecycle", + "magrittr", + "purrr", + "R6", + "rlang (>= 0.4.2)", + "tibble", + "uuid", + "vctrs (>= 0.3.0)", + "base64enc" + ], + "Suggests": [ + "covr", + "dbplyr", + "dplyr", + "ggplot2", + "gridExtra", + "httptest", + "knitr", + "lubridate", + "progress", + "rmarkdown", + "rprojroot", + "rsconnect", + "spelling", + "testthat", + "tidyr", + "webshot2", + "withr" + ], + "VignetteBuilder": "knitr", + "Encoding": "UTF-8", + "Language": "en-US", + "RoxygenNote": "7.3.2", + "Config/testthat/edition": "3", + "Collate": "'audits.R' 'browse.R' 'connect.R' 'connectapi-package.R' 'connectapi.R' 'content.R' 'deploy.R' 'get.R' 'git.R' 'groups.R' 'integrations.R' 'lazy.R' 'page.R' 'parse.R' 'promote.R' 'ptype.R' 'remote.R' 'runtime-caches.R' 'schedule.R' 'tags.R' 'utils.R' 'thumbnail.R' 'user.R' 'utils-ci.R' 'utils-pipe.R' 'variant.R'", + "NeedsCompilation": "no", + "Author": "Toph Allen [aut, cre], Neal Richardson [aut], Sean Lopp [aut], Cole Arendt [aut], Posit, PBC [cph, fnd]", + "Maintainer": "Toph Allen ", + "Repository": "CRAN" + }, + "corrplot": { + "Package": "corrplot", + "Version": "0.95", + "Source": "Repository", + "Type": "Package", + "Title": "Visualization of a Correlation Matrix", + "Date": "2024-10-14", + "Authors@R": "c( person('Taiyun', 'Wei', email = 'weitaiyun@gmail.com', role = c('cre', 'aut')), person('Viliam', 'Simko', email = 'viliam.simko@gmail.com', role = 'aut'), person('Michael', 'Levy', email = 'michael.levy@healthcatalyst.com', role = 'ctb'), person('Yihui', 'Xie', email = 'xie@yihui.name', role = 'ctb'), person('Yan', 'Jin', email = 'jyfeather@gmail.com', role = 'ctb'), person('Jeff', 'Zemla', email = 'zemla@wisc.edu', role = 'ctb'), person('Moritz', 'Freidank', email = 'freidankm@googlemail.com', role = 'ctb'), person('Jun', 'Cai', email = 'cai-j12@mails.tsinghua.edu.cn', role = 'ctb'), person('Tomas', 'Protivinsky', email = 'tomas.protivinsky@gmail.com', role = 'ctb') )", + "Maintainer": "Taiyun Wei ", + "Suggests": [ + "seriation", + "knitr", + "RColorBrewer", + "rmarkdown", + "magrittr", + "prettydoc", + "testthat" + ], + "Description": "Provides a visual exploratory tool on correlation matrix that supports automatic variable reordering to help detect hidden patterns among variables.", + "License": "MIT + file LICENSE", + "URL": "https://github.com/taiyun/corrplot", + "BugReports": "https://github.com/taiyun/corrplot/issues", + "VignetteBuilder": "knitr", + "RoxygenNote": "7.2.1", + "NeedsCompilation": "no", + "Author": "Taiyun Wei [cre, aut], Viliam Simko [aut], Michael Levy [ctb], Yihui Xie [ctb], Yan Jin [ctb], Jeff Zemla [ctb], Moritz Freidank [ctb], Jun Cai [ctb], Tomas Protivinsky [ctb]", + "Repository": "CRAN", + "Encoding": "UTF-8" + }, + "countrycode": { + "Package": "countrycode", + "Version": "1.6.1", + "Source": "Repository", + "Type": "Package", + "Title": "Convert Country Names and Country Codes", + "Authors@R": "c(person(given = \"Vincent\", family = \"Arel-Bundock\", role = c(\"aut\", \"cre\"), email = \"vincent.arel-bundock@umontreal.ca\", comment = c(ORCID = \"0000-0003-2042-7063\")), person(given = \"CJ\", family = \"Yetman\", role = \"ctb\", email = \"cj@cjyetman.com\", comment = c(ORCID = \"0000-0001-5099-9500\")), person(given = \"Nils\", family = \"Enevoldsen\", role = \"ctb\", email = \"nils@wlonk.com\", comment = c(ORCID = \"0000-0001-7195-4117\")), person(\"Etienne\", \"Bacher\", email = \"etienne.bacher@protonmail.com\", role = \"ctb\", comment = c(ORCID = \"0000-0002-9271-5075\")), person(given = \"Samuel\", family = \"Meichtry\", role = \"ctb\", email = \"samuel.meichtry@bj.admin.ch\", comment = c(ORCID = \"0000-0003-2165-791X\")))", + "Description": "Standardize country names, convert them into one of 40 different coding schemes, convert between coding schemes, and assign region descriptors.", + "License": "GPL-3", + "URL": "https://vincentarelbundock.github.io/countrycode/", + "BugReports": "https://github.com/vincentarelbundock/countrycode/issues", + "Depends": [ + "R (>= 2.10)" + ], + "Suggests": [ + "altdoc", + "eurostat", + "testthat", + "tibble", + "ISOcodes", + "utf8" + ], + "Encoding": "UTF-8", + "LazyData": "yes", + "LazyLoad": "yes", + "RoxygenNote": "7.3.2", + "NeedsCompilation": "no", + "Author": "Vincent Arel-Bundock [aut, cre] (), CJ Yetman [ctb] (), Nils Enevoldsen [ctb] (), Etienne Bacher [ctb] (), Samuel Meichtry [ctb] ()", + "Maintainer": "Vincent Arel-Bundock ", + "Repository": "CRAN" + }, + "cpp11": { + "Package": "cpp11", + "Version": "0.5.2", + "Source": "Repository", + "Title": "A C++11 Interface for R's C Interface", + "Authors@R": "c( person(\"Davis\", \"Vaughan\", email = \"davis@posit.co\", role = c(\"aut\", \"cre\"), comment = c(ORCID = \"0000-0003-4777-038X\")), person(\"Jim\",\"Hester\", role = \"aut\", comment = c(ORCID = \"0000-0002-2739-7082\")), person(\"Romain\", \"François\", role = \"aut\", comment = c(ORCID = \"0000-0002-2444-4226\")), person(\"Benjamin\", \"Kietzman\", role = \"ctb\"), person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\")) )", + "Description": "Provides a header only, C++11 interface to R's C interface. Compared to other approaches 'cpp11' strives to be safe against long jumps from the C API as well as C++ exceptions, conform to normal R function semantics and supports interaction with 'ALTREP' vectors.", + "License": "MIT + file LICENSE", + "URL": "https://cpp11.r-lib.org, https://github.com/r-lib/cpp11", + "BugReports": "https://github.com/r-lib/cpp11/issues", + "Depends": [ + "R (>= 4.0.0)" + ], + "Suggests": [ + "bench", + "brio", + "callr", + "cli", + "covr", + "decor", + "desc", + "ggplot2", + "glue", + "knitr", + "lobstr", + "mockery", + "progress", + "rmarkdown", + "scales", + "Rcpp", + "testthat (>= 3.2.0)", + "tibble", + "utils", + "vctrs", + "withr" + ], + "VignetteBuilder": "knitr", + "Config/Needs/website": "tidyverse/tidytemplate", + "Config/testthat/edition": "3", + "Config/Needs/cpp11/cpp_register": "brio, cli, decor, desc, glue, tibble, vctrs", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.2", + "NeedsCompilation": "no", + "Author": "Davis Vaughan [aut, cre] (), Jim Hester [aut] (), Romain François [aut] (), Benjamin Kietzman [ctb], Posit Software, PBC [cph, fnd]", + "Maintainer": "Davis Vaughan ", + "Repository": "CRAN" + }, + "crayon": { + "Package": "crayon", + "Version": "1.5.3", + "Source": "Repository", + "Title": "Colored Terminal Output", + "Authors@R": "c( person(\"Gábor\", \"Csárdi\", , \"csardi.gabor@gmail.com\", role = c(\"aut\", \"cre\")), person(\"Brodie\", \"Gaslam\", , \"brodie.gaslam@yahoo.com\", role = \"ctb\"), person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\")) )", + "Description": "The crayon package is now superseded. Please use the 'cli' package for new projects. Colored terminal output on terminals that support 'ANSI' color and highlight codes. It also works in 'Emacs' 'ESS'. 'ANSI' color support is automatically detected. Colors and highlighting can be combined and nested. New styles can also be created easily. This package was inspired by the 'chalk' 'JavaScript' project.", + "License": "MIT + file LICENSE", + "URL": "https://r-lib.github.io/crayon/, https://github.com/r-lib/crayon", + "BugReports": "https://github.com/r-lib/crayon/issues", + "Imports": [ + "grDevices", + "methods", + "utils" + ], + "Suggests": [ + "mockery", + "rstudioapi", + "testthat", + "withr" + ], + "Config/Needs/website": "tidyverse/tidytemplate", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.1", + "Collate": "'aaa-rstudio-detect.R' 'aaaa-rematch2.R' 'aab-num-ansi-colors.R' 'aac-num-ansi-colors.R' 'ansi-256.R' 'ansi-palette.R' 'combine.R' 'string.R' 'utils.R' 'crayon-package.R' 'disposable.R' 'enc-utils.R' 'has_ansi.R' 'has_color.R' 'link.R' 'styles.R' 'machinery.R' 'parts.R' 'print.R' 'style-var.R' 'show.R' 'string_operations.R'", + "NeedsCompilation": "no", + "Author": "Gábor Csárdi [aut, cre], Brodie Gaslam [ctb], Posit Software, PBC [cph, fnd]", + "Maintainer": "Gábor Csárdi ", + "Repository": "CRAN" + }, + "crosstalk": { + "Package": "crosstalk", + "Version": "1.2.1", + "Source": "Repository", + "Type": "Package", + "Title": "Inter-Widget Interactivity for HTML Widgets", + "Authors@R": "c( person(\"Joe\", \"Cheng\", role = \"aut\", email = \"joe@posit.co\"), person(\"Carson\", \"Sievert\", role = c(\"aut\", \"cre\"), email = \"carson@posit.co\", comment = c(ORCID = \"0000-0002-4958-2844\")), person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\")), person(family = \"jQuery Foundation\", role = \"cph\", comment = \"jQuery library and jQuery UI library\"), person(family = \"jQuery contributors\", role = c(\"ctb\", \"cph\"), comment = \"jQuery library; authors listed in inst/www/shared/jquery-AUTHORS.txt\"), person(\"Mark\", \"Otto\", role = \"ctb\", comment = \"Bootstrap library\"), person(\"Jacob\", \"Thornton\", role = \"ctb\", comment = \"Bootstrap library\"), person(family = \"Bootstrap contributors\", role = \"ctb\", comment = \"Bootstrap library\"), person(family = \"Twitter, Inc\", role = \"cph\", comment = \"Bootstrap library\"), person(\"Brian\", \"Reavis\", role = c(\"ctb\", \"cph\"), comment = \"selectize.js library\"), person(\"Kristopher Michael\", \"Kowal\", role = c(\"ctb\", \"cph\"), comment = \"es5-shim library\"), person(family = \"es5-shim contributors\", role = c(\"ctb\", \"cph\"), comment = \"es5-shim library\"), person(\"Denis\", \"Ineshin\", role = c(\"ctb\", \"cph\"), comment = \"ion.rangeSlider library\"), person(\"Sami\", \"Samhuri\", role = c(\"ctb\", \"cph\"), comment = \"Javascript strftime library\") )", + "Description": "Provides building blocks for allowing HTML widgets to communicate with each other, with Shiny or without (i.e. static .html files). Currently supports linked brushing and filtering.", + "License": "MIT + file LICENSE", + "Imports": [ + "htmltools (>= 0.3.6)", + "jsonlite", + "lazyeval", + "R6" + ], + "Suggests": [ + "shiny", + "ggplot2", + "testthat (>= 2.1.0)", + "sass", + "bslib" + ], + "URL": "https://rstudio.github.io/crosstalk/, https://github.com/rstudio/crosstalk", + "BugReports": "https://github.com/rstudio/crosstalk/issues", + "RoxygenNote": "7.2.3", + "Encoding": "UTF-8", + "NeedsCompilation": "no", + "Author": "Joe Cheng [aut], Carson Sievert [aut, cre] (), Posit Software, PBC [cph, fnd], jQuery Foundation [cph] (jQuery library and jQuery UI library), jQuery contributors [ctb, cph] (jQuery library; authors listed in inst/www/shared/jquery-AUTHORS.txt), Mark Otto [ctb] (Bootstrap library), Jacob Thornton [ctb] (Bootstrap library), Bootstrap contributors [ctb] (Bootstrap library), Twitter, Inc [cph] (Bootstrap library), Brian Reavis [ctb, cph] (selectize.js library), Kristopher Michael Kowal [ctb, cph] (es5-shim library), es5-shim contributors [ctb, cph] (es5-shim library), Denis Ineshin [ctb, cph] (ion.rangeSlider library), Sami Samhuri [ctb, cph] (Javascript strftime library)", + "Maintainer": "Carson Sievert ", + "Repository": "CRAN" + }, + "curl": { + "Package": "curl", + "Version": "7.0.0", + "Source": "Repository", + "Type": "Package", + "Title": "A Modern and Flexible Web Client for R", + "Authors@R": "c( person(\"Jeroen\", \"Ooms\", role = c(\"aut\", \"cre\"), email = \"jeroenooms@gmail.com\", comment = c(ORCID = \"0000-0002-4035-0289\")), person(\"Hadley\", \"Wickham\", role = \"ctb\"), person(\"Posit Software, PBC\", role = \"cph\"))", + "Description": "Bindings to 'libcurl' for performing fully configurable HTTP/FTP requests where responses can be processed in memory, on disk, or streaming via the callback or connection interfaces. Some knowledge of 'libcurl' is recommended; for a more-user-friendly web client see the 'httr2' package which builds on this package with http specific tools and logic.", + "License": "MIT + file LICENSE", + "SystemRequirements": "libcurl (>= 7.73): libcurl-devel (rpm) or libcurl4-openssl-dev (deb)", + "URL": "https://jeroen.r-universe.dev/curl", + "BugReports": "https://github.com/jeroen/curl/issues", + "Suggests": [ + "spelling", + "testthat (>= 1.0.0)", + "knitr", + "jsonlite", + "later", + "rmarkdown", + "httpuv (>= 1.4.4)", + "webutils" + ], + "VignetteBuilder": "knitr", + "Depends": [ + "R (>= 3.0.0)" + ], + "RoxygenNote": "7.3.2", + "Encoding": "UTF-8", + "Language": "en-US", + "NeedsCompilation": "yes", + "Author": "Jeroen Ooms [aut, cre] (ORCID: ), Hadley Wickham [ctb], Posit Software, PBC [cph]", + "Maintainer": "Jeroen Ooms ", + "Repository": "CRAN" + }, + "data.table": { + "Package": "data.table", + "Version": "1.17.8", + "Source": "Repository", + "Title": "Extension of `data.frame`", + "Depends": [ + "R (>= 3.3.0)" + ], + "Imports": [ + "methods" + ], + "Suggests": [ + "bit64 (>= 4.0.0)", + "bit (>= 4.0.4)", + "R.utils", + "xts", + "zoo (>= 1.8-1)", + "yaml", + "knitr", + "markdown" + ], + "Description": "Fast aggregation of large data (e.g. 100GB in RAM), fast ordered joins, fast add/modify/delete of columns by group using no copies at all, list columns, friendly and fast character-separated-value read/write. Offers a natural and flexible syntax, for faster development.", + "License": "MPL-2.0 | file LICENSE", + "URL": "https://r-datatable.com, https://Rdatatable.gitlab.io/data.table, https://github.com/Rdatatable/data.table", + "BugReports": "https://github.com/Rdatatable/data.table/issues", + "VignetteBuilder": "knitr", + "Encoding": "UTF-8", + "ByteCompile": "TRUE", + "Authors@R": "c( person(\"Tyson\",\"Barrett\", role=c(\"aut\",\"cre\"), email=\"t.barrett88@gmail.com\", comment = c(ORCID=\"0000-0002-2137-1391\")), person(\"Matt\",\"Dowle\", role=\"aut\", email=\"mattjdowle@gmail.com\"), person(\"Arun\",\"Srinivasan\", role=\"aut\", email=\"asrini@pm.me\"), person(\"Jan\",\"Gorecki\", role=\"aut\"), person(\"Michael\",\"Chirico\", role=\"aut\", comment = c(ORCID=\"0000-0003-0787-087X\")), person(\"Toby\",\"Hocking\", role=\"aut\", comment = c(ORCID=\"0000-0002-3146-0865\")), person(\"Benjamin\",\"Schwendinger\",role=\"aut\", comment = c(ORCID=\"0000-0003-3315-8114\")), person(\"Ivan\", \"Krylov\", role=\"aut\", email=\"ikrylov@disroot.org\", comment = c(ORCID=\"0000-0002-0172-3812\")), person(\"Pasha\",\"Stetsenko\", role=\"ctb\"), person(\"Tom\",\"Short\", role=\"ctb\"), person(\"Steve\",\"Lianoglou\", role=\"ctb\"), person(\"Eduard\",\"Antonyan\", role=\"ctb\"), person(\"Markus\",\"Bonsch\", role=\"ctb\"), person(\"Hugh\",\"Parsonage\", role=\"ctb\"), person(\"Scott\",\"Ritchie\", role=\"ctb\"), person(\"Kun\",\"Ren\", role=\"ctb\"), person(\"Xianying\",\"Tan\", role=\"ctb\"), person(\"Rick\",\"Saporta\", role=\"ctb\"), person(\"Otto\",\"Seiskari\", role=\"ctb\"), person(\"Xianghui\",\"Dong\", role=\"ctb\"), person(\"Michel\",\"Lang\", role=\"ctb\"), person(\"Watal\",\"Iwasaki\", role=\"ctb\"), person(\"Seth\",\"Wenchel\", role=\"ctb\"), person(\"Karl\",\"Broman\", role=\"ctb\"), person(\"Tobias\",\"Schmidt\", role=\"ctb\"), person(\"David\",\"Arenburg\", role=\"ctb\"), person(\"Ethan\",\"Smith\", role=\"ctb\"), person(\"Francois\",\"Cocquemas\", role=\"ctb\"), person(\"Matthieu\",\"Gomez\", role=\"ctb\"), person(\"Philippe\",\"Chataignon\", role=\"ctb\"), person(\"Nello\",\"Blaser\", role=\"ctb\"), person(\"Dmitry\",\"Selivanov\", role=\"ctb\"), person(\"Andrey\",\"Riabushenko\", role=\"ctb\"), person(\"Cheng\",\"Lee\", role=\"ctb\"), person(\"Declan\",\"Groves\", role=\"ctb\"), person(\"Daniel\",\"Possenriede\", role=\"ctb\"), person(\"Felipe\",\"Parages\", role=\"ctb\"), person(\"Denes\",\"Toth\", role=\"ctb\"), person(\"Mus\",\"Yaramaz-David\", role=\"ctb\"), person(\"Ayappan\",\"Perumal\", role=\"ctb\"), person(\"James\",\"Sams\", role=\"ctb\"), person(\"Martin\",\"Morgan\", role=\"ctb\"), person(\"Michael\",\"Quinn\", role=\"ctb\"), person(\"@javrucebo\",\"\", role=\"ctb\"), person(\"@marc-outins\",\"\", role=\"ctb\"), person(\"Roy\",\"Storey\", role=\"ctb\"), person(\"Manish\",\"Saraswat\", role=\"ctb\"), person(\"Morgan\",\"Jacob\", role=\"ctb\"), person(\"Michael\",\"Schubmehl\", role=\"ctb\"), person(\"Davis\",\"Vaughan\", role=\"ctb\"), person(\"Leonardo\",\"Silvestri\", role=\"ctb\"), person(\"Jim\",\"Hester\", role=\"ctb\"), person(\"Anthony\",\"Damico\", role=\"ctb\"), person(\"Sebastian\",\"Freundt\", role=\"ctb\"), person(\"David\",\"Simons\", role=\"ctb\"), person(\"Elliott\",\"Sales de Andrade\", role=\"ctb\"), person(\"Cole\",\"Miller\", role=\"ctb\"), person(\"Jens Peder\",\"Meldgaard\", role=\"ctb\"), person(\"Vaclav\",\"Tlapak\", role=\"ctb\"), person(\"Kevin\",\"Ushey\", role=\"ctb\"), person(\"Dirk\",\"Eddelbuettel\", role=\"ctb\"), person(\"Tony\",\"Fischetti\", role=\"ctb\"), person(\"Ofek\",\"Shilon\", role=\"ctb\"), person(\"Vadim\",\"Khotilovich\", role=\"ctb\"), person(\"Hadley\",\"Wickham\", role=\"ctb\"), person(\"Bennet\",\"Becker\", role=\"ctb\"), person(\"Kyle\",\"Haynes\", role=\"ctb\"), person(\"Boniface Christian\",\"Kamgang\", role=\"ctb\"), person(\"Olivier\",\"Delmarcell\", role=\"ctb\"), person(\"Josh\",\"O'Brien\", role=\"ctb\"), person(\"Dereck\",\"de Mezquita\", role=\"ctb\"), person(\"Michael\",\"Czekanski\", role=\"ctb\"), person(\"Dmitry\", \"Shemetov\", role=\"ctb\"), person(\"Nitish\", \"Jha\", role=\"ctb\"), person(\"Joshua\", \"Wu\", role=\"ctb\"), person(\"Iago\", \"Giné-Vázquez\", role=\"ctb\"), person(\"Anirban\", \"Chetia\", role=\"ctb\"), person(\"Doris\", \"Amoakohene\", role=\"ctb\"), person(\"Angel\", \"Feliz\", role=\"ctb\"), person(\"Michael\",\"Young\", role=\"ctb\"), person(\"Mark\", \"Seeto\", role=\"ctb\"), person(\"Philippe\", \"Grosjean\", role=\"ctb\"), person(\"Vincent\", \"Runge\", role=\"ctb\"), person(\"Christian\", \"Wia\", role=\"ctb\"), person(\"Elise\", \"Maigné\", role=\"ctb\"), person(\"Vincent\", \"Rocher\", role=\"ctb\"), person(\"Vijay\", \"Lulla\", role=\"ctb\"), person(\"Aljaž\", \"Sluga\", role=\"ctb\"), person(\"Bill\", \"Evans\", role=\"ctb\") )", + "NeedsCompilation": "yes", + "Author": "Tyson Barrett [aut, cre] (ORCID: ), Matt Dowle [aut], Arun Srinivasan [aut], Jan Gorecki [aut], Michael Chirico [aut] (ORCID: ), Toby Hocking [aut] (ORCID: ), Benjamin Schwendinger [aut] (ORCID: ), Ivan Krylov [aut] (ORCID: ), Pasha Stetsenko [ctb], Tom Short [ctb], Steve Lianoglou [ctb], Eduard Antonyan [ctb], Markus Bonsch [ctb], Hugh Parsonage [ctb], Scott Ritchie [ctb], Kun Ren [ctb], Xianying Tan [ctb], Rick Saporta [ctb], Otto Seiskari [ctb], Xianghui Dong [ctb], Michel Lang [ctb], Watal Iwasaki [ctb], Seth Wenchel [ctb], Karl Broman [ctb], Tobias Schmidt [ctb], David Arenburg [ctb], Ethan Smith [ctb], Francois Cocquemas [ctb], Matthieu Gomez [ctb], Philippe Chataignon [ctb], Nello Blaser [ctb], Dmitry Selivanov [ctb], Andrey Riabushenko [ctb], Cheng Lee [ctb], Declan Groves [ctb], Daniel Possenriede [ctb], Felipe Parages [ctb], Denes Toth [ctb], Mus Yaramaz-David [ctb], Ayappan Perumal [ctb], James Sams [ctb], Martin Morgan [ctb], Michael Quinn [ctb], @javrucebo [ctb], @marc-outins [ctb], Roy Storey [ctb], Manish Saraswat [ctb], Morgan Jacob [ctb], Michael Schubmehl [ctb], Davis Vaughan [ctb], Leonardo Silvestri [ctb], Jim Hester [ctb], Anthony Damico [ctb], Sebastian Freundt [ctb], David Simons [ctb], Elliott Sales de Andrade [ctb], Cole Miller [ctb], Jens Peder Meldgaard [ctb], Vaclav Tlapak [ctb], Kevin Ushey [ctb], Dirk Eddelbuettel [ctb], Tony Fischetti [ctb], Ofek Shilon [ctb], Vadim Khotilovich [ctb], Hadley Wickham [ctb], Bennet Becker [ctb], Kyle Haynes [ctb], Boniface Christian Kamgang [ctb], Olivier Delmarcell [ctb], Josh O'Brien [ctb], Dereck de Mezquita [ctb], Michael Czekanski [ctb], Dmitry Shemetov [ctb], Nitish Jha [ctb], Joshua Wu [ctb], Iago Giné-Vázquez [ctb], Anirban Chetia [ctb], Doris Amoakohene [ctb], Angel Feliz [ctb], Michael Young [ctb], Mark Seeto [ctb], Philippe Grosjean [ctb], Vincent Runge [ctb], Christian Wia [ctb], Elise Maigné [ctb], Vincent Rocher [ctb], Vijay Lulla [ctb], Aljaž Sluga [ctb], Bill Evans [ctb]", + "Maintainer": "Tyson Barrett ", + "Repository": "CRAN" + }, + "desc": { + "Package": "desc", + "Version": "1.4.3", + "Source": "Repository", + "Title": "Manipulate DESCRIPTION Files", + "Authors@R": "c( person(\"Gábor\", \"Csárdi\", , \"csardi.gabor@gmail.com\", role = c(\"aut\", \"cre\")), person(\"Kirill\", \"Müller\", role = \"aut\"), person(\"Jim\", \"Hester\", , \"james.f.hester@gmail.com\", role = \"aut\"), person(\"Maëlle\", \"Salmon\", role = \"ctb\", comment = c(ORCID = \"0000-0002-2815-0399\")), person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\")) )", + "Maintainer": "Gábor Csárdi ", + "Description": "Tools to read, write, create, and manipulate DESCRIPTION files. It is intended for packages that create or manipulate other packages.", + "License": "MIT + file LICENSE", + "URL": "https://desc.r-lib.org/, https://github.com/r-lib/desc", + "BugReports": "https://github.com/r-lib/desc/issues", + "Depends": [ + "R (>= 3.4)" + ], + "Imports": [ + "cli", + "R6", + "utils" + ], + "Suggests": [ + "callr", + "covr", + "gh", + "spelling", + "testthat", + "whoami", + "withr" + ], + "Config/Needs/website": "tidyverse/tidytemplate", + "Config/testthat/edition": "3", + "Encoding": "UTF-8", + "Language": "en-US", + "RoxygenNote": "7.2.3", + "Collate": "'assertions.R' 'authors-at-r.R' 'built.R' 'classes.R' 'collate.R' 'constants.R' 'deps.R' 'desc-package.R' 'description.R' 'encoding.R' 'find-package-root.R' 'latex.R' 'non-oo-api.R' 'package-archives.R' 'read.R' 'remotes.R' 'str.R' 'syntax_checks.R' 'urls.R' 'utils.R' 'validate.R' 'version.R'", + "NeedsCompilation": "no", + "Author": "Gábor Csárdi [aut, cre], Kirill Müller [aut], Jim Hester [aut], Maëlle Salmon [ctb] (), Posit Software, PBC [cph, fnd]", + "Repository": "CRAN" + }, + "diagram": { + "Package": "diagram", + "Version": "1.6.5", + "Source": "Repository", + "Title": "Functions for Visualising Simple Graphs (Networks), Plotting Flow Diagrams", + "Author": "Karline Soetaert ", + "Maintainer": "Karline Soetaert ", + "Depends": [ + "R (>= 2.01)", + "shape" + ], + "Imports": [ + "stats", + "graphics" + ], + "Description": "Visualises simple graphs (networks) based on a transition matrix, utilities to plot flow diagrams, visualising webs, electrical networks, etc. Support for the book \"A practical guide to ecological modelling - using R as a simulation platform\" by Karline Soetaert and Peter M.J. Herman (2009), Springer. and the book \"Solving Differential Equations in R\" by Karline Soetaert, Jeff Cash and Francesca Mazzia (2012), Springer. Includes demo(flowchart), demo(plotmat), demo(plotweb).", + "License": "GPL (>= 2)", + "LazyData": "yes", + "NeedsCompilation": "no", + "Repository": "CRAN", + "Encoding": "UTF-8" + }, + "diffobj": { + "Package": "diffobj", + "Version": "0.3.6", + "Source": "Repository", + "Type": "Package", + "Title": "Diffs for R Objects", + "Description": "Generate a colorized diff of two R objects for an intuitive visualization of their differences.", + "Authors@R": "c( person( \"Brodie\", \"Gaslam\", email=\"brodie.gaslam@yahoo.com\", role=c(\"aut\", \"cre\")), person( \"Michael B.\", \"Allen\", email=\"ioplex@gmail.com\", role=c(\"ctb\", \"cph\"), comment=\"Original C implementation of Myers Diff Algorithm\"))", + "Depends": [ + "R (>= 3.1.0)" + ], + "License": "GPL-2 | GPL-3", + "URL": "https://github.com/brodieG/diffobj", + "BugReports": "https://github.com/brodieG/diffobj/issues", + "RoxygenNote": "7.2.3", + "VignetteBuilder": "knitr", + "Encoding": "UTF-8", + "Suggests": [ + "knitr", + "rmarkdown" + ], + "Collate": "'capt.R' 'options.R' 'pager.R' 'check.R' 'finalizer.R' 'misc.R' 'html.R' 'styles.R' 's4.R' 'core.R' 'diff.R' 'get.R' 'guides.R' 'hunks.R' 'layout.R' 'myerssimple.R' 'rdiff.R' 'rds.R' 'set.R' 'subset.R' 'summmary.R' 'system.R' 'text.R' 'tochar.R' 'trim.R' 'word.R'", + "Imports": [ + "crayon (>= 1.3.2)", + "tools", + "methods", + "utils", + "stats" + ], + "NeedsCompilation": "yes", + "Author": "Brodie Gaslam [aut, cre], Michael B. Allen [ctb, cph] (Original C implementation of Myers Diff Algorithm)", + "Maintainer": "Brodie Gaslam ", + "Repository": "CRAN" + }, + "digest": { + "Package": "digest", + "Version": "0.6.37", + "Source": "Repository", + "Authors@R": "c(person(\"Dirk\", \"Eddelbuettel\", role = c(\"aut\", \"cre\"), email = \"edd@debian.org\", comment = c(ORCID = \"0000-0001-6419-907X\")), person(\"Antoine\", \"Lucas\", role=\"ctb\"), person(\"Jarek\", \"Tuszynski\", role=\"ctb\"), person(\"Henrik\", \"Bengtsson\", role=\"ctb\", comment = c(ORCID = \"0000-0002-7579-5165\")), person(\"Simon\", \"Urbanek\", role=\"ctb\", comment = c(ORCID = \"0000-0003-2297-1732\")), person(\"Mario\", \"Frasca\", role=\"ctb\"), person(\"Bryan\", \"Lewis\", role=\"ctb\"), person(\"Murray\", \"Stokely\", role=\"ctb\"), person(\"Hannes\", \"Muehleisen\", role=\"ctb\"), person(\"Duncan\", \"Murdoch\", role=\"ctb\"), person(\"Jim\", \"Hester\", role=\"ctb\"), person(\"Wush\", \"Wu\", role=\"ctb\", comment = c(ORCID = \"0000-0001-5180-0567\")), person(\"Qiang\", \"Kou\", role=\"ctb\", comment = c(ORCID = \"0000-0001-6786-5453\")), person(\"Thierry\", \"Onkelinx\", role=\"ctb\", comment = c(ORCID = \"0000-0001-8804-4216\")), person(\"Michel\", \"Lang\", role=\"ctb\", comment = c(ORCID = \"0000-0001-9754-0393\")), person(\"Viliam\", \"Simko\", role=\"ctb\"), person(\"Kurt\", \"Hornik\", role=\"ctb\", comment = c(ORCID = \"0000-0003-4198-9911\")), person(\"Radford\", \"Neal\", role=\"ctb\", comment = c(ORCID = \"0000-0002-2473-3407\")), person(\"Kendon\", \"Bell\", role=\"ctb\", comment = c(ORCID = \"0000-0002-9093-8312\")), person(\"Matthew\", \"de Queljoe\", role=\"ctb\"), person(\"Dmitry\", \"Selivanov\", role=\"ctb\"), person(\"Ion\", \"Suruceanu\", role=\"ctb\"), person(\"Bill\", \"Denney\", role=\"ctb\"), person(\"Dirk\", \"Schumacher\", role=\"ctb\"), person(\"András\", \"Svraka\", role=\"ctb\"), person(\"Sergey\", \"Fedorov\", role=\"ctb\"), person(\"Will\", \"Landau\", role=\"ctb\", comment = c(ORCID = \"0000-0003-1878-3253\")), person(\"Floris\", \"Vanderhaeghe\", role=\"ctb\", comment = c(ORCID = \"0000-0002-6378-6229\")), person(\"Kevin\", \"Tappe\", role=\"ctb\"), person(\"Harris\", \"McGehee\", role=\"ctb\"), person(\"Tim\", \"Mastny\", role=\"ctb\"), person(\"Aaron\", \"Peikert\", role=\"ctb\", comment = c(ORCID = \"0000-0001-7813-818X\")), person(\"Mark\", \"van der Loo\", role=\"ctb\", comment = c(ORCID = \"0000-0002-9807-4686\")), person(\"Chris\", \"Muir\", role=\"ctb\", comment = c(ORCID = \"0000-0003-2555-3878\")), person(\"Moritz\", \"Beller\", role=\"ctb\", comment = c(ORCID = \"0000-0003-4852-0526\")), person(\"Sebastian\", \"Campbell\", role=\"ctb\"), person(\"Winston\", \"Chang\", role=\"ctb\", comment = c(ORCID = \"0000-0002-1576-2126\")), person(\"Dean\", \"Attali\", role=\"ctb\", comment = c(ORCID = \"0000-0002-5645-3493\")), person(\"Michael\", \"Chirico\", role=\"ctb\", comment = c(ORCID = \"0000-0003-0787-087X\")), person(\"Kevin\", \"Ushey\", role=\"ctb\"))", + "Date": "2024-08-19", + "Title": "Create Compact Hash Digests of R Objects", + "Description": "Implementation of a function 'digest()' for the creation of hash digests of arbitrary R objects (using the 'md5', 'sha-1', 'sha-256', 'crc32', 'xxhash', 'murmurhash', 'spookyhash', 'blake3', 'crc32c', 'xxh3_64', and 'xxh3_128' algorithms) permitting easy comparison of R language objects, as well as functions such as'hmac()' to create hash-based message authentication code. Please note that this package is not meant to be deployed for cryptographic purposes for which more comprehensive (and widely tested) libraries such as 'OpenSSL' should be used.", + "URL": "https://github.com/eddelbuettel/digest, https://dirk.eddelbuettel.com/code/digest.html", + "BugReports": "https://github.com/eddelbuettel/digest/issues", + "Depends": [ + "R (>= 3.3.0)" + ], + "Imports": [ + "utils" + ], + "License": "GPL (>= 2)", + "Suggests": [ + "tinytest", + "simplermarkdown" + ], + "VignetteBuilder": "simplermarkdown", + "Encoding": "UTF-8", + "NeedsCompilation": "yes", + "Author": "Dirk Eddelbuettel [aut, cre] (), Antoine Lucas [ctb], Jarek Tuszynski [ctb], Henrik Bengtsson [ctb] (), Simon Urbanek [ctb] (), Mario Frasca [ctb], Bryan Lewis [ctb], Murray Stokely [ctb], Hannes Muehleisen [ctb], Duncan Murdoch [ctb], Jim Hester [ctb], Wush Wu [ctb] (), Qiang Kou [ctb] (), Thierry Onkelinx [ctb] (), Michel Lang [ctb] (), Viliam Simko [ctb], Kurt Hornik [ctb] (), Radford Neal [ctb] (), Kendon Bell [ctb] (), Matthew de Queljoe [ctb], Dmitry Selivanov [ctb], Ion Suruceanu [ctb], Bill Denney [ctb], Dirk Schumacher [ctb], András Svraka [ctb], Sergey Fedorov [ctb], Will Landau [ctb] (), Floris Vanderhaeghe [ctb] (), Kevin Tappe [ctb], Harris McGehee [ctb], Tim Mastny [ctb], Aaron Peikert [ctb] (), Mark van der Loo [ctb] (), Chris Muir [ctb] (), Moritz Beller [ctb] (), Sebastian Campbell [ctb], Winston Chang [ctb] (), Dean Attali [ctb] (), Michael Chirico [ctb] (), Kevin Ushey [ctb]", + "Maintainer": "Dirk Eddelbuettel ", + "Repository": "CRAN" + }, + "dplyr": { + "Package": "dplyr", + "Version": "1.1.4", + "Source": "Repository", + "Type": "Package", + "Title": "A Grammar of Data Manipulation", + "Authors@R": "c( person(\"Hadley\", \"Wickham\", , \"hadley@posit.co\", role = c(\"aut\", \"cre\"), comment = c(ORCID = \"0000-0003-4757-117X\")), person(\"Romain\", \"François\", role = \"aut\", comment = c(ORCID = \"0000-0002-2444-4226\")), person(\"Lionel\", \"Henry\", role = \"aut\"), person(\"Kirill\", \"Müller\", role = \"aut\", comment = c(ORCID = \"0000-0002-1416-3412\")), person(\"Davis\", \"Vaughan\", , \"davis@posit.co\", role = \"aut\", comment = c(ORCID = \"0000-0003-4777-038X\")), person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\")) )", + "Description": "A fast, consistent tool for working with data frame like objects, both in memory and out of memory.", + "License": "MIT + file LICENSE", + "URL": "https://dplyr.tidyverse.org, https://github.com/tidyverse/dplyr", + "BugReports": "https://github.com/tidyverse/dplyr/issues", + "Depends": [ + "R (>= 3.5.0)" + ], + "Imports": [ + "cli (>= 3.4.0)", + "generics", + "glue (>= 1.3.2)", + "lifecycle (>= 1.0.3)", + "magrittr (>= 1.5)", + "methods", + "pillar (>= 1.9.0)", + "R6", + "rlang (>= 1.1.0)", + "tibble (>= 3.2.0)", + "tidyselect (>= 1.2.0)", + "utils", + "vctrs (>= 0.6.4)" + ], + "Suggests": [ + "bench", + "broom", + "callr", + "covr", + "DBI", + "dbplyr (>= 2.2.1)", + "ggplot2", + "knitr", + "Lahman", + "lobstr", + "microbenchmark", + "nycflights13", + "purrr", + "rmarkdown", + "RMySQL", + "RPostgreSQL", + "RSQLite", + "stringi (>= 1.7.6)", + "testthat (>= 3.1.5)", + "tidyr (>= 1.3.0)", + "withr" + ], + "VignetteBuilder": "knitr", + "Config/Needs/website": "tidyverse, shiny, pkgdown, tidyverse/tidytemplate", + "Config/testthat/edition": "3", + "Encoding": "UTF-8", + "LazyData": "true", + "RoxygenNote": "7.2.3", + "NeedsCompilation": "yes", + "Author": "Hadley Wickham [aut, cre] (), Romain François [aut] (), Lionel Henry [aut], Kirill Müller [aut] (), Davis Vaughan [aut] (), Posit Software, PBC [cph, fnd]", + "Maintainer": "Hadley Wickham ", + "Repository": "CRAN" + }, + "echarts4r": { + "Package": "echarts4r", + "Version": "0.4.5", + "Source": "Repository", + "Title": "Create Interactive Graphs with 'Echarts JavaScript' Version 5", + "Date": "2023-06-08", + "Authors@R": "c( person(\"John\", \"Coene\", email = \"jcoenep@gmail.com\", role = c(\"aut\", \"cph\")), person(\"David\", \"Munoz Tord\", email = \"david.munoztord@mailbox.org\", role = c(\"cre\", \"ctb\"), comment = c(ORCID = \"0000-0001-7954-8295\")), person(given = \"Wei\", family = \"Su\", email = \"swsoyee@gmail.com\", role = \"ctb\"), person(family = \"Helgasoft\", email = \"contact@helgasoft.com\", role = \"ctb\"), person(\"Xianying\", \"Tan\", email = \"shrektan@126.com\", role = \"ctb\", comment = c(ORCID = \"0000-0002-6072-3521\")), person(\"Robin\", \"Cura\", email = \"robin.cura@gmail.com\", role = \"ctb\", comment = c(ORCID = \"0000-0001-5926-1828\")), person(\"Mathida\", \"Chuk\", email = \"mathidachuk@gmail.com\", role = \"ctb\"), person(\"Robert\", \"Koetsier\", email = \"rk8roko@gmail.com \", role = \"ctb\", comment = c(ORCID = \"0000-0002-4477-5401\")), person(\"Jelle\", \"Geertsma\", email = \"rdatasculptor@gmail.com\", role = \"ctb\") )", + "Description": "Easily create interactive charts by leveraging the 'Echarts Javascript' library which includes 36 chart types, themes, 'Shiny' proxies and animations.", + "License": "Apache License (>= 2.0)", + "Encoding": "UTF-8", + "Imports": [ + "htmlwidgets", + "dplyr (>= 0.7.0)", + "purrr", + "countrycode", + "broom", + "shiny", + "scales", + "corrplot", + "htmltools", + "jsonlite", + "rstudioapi" + ], + "Suggests": [ + "tidyr", + "testthat", + "knitr", + "rmarkdown", + "covr", + "data.tree", + "leaflet", + "tibble" + ], + "Depends": [ + "R (>= 4.1.0)" + ], + "RoxygenNote": "7.2.3", + "URL": "https://echarts4r.john-coene.com/, https://github.com/JohnCoene/echarts4r", + "BugReports": "https://github.com/JohnCoene/echarts4r/issues/", + "NeedsCompilation": "no", + "Author": "John Coene [aut, cph], David Munoz Tord [cre, ctb] (), Wei Su [ctb], Helgasoft [ctb], Xianying Tan [ctb] (), Robin Cura [ctb] (), Mathida Chuk [ctb], Robert Koetsier [ctb] (), Jelle Geertsma [ctb]", + "Maintainer": "David Munoz Tord ", + "Repository": "CRAN" + }, + "evaluate": { + "Package": "evaluate", + "Version": "1.0.4", + "Source": "Repository", + "Type": "Package", + "Title": "Parsing and Evaluation Tools that Provide More Details than the Default", + "Authors@R": "c( person(\"Hadley\", \"Wickham\", , \"hadley@posit.co\", role = c(\"aut\", \"cre\")), person(\"Yihui\", \"Xie\", role = \"aut\", comment = c(ORCID = \"0000-0003-0645-5666\")), person(\"Michael\", \"Lawrence\", role = \"ctb\"), person(\"Thomas\", \"Kluyver\", role = \"ctb\"), person(\"Jeroen\", \"Ooms\", role = \"ctb\"), person(\"Barret\", \"Schloerke\", role = \"ctb\"), person(\"Adam\", \"Ryczkowski\", role = \"ctb\"), person(\"Hiroaki\", \"Yutani\", role = \"ctb\"), person(\"Michel\", \"Lang\", role = \"ctb\"), person(\"Karolis\", \"Koncevičius\", role = \"ctb\"), person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\")) )", + "Description": "Parsing and evaluation tools that make it easy to recreate the command line behaviour of R.", + "License": "MIT + file LICENSE", + "URL": "https://evaluate.r-lib.org/, https://github.com/r-lib/evaluate", + "BugReports": "https://github.com/r-lib/evaluate/issues", + "Depends": [ + "R (>= 3.6.0)" + ], + "Suggests": [ + "callr", + "covr", + "ggplot2 (>= 3.3.6)", + "lattice", + "methods", + "pkgload", + "ragg (>= 1.4.0)", + "rlang (>= 1.1.5)", + "knitr", + "testthat (>= 3.0.0)", + "withr" + ], + "Config/Needs/website": "tidyverse/tidytemplate", + "Config/testthat/edition": "3", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.2", + "NeedsCompilation": "no", + "Author": "Hadley Wickham [aut, cre], Yihui Xie [aut] (ORCID: ), Michael Lawrence [ctb], Thomas Kluyver [ctb], Jeroen Ooms [ctb], Barret Schloerke [ctb], Adam Ryczkowski [ctb], Hiroaki Yutani [ctb], Michel Lang [ctb], Karolis Koncevičius [ctb], Posit Software, PBC [cph, fnd]", + "Maintainer": "Hadley Wickham ", + "Repository": "CRAN" + }, + "farver": { + "Package": "farver", + "Version": "2.1.2", + "Source": "Repository", + "Type": "Package", + "Title": "High Performance Colour Space Manipulation", + "Authors@R": "c( person(\"Thomas Lin\", \"Pedersen\", , \"thomas.pedersen@posit.co\", role = c(\"cre\", \"aut\"), comment = c(ORCID = \"0000-0002-5147-4711\")), person(\"Berendea\", \"Nicolae\", role = \"aut\", comment = \"Author of the ColorSpace C++ library\"), person(\"Romain\", \"François\", , \"romain@purrple.cat\", role = \"aut\", comment = c(ORCID = \"0000-0002-2444-4226\")), person(\"Posit, PBC\", role = c(\"cph\", \"fnd\")) )", + "Description": "The encoding of colour can be handled in many different ways, using different colour spaces. As different colour spaces have different uses, efficient conversion between these representations are important. The 'farver' package provides a set of functions that gives access to very fast colour space conversion and comparisons implemented in C++, and offers speed improvements over the 'convertColor' function in the 'grDevices' package.", + "License": "MIT + file LICENSE", + "URL": "https://farver.data-imaginist.com, https://github.com/thomasp85/farver", + "BugReports": "https://github.com/thomasp85/farver/issues", + "Suggests": [ + "covr", + "testthat (>= 3.0.0)" + ], + "Config/testthat/edition": "3", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.1", + "NeedsCompilation": "yes", + "Author": "Thomas Lin Pedersen [cre, aut] (), Berendea Nicolae [aut] (Author of the ColorSpace C++ library), Romain François [aut] (), Posit, PBC [cph, fnd]", + "Maintainer": "Thomas Lin Pedersen ", + "Repository": "https://p3m.dev/cran/latest" + }, + "fastmap": { + "Package": "fastmap", + "Version": "1.2.0", + "Source": "Repository", + "Title": "Fast Data Structures", + "Authors@R": "c( person(\"Winston\", \"Chang\", email = \"winston@posit.co\", role = c(\"aut\", \"cre\")), person(given = \"Posit Software, PBC\", role = c(\"cph\", \"fnd\")), person(given = \"Tessil\", role = \"cph\", comment = \"hopscotch_map library\") )", + "Description": "Fast implementation of data structures, including a key-value store, stack, and queue. Environments are commonly used as key-value stores in R, but every time a new key is used, it is added to R's global symbol table, causing a small amount of memory leakage. This can be problematic in cases where many different keys are used. Fastmap avoids this memory leak issue by implementing the map using data structures in C++.", + "License": "MIT + file LICENSE", + "Encoding": "UTF-8", + "RoxygenNote": "7.2.3", + "Suggests": [ + "testthat (>= 2.1.1)" + ], + "URL": "https://r-lib.github.io/fastmap/, https://github.com/r-lib/fastmap", + "BugReports": "https://github.com/r-lib/fastmap/issues", + "NeedsCompilation": "yes", + "Author": "Winston Chang [aut, cre], Posit Software, PBC [cph, fnd], Tessil [cph] (hopscotch_map library)", + "Maintainer": "Winston Chang ", + "Repository": "CRAN" + }, + "fontawesome": { + "Package": "fontawesome", + "Version": "0.5.3", + "Source": "Repository", + "Type": "Package", + "Title": "Easily Work with 'Font Awesome' Icons", + "Description": "Easily and flexibly insert 'Font Awesome' icons into 'R Markdown' documents and 'Shiny' apps. These icons can be inserted into HTML content through inline 'SVG' tags or 'i' tags. There is also a utility function for exporting 'Font Awesome' icons as 'PNG' images for those situations where raster graphics are needed.", + "Authors@R": "c( person(\"Richard\", \"Iannone\", , \"rich@posit.co\", c(\"aut\", \"cre\"), comment = c(ORCID = \"0000-0003-3925-190X\")), person(\"Christophe\", \"Dervieux\", , \"cderv@posit.co\", role = \"ctb\", comment = c(ORCID = \"0000-0003-4474-2498\")), person(\"Winston\", \"Chang\", , \"winston@posit.co\", role = \"ctb\"), person(\"Dave\", \"Gandy\", role = c(\"ctb\", \"cph\"), comment = \"Font-Awesome font\"), person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\")) )", + "License": "MIT + file LICENSE", + "URL": "https://github.com/rstudio/fontawesome, https://rstudio.github.io/fontawesome/", + "BugReports": "https://github.com/rstudio/fontawesome/issues", + "Encoding": "UTF-8", + "ByteCompile": "true", + "RoxygenNote": "7.3.2", + "Depends": [ + "R (>= 3.3.0)" + ], + "Imports": [ + "rlang (>= 1.0.6)", + "htmltools (>= 0.5.1.1)" + ], + "Suggests": [ + "covr", + "dplyr (>= 1.0.8)", + "gt (>= 0.9.0)", + "knitr (>= 1.31)", + "testthat (>= 3.0.0)", + "rsvg" + ], + "Config/testthat/edition": "3", + "NeedsCompilation": "no", + "Author": "Richard Iannone [aut, cre] (), Christophe Dervieux [ctb] (), Winston Chang [ctb], Dave Gandy [ctb, cph] (Font-Awesome font), Posit Software, PBC [cph, fnd]", + "Maintainer": "Richard Iannone ", + "Repository": "CRAN" + }, + "forcats": { + "Package": "forcats", + "Version": "1.0.0", + "Source": "Repository", + "Title": "Tools for Working with Categorical Variables (Factors)", + "Authors@R": "c( person(\"Hadley\", \"Wickham\", , \"hadley@rstudio.com\", role = c(\"aut\", \"cre\")), person(\"RStudio\", role = c(\"cph\", \"fnd\")) )", + "Description": "Helpers for reordering factor levels (including moving specified levels to front, ordering by first appearance, reversing, and randomly shuffling), and tools for modifying factor levels (including collapsing rare levels into other, 'anonymising', and manually 'recoding').", + "License": "MIT + file LICENSE", + "URL": "https://forcats.tidyverse.org/, https://github.com/tidyverse/forcats", + "BugReports": "https://github.com/tidyverse/forcats/issues", + "Depends": [ + "R (>= 3.4)" + ], + "Imports": [ + "cli (>= 3.4.0)", + "glue", + "lifecycle", + "magrittr", + "rlang (>= 1.0.0)", + "tibble" + ], + "Suggests": [ + "covr", + "dplyr", + "ggplot2", + "knitr", + "readr", + "rmarkdown", + "testthat (>= 3.0.0)", + "withr" + ], + "VignetteBuilder": "knitr", + "Config/Needs/website": "tidyverse/tidytemplate", + "Config/testthat/edition": "3", + "Encoding": "UTF-8", + "LazyData": "true", + "RoxygenNote": "7.2.3", + "NeedsCompilation": "no", + "Author": "Hadley Wickham [aut, cre], RStudio [cph, fnd]", + "Maintainer": "Hadley Wickham ", + "Repository": "CRAN" + }, + "forecast": { + "Package": "forecast", + "Version": "8.24.0", + "Source": "Repository", + "Title": "Forecasting Functions for Time Series and Linear Models", + "Description": "Methods and tools for displaying and analysing univariate time series forecasts including exponential smoothing via state space models and automatic ARIMA modelling.", + "Depends": [ + "R (>= 3.5.0)" + ], + "Imports": [ + "colorspace", + "fracdiff", + "generics (>= 0.1.2)", + "ggplot2 (>= 2.2.1)", + "graphics", + "lmtest", + "magrittr", + "nnet", + "parallel", + "Rcpp (>= 0.11.0)", + "stats", + "timeDate", + "tseries", + "urca", + "withr", + "zoo" + ], + "Suggests": [ + "forecTheta", + "knitr", + "methods", + "rmarkdown", + "rticles", + "scales", + "seasonal", + "testthat (>= 3.0.0)", + "uroot" + ], + "LinkingTo": [ + "Rcpp (>= 0.11.0)", + "RcppArmadillo (>= 0.2.35)" + ], + "LazyData": "yes", + "ByteCompile": "TRUE", + "Authors@R": "c( person(\"Rob\", \"Hyndman\", email = \"Rob.Hyndman@monash.edu\", role = c(\"aut\", \"cre\", \"cph\"), comment = c(ORCID = \"0000-0002-2140-5352\")), person(\"George\", \"Athanasopoulos\", role = \"aut\", comment = c(ORCID = \"0000-0002-5389-2802\")), person(\"Christoph\", \"Bergmeir\", role = \"aut\", comment = c(ORCID = \"0000-0002-3665-9021\")), person(\"Gabriel\", \"Caceres\", role = \"aut\", comment = c(ORCID = \"0000-0002-2947-2023\")), person(\"Leanne\", \"Chhay\", role = \"aut\"), person(\"Kirill\", \"Kuroptev\", role = \"aut\"), person(\"Mitchell\", \"O'Hara-Wild\", role = \"aut\", comment = c(ORCID = \"0000-0001-6729-7695\")), person(\"Fotios\", \"Petropoulos\", role = \"aut\", comment = c(ORCID = \"0000-0003-3039-4955\")), person(\"Slava\", \"Razbash\", role = \"aut\"), person(\"Earo\", \"Wang\", role = \"aut\", comment = c(ORCID = \"0000-0001-6448-5260\")), person(\"Farah\", \"Yasmeen\", role = \"aut\", comment = c(ORCID = \"0000-0002-1479-5401\")), person(\"Federico\", \"Garza\", role = \"ctb\"), person(\"Daniele\", \"Girolimetto\", role = \"ctb\"), person(\"Ross\", \"Ihaka\", role = c(\"ctb\", \"cph\")), person(\"R Core Team\", role = c(\"ctb\", \"cph\")), person(\"Daniel\", \"Reid\", role = \"ctb\"), person(\"David\", \"Shaub\", role = \"ctb\"), person(\"Yuan\", \"Tang\", role = \"ctb\", comment = c(ORCID = \"0000-0001-5243-233X\")), person(\"Xiaoqian\", \"Wang\", role = \"ctb\"), person(\"Zhenyu\", \"Zhou\", role = \"ctb\") )", + "BugReports": "https://github.com/robjhyndman/forecast/issues", + "License": "GPL-3", + "URL": "https://pkg.robjhyndman.com/forecast/, https://github.com/robjhyndman/forecast", + "VignetteBuilder": "knitr", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.2", + "Config/testthat/edition": "3", + "NeedsCompilation": "yes", + "Author": "Rob Hyndman [aut, cre, cph] (), George Athanasopoulos [aut] (), Christoph Bergmeir [aut] (), Gabriel Caceres [aut] (), Leanne Chhay [aut], Kirill Kuroptev [aut], Mitchell O'Hara-Wild [aut] (), Fotios Petropoulos [aut] (), Slava Razbash [aut], Earo Wang [aut] (), Farah Yasmeen [aut] (), Federico Garza [ctb], Daniele Girolimetto [ctb], Ross Ihaka [ctb, cph], R Core Team [ctb, cph], Daniel Reid [ctb], David Shaub [ctb], Yuan Tang [ctb] (), Xiaoqian Wang [ctb], Zhenyu Zhou [ctb]", + "Maintainer": "Rob Hyndman ", + "Repository": "CRAN" + }, + "fracdiff": { + "Package": "fracdiff", + "Version": "1.5-3", + "Source": "Repository", + "VersionNote": "Released 1.5-0 on 2019-12-09, 1.5-1 on 2020-01-20, 1.5-2 on 2022-10-31", + "Date": "2024-02-01", + "Title": "Fractionally Differenced ARIMA aka ARFIMA(P,d,q) Models", + "Authors@R": "c(person(\"Martin\",\"Maechler\", role=c(\"aut\",\"cre\"), email=\"maechler@stat.math.ethz.ch\", comment = c(ORCID = \"0000-0002-8685-9910\")) , person(\"Chris\", \"Fraley\", role=c(\"ctb\",\"cph\"), comment = \"S original; Fortran code\") , person(\"Friedrich\", \"Leisch\", role = \"ctb\", comment = c(\"R port\", ORCID = \"0000-0001-7278-1983\")) , person(\"Valderio\", \"Reisen\", role=\"ctb\", comment = \"fdGPH() & fdSperio()\") , person(\"Artur\", \"Lemonte\", role=\"ctb\", comment = \"fdGPH() & fdSperio()\") , person(\"Rob\", \"Hyndman\", email=\"Rob.Hyndman@monash.edu\", role=\"ctb\", comment = c(\"residuals() & fitted()\", ORCID = \"0000-0002-2140-5352\")) )", + "Description": "Maximum likelihood estimation of the parameters of a fractionally differenced ARIMA(p,d,q) model (Haslett and Raftery, Appl.Statistics, 1989); including inference and basic methods. Some alternative algorithms to estimate \"H\".", + "Imports": [ + "stats" + ], + "Suggests": [ + "longmemo", + "forecast", + "urca" + ], + "License": "GPL (>= 2)", + "URL": "https://github.com/mmaechler/fracdiff", + "BugReports": "https://github.com/mmaechler/fracdiff/issues", + "Encoding": "UTF-8", + "NeedsCompilation": "yes", + "Author": "Martin Maechler [aut, cre] (), Chris Fraley [ctb, cph] (S original; Fortran code), Friedrich Leisch [ctb] (R port, ), Valderio Reisen [ctb] (fdGPH() & fdSperio()), Artur Lemonte [ctb] (fdGPH() & fdSperio()), Rob Hyndman [ctb] (residuals() & fitted(), )", + "Maintainer": "Martin Maechler ", + "Repository": "CRAN" + }, + "fs": { + "Package": "fs", + "Version": "1.6.6", + "Source": "Repository", + "Title": "Cross-Platform File System Operations Based on 'libuv'", + "Authors@R": "c( person(\"Jim\", \"Hester\", role = \"aut\"), person(\"Hadley\", \"Wickham\", , \"hadley@posit.co\", role = \"aut\"), person(\"Gábor\", \"Csárdi\", , \"csardi.gabor@gmail.com\", role = c(\"aut\", \"cre\")), person(\"libuv project contributors\", role = \"cph\", comment = \"libuv library\"), person(\"Joyent, Inc. and other Node contributors\", role = \"cph\", comment = \"libuv library\"), person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\")) )", + "Description": "A cross-platform interface to file system operations, built on top of the 'libuv' C library.", + "License": "MIT + file LICENSE", + "URL": "https://fs.r-lib.org, https://github.com/r-lib/fs", + "BugReports": "https://github.com/r-lib/fs/issues", + "Depends": [ + "R (>= 3.6)" + ], + "Imports": [ + "methods" + ], + "Suggests": [ + "covr", + "crayon", + "knitr", + "pillar (>= 1.0.0)", + "rmarkdown", + "spelling", + "testthat (>= 3.0.0)", + "tibble (>= 1.1.0)", + "vctrs (>= 0.3.0)", + "withr" + ], + "VignetteBuilder": "knitr", + "ByteCompile": "true", + "Config/Needs/website": "tidyverse/tidytemplate", + "Config/testthat/edition": "3", + "Copyright": "file COPYRIGHTS", + "Encoding": "UTF-8", + "Language": "en-US", + "RoxygenNote": "7.2.3", + "SystemRequirements": "GNU make", + "NeedsCompilation": "yes", + "Author": "Jim Hester [aut], Hadley Wickham [aut], Gábor Csárdi [aut, cre], libuv project contributors [cph] (libuv library), Joyent, Inc. and other Node contributors [cph] (libuv library), Posit Software, PBC [cph, fnd]", + "Maintainer": "Gábor Csárdi ", + "Repository": "CRAN" + }, + "furrr": { + "Package": "furrr", + "Version": "0.3.1", + "Source": "Repository", + "Title": "Apply Mapping Functions in Parallel using Futures", + "Authors@R": "c( person(\"Davis\", \"Vaughan\", , \"davis@rstudio.com\", role = c(\"aut\", \"cre\")), person(\"Matt\", \"Dancho\", , \"mdancho@business-science.io\", role = \"aut\"), person(\"RStudio\", role = c(\"cph\", \"fnd\")) )", + "Description": "Implementations of the family of map() functions from 'purrr' that can be resolved using any 'future'-supported backend, e.g. parallel on the local machine or distributed on a compute cluster.", + "License": "MIT + file LICENSE", + "URL": "https://github.com/DavisVaughan/furrr, https://furrr.futureverse.org/", + "BugReports": "https://github.com/DavisVaughan/furrr/issues", + "Depends": [ + "future (>= 1.25.0)", + "R (>= 3.4.0)" + ], + "Imports": [ + "globals (>= 0.14.0)", + "lifecycle (>= 1.0.1)", + "purrr (>= 0.3.4)", + "rlang (>= 1.0.2)", + "vctrs (>= 0.4.1)" + ], + "Suggests": [ + "carrier", + "covr", + "dplyr (>= 0.7.4)", + "knitr", + "listenv (>= 0.6.0)", + "magrittr", + "rmarkdown", + "testthat (>= 3.0.0)", + "tidyselect", + "withr" + ], + "Config/Needs/website": "progressr", + "Config/testthat/edition": "3", + "Encoding": "UTF-8", + "RoxygenNote": "7.2.1", + "NeedsCompilation": "no", + "Author": "Davis Vaughan [aut, cre], Matt Dancho [aut], RStudio [cph, fnd]", + "Maintainer": "Davis Vaughan ", + "Repository": "CRAN" + }, + "future": { + "Package": "future", + "Version": "1.67.0", + "Source": "Repository", + "Title": "Unified Parallel and Distributed Processing in R for Everyone", + "Depends": [ + "R (>= 3.2.0)" + ], + "Imports": [ + "digest", + "globals (>= 0.18.0)", + "listenv (>= 0.8.0)", + "parallel", + "parallelly (>= 1.44.0)", + "utils" + ], + "Suggests": [ + "methods", + "RhpcBLASctl", + "R.rsp", + "markdown" + ], + "VignetteBuilder": "R.rsp", + "Authors@R": "c(person(\"Henrik\", \"Bengtsson\", role = c(\"aut\", \"cre\", \"cph\"), email = \"henrikb@braju.com\", comment = c(ORCID = \"0000-0002-7579-5165\")))", + "Description": "The purpose of this package is to provide a lightweight and unified Future API for sequential and parallel processing of R expression via futures. The simplest way to evaluate an expression in parallel is to use `x %<-% { expression }` with `plan(multisession)`. This package implements sequential, multicore, multisession, and cluster futures. With these, R expressions can be evaluated on the local machine, in parallel a set of local machines, or distributed on a mix of local and remote machines. Extensions to this package implement additional backends for processing futures via compute cluster schedulers, etc. Because of its unified API, there is no need to modify any code in order switch from sequential on the local machine to, say, distributed processing on a remote compute cluster. Another strength of this package is that global variables and functions are automatically identified and exported as needed, making it straightforward to tweak existing code to make use of futures.", + "License": "LGPL (>= 2.1)", + "LazyLoad": "TRUE", + "ByteCompile": "TRUE", + "URL": "https://future.futureverse.org, https://github.com/futureverse/future", + "BugReports": "https://github.com/futureverse/future/issues", + "Language": "en-US", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.2", + "Collate": "'000.bquote.R' '000.import.R' '000.re-exports.R' '010.tweakable.R' '010.utils-parallelly.R' 'backend_api-01-FutureBackend-class.R' 'backend_api-03.MultiprocessFutureBackend-class.R' 'backend_api-11.ClusterFutureBackend-class.R' 'backend_api-11.MulticoreFutureBackend-class.R' 'backend_api-11.SequentialFutureBackend-class.R' 'backend_api-13.MultisessionFutureBackend-class.R' 'backend_api-ConstantFuture-class.R' 'backend_api-Future-class.R' 'backend_api-FutureRegistry.R' 'backend_api-UniprocessFuture-class.R' 'backend_api-evalFuture.R' 'core_api-cancel.R' 'core_api-future.R' 'core_api-reset.R' 'core_api-resolved.R' 'core_api-value.R' 'delayed_api-futureAssign.R' 'delayed_api-futureOf.R' 'demo_api-mandelbrot.R' 'infix_api-01-futureAssign_OP.R' 'infix_api-02-globals_OP.R' 'infix_api-03-seed_OP.R' 'infix_api-04-stdout_OP.R' 'infix_api-05-conditions_OP.R' 'infix_api-06-lazy_OP.R' 'infix_api-07-label_OP.R' 'infix_api-08-plan_OP.R' 'infix_api-09-tweak_OP.R' 'protected_api-FutureCondition-class.R' 'protected_api-FutureGlobals-class.R' 'protected_api-FutureResult-class.R' 'protected_api-futures.R' 'protected_api-globals.R' 'protected_api-journal.R' 'protected_api-resolve.R' 'protected_api-signalConditions.R' 'testme.R' 'utils-basic.R' 'utils-conditions.R' 'utils-connections.R' 'utils-debug.R' 'utils-immediateCondition.R' 'utils-marshalling.R' 'utils-objectSize.R' 'utils-options.R' 'utils-prune_pkg_code.R' 'utils-registerClusterTypes.R' 'utils-rng_utils.R' 'utils-signalEarly.R' 'utils-stealth_sample.R' 'utils-sticky_globals.R' 'utils-tweakExpression.R' 'utils-uuid.R' 'utils-whichIndex.R' 'utils_api-backtrace.R' 'utils_api-capture_journals.R' 'utils_api-futureCall.R' 'utils_api-futureSessionInfo.R' 'utils_api-makeClusterFuture.R' 'utils_api-minifuture.R' 'utils_api-nbrOfWorkers.R' 'utils_api-plan.R' 'utils_api-plan-with.R' 'utils_api-sessionDetails.R' 'utils_api-tweak.R' 'zzz.R'", + "NeedsCompilation": "no", + "Author": "Henrik Bengtsson [aut, cre, cph] (ORCID: )", + "Maintainer": "Henrik Bengtsson ", + "Repository": "CRAN" + }, + "future.apply": { + "Package": "future.apply", + "Version": "1.20.0", + "Source": "Repository", + "Title": "Apply Function to Elements in Parallel using Futures", + "Depends": [ + "R (>= 3.2.0)", + "future (>= 1.49.0)" + ], + "Imports": [ + "globals", + "parallel", + "utils" + ], + "Suggests": [ + "datasets", + "stats", + "tools", + "listenv", + "R.rsp", + "markdown" + ], + "VignetteBuilder": "R.rsp", + "Authors@R": "c(person(\"Henrik\", \"Bengtsson\", role = c(\"aut\", \"cre\", \"cph\"), email = \"henrikb@braju.com\", comment = c(ORCID = \"0000-0002-7579-5165\")), person(\"R Core Team\", role = c(\"cph\", \"ctb\")))", + "Description": "Implementations of apply(), by(), eapply(), lapply(), Map(), .mapply(), mapply(), replicate(), sapply(), tapply(), and vapply() that can be resolved using any future-supported backend, e.g. parallel on the local machine or distributed on a compute cluster. These future_*apply() functions come with the same pros and cons as the corresponding base-R *apply() functions but with the additional feature of being able to be processed via the future framework .", + "License": "GPL (>= 2)", + "LazyLoad": "TRUE", + "URL": "https://future.apply.futureverse.org, https://github.com/futureverse/future.apply", + "BugReports": "https://github.com/futureverse/future.apply/issues", + "Language": "en-US", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.2", + "NeedsCompilation": "no", + "Author": "Henrik Bengtsson [aut, cre, cph] (ORCID: ), R Core Team [cph, ctb]", + "Maintainer": "Henrik Bengtsson ", + "Repository": "CRAN" + }, + "generics": { + "Package": "generics", + "Version": "0.1.4", + "Source": "Repository", + "Title": "Common S3 Generics not Provided by Base R Methods Related to Model Fitting", + "Authors@R": "c( person(\"Hadley\", \"Wickham\", , \"hadley@posit.co\", role = c(\"aut\", \"cre\"), comment = c(ORCID = \"0000-0003-4757-117X\")), person(\"Max\", \"Kuhn\", , \"max@posit.co\", role = \"aut\"), person(\"Davis\", \"Vaughan\", , \"davis@posit.co\", role = \"aut\"), person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\"), comment = c(ROR = \"https://ror.org/03wc8by49\")) )", + "Description": "In order to reduce potential package dependencies and conflicts, generics provides a number of commonly used S3 generics.", + "License": "MIT + file LICENSE", + "URL": "https://generics.r-lib.org, https://github.com/r-lib/generics", + "BugReports": "https://github.com/r-lib/generics/issues", + "Depends": [ + "R (>= 3.6)" + ], + "Imports": [ + "methods" + ], + "Suggests": [ + "covr", + "pkgload", + "testthat (>= 3.0.0)", + "tibble", + "withr" + ], + "Config/Needs/website": "tidyverse/tidytemplate", + "Config/testthat/edition": "3", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.2", + "NeedsCompilation": "no", + "Author": "Hadley Wickham [aut, cre] (ORCID: ), Max Kuhn [aut], Davis Vaughan [aut], Posit Software, PBC [cph, fnd] (ROR: )", + "Maintainer": "Hadley Wickham ", + "Repository": "CRAN" + }, + "ggplot2": { + "Package": "ggplot2", + "Version": "3.5.2", + "Source": "Repository", + "Title": "Create Elegant Data Visualisations Using the Grammar of Graphics", + "Authors@R": "c( person(\"Hadley\", \"Wickham\", , \"hadley@posit.co\", role = \"aut\", comment = c(ORCID = \"0000-0003-4757-117X\")), person(\"Winston\", \"Chang\", role = \"aut\", comment = c(ORCID = \"0000-0002-1576-2126\")), person(\"Lionel\", \"Henry\", role = \"aut\"), person(\"Thomas Lin\", \"Pedersen\", , \"thomas.pedersen@posit.co\", role = c(\"aut\", \"cre\"), comment = c(ORCID = \"0000-0002-5147-4711\")), person(\"Kohske\", \"Takahashi\", role = \"aut\"), person(\"Claus\", \"Wilke\", role = \"aut\", comment = c(ORCID = \"0000-0002-7470-9261\")), person(\"Kara\", \"Woo\", role = \"aut\", comment = c(ORCID = \"0000-0002-5125-4188\")), person(\"Hiroaki\", \"Yutani\", role = \"aut\", comment = c(ORCID = \"0000-0002-3385-7233\")), person(\"Dewey\", \"Dunnington\", role = \"aut\", comment = c(ORCID = \"0000-0002-9415-4582\")), person(\"Teun\", \"van den Brand\", role = \"aut\", comment = c(ORCID = \"0000-0002-9335-7468\")), person(\"Posit, PBC\", role = c(\"cph\", \"fnd\")) )", + "Description": "A system for 'declaratively' creating graphics, based on \"The Grammar of Graphics\". You provide the data, tell 'ggplot2' how to map variables to aesthetics, what graphical primitives to use, and it takes care of the details.", + "License": "MIT + file LICENSE", + "URL": "https://ggplot2.tidyverse.org, https://github.com/tidyverse/ggplot2", + "BugReports": "https://github.com/tidyverse/ggplot2/issues", + "Depends": [ + "R (>= 3.5)" + ], + "Imports": [ + "cli", + "glue", + "grDevices", + "grid", + "gtable (>= 0.1.1)", + "isoband", + "lifecycle (> 1.0.1)", + "MASS", + "mgcv", + "rlang (>= 1.1.0)", + "scales (>= 1.3.0)", + "stats", + "tibble", + "vctrs (>= 0.6.0)", + "withr (>= 2.5.0)" + ], + "Suggests": [ + "covr", + "dplyr", + "ggplot2movies", + "hexbin", + "Hmisc", + "knitr", + "mapproj", + "maps", + "multcomp", + "munsell", + "nlme", + "profvis", + "quantreg", + "ragg (>= 1.2.6)", + "RColorBrewer", + "rmarkdown", + "rpart", + "sf (>= 0.7-3)", + "svglite (>= 2.1.2)", + "testthat (>= 3.1.2)", + "vdiffr (>= 1.0.6)", + "xml2" + ], + "Enhances": [ + "sp" + ], + "VignetteBuilder": "knitr", + "Config/Needs/website": "ggtext, tidyr, forcats, tidyverse/tidytemplate", + "Config/testthat/edition": "3", + "Encoding": "UTF-8", + "LazyData": "true", + "RoxygenNote": "7.3.2", + "Collate": "'ggproto.R' 'ggplot-global.R' 'aaa-.R' 'aes-colour-fill-alpha.R' 'aes-evaluation.R' 'aes-group-order.R' 'aes-linetype-size-shape.R' 'aes-position.R' 'compat-plyr.R' 'utilities.R' 'aes.R' 'utilities-checks.R' 'legend-draw.R' 'geom-.R' 'annotation-custom.R' 'annotation-logticks.R' 'geom-polygon.R' 'geom-map.R' 'annotation-map.R' 'geom-raster.R' 'annotation-raster.R' 'annotation.R' 'autolayer.R' 'autoplot.R' 'axis-secondary.R' 'backports.R' 'bench.R' 'bin.R' 'coord-.R' 'coord-cartesian-.R' 'coord-fixed.R' 'coord-flip.R' 'coord-map.R' 'coord-munch.R' 'coord-polar.R' 'coord-quickmap.R' 'coord-radial.R' 'coord-sf.R' 'coord-transform.R' 'data.R' 'docs_layer.R' 'facet-.R' 'facet-grid-.R' 'facet-null.R' 'facet-wrap.R' 'fortify-lm.R' 'fortify-map.R' 'fortify-multcomp.R' 'fortify-spatial.R' 'fortify.R' 'stat-.R' 'geom-abline.R' 'geom-rect.R' 'geom-bar.R' 'geom-bin2d.R' 'geom-blank.R' 'geom-boxplot.R' 'geom-col.R' 'geom-path.R' 'geom-contour.R' 'geom-count.R' 'geom-crossbar.R' 'geom-segment.R' 'geom-curve.R' 'geom-defaults.R' 'geom-ribbon.R' 'geom-density.R' 'geom-density2d.R' 'geom-dotplot.R' 'geom-errorbar.R' 'geom-errorbarh.R' 'geom-freqpoly.R' 'geom-function.R' 'geom-hex.R' 'geom-histogram.R' 'geom-hline.R' 'geom-jitter.R' 'geom-label.R' 'geom-linerange.R' 'geom-point.R' 'geom-pointrange.R' 'geom-quantile.R' 'geom-rug.R' 'geom-sf.R' 'geom-smooth.R' 'geom-spoke.R' 'geom-text.R' 'geom-tile.R' 'geom-violin.R' 'geom-vline.R' 'ggplot2-package.R' 'grob-absolute.R' 'grob-dotstack.R' 'grob-null.R' 'grouping.R' 'theme-elements.R' 'guide-.R' 'guide-axis.R' 'guide-axis-logticks.R' 'guide-axis-stack.R' 'guide-axis-theta.R' 'guide-legend.R' 'guide-bins.R' 'guide-colorbar.R' 'guide-colorsteps.R' 'guide-custom.R' 'layer.R' 'guide-none.R' 'guide-old.R' 'guides-.R' 'guides-grid.R' 'hexbin.R' 'import-standalone-obj-type.R' 'import-standalone-types-check.R' 'labeller.R' 'labels.R' 'layer-sf.R' 'layout.R' 'limits.R' 'margins.R' 'performance.R' 'plot-build.R' 'plot-construction.R' 'plot-last.R' 'plot.R' 'position-.R' 'position-collide.R' 'position-dodge.R' 'position-dodge2.R' 'position-identity.R' 'position-jitter.R' 'position-jitterdodge.R' 'position-nudge.R' 'position-stack.R' 'quick-plot.R' 'reshape-add-margins.R' 'save.R' 'scale-.R' 'scale-alpha.R' 'scale-binned.R' 'scale-brewer.R' 'scale-colour.R' 'scale-continuous.R' 'scale-date.R' 'scale-discrete-.R' 'scale-expansion.R' 'scale-gradient.R' 'scale-grey.R' 'scale-hue.R' 'scale-identity.R' 'scale-linetype.R' 'scale-linewidth.R' 'scale-manual.R' 'scale-shape.R' 'scale-size.R' 'scale-steps.R' 'scale-type.R' 'scale-view.R' 'scale-viridis.R' 'scales-.R' 'stat-align.R' 'stat-bin.R' 'stat-bin2d.R' 'stat-bindot.R' 'stat-binhex.R' 'stat-boxplot.R' 'stat-contour.R' 'stat-count.R' 'stat-density-2d.R' 'stat-density.R' 'stat-ecdf.R' 'stat-ellipse.R' 'stat-function.R' 'stat-identity.R' 'stat-qq-line.R' 'stat-qq.R' 'stat-quantilemethods.R' 'stat-sf-coordinates.R' 'stat-sf.R' 'stat-smooth-methods.R' 'stat-smooth.R' 'stat-sum.R' 'stat-summary-2d.R' 'stat-summary-bin.R' 'stat-summary-hex.R' 'stat-summary.R' 'stat-unique.R' 'stat-ydensity.R' 'summarise-plot.R' 'summary.R' 'theme.R' 'theme-defaults.R' 'theme-current.R' 'utilities-break.R' 'utilities-grid.R' 'utilities-help.R' 'utilities-matrix.R' 'utilities-patterns.R' 'utilities-resolution.R' 'utilities-tidy-eval.R' 'zxx.R' 'zzz.R'", + "NeedsCompilation": "no", + "Author": "Hadley Wickham [aut] (), Winston Chang [aut] (), Lionel Henry [aut], Thomas Lin Pedersen [aut, cre] (), Kohske Takahashi [aut], Claus Wilke [aut] (), Kara Woo [aut] (), Hiroaki Yutani [aut] (), Dewey Dunnington [aut] (), Teun van den Brand [aut] (), Posit, PBC [cph, fnd]", + "Maintainer": "Thomas Lin Pedersen ", + "Repository": "CRAN" + }, + "globals": { + "Package": "globals", + "Version": "0.18.0", + "Source": "Repository", + "Depends": [ + "R (>= 3.1.2)" + ], + "Imports": [ + "codetools" + ], + "Title": "Identify Global Objects in R Expressions", + "Authors@R": "c( person(\"Henrik\", \"Bengtsson\", role=c(\"aut\", \"cre\", \"cph\"), email=\"henrikb@braju.com\"), person(\"Davis\",\"Vaughan\", role=\"ctb\", email=\"davis@posit.co\"))", + "Description": "Identifies global (\"unknown\" or \"free\") objects in R expressions by code inspection using various strategies (ordered, liberal, conservative, or deep-first search). The objective of this package is to make it as simple as possible to identify global objects for the purpose of exporting them in parallel, distributed compute environments.", + "License": "LGPL (>= 2.1)", + "LazyLoad": "TRUE", + "ByteCompile": "TRUE", + "Language": "en-US", + "Encoding": "UTF-8", + "URL": "https://globals.futureverse.org, https://github.com/futureverse/globals", + "BugReports": "https://github.com/futureverse/globals/issues", + "RoxygenNote": "7.3.2", + "NeedsCompilation": "no", + "Author": "Henrik Bengtsson [aut, cre, cph], Davis Vaughan [ctb]", + "Maintainer": "Henrik Bengtsson ", + "Repository": "CRAN" + }, + "glue": { + "Package": "glue", + "Version": "1.8.0", + "Source": "Repository", + "Title": "Interpreted String Literals", + "Authors@R": "c( person(\"Jim\", \"Hester\", role = \"aut\", comment = c(ORCID = \"0000-0002-2739-7082\")), person(\"Jennifer\", \"Bryan\", , \"jenny@posit.co\", role = c(\"aut\", \"cre\"), comment = c(ORCID = \"0000-0002-6983-2759\")), person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\")) )", + "Description": "An implementation of interpreted string literals, inspired by Python's Literal String Interpolation and Docstrings and Julia's Triple-Quoted String Literals .", + "License": "MIT + file LICENSE", + "URL": "https://glue.tidyverse.org/, https://github.com/tidyverse/glue", + "BugReports": "https://github.com/tidyverse/glue/issues", + "Depends": [ + "R (>= 3.6)" + ], + "Imports": [ + "methods" + ], + "Suggests": [ + "crayon", + "DBI (>= 1.2.0)", + "dplyr", + "knitr", + "magrittr", + "rlang", + "rmarkdown", + "RSQLite", + "testthat (>= 3.2.0)", + "vctrs (>= 0.3.0)", + "waldo (>= 0.5.3)", + "withr" + ], + "VignetteBuilder": "knitr", + "ByteCompile": "true", + "Config/Needs/website": "bench, forcats, ggbeeswarm, ggplot2, R.utils, rprintf, tidyr, tidyverse/tidytemplate", + "Config/testthat/edition": "3", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.2", + "NeedsCompilation": "yes", + "Author": "Jim Hester [aut] (), Jennifer Bryan [aut, cre] (), Posit Software, PBC [cph, fnd]", + "Maintainer": "Jennifer Bryan ", + "Repository": "CRAN" + }, + "gower": { + "Package": "gower", + "Version": "1.0.2", + "Source": "Repository", + "Maintainer": "Mark van der Loo ", + "License": "GPL-3", + "Title": "Gower's Distance", + "Type": "Package", + "LazyLoad": "yes", + "Authors@R": "c( person(\"Mark\", \"van der Loo\", role=c(\"aut\",\"cre\"),email=\"mark.vanderloo@gmail.com\") , person(\"David\", \"Turner\", role=\"ctb\"))", + "Description": "Compute Gower's distance (or similarity) coefficient between records. Compute the top-n matches between records. Core algorithms are executed in parallel on systems supporting OpenMP.", + "URL": "https://github.com/markvanderloo/gower", + "BugReports": "https://github.com/markvanderloo/gower/issues", + "Suggests": [ + "tinytest (>= 0.9.3)" + ], + "RoxygenNote": "7.3.2", + "NeedsCompilation": "yes", + "Author": "Mark van der Loo [aut, cre], David Turner [ctb]", + "Repository": "CRAN", + "Encoding": "UTF-8" + }, + "gtable": { + "Package": "gtable", + "Version": "0.3.6", + "Source": "Repository", + "Title": "Arrange 'Grobs' in Tables", + "Authors@R": "c( person(\"Hadley\", \"Wickham\", , \"hadley@posit.co\", role = \"aut\"), person(\"Thomas Lin\", \"Pedersen\", , \"thomas.pedersen@posit.co\", role = c(\"aut\", \"cre\")), person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\")) )", + "Description": "Tools to make it easier to work with \"tables\" of 'grobs'. The 'gtable' package defines a 'gtable' grob class that specifies a grid along with a list of grobs and their placement in the grid. Further the package makes it easy to manipulate and combine 'gtable' objects so that complex compositions can be built up sequentially.", + "License": "MIT + file LICENSE", + "URL": "https://gtable.r-lib.org, https://github.com/r-lib/gtable", + "BugReports": "https://github.com/r-lib/gtable/issues", + "Depends": [ + "R (>= 4.0)" + ], + "Imports": [ + "cli", + "glue", + "grid", + "lifecycle", + "rlang (>= 1.1.0)", + "stats" + ], + "Suggests": [ + "covr", + "ggplot2", + "knitr", + "profvis", + "rmarkdown", + "testthat (>= 3.0.0)" + ], + "VignetteBuilder": "knitr", + "Config/Needs/website": "tidyverse/tidytemplate", + "Config/testthat/edition": "3", + "Config/usethis/last-upkeep": "2024-10-25", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.2", + "NeedsCompilation": "no", + "Author": "Hadley Wickham [aut], Thomas Lin Pedersen [aut, cre], Posit Software, PBC [cph, fnd]", + "Maintainer": "Thomas Lin Pedersen ", + "Repository": "CRAN" + }, + "hardhat": { + "Package": "hardhat", + "Version": "1.4.1", + "Source": "Repository", + "Title": "Construct Modeling Packages", + "Authors@R": "c( person(\"Hannah\", \"Frick\", , \"hannah@posit.co\", role = c(\"aut\", \"cre\"), comment = c(ORCID = \"0000-0002-6049-5258\")), person(\"Davis\", \"Vaughan\", , \"davis@posit.co\", role = \"aut\"), person(\"Max\", \"Kuhn\", , \"max@posit.co\", role = \"aut\"), person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\")) )", + "Description": "Building modeling packages is hard. A large amount of effort generally goes into providing an implementation for a new method that is efficient, fast, and correct, but often less emphasis is put on the user interface. A good interface requires specialized knowledge about S3 methods and formulas, which the average package developer might not have. The goal of 'hardhat' is to reduce the burden around building new modeling packages by providing functionality for preprocessing, predicting, and validating input.", + "License": "MIT + file LICENSE", + "URL": "https://github.com/tidymodels/hardhat, https://hardhat.tidymodels.org", + "BugReports": "https://github.com/tidymodels/hardhat/issues", + "Depends": [ + "R (>= 3.5.0)" + ], + "Imports": [ + "cli (>= 3.6.0)", + "glue (>= 1.6.2)", + "rlang (>= 1.1.0)", + "sparsevctrs (>= 0.2.0)", + "tibble (>= 3.2.1)", + "vctrs (>= 0.6.0)" + ], + "Suggests": [ + "covr", + "crayon", + "devtools", + "knitr", + "Matrix", + "modeldata (>= 0.0.2)", + "recipes (>= 1.0.5)", + "rmarkdown (>= 2.3)", + "roxygen2", + "testthat (>= 3.0.0)", + "usethis (>= 2.1.5)", + "withr (>= 3.0.0)" + ], + "VignetteBuilder": "knitr", + "Config/Needs/website": "tidyverse/tidytemplate", + "Config/testthat/edition": "3", + "Encoding": "UTF-8", + "LazyData": "true", + "RoxygenNote": "7.3.2", + "NeedsCompilation": "no", + "Author": "Hannah Frick [aut, cre] (), Davis Vaughan [aut], Max Kuhn [aut], Posit Software, PBC [cph, fnd]", + "Maintainer": "Hannah Frick ", + "Repository": "CRAN" + }, + "here": { + "Package": "here", + "Version": "1.0.1", + "Source": "Repository", + "Title": "A Simpler Way to Find Your Files", + "Date": "2020-12-13", + "Authors@R": "c(person(given = \"Kirill\", family = \"M\\u00fcller\", role = c(\"aut\", \"cre\"), email = \"krlmlr+r@mailbox.org\", comment = c(ORCID = \"0000-0002-1416-3412\")), person(given = \"Jennifer\", family = \"Bryan\", role = \"ctb\", email = \"jenny@rstudio.com\", comment = c(ORCID = \"0000-0002-6983-2759\")))", + "Description": "Constructs paths to your project's files. Declare the relative path of a file within your project with 'i_am()'. Use the 'here()' function as a drop-in replacement for 'file.path()', it will always locate the files relative to your project root.", + "License": "MIT + file LICENSE", + "URL": "https://here.r-lib.org/, https://github.com/r-lib/here", + "BugReports": "https://github.com/r-lib/here/issues", + "Imports": [ + "rprojroot (>= 2.0.2)" + ], + "Suggests": [ + "conflicted", + "covr", + "fs", + "knitr", + "palmerpenguins", + "plyr", + "readr", + "rlang", + "rmarkdown", + "testthat", + "uuid", + "withr" + ], + "VignetteBuilder": "knitr", + "Encoding": "UTF-8", + "LazyData": "true", + "RoxygenNote": "7.1.1.9000", + "Config/testthat/edition": "3", + "NeedsCompilation": "no", + "Author": "Kirill Müller [aut, cre] (), Jennifer Bryan [ctb] ()", + "Maintainer": "Kirill Müller ", + "Repository": "CRAN" + }, + "highr": { + "Package": "highr", + "Version": "0.11", + "Source": "Repository", + "Type": "Package", + "Title": "Syntax Highlighting for R Source Code", + "Authors@R": "c( person(\"Yihui\", \"Xie\", role = c(\"aut\", \"cre\"), email = \"xie@yihui.name\", comment = c(ORCID = \"0000-0003-0645-5666\")), person(\"Yixuan\", \"Qiu\", role = \"aut\"), person(\"Christopher\", \"Gandrud\", role = \"ctb\"), person(\"Qiang\", \"Li\", role = \"ctb\") )", + "Description": "Provides syntax highlighting for R source code. Currently it supports LaTeX and HTML output. Source code of other languages is supported via Andre Simon's highlight package ().", + "Depends": [ + "R (>= 3.3.0)" + ], + "Imports": [ + "xfun (>= 0.18)" + ], + "Suggests": [ + "knitr", + "markdown", + "testit" + ], + "License": "GPL", + "URL": "https://github.com/yihui/highr", + "BugReports": "https://github.com/yihui/highr/issues", + "VignetteBuilder": "knitr", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.1", + "NeedsCompilation": "no", + "Author": "Yihui Xie [aut, cre] (), Yixuan Qiu [aut], Christopher Gandrud [ctb], Qiang Li [ctb]", + "Maintainer": "Yihui Xie ", + "Repository": "CRAN" + }, + "hms": { + "Package": "hms", + "Version": "1.1.3", + "Source": "Repository", + "Title": "Pretty Time of Day", + "Date": "2023-03-21", + "Authors@R": "c( person(\"Kirill\", \"Müller\", role = c(\"aut\", \"cre\"), email = \"kirill@cynkra.com\", comment = c(ORCID = \"0000-0002-1416-3412\")), person(\"R Consortium\", role = \"fnd\"), person(\"RStudio\", role = \"fnd\") )", + "Description": "Implements an S3 class for storing and formatting time-of-day values, based on the 'difftime' class.", + "Imports": [ + "lifecycle", + "methods", + "pkgconfig", + "rlang (>= 1.0.2)", + "vctrs (>= 0.3.8)" + ], + "Suggests": [ + "crayon", + "lubridate", + "pillar (>= 1.1.0)", + "testthat (>= 3.0.0)" + ], + "License": "MIT + file LICENSE", + "Encoding": "UTF-8", + "URL": "https://hms.tidyverse.org/, https://github.com/tidyverse/hms", + "BugReports": "https://github.com/tidyverse/hms/issues", + "RoxygenNote": "7.2.3", + "Config/testthat/edition": "3", + "Config/autostyle/scope": "line_breaks", + "Config/autostyle/strict": "false", + "Config/Needs/website": "tidyverse/tidytemplate", + "NeedsCompilation": "no", + "Author": "Kirill Müller [aut, cre] (), R Consortium [fnd], RStudio [fnd]", + "Maintainer": "Kirill Müller ", + "Repository": "CRAN" + }, + "htmltools": { + "Package": "htmltools", + "Version": "0.5.8.1", + "Source": "Repository", + "Type": "Package", + "Title": "Tools for HTML", + "Authors@R": "c( person(\"Joe\", \"Cheng\", , \"joe@posit.co\", role = \"aut\"), person(\"Carson\", \"Sievert\", , \"carson@posit.co\", role = c(\"aut\", \"cre\"), comment = c(ORCID = \"0000-0002-4958-2844\")), person(\"Barret\", \"Schloerke\", , \"barret@posit.co\", role = \"aut\", comment = c(ORCID = \"0000-0001-9986-114X\")), person(\"Winston\", \"Chang\", , \"winston@posit.co\", role = \"aut\", comment = c(ORCID = \"0000-0002-1576-2126\")), person(\"Yihui\", \"Xie\", , \"yihui@posit.co\", role = \"aut\"), person(\"Jeff\", \"Allen\", role = \"aut\"), person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\")) )", + "Description": "Tools for HTML generation and output.", + "License": "GPL (>= 2)", + "URL": "https://github.com/rstudio/htmltools, https://rstudio.github.io/htmltools/", + "BugReports": "https://github.com/rstudio/htmltools/issues", + "Depends": [ + "R (>= 2.14.1)" + ], + "Imports": [ + "base64enc", + "digest", + "fastmap (>= 1.1.0)", + "grDevices", + "rlang (>= 1.0.0)", + "utils" + ], + "Suggests": [ + "Cairo", + "markdown", + "ragg", + "shiny", + "testthat", + "withr" + ], + "Enhances": [ + "knitr" + ], + "Config/Needs/check": "knitr", + "Config/Needs/website": "rstudio/quillt, bench", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.1", + "Collate": "'colors.R' 'fill.R' 'html_dependency.R' 'html_escape.R' 'html_print.R' 'htmltools-package.R' 'images.R' 'known_tags.R' 'selector.R' 'staticimports.R' 'tag_query.R' 'utils.R' 'tags.R' 'template.R'", + "NeedsCompilation": "yes", + "Author": "Joe Cheng [aut], Carson Sievert [aut, cre] (), Barret Schloerke [aut] (), Winston Chang [aut] (), Yihui Xie [aut], Jeff Allen [aut], Posit Software, PBC [cph, fnd]", + "Maintainer": "Carson Sievert ", + "Repository": "CRAN" + }, + "htmlwidgets": { + "Package": "htmlwidgets", + "Version": "1.6.4", + "Source": "Repository", + "Type": "Package", + "Title": "HTML Widgets for R", + "Authors@R": "c( person(\"Ramnath\", \"Vaidyanathan\", role = c(\"aut\", \"cph\")), person(\"Yihui\", \"Xie\", role = \"aut\"), person(\"JJ\", \"Allaire\", role = \"aut\"), person(\"Joe\", \"Cheng\", , \"joe@posit.co\", role = \"aut\"), person(\"Carson\", \"Sievert\", , \"carson@posit.co\", role = c(\"aut\", \"cre\"), comment = c(ORCID = \"0000-0002-4958-2844\")), person(\"Kenton\", \"Russell\", role = c(\"aut\", \"cph\")), person(\"Ellis\", \"Hughes\", role = \"ctb\"), person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\")) )", + "Description": "A framework for creating HTML widgets that render in various contexts including the R console, 'R Markdown' documents, and 'Shiny' web applications.", + "License": "MIT + file LICENSE", + "URL": "https://github.com/ramnathv/htmlwidgets", + "BugReports": "https://github.com/ramnathv/htmlwidgets/issues", + "Imports": [ + "grDevices", + "htmltools (>= 0.5.7)", + "jsonlite (>= 0.9.16)", + "knitr (>= 1.8)", + "rmarkdown", + "yaml" + ], + "Suggests": [ + "testthat" + ], + "Enhances": [ + "shiny (>= 1.1)" + ], + "VignetteBuilder": "knitr", + "Encoding": "UTF-8", + "RoxygenNote": "7.2.3", + "NeedsCompilation": "no", + "Author": "Ramnath Vaidyanathan [aut, cph], Yihui Xie [aut], JJ Allaire [aut], Joe Cheng [aut], Carson Sievert [aut, cre] (), Kenton Russell [aut, cph], Ellis Hughes [ctb], Posit Software, PBC [cph, fnd]", + "Maintainer": "Carson Sievert ", + "Repository": "CRAN" + }, + "httpuv": { + "Package": "httpuv", + "Version": "1.6.16", + "Source": "Repository", + "Type": "Package", + "Title": "HTTP and WebSocket Server Library", + "Authors@R": "c( person(\"Joe\", \"Cheng\", , \"joe@posit.co\", role = \"aut\"), person(\"Winston\", \"Chang\", , \"winston@posit.co\", role = c(\"aut\", \"cre\")), person(\"Posit, PBC\", \"fnd\", role = \"cph\"), person(\"Hector\", \"Corrada Bravo\", role = \"ctb\"), person(\"Jeroen\", \"Ooms\", role = \"ctb\"), person(\"Andrzej\", \"Krzemienski\", role = \"cph\", comment = \"optional.hpp\"), person(\"libuv project contributors\", role = \"cph\", comment = \"libuv library, see src/libuv/AUTHORS file\"), person(\"Joyent, Inc. and other Node contributors\", role = \"cph\", comment = \"libuv library, see src/libuv/AUTHORS file; and http-parser library, see src/http-parser/AUTHORS file\"), person(\"Niels\", \"Provos\", role = \"cph\", comment = \"libuv subcomponent: tree.h\"), person(\"Internet Systems Consortium, Inc.\", role = \"cph\", comment = \"libuv subcomponent: inet_pton and inet_ntop, contained in src/libuv/src/inet.c\"), person(\"Alexander\", \"Chemeris\", role = \"cph\", comment = \"libuv subcomponent: stdint-msvc2008.h (from msinttypes)\"), person(\"Google, Inc.\", role = \"cph\", comment = \"libuv subcomponent: pthread-fixes.c\"), person(\"Sony Mobile Communcations AB\", role = \"cph\", comment = \"libuv subcomponent: pthread-fixes.c\"), person(\"Berkeley Software Design Inc.\", role = \"cph\", comment = \"libuv subcomponent: android-ifaddrs.h, android-ifaddrs.c\"), person(\"Kenneth\", \"MacKay\", role = \"cph\", comment = \"libuv subcomponent: android-ifaddrs.h, android-ifaddrs.c\"), person(\"Emergya (Cloud4all, FP7/2007-2013, grant agreement no 289016)\", role = \"cph\", comment = \"libuv subcomponent: android-ifaddrs.h, android-ifaddrs.c\"), person(\"Steve\", \"Reid\", role = \"aut\", comment = \"SHA-1 implementation\"), person(\"James\", \"Brown\", role = \"aut\", comment = \"SHA-1 implementation\"), person(\"Bob\", \"Trower\", role = \"aut\", comment = \"base64 implementation\"), person(\"Alexander\", \"Peslyak\", role = \"aut\", comment = \"MD5 implementation\"), person(\"Trantor Standard Systems\", role = \"cph\", comment = \"base64 implementation\"), person(\"Igor\", \"Sysoev\", role = \"cph\", comment = \"http-parser\") )", + "Description": "Provides low-level socket and protocol support for handling HTTP and WebSocket requests directly from within R. It is primarily intended as a building block for other packages, rather than making it particularly easy to create complete web applications using httpuv alone. httpuv is built on top of the libuv and http-parser C libraries, both of which were developed by Joyent, Inc. (See LICENSE file for libuv and http-parser license information.)", + "License": "GPL (>= 2) | file LICENSE", + "URL": "https://github.com/rstudio/httpuv", + "BugReports": "https://github.com/rstudio/httpuv/issues", + "Depends": [ + "R (>= 2.15.1)" + ], + "Imports": [ + "later (>= 0.8.0)", + "promises", + "R6", + "Rcpp (>= 1.0.7)", + "utils" + ], + "Suggests": [ + "callr", + "curl", + "jsonlite", + "testthat", + "websocket" + ], + "LinkingTo": [ + "later", + "Rcpp" + ], + "Encoding": "UTF-8", + "RoxygenNote": "7.3.2", + "SystemRequirements": "GNU make, zlib", + "Collate": "'RcppExports.R' 'httpuv.R' 'random_port.R' 'server.R' 'staticServer.R' 'static_paths.R' 'utils.R'", + "NeedsCompilation": "yes", + "Author": "Joe Cheng [aut], Winston Chang [aut, cre], Posit, PBC fnd [cph], Hector Corrada Bravo [ctb], Jeroen Ooms [ctb], Andrzej Krzemienski [cph] (optional.hpp), libuv project contributors [cph] (libuv library, see src/libuv/AUTHORS file), Joyent, Inc. and other Node contributors [cph] (libuv library, see src/libuv/AUTHORS file; and http-parser library, see src/http-parser/AUTHORS file), Niels Provos [cph] (libuv subcomponent: tree.h), Internet Systems Consortium, Inc. [cph] (libuv subcomponent: inet_pton and inet_ntop, contained in src/libuv/src/inet.c), Alexander Chemeris [cph] (libuv subcomponent: stdint-msvc2008.h (from msinttypes)), Google, Inc. [cph] (libuv subcomponent: pthread-fixes.c), Sony Mobile Communcations AB [cph] (libuv subcomponent: pthread-fixes.c), Berkeley Software Design Inc. [cph] (libuv subcomponent: android-ifaddrs.h, android-ifaddrs.c), Kenneth MacKay [cph] (libuv subcomponent: android-ifaddrs.h, android-ifaddrs.c), Emergya (Cloud4all, FP7/2007-2013, grant agreement no 289016) [cph] (libuv subcomponent: android-ifaddrs.h, android-ifaddrs.c), Steve Reid [aut] (SHA-1 implementation), James Brown [aut] (SHA-1 implementation), Bob Trower [aut] (base64 implementation), Alexander Peslyak [aut] (MD5 implementation), Trantor Standard Systems [cph] (base64 implementation), Igor Sysoev [cph] (http-parser)", + "Maintainer": "Winston Chang ", + "Repository": "CRAN" + }, + "httr": { + "Package": "httr", + "Version": "1.4.7", + "Source": "Repository", + "Title": "Tools for Working with URLs and HTTP", + "Authors@R": "c( person(\"Hadley\", \"Wickham\", , \"hadley@posit.co\", role = c(\"aut\", \"cre\")), person(\"Posit, PBC\", role = c(\"cph\", \"fnd\")) )", + "Description": "Useful tools for working with HTTP organised by HTTP verbs (GET(), POST(), etc). Configuration functions make it easy to control additional request components (authenticate(), add_headers() and so on).", + "License": "MIT + file LICENSE", + "URL": "https://httr.r-lib.org/, https://github.com/r-lib/httr", + "BugReports": "https://github.com/r-lib/httr/issues", + "Depends": [ + "R (>= 3.5)" + ], + "Imports": [ + "curl (>= 5.0.2)", + "jsonlite", + "mime", + "openssl (>= 0.8)", + "R6" + ], + "Suggests": [ + "covr", + "httpuv", + "jpeg", + "knitr", + "png", + "readr", + "rmarkdown", + "testthat (>= 0.8.0)", + "xml2" + ], + "VignetteBuilder": "knitr", + "Config/Needs/website": "tidyverse/tidytemplate", + "Encoding": "UTF-8", + "RoxygenNote": "7.2.3", + "NeedsCompilation": "no", + "Author": "Hadley Wickham [aut, cre], Posit, PBC [cph, fnd]", + "Maintainer": "Hadley Wickham ", + "Repository": "CRAN" + }, + "imola": { + "Package": "imola", + "Version": "0.5.0", + "Source": "Repository", + "Type": "Package", + "Title": "CSS Layouts (Grid and Flexbox) Implementation for R/Shiny", + "Authors@R": "person(\"Pedro\", \"Silva\", email = \"pedrocoutinhosilva@gmail.com\", role = c(\"aut\", \"cre\"))", + "Description": "Allows easy creation of CSS layouts (grid and flexbox) directly from R without added CSS.", + "License": "MIT + file LICENSE", + "URL": "https://github.com/pedrocoutinhosilva/imola", + "Encoding": "UTF-8", + "VignetteBuilder": "knitr", + "Imports": [ + "shiny", + "htmltools", + "magrittr", + "stringi", + "glue", + "yaml" + ], + "Suggests": [ + "testthat (>= 3.0.0)", + "rvest", + "devtools", + "covr", + "rmarkdown", + "knitr" + ], + "RoxygenNote": "7.1.2", + "Config/testthat/edition": "3", + "Language": "en-US", + "NeedsCompilation": "no", + "Author": "Pedro Silva [aut, cre]", + "Maintainer": "Pedro Silva ", + "Repository": "CRAN" + }, + "ipred": { + "Package": "ipred", + "Version": "0.9-15", + "Source": "Repository", + "Title": "Improved Predictors", + "Date": "2024-07-18", + "Authors@R": "c(person(\"Andrea\", \"Peters\", role = \"aut\"), person(\"Torsten\", \"Hothorn\", role = c(\"aut\", \"cre\"), email = \"Torsten.Hothorn@R-project.org\"), person(\"Brian D.\", \"Ripley\", role = \"ctb\"), person(\"Terry\", \"Therneau\", role = \"ctb\"), person(\"Beth\", \"Atkinson\", role = \"ctb\"))", + "Description": "Improved predictive models by indirect classification and bagging for classification, regression and survival problems as well as resampling based estimators of prediction error.", + "Depends": [ + "R (>= 2.10)" + ], + "Imports": [ + "rpart (>= 3.1-8)", + "MASS", + "survival", + "nnet", + "class", + "prodlim" + ], + "Suggests": [ + "mvtnorm", + "mlbench", + "TH.data", + "randomForest", + "party" + ], + "License": "GPL (>= 2)", + "NeedsCompilation": "yes", + "Author": "Andrea Peters [aut], Torsten Hothorn [aut, cre], Brian D. Ripley [ctb], Terry Therneau [ctb], Beth Atkinson [ctb]", + "Maintainer": "Torsten Hothorn ", + "Repository": "CRAN", + "Encoding": "UTF-8" + }, + "isoband": { + "Package": "isoband", + "Version": "0.2.7", + "Source": "Repository", + "Title": "Generate Isolines and Isobands from Regularly Spaced Elevation Grids", + "Authors@R": "c( person(\"Hadley\", \"Wickham\", , \"hadley@posit.co\", role = c(\"aut\", \"cre\"), comment = c(ORCID = \"0000-0003-4757-117X\")), person(\"Claus O.\", \"Wilke\", , \"wilke@austin.utexas.edu\", role = \"aut\", comment = c(\"Original author\", ORCID = \"0000-0002-7470-9261\")), person(\"Thomas Lin\", \"Pedersen\", , \"thomasp85@gmail.com\", role = \"aut\", comment = c(ORCID = \"0000-0002-5147-4711\")) )", + "Description": "A fast C++ implementation to generate contour lines (isolines) and contour polygons (isobands) from regularly spaced grids containing elevation data.", + "License": "MIT + file LICENSE", + "URL": "https://isoband.r-lib.org", + "BugReports": "https://github.com/r-lib/isoband/issues", + "Imports": [ + "grid", + "utils" + ], + "Suggests": [ + "covr", + "ggplot2", + "knitr", + "magick", + "microbenchmark", + "rmarkdown", + "sf", + "testthat", + "xml2" + ], + "VignetteBuilder": "knitr", + "Config/Needs/website": "tidyverse/tidytemplate", + "Config/testthat/edition": "3", + "Encoding": "UTF-8", + "RoxygenNote": "7.2.3", + "SystemRequirements": "C++11", + "NeedsCompilation": "yes", + "Author": "Hadley Wickham [aut, cre] (), Claus O. Wilke [aut] (Original author, ), Thomas Lin Pedersen [aut] ()", + "Maintainer": "Hadley Wickham ", + "Repository": "CRAN" + }, + "jquerylib": { + "Package": "jquerylib", + "Version": "0.1.4", + "Source": "Repository", + "Title": "Obtain 'jQuery' as an HTML Dependency Object", + "Authors@R": "c( person(\"Carson\", \"Sievert\", role = c(\"aut\", \"cre\"), email = \"carson@rstudio.com\", comment = c(ORCID = \"0000-0002-4958-2844\")), person(\"Joe\", \"Cheng\", role = \"aut\", email = \"joe@rstudio.com\"), person(family = \"RStudio\", role = \"cph\"), person(family = \"jQuery Foundation\", role = \"cph\", comment = \"jQuery library and jQuery UI library\"), person(family = \"jQuery contributors\", role = c(\"ctb\", \"cph\"), comment = \"jQuery library; authors listed in inst/lib/jquery-AUTHORS.txt\") )", + "Description": "Obtain any major version of 'jQuery' () and use it in any webpage generated by 'htmltools' (e.g. 'shiny', 'htmlwidgets', and 'rmarkdown'). Most R users don't need to use this package directly, but other R packages (e.g. 'shiny', 'rmarkdown', etc.) depend on this package to avoid bundling redundant copies of 'jQuery'.", + "License": "MIT + file LICENSE", + "Encoding": "UTF-8", + "Config/testthat/edition": "3", + "RoxygenNote": "7.0.2", + "Imports": [ + "htmltools" + ], + "Suggests": [ + "testthat" + ], + "NeedsCompilation": "no", + "Author": "Carson Sievert [aut, cre] (), Joe Cheng [aut], RStudio [cph], jQuery Foundation [cph] (jQuery library and jQuery UI library), jQuery contributors [ctb, cph] (jQuery library; authors listed in inst/lib/jquery-AUTHORS.txt)", + "Maintainer": "Carson Sievert ", + "Repository": "CRAN" + }, + "jsonlite": { + "Package": "jsonlite", + "Version": "2.0.0", + "Source": "Repository", + "Title": "A Simple and Robust JSON Parser and Generator for R", + "License": "MIT + file LICENSE", + "Depends": [ + "methods" + ], + "Authors@R": "c( person(\"Jeroen\", \"Ooms\", role = c(\"aut\", \"cre\"), email = \"jeroenooms@gmail.com\", comment = c(ORCID = \"0000-0002-4035-0289\")), person(\"Duncan\", \"Temple Lang\", role = \"ctb\"), person(\"Lloyd\", \"Hilaiel\", role = \"cph\", comment=\"author of bundled libyajl\"))", + "URL": "https://jeroen.r-universe.dev/jsonlite https://arxiv.org/abs/1403.2805", + "BugReports": "https://github.com/jeroen/jsonlite/issues", + "Maintainer": "Jeroen Ooms ", + "VignetteBuilder": "knitr, R.rsp", + "Description": "A reasonably fast JSON parser and generator, optimized for statistical data and the web. Offers simple, flexible tools for working with JSON in R, and is particularly powerful for building pipelines and interacting with a web API. The implementation is based on the mapping described in the vignette (Ooms, 2014). In addition to converting JSON data from/to R objects, 'jsonlite' contains functions to stream, validate, and prettify JSON data. The unit tests included with the package verify that all edge cases are encoded and decoded consistently for use with dynamic data in systems and applications.", + "Suggests": [ + "httr", + "vctrs", + "testthat", + "knitr", + "rmarkdown", + "R.rsp", + "sf" + ], + "RoxygenNote": "7.3.2", + "Encoding": "UTF-8", + "NeedsCompilation": "yes", + "Author": "Jeroen Ooms [aut, cre] (), Duncan Temple Lang [ctb], Lloyd Hilaiel [cph] (author of bundled libyajl)", + "Repository": "CRAN" + }, + "knitr": { + "Package": "knitr", + "Version": "1.50", + "Source": "Repository", + "Type": "Package", + "Title": "A General-Purpose Package for Dynamic Report Generation in R", + "Authors@R": "c( person(\"Yihui\", \"Xie\", role = c(\"aut\", \"cre\"), email = \"xie@yihui.name\", comment = c(ORCID = \"0000-0003-0645-5666\", URL = \"https://yihui.org\")), person(\"Abhraneel\", \"Sarma\", role = \"ctb\"), person(\"Adam\", \"Vogt\", role = \"ctb\"), person(\"Alastair\", \"Andrew\", role = \"ctb\"), person(\"Alex\", \"Zvoleff\", role = \"ctb\"), person(\"Amar\", \"Al-Zubaidi\", role = \"ctb\"), person(\"Andre\", \"Simon\", role = \"ctb\", comment = \"the CSS files under inst/themes/ were derived from the Highlight package http://www.andre-simon.de\"), person(\"Aron\", \"Atkins\", role = \"ctb\"), person(\"Aaron\", \"Wolen\", role = \"ctb\"), person(\"Ashley\", \"Manton\", role = \"ctb\"), person(\"Atsushi\", \"Yasumoto\", role = \"ctb\", comment = c(ORCID = \"0000-0002-8335-495X\")), person(\"Ben\", \"Baumer\", role = \"ctb\"), person(\"Brian\", \"Diggs\", role = \"ctb\"), person(\"Brian\", \"Zhang\", role = \"ctb\"), person(\"Bulat\", \"Yapparov\", role = \"ctb\"), person(\"Cassio\", \"Pereira\", role = \"ctb\"), person(\"Christophe\", \"Dervieux\", role = \"ctb\"), person(\"David\", \"Hall\", role = \"ctb\"), person(\"David\", \"Hugh-Jones\", role = \"ctb\"), person(\"David\", \"Robinson\", role = \"ctb\"), person(\"Doug\", \"Hemken\", role = \"ctb\"), person(\"Duncan\", \"Murdoch\", role = \"ctb\"), person(\"Elio\", \"Campitelli\", role = \"ctb\"), person(\"Ellis\", \"Hughes\", role = \"ctb\"), person(\"Emily\", \"Riederer\", role = \"ctb\"), person(\"Fabian\", \"Hirschmann\", role = \"ctb\"), person(\"Fitch\", \"Simeon\", role = \"ctb\"), person(\"Forest\", \"Fang\", role = \"ctb\"), person(c(\"Frank\", \"E\", \"Harrell\", \"Jr\"), role = \"ctb\", comment = \"the Sweavel package at inst/misc/Sweavel.sty\"), person(\"Garrick\", \"Aden-Buie\", role = \"ctb\"), person(\"Gregoire\", \"Detrez\", role = \"ctb\"), person(\"Hadley\", \"Wickham\", role = \"ctb\"), person(\"Hao\", \"Zhu\", role = \"ctb\"), person(\"Heewon\", \"Jeon\", role = \"ctb\"), person(\"Henrik\", \"Bengtsson\", role = \"ctb\"), person(\"Hiroaki\", \"Yutani\", role = \"ctb\"), person(\"Ian\", \"Lyttle\", role = \"ctb\"), person(\"Hodges\", \"Daniel\", role = \"ctb\"), person(\"Jacob\", \"Bien\", role = \"ctb\"), person(\"Jake\", \"Burkhead\", role = \"ctb\"), person(\"James\", \"Manton\", role = \"ctb\"), person(\"Jared\", \"Lander\", role = \"ctb\"), person(\"Jason\", \"Punyon\", role = \"ctb\"), person(\"Javier\", \"Luraschi\", role = \"ctb\"), person(\"Jeff\", \"Arnold\", role = \"ctb\"), person(\"Jenny\", \"Bryan\", role = \"ctb\"), person(\"Jeremy\", \"Ashkenas\", role = c(\"ctb\", \"cph\"), comment = \"the CSS file at inst/misc/docco-classic.css\"), person(\"Jeremy\", \"Stephens\", role = \"ctb\"), person(\"Jim\", \"Hester\", role = \"ctb\"), person(\"Joe\", \"Cheng\", role = \"ctb\"), person(\"Johannes\", \"Ranke\", role = \"ctb\"), person(\"John\", \"Honaker\", role = \"ctb\"), person(\"John\", \"Muschelli\", role = \"ctb\"), person(\"Jonathan\", \"Keane\", role = \"ctb\"), person(\"JJ\", \"Allaire\", role = \"ctb\"), person(\"Johan\", \"Toloe\", role = \"ctb\"), person(\"Jonathan\", \"Sidi\", role = \"ctb\"), person(\"Joseph\", \"Larmarange\", role = \"ctb\"), person(\"Julien\", \"Barnier\", role = \"ctb\"), person(\"Kaiyin\", \"Zhong\", role = \"ctb\"), person(\"Kamil\", \"Slowikowski\", role = \"ctb\"), person(\"Karl\", \"Forner\", role = \"ctb\"), person(c(\"Kevin\", \"K.\"), \"Smith\", role = \"ctb\"), person(\"Kirill\", \"Mueller\", role = \"ctb\"), person(\"Kohske\", \"Takahashi\", role = \"ctb\"), person(\"Lorenz\", \"Walthert\", role = \"ctb\"), person(\"Lucas\", \"Gallindo\", role = \"ctb\"), person(\"Marius\", \"Hofert\", role = \"ctb\"), person(\"Martin\", \"Modrák\", role = \"ctb\"), person(\"Michael\", \"Chirico\", role = \"ctb\"), person(\"Michael\", \"Friendly\", role = \"ctb\"), person(\"Michal\", \"Bojanowski\", role = \"ctb\"), person(\"Michel\", \"Kuhlmann\", role = \"ctb\"), person(\"Miller\", \"Patrick\", role = \"ctb\"), person(\"Nacho\", \"Caballero\", role = \"ctb\"), person(\"Nick\", \"Salkowski\", role = \"ctb\"), person(\"Niels Richard\", \"Hansen\", role = \"ctb\"), person(\"Noam\", \"Ross\", role = \"ctb\"), person(\"Obada\", \"Mahdi\", role = \"ctb\"), person(\"Pavel N.\", \"Krivitsky\", role = \"ctb\", comment=c(ORCID = \"0000-0002-9101-3362\")), person(\"Pedro\", \"Faria\", role = \"ctb\"), person(\"Qiang\", \"Li\", role = \"ctb\"), person(\"Ramnath\", \"Vaidyanathan\", role = \"ctb\"), person(\"Richard\", \"Cotton\", role = \"ctb\"), person(\"Robert\", \"Krzyzanowski\", role = \"ctb\"), person(\"Rodrigo\", \"Copetti\", role = \"ctb\"), person(\"Romain\", \"Francois\", role = \"ctb\"), person(\"Ruaridh\", \"Williamson\", role = \"ctb\"), person(\"Sagiru\", \"Mati\", role = \"ctb\", comment = c(ORCID = \"0000-0003-1413-3974\")), person(\"Scott\", \"Kostyshak\", role = \"ctb\"), person(\"Sebastian\", \"Meyer\", role = \"ctb\"), person(\"Sietse\", \"Brouwer\", role = \"ctb\"), person(c(\"Simon\", \"de\"), \"Bernard\", role = \"ctb\"), person(\"Sylvain\", \"Rousseau\", role = \"ctb\"), person(\"Taiyun\", \"Wei\", role = \"ctb\"), person(\"Thibaut\", \"Assus\", role = \"ctb\"), person(\"Thibaut\", \"Lamadon\", role = \"ctb\"), person(\"Thomas\", \"Leeper\", role = \"ctb\"), person(\"Tim\", \"Mastny\", role = \"ctb\"), person(\"Tom\", \"Torsney-Weir\", role = \"ctb\"), person(\"Trevor\", \"Davis\", role = \"ctb\"), person(\"Viktoras\", \"Veitas\", role = \"ctb\"), person(\"Weicheng\", \"Zhu\", role = \"ctb\"), person(\"Wush\", \"Wu\", role = \"ctb\"), person(\"Zachary\", \"Foster\", role = \"ctb\"), person(\"Zhian N.\", \"Kamvar\", role = \"ctb\", comment = c(ORCID = \"0000-0003-1458-7108\")), person(given = \"Posit Software, PBC\", role = c(\"cph\", \"fnd\")) )", + "Description": "Provides a general-purpose tool for dynamic report generation in R using Literate Programming techniques.", + "Depends": [ + "R (>= 3.6.0)" + ], + "Imports": [ + "evaluate (>= 0.15)", + "highr (>= 0.11)", + "methods", + "tools", + "xfun (>= 0.51)", + "yaml (>= 2.1.19)" + ], + "Suggests": [ + "bslib", + "codetools", + "DBI (>= 0.4-1)", + "digest", + "formatR", + "gifski", + "gridSVG", + "htmlwidgets (>= 0.7)", + "jpeg", + "JuliaCall (>= 0.11.1)", + "magick", + "litedown", + "markdown (>= 1.3)", + "png", + "ragg", + "reticulate (>= 1.4)", + "rgl (>= 0.95.1201)", + "rlang", + "rmarkdown", + "sass", + "showtext", + "styler (>= 1.2.0)", + "targets (>= 0.6.0)", + "testit", + "tibble", + "tikzDevice (>= 0.10)", + "tinytex (>= 0.56)", + "webshot", + "rstudioapi", + "svglite" + ], + "License": "GPL", + "URL": "https://yihui.org/knitr/", + "BugReports": "https://github.com/yihui/knitr/issues", + "Encoding": "UTF-8", + "VignetteBuilder": "litedown, knitr", + "SystemRequirements": "Package vignettes based on R Markdown v2 or reStructuredText require Pandoc (http://pandoc.org). The function rst2pdf() requires rst2pdf (https://github.com/rst2pdf/rst2pdf).", + "Collate": "'block.R' 'cache.R' 'citation.R' 'hooks-html.R' 'plot.R' 'utils.R' 'defaults.R' 'concordance.R' 'engine.R' 'highlight.R' 'themes.R' 'header.R' 'hooks-asciidoc.R' 'hooks-chunk.R' 'hooks-extra.R' 'hooks-latex.R' 'hooks-md.R' 'hooks-rst.R' 'hooks-textile.R' 'hooks.R' 'output.R' 'package.R' 'pandoc.R' 'params.R' 'parser.R' 'pattern.R' 'rocco.R' 'spin.R' 'table.R' 'template.R' 'utils-conversion.R' 'utils-rd2html.R' 'utils-string.R' 'utils-sweave.R' 'utils-upload.R' 'utils-vignettes.R' 'zzz.R'", + "RoxygenNote": "7.3.2", + "NeedsCompilation": "no", + "Author": "Yihui Xie [aut, cre] (, https://yihui.org), Abhraneel Sarma [ctb], Adam Vogt [ctb], Alastair Andrew [ctb], Alex Zvoleff [ctb], Amar Al-Zubaidi [ctb], Andre Simon [ctb] (the CSS files under inst/themes/ were derived from the Highlight package http://www.andre-simon.de), Aron Atkins [ctb], Aaron Wolen [ctb], Ashley Manton [ctb], Atsushi Yasumoto [ctb] (), Ben Baumer [ctb], Brian Diggs [ctb], Brian Zhang [ctb], Bulat Yapparov [ctb], Cassio Pereira [ctb], Christophe Dervieux [ctb], David Hall [ctb], David Hugh-Jones [ctb], David Robinson [ctb], Doug Hemken [ctb], Duncan Murdoch [ctb], Elio Campitelli [ctb], Ellis Hughes [ctb], Emily Riederer [ctb], Fabian Hirschmann [ctb], Fitch Simeon [ctb], Forest Fang [ctb], Frank E Harrell Jr [ctb] (the Sweavel package at inst/misc/Sweavel.sty), Garrick Aden-Buie [ctb], Gregoire Detrez [ctb], Hadley Wickham [ctb], Hao Zhu [ctb], Heewon Jeon [ctb], Henrik Bengtsson [ctb], Hiroaki Yutani [ctb], Ian Lyttle [ctb], Hodges Daniel [ctb], Jacob Bien [ctb], Jake Burkhead [ctb], James Manton [ctb], Jared Lander [ctb], Jason Punyon [ctb], Javier Luraschi [ctb], Jeff Arnold [ctb], Jenny Bryan [ctb], Jeremy Ashkenas [ctb, cph] (the CSS file at inst/misc/docco-classic.css), Jeremy Stephens [ctb], Jim Hester [ctb], Joe Cheng [ctb], Johannes Ranke [ctb], John Honaker [ctb], John Muschelli [ctb], Jonathan Keane [ctb], JJ Allaire [ctb], Johan Toloe [ctb], Jonathan Sidi [ctb], Joseph Larmarange [ctb], Julien Barnier [ctb], Kaiyin Zhong [ctb], Kamil Slowikowski [ctb], Karl Forner [ctb], Kevin K. Smith [ctb], Kirill Mueller [ctb], Kohske Takahashi [ctb], Lorenz Walthert [ctb], Lucas Gallindo [ctb], Marius Hofert [ctb], Martin Modrák [ctb], Michael Chirico [ctb], Michael Friendly [ctb], Michal Bojanowski [ctb], Michel Kuhlmann [ctb], Miller Patrick [ctb], Nacho Caballero [ctb], Nick Salkowski [ctb], Niels Richard Hansen [ctb], Noam Ross [ctb], Obada Mahdi [ctb], Pavel N. Krivitsky [ctb] (), Pedro Faria [ctb], Qiang Li [ctb], Ramnath Vaidyanathan [ctb], Richard Cotton [ctb], Robert Krzyzanowski [ctb], Rodrigo Copetti [ctb], Romain Francois [ctb], Ruaridh Williamson [ctb], Sagiru Mati [ctb] (), Scott Kostyshak [ctb], Sebastian Meyer [ctb], Sietse Brouwer [ctb], Simon de Bernard [ctb], Sylvain Rousseau [ctb], Taiyun Wei [ctb], Thibaut Assus [ctb], Thibaut Lamadon [ctb], Thomas Leeper [ctb], Tim Mastny [ctb], Tom Torsney-Weir [ctb], Trevor Davis [ctb], Viktoras Veitas [ctb], Weicheng Zhu [ctb], Wush Wu [ctb], Zachary Foster [ctb], Zhian N. Kamvar [ctb] (), Posit Software, PBC [cph, fnd]", + "Maintainer": "Yihui Xie ", + "Repository": "CRAN" + }, + "labeling": { + "Package": "labeling", + "Version": "0.4.3", + "Source": "Repository", + "Type": "Package", + "Title": "Axis Labeling", + "Date": "2023-08-29", + "Author": "Justin Talbot,", + "Maintainer": "Nuno Sempere ", + "Description": "Functions which provide a range of axis labeling algorithms.", + "License": "MIT + file LICENSE | Unlimited", + "Collate": "'labeling.R'", + "NeedsCompilation": "no", + "Imports": [ + "stats", + "graphics" + ], + "Repository": "CRAN" + }, + "later": { + "Package": "later", + "Version": "1.4.2", + "Source": "Repository", + "Type": "Package", + "Title": "Utilities for Scheduling Functions to Execute Later with Event Loops", + "Authors@R": "c( person(\"Winston\", \"Chang\", role = c(\"aut\", \"cre\"), email = \"winston@posit.co\"), person(\"Joe\", \"Cheng\", role = c(\"aut\"), email = \"joe@posit.co\"), person(\"Charlie\", \"Gao\", role = c(\"aut\"), email = \"charlie.gao@shikokuchuo.net\", comment = c(ORCID = \"0000-0002-0750-061X\")), person(family = \"Posit Software, PBC\", role = \"cph\"), person(\"Marcus\", \"Geelnard\", role = c(\"ctb\", \"cph\"), comment = \"TinyCThread library, https://tinycthread.github.io/\"), person(\"Evan\", \"Nemerson\", role = c(\"ctb\", \"cph\"), comment = \"TinyCThread library, https://tinycthread.github.io/\") )", + "Description": "Executes arbitrary R or C functions some time after the current time, after the R execution stack has emptied. The functions are scheduled in an event loop.", + "URL": "https://r-lib.github.io/later/, https://github.com/r-lib/later", + "BugReports": "https://github.com/r-lib/later/issues", + "License": "MIT + file LICENSE", + "Imports": [ + "Rcpp (>= 0.12.9)", + "rlang" + ], + "LinkingTo": [ + "Rcpp" + ], + "RoxygenNote": "7.3.2", + "Suggests": [ + "knitr", + "nanonext", + "R6", + "rmarkdown", + "testthat (>= 2.1.0)" + ], + "VignetteBuilder": "knitr", + "Encoding": "UTF-8", + "NeedsCompilation": "yes", + "Author": "Winston Chang [aut, cre], Joe Cheng [aut], Charlie Gao [aut] (), Posit Software, PBC [cph], Marcus Geelnard [ctb, cph] (TinyCThread library, https://tinycthread.github.io/), Evan Nemerson [ctb, cph] (TinyCThread library, https://tinycthread.github.io/)", + "Maintainer": "Winston Chang ", + "Repository": "CRAN" + }, + "lattice": { + "Package": "lattice", + "Version": "0.21-8", + "Source": "Repository", + "Date": "2023-04-05", + "Priority": "recommended", + "Title": "Trellis Graphics for R", + "Authors@R": "c(person(\"Deepayan\", \"Sarkar\", role = c(\"aut\", \"cre\"), email = \"deepayan.sarkar@r-project.org\", comment = c(ORCID = \"0000-0003-4107-1553\")), person(\"Felix\", \"Andrews\", role = \"ctb\"), person(\"Kevin\", \"Wright\", role = \"ctb\", comment = \"documentation\"), person(\"Neil\", \"Klepeis\", role = \"ctb\"), person(\"Johan\", \"Larsson\", role = \"ctb\", comment = \"miscellaneous improvements\"), person(\"Zhijian (Jason)\", \"Wen\", role = \"cph\", comment = \"filled contour code\"), person(\"Paul\", \"Murrell\", role = \"ctb\", email = \"paul@stat.auckland.ac.nz\"), person(\"Stefan\", \"Eng\", role = \"ctb\", comment = \"violin plot improvements\"), person(\"Achim\", \"Zeileis\", role = \"ctb\", comment = \"modern colors\") )", + "Description": "A powerful and elegant high-level data visualization system inspired by Trellis graphics, with an emphasis on multivariate data. Lattice is sufficient for typical graphics needs, and is also flexible enough to handle most nonstandard requirements. See ?Lattice for an introduction.", + "Depends": [ + "R (>= 4.0.0)" + ], + "Suggests": [ + "KernSmooth", + "MASS", + "latticeExtra", + "colorspace" + ], + "Imports": [ + "grid", + "grDevices", + "graphics", + "stats", + "utils" + ], + "Enhances": [ + "chron" + ], + "LazyLoad": "yes", + "LazyData": "yes", + "License": "GPL (>= 2)", + "URL": "https://lattice.r-forge.r-project.org/", + "BugReports": "https://github.com/deepayan/lattice/issues", + "NeedsCompilation": "yes", + "Author": "Deepayan Sarkar [aut, cre] (), Felix Andrews [ctb], Kevin Wright [ctb] (documentation), Neil Klepeis [ctb], Johan Larsson [ctb] (miscellaneous improvements), Zhijian (Jason) Wen [cph] (filled contour code), Paul Murrell [ctb], Stefan Eng [ctb] (violin plot improvements), Achim Zeileis [ctb] (modern colors)", + "Maintainer": "Deepayan Sarkar ", + "Repository": "CRAN" + }, + "lava": { + "Package": "lava", + "Version": "1.8.1", + "Source": "Repository", + "Type": "Package", + "Title": "Latent Variable Models", + "Authors@R": "c(person(\"Klaus K.\", \"Holst\", email=\"klaus@holst.it\", role=c(\"aut\", \"cre\")), person(\"Brice\", \"Ozenne\", role = \"ctb\"), person(\"Thomas\", \"Gerds\", role = \"ctb\"))", + "Author": "Klaus K. Holst [aut, cre], Brice Ozenne [ctb], Thomas Gerds [ctb]", + "Maintainer": "Klaus K. Holst ", + "Description": "A general implementation of Structural Equation Models with latent variables (MLE, 2SLS, and composite likelihood estimators) with both continuous, censored, and ordinal outcomes (Holst and Budtz-Joergensen (2013) ). Mixture latent variable models and non-linear latent variable models (Holst and Budtz-Joergensen (2020) ). The package also provides methods for graph exploration (d-separation, back-door criterion), simulation of general non-linear latent variable models, and estimation of influence functions for a broad range of statistical models.", + "URL": "https://kkholst.github.io/lava/", + "BugReports": "https://github.com/kkholst/lava/issues", + "License": "GPL-3", + "LazyLoad": "yes", + "Depends": [ + "R (>= 3.0)" + ], + "Imports": [ + "cli", + "future.apply", + "graphics", + "grDevices", + "methods", + "numDeriv", + "progressr", + "stats", + "survival", + "SQUAREM", + "utils" + ], + "Suggests": [ + "KernSmooth", + "Rgraphviz", + "data.table", + "ellipse", + "fields", + "geepack", + "graph", + "knitr", + "rmarkdown", + "igraph (>= 0.6)", + "lavaSearch2", + "lme4 (>= 1.1.35.1)", + "MASS", + "Matrix (>= 1.6.3)", + "mets (>= 1.1)", + "nlme", + "optimx", + "polycor", + "quantreg", + "rgl", + "targeted (>= 0.4)", + "testthat (>= 0.11)", + "visNetwork" + ], + "VignetteBuilder": "knitr,rmarkdown", + "ByteCompile": "yes", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.2", + "NeedsCompilation": "no", + "Repository": "CRAN" + }, + "lazyeval": { + "Package": "lazyeval", + "Version": "0.2.2", + "Source": "Repository", + "Title": "Lazy (Non-Standard) Evaluation", + "Description": "An alternative approach to non-standard evaluation using formulas. Provides a full implementation of LISP style 'quasiquotation', making it easier to generate code with other code.", + "Authors@R": "c( person(\"Hadley\", \"Wickham\", ,\"hadley@rstudio.com\", c(\"aut\", \"cre\")), person(\"RStudio\", role = \"cph\") )", + "License": "GPL-3", + "LazyData": "true", + "Depends": [ + "R (>= 3.1.0)" + ], + "Suggests": [ + "knitr", + "rmarkdown (>= 0.2.65)", + "testthat", + "covr" + ], + "VignetteBuilder": "knitr", + "RoxygenNote": "6.1.1", + "NeedsCompilation": "yes", + "Author": "Hadley Wickham [aut, cre], RStudio [cph]", + "Maintainer": "Hadley Wickham ", + "Repository": "RSPM", + "Encoding": "UTF-8" + }, + "lifecycle": { + "Package": "lifecycle", + "Version": "1.0.4", + "Source": "Repository", + "Title": "Manage the Life Cycle of your Package Functions", + "Authors@R": "c( person(\"Lionel\", \"Henry\", , \"lionel@posit.co\", role = c(\"aut\", \"cre\")), person(\"Hadley\", \"Wickham\", , \"hadley@posit.co\", role = \"aut\", comment = c(ORCID = \"0000-0003-4757-117X\")), person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\")) )", + "Description": "Manage the life cycle of your exported functions with shared conventions, documentation badges, and user-friendly deprecation warnings.", + "License": "MIT + file LICENSE", + "URL": "https://lifecycle.r-lib.org/, https://github.com/r-lib/lifecycle", + "BugReports": "https://github.com/r-lib/lifecycle/issues", + "Depends": [ + "R (>= 3.6)" + ], + "Imports": [ + "cli (>= 3.4.0)", + "glue", + "rlang (>= 1.1.0)" + ], + "Suggests": [ + "covr", + "crayon", + "knitr", + "lintr", + "rmarkdown", + "testthat (>= 3.0.1)", + "tibble", + "tidyverse", + "tools", + "vctrs", + "withr" + ], + "VignetteBuilder": "knitr", + "Config/Needs/website": "tidyverse/tidytemplate, usethis", + "Config/testthat/edition": "3", + "Encoding": "UTF-8", + "RoxygenNote": "7.2.1", + "NeedsCompilation": "no", + "Author": "Lionel Henry [aut, cre], Hadley Wickham [aut] (), Posit Software, PBC [cph, fnd]", + "Maintainer": "Lionel Henry ", + "Repository": "CRAN" + }, + "lintr": { + "Package": "lintr", + "Version": "3.2.0", + "Source": "Repository", + "Title": "A 'Linter' for R Code", + "Authors@R": "c( person(\"Jim\", \"Hester\", , role = \"aut\"), person(\"Florent\", \"Angly\", role = \"aut\", comment = \"fangly\"), person(\"Russ\", \"Hyde\", role = \"aut\"), person(\"Michael\", \"Chirico\", email = \"michaelchirico4@gmail.com\", role = c(\"aut\", \"cre\")), person(\"Kun\", \"Ren\", role = \"aut\"), person(\"Alexander\", \"Rosenstock\", role = \"aut\", comment = \"AshesITR\"), person(\"Indrajeet\", \"Patil\", , \"patilindrajeet.science@gmail.com\", role = \"aut\", comment = c(ORCID = \"0000-0003-1995-6531\", Twitter = \"@patilindrajeets\")) )", + "Description": "Checks adherence to a given style, syntax errors and possible semantic issues. Supports on the fly checking of R code edited with 'RStudio IDE', 'Emacs', 'Vim', 'Sublime Text', 'Atom' and 'Visual Studio Code'.", + "License": "MIT + file LICENSE", + "URL": "https://lintr.r-lib.org, https://github.com/r-lib/lintr", + "BugReports": "https://github.com/r-lib/lintr/issues", + "Depends": [ + "R (>= 4.0)" + ], + "Imports": [ + "backports (>= 1.4.0)", + "cli (>= 3.4.0)", + "codetools", + "digest", + "glue", + "knitr", + "rex", + "stats", + "utils", + "xml2 (>= 1.0.0)", + "xmlparsedata (>= 1.0.5)" + ], + "Suggests": [ + "bookdown", + "cyclocomp", + "jsonlite", + "patrick (>= 0.2.0)", + "rlang", + "rmarkdown", + "rstudioapi (>= 0.2)", + "testthat (>= 3.2.1)", + "tibble", + "tufte", + "withr (>= 2.5.0)" + ], + "Enhances": [ + "data.table" + ], + "VignetteBuilder": "knitr", + "Config/Needs/website": "tidyverse/tidytemplate", + "Config/Needs/development": "pkgload, cli, testthat, patrick", + "Config/testthat/edition": "3", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.2", + "Collate": "'make_linter_from_xpath.R' 'xp_utils.R' 'utils.R' 'AAA.R' 'T_and_F_symbol_linter.R' 'absolute_path_linter.R' 'actions.R' 'addins.R' 'any_duplicated_linter.R' 'any_is_na_linter.R' 'assignment_linter.R' 'backport_linter.R' 'boolean_arithmetic_linter.R' 'brace_linter.R' 'cache.R' 'class_equals_linter.R' 'commas_linter.R' 'commented_code_linter.R' 'comparison_negation_linter.R' 'condition_call_linter.R' 'condition_message_linter.R' 'conjunct_test_linter.R' 'consecutive_assertion_linter.R' 'consecutive_mutate_linter.R' 'cyclocomp_linter.R' 'declared_functions.R' 'deprecated.R' 'duplicate_argument_linter.R' 'empty_assignment_linter.R' 'equals_na_linter.R' 'exclude.R' 'expect_comparison_linter.R' 'expect_identical_linter.R' 'expect_length_linter.R' 'expect_lint.R' 'expect_named_linter.R' 'expect_not_linter.R' 'expect_null_linter.R' 'expect_s3_class_linter.R' 'expect_s4_class_linter.R' 'expect_true_false_linter.R' 'expect_type_linter.R' 'extract.R' 'fixed_regex_linter.R' 'for_loop_index_linter.R' 'function_argument_linter.R' 'function_left_parentheses_linter.R' 'function_return_linter.R' 'get_source_expressions.R' 'ids_with_token.R' 'if_not_else_linter.R' 'if_switch_linter.R' 'ifelse_censor_linter.R' 'implicit_assignment_linter.R' 'implicit_integer_linter.R' 'indentation_linter.R' 'infix_spaces_linter.R' 'inner_combine_linter.R' 'is_lint_level.R' 'is_numeric_linter.R' 'keyword_quote_linter.R' 'length_levels_linter.R' 'length_test_linter.R' 'lengths_linter.R' 'library_call_linter.R' 'line_length_linter.R' 'lint.R' 'linter_tag_docs.R' 'linter_tags.R' 'lintr-deprecated.R' 'lintr-package.R' 'list_comparison_linter.R' 'literal_coercion_linter.R' 'make_linter_from_regex.R' 'matrix_apply_linter.R' 'methods.R' 'missing_argument_linter.R' 'missing_package_linter.R' 'namespace.R' 'namespace_linter.R' 'nested_ifelse_linter.R' 'nested_pipe_linter.R' 'nonportable_path_linter.R' 'shared_constants.R' 'nrow_subset_linter.R' 'numeric_leading_zero_linter.R' 'nzchar_linter.R' 'object_length_linter.R' 'object_name_linter.R' 'object_overwrite_linter.R' 'object_usage_linter.R' 'one_call_pipe_linter.R' 'outer_negation_linter.R' 'package_hooks_linter.R' 'paren_body_linter.R' 'paste_linter.R' 'path_utils.R' 'pipe_call_linter.R' 'pipe_consistency_linter.R' 'pipe_continuation_linter.R' 'pipe_return_linter.R' 'print_linter.R' 'quotes_linter.R' 'redundant_equals_linter.R' 'redundant_ifelse_linter.R' 'regex_subset_linter.R' 'rep_len_linter.R' 'repeat_linter.R' 'return_linter.R' 'routine_registration_linter.R' 'sample_int_linter.R' 'scalar_in_linter.R' 'semicolon_linter.R' 'seq_linter.R' 'settings.R' 'settings_utils.R' 'sort_linter.R' 'source_utils.R' 'spaces_inside_linter.R' 'spaces_left_parentheses_linter.R' 'sprintf_linter.R' 'stopifnot_all_linter.R' 'string_boundary_linter.R' 'strings_as_factors_linter.R' 'system_file_linter.R' 'terminal_close_linter.R' 'todo_comment_linter.R' 'trailing_blank_lines_linter.R' 'trailing_whitespace_linter.R' 'tree_utils.R' 'undesirable_function_linter.R' 'undesirable_operator_linter.R' 'unnecessary_concatenation_linter.R' 'unnecessary_lambda_linter.R' 'unnecessary_nesting_linter.R' 'unnecessary_placeholder_linter.R' 'unreachable_code_linter.R' 'unused_import_linter.R' 'use_lintr.R' 'vector_logic_linter.R' 'which_grepl_linter.R' 'whitespace_linter.R' 'with.R' 'with_id.R' 'xml_nodes_to_lints.R' 'xml_utils.R' 'yoda_test_linter.R' 'zzz.R'", + "Language": "en-US", + "NeedsCompilation": "no", + "Author": "Jim Hester [aut], Florent Angly [aut] (fangly), Russ Hyde [aut], Michael Chirico [aut, cre], Kun Ren [aut], Alexander Rosenstock [aut] (AshesITR), Indrajeet Patil [aut] (, @patilindrajeets)", + "Maintainer": "Michael Chirico ", + "Repository": "https://p3m.dev/cran/latest" + }, + "listenv": { + "Package": "listenv", + "Version": "0.9.1", + "Source": "Repository", + "Depends": [ + "R (>= 3.1.2)" + ], + "Suggests": [ + "R.utils", + "R.rsp", + "markdown" + ], + "VignetteBuilder": "R.rsp", + "Title": "Environments Behaving (Almost) as Lists", + "Authors@R": "c(person(\"Henrik\", \"Bengtsson\", role=c(\"aut\", \"cre\", \"cph\"), email = \"henrikb@braju.com\"))", + "Description": "List environments are environments that have list-like properties. For instance, the elements of a list environment are ordered and can be accessed and iterated over using index subsetting, e.g. 'x <- listenv(a = 1, b = 2); for (i in seq_along(x)) x[[i]] <- x[[i]] ^ 2; y <- as.list(x)'.", + "License": "LGPL (>= 2.1)", + "LazyLoad": "TRUE", + "URL": "https://listenv.futureverse.org, https://github.com/HenrikBengtsson/listenv", + "BugReports": "https://github.com/HenrikBengtsson/listenv/issues", + "RoxygenNote": "7.3.1", + "NeedsCompilation": "no", + "Author": "Henrik Bengtsson [aut, cre, cph]", + "Maintainer": "Henrik Bengtsson ", + "Repository": "CRAN", + "Encoding": "UTF-8" + }, + "lmtest": { + "Package": "lmtest", + "Version": "0.9-40", + "Source": "Repository", + "Title": "Testing Linear Regression Models", + "Date": "2022-03-21", + "Authors@R": "c(person(given = \"Torsten\", family = \"Hothorn\", role = \"aut\", email = \"Torsten.Hothorn@R-project.org\", comment = c(ORCID = \"0000-0001-8301-0471\")), person(given = \"Achim\", family = \"Zeileis\", role = c(\"aut\", \"cre\"), email = \"Achim.Zeileis@R-project.org\", comment = c(ORCID = \"0000-0003-0918-3766\")), person(given = c(\"Richard\", \"W.\"), family = \"Farebrother\", role = \"aut\", comment = \"pan.f\"), person(given = \"Clint\", family = \"Cummins\", role = \"aut\", comment = \"pan.f\"), person(given = \"Giovanni\", family = \"Millo\", role = \"ctb\"), person(given = \"David\", family = \"Mitchell\", role = \"ctb\"))", + "Description": "A collection of tests, data sets, and examples for diagnostic checking in linear regression models. Furthermore, some generic tools for inference in parametric models are provided.", + "LazyData": "yes", + "Depends": [ + "R (>= 3.0.0)", + "stats", + "zoo" + ], + "Suggests": [ + "car", + "strucchange", + "sandwich", + "dynlm", + "stats4", + "survival", + "AER" + ], + "Imports": [ + "graphics" + ], + "License": "GPL-2 | GPL-3", + "NeedsCompilation": "yes", + "Author": "Torsten Hothorn [aut] (), Achim Zeileis [aut, cre] (), Richard W. Farebrother [aut] (pan.f), Clint Cummins [aut] (pan.f), Giovanni Millo [ctb], David Mitchell [ctb]", + "Maintainer": "Achim Zeileis ", + "Repository": "CRAN", + "Encoding": "UTF-8" + }, + "logger": { + "Package": "logger", + "Version": "0.4.0", + "Source": "Repository", + "Type": "Package", + "Title": "A Lightweight, Modern and Flexible Logging Utility", + "Date": "2024-10-19", + "Authors@R": "c( person(\"Gergely\", \"Daróczi\", , \"daroczig@rapporter.net\", role = c(\"aut\", \"cre\"), comment = c(ORCID = \"0000-0003-3149-8537\")), person(\"Hadley\", \"Wickham\", , \"hadley@posit.co\", role = \"aut\", comment = c(ORCID = \"0000-0003-4757-117X\")), person(\"System1\", role = \"fnd\") )", + "Description": "Inspired by the the 'futile.logger' R package and 'logging' Python module, this utility provides a flexible and extensible way of formatting and delivering log messages with low overhead.", + "License": "MIT + file LICENSE", + "URL": "https://daroczig.github.io/logger/", + "BugReports": "https://github.com/daroczig/logger/issues", + "Depends": [ + "R (>= 4.0.0)" + ], + "Imports": [ + "utils" + ], + "Suggests": [ + "botor", + "covr", + "crayon", + "devtools", + "glue", + "jsonlite", + "knitr", + "mirai (>= 1.3.0)", + "pander", + "parallel", + "R.utils", + "rmarkdown", + "roxygen2", + "RPushbullet", + "rsyslog", + "shiny", + "slackr (>= 1.4.1)", + "syslognet", + "telegram", + "testthat (>= 3.0.0)", + "withr" + ], + "Enhances": [ + "futile.logger", + "log4r", + "logging" + ], + "VignetteBuilder": "knitr", + "Config/testthat/edition": "3", + "Config/testthat/parallel": "TRUE", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.2", + "NeedsCompilation": "no", + "Author": "Gergely Daróczi [aut, cre] (), Hadley Wickham [aut] (), System1 [fnd]", + "Maintainer": "Gergely Daróczi ", + "Repository": "CRAN" + }, + "lubridate": { + "Package": "lubridate", + "Version": "1.9.4", + "Source": "Repository", + "Type": "Package", + "Title": "Make Dealing with Dates a Little Easier", + "Authors@R": "c( person(\"Vitalie\", \"Spinu\", , \"spinuvit@gmail.com\", role = c(\"aut\", \"cre\")), person(\"Garrett\", \"Grolemund\", role = \"aut\"), person(\"Hadley\", \"Wickham\", role = \"aut\"), person(\"Davis\", \"Vaughan\", role = \"ctb\"), person(\"Ian\", \"Lyttle\", role = \"ctb\"), person(\"Imanuel\", \"Costigan\", role = \"ctb\"), person(\"Jason\", \"Law\", role = \"ctb\"), person(\"Doug\", \"Mitarotonda\", role = \"ctb\"), person(\"Joseph\", \"Larmarange\", role = \"ctb\"), person(\"Jonathan\", \"Boiser\", role = \"ctb\"), person(\"Chel Hee\", \"Lee\", role = \"ctb\") )", + "Maintainer": "Vitalie Spinu ", + "Description": "Functions to work with date-times and time-spans: fast and user friendly parsing of date-time data, extraction and updating of components of a date-time (years, months, days, hours, minutes, and seconds), algebraic manipulation on date-time and time-span objects. The 'lubridate' package has a consistent and memorable syntax that makes working with dates easy and fun.", + "License": "GPL (>= 2)", + "URL": "https://lubridate.tidyverse.org, https://github.com/tidyverse/lubridate", + "BugReports": "https://github.com/tidyverse/lubridate/issues", + "Depends": [ + "methods", + "R (>= 3.2)" + ], + "Imports": [ + "generics", + "timechange (>= 0.3.0)" + ], + "Suggests": [ + "covr", + "knitr", + "rmarkdown", + "testthat (>= 2.1.0)", + "vctrs (>= 0.6.5)" + ], + "Enhances": [ + "chron", + "data.table", + "timeDate", + "tis", + "zoo" + ], + "VignetteBuilder": "knitr", + "Config/Needs/website": "tidyverse/tidytemplate", + "Config/testthat/edition": "3", + "Encoding": "UTF-8", + "LazyData": "true", + "RoxygenNote": "7.2.3", + "SystemRequirements": "C++11, A system with zoneinfo data (e.g. /usr/share/zoneinfo). On Windows the zoneinfo included with R is used.", + "Collate": "'Dates.r' 'POSIXt.r' 'util.r' 'parse.r' 'timespans.r' 'intervals.r' 'difftimes.r' 'durations.r' 'periods.r' 'accessors-date.R' 'accessors-day.r' 'accessors-dst.r' 'accessors-hour.r' 'accessors-minute.r' 'accessors-month.r' 'accessors-quarter.r' 'accessors-second.r' 'accessors-tz.r' 'accessors-week.r' 'accessors-year.r' 'am-pm.r' 'time-zones.r' 'numeric.r' 'coercion.r' 'constants.r' 'cyclic_encoding.r' 'data.r' 'decimal-dates.r' 'deprecated.r' 'format_ISO8601.r' 'guess.r' 'hidden.r' 'instants.r' 'leap-years.r' 'ops-addition.r' 'ops-compare.r' 'ops-division.r' 'ops-integer-division.r' 'ops-m+.r' 'ops-modulo.r' 'ops-multiplication.r' 'ops-subtraction.r' 'package.r' 'pretty.r' 'round.r' 'stamp.r' 'tzdir.R' 'update.r' 'vctrs.R' 'zzz.R'", + "NeedsCompilation": "yes", + "Author": "Vitalie Spinu [aut, cre], Garrett Grolemund [aut], Hadley Wickham [aut], Davis Vaughan [ctb], Ian Lyttle [ctb], Imanuel Costigan [ctb], Jason Law [ctb], Doug Mitarotonda [ctb], Joseph Larmarange [ctb], Jonathan Boiser [ctb], Chel Hee Lee [ctb]", + "Repository": "CRAN" + }, + "magrittr": { + "Package": "magrittr", + "Version": "2.0.3", + "Source": "Repository", + "Type": "Package", + "Title": "A Forward-Pipe Operator for R", + "Authors@R": "c( person(\"Stefan Milton\", \"Bache\", , \"stefan@stefanbache.dk\", role = c(\"aut\", \"cph\"), comment = \"Original author and creator of magrittr\"), person(\"Hadley\", \"Wickham\", , \"hadley@rstudio.com\", role = \"aut\"), person(\"Lionel\", \"Henry\", , \"lionel@rstudio.com\", role = \"cre\"), person(\"RStudio\", role = c(\"cph\", \"fnd\")) )", + "Description": "Provides a mechanism for chaining commands with a new forward-pipe operator, %>%. This operator will forward a value, or the result of an expression, into the next function call/expression. There is flexible support for the type of right-hand side expressions. For more information, see package vignette. To quote Rene Magritte, \"Ceci n'est pas un pipe.\"", + "License": "MIT + file LICENSE", + "URL": "https://magrittr.tidyverse.org, https://github.com/tidyverse/magrittr", + "BugReports": "https://github.com/tidyverse/magrittr/issues", + "Depends": [ + "R (>= 3.4.0)" + ], + "Suggests": [ + "covr", + "knitr", + "rlang", + "rmarkdown", + "testthat" + ], + "VignetteBuilder": "knitr", + "ByteCompile": "Yes", + "Config/Needs/website": "tidyverse/tidytemplate", + "Encoding": "UTF-8", + "RoxygenNote": "7.1.2", + "NeedsCompilation": "yes", + "Author": "Stefan Milton Bache [aut, cph] (Original author and creator of magrittr), Hadley Wickham [aut], Lionel Henry [cre], RStudio [cph, fnd]", + "Maintainer": "Lionel Henry ", + "Repository": "CRAN" + }, + "memoise": { + "Package": "memoise", + "Version": "2.0.1", + "Source": "Repository", + "Title": "'Memoisation' of Functions", + "Authors@R": "c(person(given = \"Hadley\", family = \"Wickham\", role = \"aut\", email = \"hadley@rstudio.com\"), person(given = \"Jim\", family = \"Hester\", role = \"aut\"), person(given = \"Winston\", family = \"Chang\", role = c(\"aut\", \"cre\"), email = \"winston@rstudio.com\"), person(given = \"Kirill\", family = \"Müller\", role = \"aut\", email = \"krlmlr+r@mailbox.org\"), person(given = \"Daniel\", family = \"Cook\", role = \"aut\", email = \"danielecook@gmail.com\"), person(given = \"Mark\", family = \"Edmondson\", role = \"ctb\", email = \"r@sunholo.com\"))", + "Description": "Cache the results of a function so that when you call it again with the same arguments it returns the previously computed value.", + "License": "MIT + file LICENSE", + "URL": "https://memoise.r-lib.org, https://github.com/r-lib/memoise", + "BugReports": "https://github.com/r-lib/memoise/issues", + "Imports": [ + "rlang (>= 0.4.10)", + "cachem" + ], + "Suggests": [ + "digest", + "aws.s3", + "covr", + "googleAuthR", + "googleCloudStorageR", + "httr", + "testthat" + ], + "Encoding": "UTF-8", + "RoxygenNote": "7.1.2", + "NeedsCompilation": "no", + "Author": "Hadley Wickham [aut], Jim Hester [aut], Winston Chang [aut, cre], Kirill Müller [aut], Daniel Cook [aut], Mark Edmondson [ctb]", + "Maintainer": "Winston Chang ", + "Repository": "CRAN" + }, + "mgcv": { + "Package": "mgcv", + "Version": "1.8-42", + "Source": "Repository", + "Author": "Simon Wood ", + "Maintainer": "Simon Wood ", + "Title": "Mixed GAM Computation Vehicle with Automatic Smoothness Estimation", + "Description": "Generalized additive (mixed) models, some of their extensions and other generalized ridge regression with multiple smoothing parameter estimation by (Restricted) Marginal Likelihood, Generalized Cross Validation and similar, or using iterated nested Laplace approximation for fully Bayesian inference. See Wood (2017) for an overview. Includes a gam() function, a wide variety of smoothers, 'JAGS' support and distributions beyond the exponential family.", + "Priority": "recommended", + "Depends": [ + "R (>= 3.6.0)", + "nlme (>= 3.1-64)" + ], + "Imports": [ + "methods", + "stats", + "graphics", + "Matrix", + "splines", + "utils" + ], + "Suggests": [ + "parallel", + "survival", + "MASS" + ], + "LazyLoad": "yes", + "ByteCompile": "yes", + "License": "GPL (>= 2)", + "NeedsCompilation": "yes", + "Repository": "CRAN" + }, + "mime": { + "Package": "mime", + "Version": "0.13", + "Source": "Repository", + "Type": "Package", + "Title": "Map Filenames to MIME Types", + "Authors@R": "c( person(\"Yihui\", \"Xie\", role = c(\"aut\", \"cre\"), email = \"xie@yihui.name\", comment = c(ORCID = \"0000-0003-0645-5666\", URL = \"https://yihui.org\")), person(\"Jeffrey\", \"Horner\", role = \"ctb\"), person(\"Beilei\", \"Bian\", role = \"ctb\") )", + "Description": "Guesses the MIME type from a filename extension using the data derived from /etc/mime.types in UNIX-type systems.", + "Imports": [ + "tools" + ], + "License": "GPL", + "URL": "https://github.com/yihui/mime", + "BugReports": "https://github.com/yihui/mime/issues", + "RoxygenNote": "7.3.2", + "Encoding": "UTF-8", + "NeedsCompilation": "yes", + "Author": "Yihui Xie [aut, cre] (, https://yihui.org), Jeffrey Horner [ctb], Beilei Bian [ctb]", + "Maintainer": "Yihui Xie ", + "Repository": "CRAN" + }, + "mirai": { + "Package": "mirai", + "Version": "2.4.1", + "Source": "Repository", + "Type": "Package", + "Title": "Minimalist Async Evaluation Framework for R", + "Authors@R": "c( person(\"Charlie\", \"Gao\", , \"charlie.gao@posit.co\", role = c(\"aut\", \"cre\"), comment = c(ORCID = \"0000-0002-0750-061X\")), person(\"Joe\", \"Cheng\", , \"joe@posit.co\", role = \"ctb\"), person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\"), comment = c(ROR = \"03wc8by49\")), person(\"Hibiki AI Limited\", role = \"cph\") )", + "Description": "Designed for simplicity, a 'mirai' evaluates an R expression asynchronously in a parallel process, locally or distributed over the network. Modern networking and concurrency, built on 'nanonext' and 'NNG', ensures reliable scheduling over fast inter-process communications or TCP/IP secured by TLS. Launch remote resources via SSH or cluster managers for distributed computing. Scales efficiently to millions of tasks over thousands of connections, requiring no storage on the file system due to its inherently queued architecture. Innovative features include event-driven promises, asynchronous parallel map, and seamless serialization of otherwise non-exportable reference objects.", + "License": "MIT + file LICENSE", + "URL": "https://mirai.r-lib.org, https://github.com/r-lib/mirai", + "BugReports": "https://github.com/r-lib/mirai/issues", + "Depends": [ + "R (>= 3.6)" + ], + "Imports": [ + "nanonext (>= 1.6.2)" + ], + "Suggests": [ + "cli", + "litedown" + ], + "Enhances": [ + "parallel", + "promises" + ], + "VignetteBuilder": "litedown", + "Config/Needs/website": "tidyverse/tidytemplate", + "Config/usethis/last-upkeep": "2025-04-23", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.2", + "NeedsCompilation": "no", + "Author": "Charlie Gao [aut, cre] (ORCID: ), Joe Cheng [ctb], Posit Software, PBC [cph, fnd] (ROR: ), Hibiki AI Limited [cph]", + "Maintainer": "Charlie Gao ", + "Repository": "CRAN" + }, + "nanonext": { + "Package": "nanonext", + "Version": "1.6.2", + "Source": "Repository", + "Type": "Package", + "Title": "NNG (Nanomsg Next Gen) Lightweight Messaging Library", + "Authors@R": "c( person(\"Charlie\", \"Gao\", , \"charlie.gao@posit.co\", role = c(\"aut\", \"cre\"), comment = c(ORCID = \"0000-0002-0750-061X\")), person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\"), comment = c(ROR = \"03wc8by49\")), person(\"Hibiki AI Limited\", role = \"cph\"), person(\"R Consortium\", role = \"fnd\") )", + "Description": "R binding for NNG (Nanomsg Next Gen), a successor to ZeroMQ. NNG is a socket library for reliable, high-performance messaging over in-process, IPC, TCP, WebSocket and secure TLS transports. Implements 'Scalability Protocols', a standard for common communications patterns including publish/subscribe, request/reply and service discovery. As its own threaded concurrency framework, provides a toolkit for asynchronous programming and distributed computing. Intuitive 'aio' objects resolve automatically when asynchronous operations complete, and synchronisation primitives allow R to wait upon events signalled by concurrent threads.", + "License": "MIT + file LICENSE", + "URL": "https://nanonext.r-lib.org, https://github.com/r-lib/nanonext", + "BugReports": "https://github.com/r-lib/nanonext/issues", + "Depends": [ + "R (>= 3.6)" + ], + "Suggests": [ + "later", + "litedown" + ], + "Enhances": [ + "promises" + ], + "VignetteBuilder": "litedown", + "Biarch": "true", + "Config/build/compilation-database": "true", + "Config/Needs/website": "tidyverse/tidytemplate", + "Config/usethis/last-upkeep": "2025-04-23", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.2", + "SystemRequirements": "'libnng' >= 1.9 and 'libmbedtls' >= 2.5, or 'cmake' and 'xz' to compile NNG and/or Mbed TLS included in package sources", + "NeedsCompilation": "yes", + "Author": "Charlie Gao [aut, cre] (ORCID: ), Posit Software, PBC [cph, fnd] (ROR: ), Hibiki AI Limited [cph], R Consortium [fnd]", + "Maintainer": "Charlie Gao ", + "Repository": "CRAN" + }, + "nlme": { + "Package": "nlme", + "Version": "3.1-162", + "Source": "Repository", + "Date": "2023-01-30", + "Priority": "recommended", + "Title": "Linear and Nonlinear Mixed Effects Models", + "Authors@R": "c(person(\"José\", \"Pinheiro\", role = \"aut\", comment = \"S version\"), person(\"Douglas\", \"Bates\", role = \"aut\", comment = \"up to 2007\"), person(\"Saikat\", \"DebRoy\", role = \"ctb\", comment = \"up to 2002\"), person(\"Deepayan\", \"Sarkar\", role = \"ctb\", comment = \"up to 2005\"), person(\"EISPACK authors\", role = \"ctb\", comment = \"src/rs.f\"), person(\"Siem\", \"Heisterkamp\", role = \"ctb\", comment = \"Author fixed sigma\"), person(\"Bert\", \"Van Willigen\",role = \"ctb\", comment = \"Programmer fixed sigma\"), person(\"Johannes\", \"Ranke\", role = \"ctb\", comment = \"varConstProp()\"), person(\"R Core Team\", email = \"R-core@R-project.org\", role = c(\"aut\", \"cre\")))", + "Contact": "see 'MailingList'", + "Description": "Fit and compare Gaussian linear and nonlinear mixed-effects models.", + "Depends": [ + "R (>= 3.5.0)" + ], + "Imports": [ + "graphics", + "stats", + "utils", + "lattice" + ], + "Suggests": [ + "Hmisc", + "MASS", + "SASmixed" + ], + "LazyData": "yes", + "Encoding": "UTF-8", + "License": "GPL (>= 2)", + "BugReports": "https://bugs.r-project.org", + "MailingList": "R-help@r-project.org", + "URL": "https://svn.r-project.org/R-packages/trunk/nlme/", + "NeedsCompilation": "yes", + "Author": "José Pinheiro [aut] (S version), Douglas Bates [aut] (up to 2007), Saikat DebRoy [ctb] (up to 2002), Deepayan Sarkar [ctb] (up to 2005), EISPACK authors [ctb] (src/rs.f), Siem Heisterkamp [ctb] (Author fixed sigma), Bert Van Willigen [ctb] (Programmer fixed sigma), Johannes Ranke [ctb] (varConstProp()), R Core Team [aut, cre]", + "Maintainer": "R Core Team ", + "Repository": "CRAN" + }, + "nnet": { + "Package": "nnet", + "Version": "7.3-19", + "Source": "Repository", + "Priority": "recommended", + "Date": "2023-05-02", + "Depends": [ + "R (>= 3.0.0)", + "stats", + "utils" + ], + "Suggests": [ + "MASS" + ], + "Authors@R": "c(person(\"Brian\", \"Ripley\", role = c(\"aut\", \"cre\", \"cph\"), email = \"ripley@stats.ox.ac.uk\"), person(\"William\", \"Venables\", role = \"cph\"))", + "Description": "Software for feed-forward neural networks with a single hidden layer, and for multinomial log-linear models.", + "Title": "Feed-Forward Neural Networks and Multinomial Log-Linear Models", + "ByteCompile": "yes", + "License": "GPL-2 | GPL-3", + "URL": "http://www.stats.ox.ac.uk/pub/MASS4/", + "NeedsCompilation": "yes", + "Author": "Brian Ripley [aut, cre, cph], William Venables [cph]", + "Maintainer": "Brian Ripley ", + "Repository": "CRAN" + }, + "numDeriv": { + "Package": "numDeriv", + "Version": "2016.8-1.1", + "Source": "Repository", + "Title": "Accurate Numerical Derivatives", + "Description": "Methods for calculating (usually) accurate numerical first and second order derivatives. Accurate calculations are done using 'Richardson''s' extrapolation or, when applicable, a complex step derivative is available. A simple difference method is also provided. Simple difference is (usually) less accurate but is much quicker than 'Richardson''s' extrapolation and provides a useful cross-check. Methods are provided for real scalar and vector valued functions.", + "Depends": [ + "R (>= 2.11.1)" + ], + "LazyLoad": "yes", + "ByteCompile": "yes", + "License": "GPL-2", + "Copyright": "2006-2011, Bank of Canada. 2012-2016, Paul Gilbert", + "Author": "Paul Gilbert and Ravi Varadhan", + "Maintainer": "Paul Gilbert ", + "URL": "http://optimizer.r-forge.r-project.org/", + "NeedsCompilation": "no", + "Repository": "CRAN" + }, + "openssl": { + "Package": "openssl", + "Version": "2.3.3", + "Source": "Repository", + "Type": "Package", + "Title": "Toolkit for Encryption, Signatures and Certificates Based on OpenSSL", + "Authors@R": "c(person(\"Jeroen\", \"Ooms\", role = c(\"aut\", \"cre\"), email = \"jeroenooms@gmail.com\", comment = c(ORCID = \"0000-0002-4035-0289\")), person(\"Oliver\", \"Keyes\", role = \"ctb\"))", + "Description": "Bindings to OpenSSL libssl and libcrypto, plus custom SSH key parsers. Supports RSA, DSA and EC curves P-256, P-384, P-521, and curve25519. Cryptographic signatures can either be created and verified manually or via x509 certificates. AES can be used in cbc, ctr or gcm mode for symmetric encryption; RSA for asymmetric (public key) encryption or EC for Diffie Hellman. High-level envelope functions combine RSA and AES for encrypting arbitrary sized data. Other utilities include key generators, hash functions (md5, sha1, sha256, etc), base64 encoder, a secure random number generator, and 'bignum' math methods for manually performing crypto calculations on large multibyte integers.", + "License": "MIT + file LICENSE", + "URL": "https://jeroen.r-universe.dev/openssl", + "BugReports": "https://github.com/jeroen/openssl/issues", + "SystemRequirements": "OpenSSL >= 1.0.2", + "VignetteBuilder": "knitr", + "Imports": [ + "askpass" + ], + "Suggests": [ + "curl", + "testthat (>= 2.1.0)", + "digest", + "knitr", + "rmarkdown", + "jsonlite", + "jose", + "sodium" + ], + "RoxygenNote": "7.3.2", + "Encoding": "UTF-8", + "NeedsCompilation": "yes", + "Author": "Jeroen Ooms [aut, cre] (ORCID: ), Oliver Keyes [ctb]", + "Maintainer": "Jeroen Ooms ", + "Repository": "CRAN" + }, + "padr": { + "Package": "padr", + "Version": "0.6.3", + "Source": "Repository", + "Type": "Package", + "Title": "Quickly Get Datetime Data Ready for Analysis", + "Authors@R": "person(given = \"Edwin\", family = \"Thoen\", role = c(\"aut\", \"cre\"), email = \"edwinthoen@gmail.com\")", + "Description": "Transforms datetime data into a format ready for analysis. It offers two core functionalities; aggregating data to a higher level interval (thicken) and imputing records where observations were absent (pad).", + "License": "MIT + file LICENSE", + "Encoding": "UTF-8", + "LazyData": "true", + "Depends": [ + "R (>= 3.0.0)" + ], + "Imports": [ + "Rcpp", + "dplyr (>= 1.0.0)", + "lubridate", + "rlang" + ], + "Suggests": [ + "ggplot2", + "testthat", + "knitr", + "rmarkdown", + "lazyeval", + "tidyr", + "data.table" + ], + "RoxygenNote": "7.2.1", + "LinkingTo": [ + "Rcpp" + ], + "VignetteBuilder": "knitr", + "URL": "https://edwinth.github.io/padr/, https://github.com/EdwinTh/padr", + "BugReports": "https://github.com/EdwinTh/padr/issues", + "ByteCompile": "true", + "NeedsCompilation": "yes", + "Author": "Edwin Thoen [aut, cre]", + "Maintainer": "Edwin Thoen ", + "Repository": "CRAN" + }, + "parallelly": { + "Package": "parallelly", + "Version": "1.45.1", + "Source": "Repository", + "Title": "Enhancing the 'parallel' Package", + "Imports": [ + "parallel", + "tools", + "utils" + ], + "Suggests": [ + "commonmark", + "base64enc" + ], + "VignetteBuilder": "parallelly", + "Authors@R": "c( person(\"Henrik\", \"Bengtsson\", role = c(\"aut\", \"cre\", \"cph\"), email = \"henrikb@braju.com\", comment = c(ORCID = \"0000-0002-7579-5165\")), person(\"Mike\", \"Cheng\", role = c(\"ctb\"), email = \"mikefc@coolbutuseless.com\") )", + "Description": "Utility functions that enhance the 'parallel' package and support the built-in parallel backends of the 'future' package. For example, availableCores() gives the number of CPU cores available to your R process as given by the operating system, 'cgroups' and Linux containers, R options, and environment variables, including those set by job schedulers on high-performance compute clusters. If none is set, it will fall back to parallel::detectCores(). Another example is makeClusterPSOCK(), which is backward compatible with parallel::makePSOCKcluster() while doing a better job in setting up remote cluster workers without the need for configuring the firewall to do port-forwarding to your local computer.", + "License": "LGPL (>= 2.1)", + "LazyLoad": "TRUE", + "ByteCompile": "TRUE", + "URL": "https://parallelly.futureverse.org, https://github.com/futureverse/parallelly", + "BugReports": "https://github.com/futureverse/parallelly/issues", + "Language": "en-US", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.2", + "NeedsCompilation": "yes", + "Author": "Henrik Bengtsson [aut, cre, cph] (ORCID: ), Mike Cheng [ctb]", + "Maintainer": "Henrik Bengtsson ", + "Repository": "CRAN" + }, + "pillar": { + "Package": "pillar", + "Version": "1.11.0", + "Source": "Repository", + "Title": "Coloured Formatting for Columns", + "Authors@R": "c(person(given = \"Kirill\", family = \"M\\u00fcller\", role = c(\"aut\", \"cre\"), email = \"kirill@cynkra.com\", comment = c(ORCID = \"0000-0002-1416-3412\")), person(given = \"Hadley\", family = \"Wickham\", role = \"aut\"), person(given = \"RStudio\", role = \"cph\"))", + "Description": "Provides 'pillar' and 'colonnade' generics designed for formatting columns of data using the full range of colours provided by modern terminals.", + "License": "MIT + file LICENSE", + "URL": "https://pillar.r-lib.org/, https://github.com/r-lib/pillar", + "BugReports": "https://github.com/r-lib/pillar/issues", + "Imports": [ + "cli (>= 2.3.0)", + "glue", + "lifecycle", + "rlang (>= 1.0.2)", + "utf8 (>= 1.1.0)", + "utils", + "vctrs (>= 0.5.0)" + ], + "Suggests": [ + "bit64", + "DBI", + "debugme", + "DiagrammeR", + "dplyr", + "formattable", + "ggplot2", + "knitr", + "lubridate", + "nanotime", + "nycflights13", + "palmerpenguins", + "rmarkdown", + "scales", + "stringi", + "survival", + "testthat (>= 3.1.1)", + "tibble", + "units (>= 0.7.2)", + "vdiffr", + "withr" + ], + "VignetteBuilder": "knitr", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.2.9000", + "Config/testthat/edition": "3", + "Config/testthat/parallel": "true", + "Config/testthat/start-first": "format_multi_fuzz, format_multi_fuzz_2, format_multi, ctl_colonnade, ctl_colonnade_1, ctl_colonnade_2", + "Config/autostyle/scope": "line_breaks", + "Config/autostyle/strict": "true", + "Config/gha/extra-packages": "units=?ignore-before-r=4.3.0", + "Config/Needs/website": "tidyverse/tidytemplate", + "NeedsCompilation": "no", + "Author": "Kirill Müller [aut, cre] (ORCID: ), Hadley Wickham [aut], RStudio [cph]", + "Maintainer": "Kirill Müller ", + "Repository": "CRAN" + }, + "pingr": { + "Package": "pingr", + "Version": "2.0.5", + "Source": "Repository", + "Title": "Check if a Remote Computer is Up", + "Authors@R": "c( person(\"Gábor\", \"Csárdi\", , \"csardi.gabor@gmail.com\", role = c(\"aut\", \"cre\")), person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\")) )", + "Description": "Check if a remote computer is up. It can either just call the system ping command, or check a specified TCP port.", + "License": "MIT + file LICENSE", + "URL": "https://r-lib.github.io/pingr/, https://github.com/r-lib/pingr", + "BugReports": "https://github.com/r-lib/pingr/issues", + "Depends": [ + "R (>= 3.6)" + ], + "Imports": [ + "processx", + "utils" + ], + "Suggests": [ + "covr", + "ps", + "testthat (>= 3.0.0)" + ], + "Config/Needs/website": "tidyverse/tidytemplate", + "Config/testthat/edition": "3", + "Encoding": "UTF-8", + "RoxygenNote": "7.2.3", + "Biarch": "true", + "NeedsCompilation": "yes", + "Author": "Gábor Csárdi [aut, cre], Posit Software, PBC [cph, fnd]", + "Maintainer": "Gábor Csárdi ", + "Repository": "CRAN" + }, + "pkgbuild": { + "Package": "pkgbuild", + "Version": "1.4.8", + "Source": "Repository", + "Title": "Find Tools Needed to Build R Packages", + "Authors@R": "c( person(\"Hadley\", \"Wickham\", role = \"aut\"), person(\"Jim\", \"Hester\", role = \"aut\"), person(\"Gábor\", \"Csárdi\", , \"csardi.gabor@gmail.com\", role = c(\"aut\", \"cre\")), person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\"), comment = c(ROR = \"03wc8by49\")) )", + "Description": "Provides functions used to build R packages. Locates compilers needed to build R packages on various platforms and ensures the PATH is configured appropriately so R can use them.", + "License": "MIT + file LICENSE", + "URL": "https://github.com/r-lib/pkgbuild, https://pkgbuild.r-lib.org", + "BugReports": "https://github.com/r-lib/pkgbuild/issues", + "Depends": [ + "R (>= 3.5)" + ], + "Imports": [ + "callr (>= 3.2.0)", + "cli (>= 3.4.0)", + "desc", + "processx", + "R6" + ], + "Suggests": [ + "covr", + "cpp11", + "knitr", + "Rcpp", + "rmarkdown", + "testthat (>= 3.2.0)", + "withr (>= 2.3.0)" + ], + "Config/Needs/website": "tidyverse/tidytemplate", + "Config/testthat/edition": "3", + "Config/usethis/last-upkeep": "2025-04-30", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.2", + "NeedsCompilation": "no", + "Author": "Hadley Wickham [aut], Jim Hester [aut], Gábor Csárdi [aut, cre], Posit Software, PBC [cph, fnd] (ROR: )", + "Maintainer": "Gábor Csárdi ", + "Repository": "https://p3m.dev/cran/latest" + }, + "pkgconfig": { + "Package": "pkgconfig", + "Version": "2.0.3", + "Source": "Repository", + "Title": "Private Configuration for 'R' Packages", + "Author": "Gábor Csárdi", + "Maintainer": "Gábor Csárdi ", + "Description": "Set configuration options on a per-package basis. Options set by a given package only apply to that package, other packages are unaffected.", + "License": "MIT + file LICENSE", + "LazyData": "true", + "Imports": [ + "utils" + ], + "Suggests": [ + "covr", + "testthat", + "disposables (>= 1.0.3)" + ], + "URL": "https://github.com/r-lib/pkgconfig#readme", + "BugReports": "https://github.com/r-lib/pkgconfig/issues", + "Encoding": "UTF-8", + "NeedsCompilation": "no", + "Repository": "CRAN" + }, + "pkgload": { + "Package": "pkgload", + "Version": "1.4.0", + "Source": "Repository", + "Title": "Simulate Package Installation and Attach", + "Authors@R": "c( person(\"Hadley\", \"Wickham\", role = \"aut\"), person(\"Winston\", \"Chang\", role = \"aut\"), person(\"Jim\", \"Hester\", role = \"aut\"), person(\"Lionel\", \"Henry\", , \"lionel@posit.co\", role = c(\"aut\", \"cre\")), person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\")), person(\"R Core team\", role = \"ctb\", comment = \"Some namespace and vignette code extracted from base R\") )", + "Description": "Simulates the process of installing a package and then attaching it. This is a key part of the 'devtools' package as it allows you to rapidly iterate while developing a package.", + "License": "GPL-3", + "URL": "https://github.com/r-lib/pkgload, https://pkgload.r-lib.org", + "BugReports": "https://github.com/r-lib/pkgload/issues", + "Depends": [ + "R (>= 3.4.0)" + ], + "Imports": [ + "cli (>= 3.3.0)", + "desc", + "fs", + "glue", + "lifecycle", + "methods", + "pkgbuild", + "processx", + "rlang (>= 1.1.1)", + "rprojroot", + "utils", + "withr (>= 2.4.3)" + ], + "Suggests": [ + "bitops", + "jsonlite", + "mathjaxr", + "pak", + "Rcpp", + "remotes", + "rstudioapi", + "testthat (>= 3.2.1.1)", + "usethis" + ], + "Config/Needs/website": "tidyverse/tidytemplate, ggplot2", + "Config/testthat/edition": "3", + "Config/testthat/parallel": "TRUE", + "Config/testthat/start-first": "dll", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.1", + "NeedsCompilation": "no", + "Author": "Hadley Wickham [aut], Winston Chang [aut], Jim Hester [aut], Lionel Henry [aut, cre], Posit Software, PBC [cph, fnd], R Core team [ctb] (Some namespace and vignette code extracted from base R)", + "Maintainer": "Lionel Henry ", + "Repository": "https://p3m.dev/cran/latest" + }, + "plotly": { + "Package": "plotly", + "Version": "4.11.0", + "Source": "Repository", + "Title": "Create Interactive Web Graphics via 'plotly.js'", + "Authors@R": "c(person(\"Carson\", \"Sievert\", role = c(\"aut\", \"cre\"), email = \"cpsievert1@gmail.com\", comment = c(ORCID = \"0000-0002-4958-2844\")), person(\"Chris\", \"Parmer\", role = \"aut\", email = \"chris@plot.ly\"), person(\"Toby\", \"Hocking\", role = \"aut\", email = \"tdhock5@gmail.com\"), person(\"Scott\", \"Chamberlain\", role = \"aut\", email = \"myrmecocystus@gmail.com\"), person(\"Karthik\", \"Ram\", role = \"aut\", email = \"karthik.ram@gmail.com\"), person(\"Marianne\", \"Corvellec\", role = \"aut\", email = \"marianne.corvellec@igdore.org\", comment = c(ORCID = \"0000-0002-1994-3581\")), person(\"Pedro\", \"Despouy\", role = \"aut\", email = \"pedro@plot.ly\"), person(\"Salim\", \"Brüggemann\", role = \"ctb\", email = \"salim-b@pm.me\", comment = c(ORCID = \"0000-0002-5329-5987\")), person(\"Plotly Technologies Inc.\", role = \"cph\"))", + "License": "MIT + file LICENSE", + "Description": "Create interactive web graphics from 'ggplot2' graphs and/or a custom interface to the (MIT-licensed) JavaScript library 'plotly.js' inspired by the grammar of graphics.", + "URL": "https://plotly-r.com, https://github.com/plotly/plotly.R, https://plotly.com/r/", + "BugReports": "https://github.com/plotly/plotly.R/issues", + "Depends": [ + "R (>= 3.2.0)", + "ggplot2 (>= 3.0.0)" + ], + "Imports": [ + "tools", + "scales", + "httr (>= 1.3.0)", + "jsonlite (>= 1.6)", + "magrittr", + "digest", + "viridisLite", + "base64enc", + "htmltools (>= 0.3.6)", + "htmlwidgets (>= 1.5.2.9001)", + "tidyr (>= 1.0.0)", + "RColorBrewer", + "dplyr", + "vctrs", + "tibble", + "lazyeval (>= 0.2.0)", + "rlang (>= 1.0.0)", + "crosstalk", + "purrr", + "data.table", + "promises" + ], + "Suggests": [ + "MASS", + "maps", + "hexbin", + "ggthemes", + "GGally", + "ggalluvial", + "testthat", + "knitr", + "shiny (>= 1.1.0)", + "shinytest2", + "curl", + "rmarkdown", + "Cairo", + "broom", + "webshot", + "listviewer", + "dendextend", + "sf", + "png", + "IRdisplay", + "processx", + "plotlyGeoAssets", + "forcats", + "withr", + "palmerpenguins", + "rversions", + "reticulate", + "rsvg", + "ggridges" + ], + "LazyData": "true", + "RoxygenNote": "7.3.2", + "Encoding": "UTF-8", + "Config/Needs/check": "tidyverse/ggplot2, ggobi/GGally, rcmdcheck, devtools, reshape2, s2", + "NeedsCompilation": "no", + "Author": "Carson Sievert [aut, cre] (ORCID: ), Chris Parmer [aut], Toby Hocking [aut], Scott Chamberlain [aut], Karthik Ram [aut], Marianne Corvellec [aut] (ORCID: ), Pedro Despouy [aut], Salim Brüggemann [ctb] (ORCID: ), Plotly Technologies Inc. [cph]", + "Maintainer": "Carson Sievert ", + "Repository": "CRAN" + }, + "praise": { + "Package": "praise", + "Version": "1.0.0", + "Source": "Repository", + "Title": "Praise Users", + "Author": "Gabor Csardi, Sindre Sorhus", + "Maintainer": "Gabor Csardi ", + "Description": "Build friendly R packages that praise their users if they have done something good, or they just need it to feel better.", + "License": "MIT + file LICENSE", + "LazyData": "true", + "URL": "https://github.com/gaborcsardi/praise", + "BugReports": "https://github.com/gaborcsardi/praise/issues", + "Suggests": [ + "testthat" + ], + "Collate": "'adjective.R' 'adverb.R' 'exclamation.R' 'verb.R' 'rpackage.R' 'package.R'", + "NeedsCompilation": "no", + "Repository": "CRAN", + "Encoding": "UTF-8" + }, + "prettyunits": { + "Package": "prettyunits", + "Version": "1.2.0", + "Source": "Repository", + "Title": "Pretty, Human Readable Formatting of Quantities", + "Authors@R": "c( person(\"Gabor\", \"Csardi\", email=\"csardi.gabor@gmail.com\", role=c(\"aut\", \"cre\")), person(\"Bill\", \"Denney\", email=\"wdenney@humanpredictions.com\", role=c(\"ctb\"), comment=c(ORCID=\"0000-0002-5759-428X\")), person(\"Christophe\", \"Regouby\", email=\"christophe.regouby@free.fr\", role=c(\"ctb\")) )", + "Description": "Pretty, human readable formatting of quantities. Time intervals: '1337000' -> '15d 11h 23m 20s'. Vague time intervals: '2674000' -> 'about a month ago'. Bytes: '1337' -> '1.34 kB'. Rounding: '99' with 3 significant digits -> '99.0' p-values: '0.00001' -> '<0.0001'. Colors: '#FF0000' -> 'red'. Quantities: '1239437' -> '1.24 M'.", + "License": "MIT + file LICENSE", + "URL": "https://github.com/r-lib/prettyunits", + "BugReports": "https://github.com/r-lib/prettyunits/issues", + "Depends": [ + "R(>= 2.10)" + ], + "Suggests": [ + "codetools", + "covr", + "testthat" + ], + "RoxygenNote": "7.2.3", + "Encoding": "UTF-8", + "NeedsCompilation": "no", + "Author": "Gabor Csardi [aut, cre], Bill Denney [ctb] (), Christophe Regouby [ctb]", + "Maintainer": "Gabor Csardi ", + "Repository": "CRAN" + }, + "processx": { + "Package": "processx", + "Version": "3.8.6", + "Source": "Repository", + "Title": "Execute and Control System Processes", + "Authors@R": "c( person(\"Gábor\", \"Csárdi\", , \"csardi.gabor@gmail.com\", role = c(\"aut\", \"cre\", \"cph\"), comment = c(ORCID = \"0000-0001-7098-9676\")), person(\"Winston\", \"Chang\", role = \"aut\"), person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\")), person(\"Ascent Digital Services\", role = c(\"cph\", \"fnd\")) )", + "Description": "Tools to run system processes in the background. It can check if a background process is running; wait on a background process to finish; get the exit status of finished processes; kill background processes. It can read the standard output and error of the processes, using non-blocking connections. 'processx' can poll a process for standard output or error, with a timeout. It can also poll several processes at once.", + "License": "MIT + file LICENSE", + "URL": "https://processx.r-lib.org, https://github.com/r-lib/processx", + "BugReports": "https://github.com/r-lib/processx/issues", + "Depends": [ + "R (>= 3.4.0)" + ], + "Imports": [ + "ps (>= 1.2.0)", + "R6", + "utils" + ], + "Suggests": [ + "callr (>= 3.7.3)", + "cli (>= 3.3.0)", + "codetools", + "covr", + "curl", + "debugme", + "parallel", + "rlang (>= 1.0.2)", + "testthat (>= 3.0.0)", + "webfakes", + "withr" + ], + "Config/Needs/website": "tidyverse/tidytemplate", + "Config/testthat/edition": "3", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.1.9000", + "NeedsCompilation": "yes", + "Author": "Gábor Csárdi [aut, cre, cph] (), Winston Chang [aut], Posit Software, PBC [cph, fnd], Ascent Digital Services [cph, fnd]", + "Maintainer": "Gábor Csárdi ", + "Repository": "https://p3m.dev/cran/latest" + }, + "prodlim": { + "Package": "prodlim", + "Version": "2025.04.28", + "Source": "Repository", + "Title": "Product-Limit Estimation for Censored Event History Analysis", + "Authors@R": "person(given = c(\"Thomas\", \"A.\"), family = \"Gerds\", role = c(\"aut\", \"cre\"), email = \"tag@biostat.ku.dk\")", + "Description": "Fast and user friendly implementation of nonparametric estimators for censored event history (survival) analysis. Kaplan-Meier and Aalen-Johansen method.", + "Depends": [ + "R (>= 4.1.0)" + ], + "Imports": [ + "Rcpp (>= 0.11.5)", + "stats", + "rlang", + "data.table", + "grDevices", + "ggplot2", + "graphics", + "diagram", + "survival", + "KernSmooth", + "lava" + ], + "Suggests": [ + "tibble", + "pammtools", + "ggthemes" + ], + "LinkingTo": [ + "Rcpp" + ], + "Maintainer": "Thomas A. Gerds ", + "BugReports": "https://github.com/tagteam/prodlim/issues", + "License": "GPL (>= 2)", + "RoxygenNote": "7.3.2", + "NeedsCompilation": "yes", + "Author": "Thomas A. Gerds [aut, cre]", + "Repository": "CRAN", + "Encoding": "UTF-8" + }, + "progress": { + "Package": "progress", + "Version": "1.2.3", + "Source": "Repository", + "Title": "Terminal Progress Bars", + "Authors@R": "c( person(\"Gábor\", \"Csárdi\", , \"csardi.gabor@gmail.com\", role = c(\"aut\", \"cre\")), person(\"Rich\", \"FitzJohn\", role = \"aut\"), person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\")) )", + "Description": "Configurable Progress bars, they may include percentage, elapsed time, and/or the estimated completion time. They work in terminals, in 'Emacs' 'ESS', 'RStudio', 'Windows' 'Rgui' and the 'macOS' 'R.app'. The package also provides a 'C++' 'API', that works with or without 'Rcpp'.", + "License": "MIT + file LICENSE", + "URL": "https://github.com/r-lib/progress#readme, http://r-lib.github.io/progress/", + "BugReports": "https://github.com/r-lib/progress/issues", + "Depends": [ + "R (>= 3.6)" + ], + "Imports": [ + "crayon", + "hms", + "prettyunits", + "R6" + ], + "Suggests": [ + "Rcpp", + "testthat (>= 3.0.0)", + "withr" + ], + "Config/Needs/website": "tidyverse/tidytemplate", + "Config/testthat/edition": "3", + "Encoding": "UTF-8", + "RoxygenNote": "7.2.3", + "NeedsCompilation": "no", + "Author": "Gábor Csárdi [aut, cre], Rich FitzJohn [aut], Posit Software, PBC [cph, fnd]", + "Maintainer": "Gábor Csárdi ", + "Repository": "CRAN" + }, + "progressr": { + "Package": "progressr", + "Version": "0.15.1", + "Source": "Repository", + "Title": "An Inclusive, Unifying API for Progress Updates", + "Description": "A minimal, unifying API for scripts and packages to report progress updates from anywhere including when using parallel processing. The package is designed such that the developer can to focus on what progress should be reported on without having to worry about how to present it. The end user has full control of how, where, and when to render these progress updates, e.g. in the terminal using utils::txtProgressBar(), cli::cli_progress_bar(), in a graphical user interface using utils::winProgressBar(), tcltk::tkProgressBar() or shiny::withProgress(), via the speakers using beepr::beep(), or on a file system via the size of a file. Anyone can add additional, customized, progression handlers. The 'progressr' package uses R's condition framework for signaling progress updated. Because of this, progress can be reported from almost anywhere in R, e.g. from classical for and while loops, from map-reduce API:s like the lapply() family of functions, 'purrr', 'plyr', and 'foreach'. It will also work with parallel processing via the 'future' framework, e.g. future.apply::future_lapply(), furrr::future_map(), and 'foreach' with 'doFuture'. The package is compatible with Shiny applications.", + "Authors@R": "c(person(\"Henrik\", \"Bengtsson\", role = c(\"aut\", \"cre\", \"cph\"), email = \"henrikb@braju.com\", comment = c(ORCID = \"0000-0002-7579-5165\")))", + "License": "GPL (>= 3)", + "Depends": [ + "R (>= 3.5.0)" + ], + "Imports": [ + "digest", + "utils" + ], + "Suggests": [ + "graphics", + "tcltk", + "beepr", + "cli", + "crayon", + "pbmcapply", + "progress", + "purrr", + "foreach", + "plyr", + "doFuture", + "future", + "future.apply", + "furrr", + "ntfy", + "RPushbullet", + "rstudioapi", + "shiny", + "commonmark", + "base64enc", + "tools" + ], + "VignetteBuilder": "progressr", + "URL": "https://progressr.futureverse.org, https://github.com/futureverse/progressr", + "BugReports": "https://github.com/futureverse/progressr/issues", + "RoxygenNote": "7.3.2", + "NeedsCompilation": "no", + "Author": "Henrik Bengtsson [aut, cre, cph] ()", + "Maintainer": "Henrik Bengtsson ", + "Repository": "CRAN", + "Encoding": "UTF-8" + }, + "promises": { + "Package": "promises", + "Version": "1.3.3", + "Source": "Repository", + "Type": "Package", + "Title": "Abstractions for Promise-Based Asynchronous Programming", + "Authors@R": "c( person(\"Joe\", \"Cheng\", , \"joe@posit.co\", role = c(\"aut\", \"cre\")), person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\"), comment = c(ROR = \"03wc8by49\")) )", + "Description": "Provides fundamental abstractions for doing asynchronous programming in R using promises. Asynchronous programming is useful for allowing a single R process to orchestrate multiple tasks in the background while also attending to something else. Semantics are similar to 'JavaScript' promises, but with a syntax that is idiomatic R.", + "License": "MIT + file LICENSE", + "URL": "https://rstudio.github.io/promises/, https://github.com/rstudio/promises", + "BugReports": "https://github.com/rstudio/promises/issues", + "Imports": [ + "fastmap (>= 1.1.0)", + "later", + "magrittr (>= 1.5)", + "R6", + "Rcpp", + "rlang", + "stats" + ], + "Suggests": [ + "future (>= 1.21.0)", + "knitr", + "purrr", + "rmarkdown", + "spelling", + "testthat (>= 3.0.0)", + "vembedr" + ], + "LinkingTo": [ + "later", + "Rcpp" + ], + "VignetteBuilder": "knitr", + "Config/Needs/website": "rsconnect, tidyverse/tidytemplate", + "Config/testthat/edition": "3", + "Config/usethis/last-upkeep": "2025-05-27", + "Encoding": "UTF-8", + "Language": "en-US", + "RoxygenNote": "7.3.2", + "NeedsCompilation": "yes", + "Author": "Joe Cheng [aut, cre], Posit Software, PBC [cph, fnd] (ROR: )", + "Maintainer": "Joe Cheng ", + "Repository": "CRAN" + }, + "ps": { + "Package": "ps", + "Version": "1.9.1", + "Source": "Repository", + "Title": "List, Query, Manipulate System Processes", + "Authors@R": "c( person(\"Jay\", \"Loden\", role = \"aut\"), person(\"Dave\", \"Daeschler\", role = \"aut\"), person(\"Giampaolo\", \"Rodola'\", role = \"aut\"), person(\"Gábor\", \"Csárdi\", , \"csardi.gabor@gmail.com\", role = c(\"aut\", \"cre\")), person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\")) )", + "Description": "List, query and manipulate all system processes, on 'Windows', 'Linux' and 'macOS'.", + "License": "MIT + file LICENSE", + "URL": "https://github.com/r-lib/ps, https://ps.r-lib.org/", + "BugReports": "https://github.com/r-lib/ps/issues", + "Depends": [ + "R (>= 3.4)" + ], + "Imports": [ + "utils" + ], + "Suggests": [ + "callr", + "covr", + "curl", + "pillar", + "pingr", + "processx (>= 3.1.0)", + "R6", + "rlang", + "testthat (>= 3.0.0)", + "webfakes", + "withr" + ], + "Biarch": "true", + "Config/Needs/website": "tidyverse/tidytemplate", + "Config/testthat/edition": "3", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.2", + "NeedsCompilation": "yes", + "Author": "Jay Loden [aut], Dave Daeschler [aut], Giampaolo Rodola' [aut], Gábor Csárdi [aut, cre], Posit Software, PBC [cph, fnd]", + "Maintainer": "Gábor Csárdi ", + "Repository": "https://p3m.dev/cran/latest" + }, + "purrr": { + "Package": "purrr", + "Version": "1.1.0", + "Source": "Repository", + "Title": "Functional Programming Tools", + "Authors@R": "c( person(\"Hadley\", \"Wickham\", , \"hadley@posit.co\", role = c(\"aut\", \"cre\"), comment = c(ORCID = \"0000-0003-4757-117X\")), person(\"Lionel\", \"Henry\", , \"lionel@posit.co\", role = \"aut\"), person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\"), comment = c(ROR = \"https://ror.org/03wc8by49\")) )", + "Description": "A complete and consistent functional programming toolkit for R.", + "License": "MIT + file LICENSE", + "URL": "https://purrr.tidyverse.org/, https://github.com/tidyverse/purrr", + "BugReports": "https://github.com/tidyverse/purrr/issues", + "Depends": [ + "R (>= 4.1)" + ], + "Imports": [ + "cli (>= 3.6.1)", + "lifecycle (>= 1.0.3)", + "magrittr (>= 1.5.0)", + "rlang (>= 1.1.1)", + "vctrs (>= 0.6.3)" + ], + "Suggests": [ + "carrier (>= 0.2.0)", + "covr", + "dplyr (>= 0.7.8)", + "httr", + "knitr", + "lubridate", + "mirai (>= 2.4.0)", + "rmarkdown", + "testthat (>= 3.0.0)", + "tibble", + "tidyselect" + ], + "LinkingTo": [ + "cli" + ], + "VignetteBuilder": "knitr", + "Biarch": "true", + "Config/build/compilation-database": "true", + "Config/Needs/website": "tidyverse/tidytemplate, tidyr", + "Config/testthat/edition": "3", + "Config/testthat/parallel": "TRUE", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.2", + "NeedsCompilation": "yes", + "Author": "Hadley Wickham [aut, cre] (ORCID: ), Lionel Henry [aut], Posit Software, PBC [cph, fnd] (ROR: )", + "Maintainer": "Hadley Wickham ", + "Repository": "CRAN" + }, + "quadprog": { + "Package": "quadprog", + "Version": "1.5-8", + "Source": "Repository", + "Type": "Package", + "Title": "Functions to Solve Quadratic Programming Problems", + "Date": "2019-11-20", + "Author": "S original by Berwin A. Turlach R port by Andreas Weingessel Fortran contributions from Cleve Moler (dposl/LINPACK and (a modified version of) dpodi/LINPACK)", + "Maintainer": "Berwin A. Turlach ", + "Description": "This package contains routines and documentation for solving quadratic programming problems.", + "Depends": [ + "R (>= 3.1.0)" + ], + "License": "GPL (>= 2)", + "NeedsCompilation": "yes", + "Repository": "CRAN", + "Encoding": "UTF-8" + }, + "quantmod": { + "Package": "quantmod", + "Version": "0.4.28", + "Source": "Repository", + "Type": "Package", + "Title": "Quantitative Financial Modelling Framework", + "Authors@R": "c( person(given=c(\"Jeffrey\",\"A.\"), family=\"Ryan\", role=c(\"aut\",\"cph\")), person(given=c(\"Joshua\",\"M.\"), family=\"Ulrich\", role=c(\"cre\",\"aut\"), email=\"josh.m.ulrich@gmail.com\"), person(given=c(\"Ethan\",\"B.\"), family=\"Smith\", role=\"ctb\"), person(given=\"Wouter\", family=\"Thielen\", role=\"ctb\"), person(given=\"Paul\", family=\"Teetor\", role=\"ctb\"), person(given=\"Steve\", family=\"Bronder\", role=\"ctb\") )", + "Depends": [ + "R (>= 3.2.0)", + "xts(>= 0.9-0)", + "zoo", + "TTR(>= 0.2)", + "methods" + ], + "Imports": [ + "curl", + "jsonlite(>= 1.1)" + ], + "Suggests": [ + "DBI", + "RMySQL", + "RSQLite", + "timeSeries", + "xml2", + "downloader", + "tinytest" + ], + "Description": "Specify, build, trade, and analyse quantitative financial trading strategies.", + "LazyLoad": "yes", + "License": "GPL-3", + "URL": "https://www.quantmod.com/, https://github.com/joshuaulrich/quantmod", + "BugReports": "https://github.com/joshuaulrich/quantmod/issues", + "NeedsCompilation": "no", + "Author": "Jeffrey A. Ryan [aut, cph], Joshua M. Ulrich [cre, aut], Ethan B. Smith [ctb], Wouter Thielen [ctb], Paul Teetor [ctb], Steve Bronder [ctb]", + "Maintainer": "Joshua M. Ulrich ", + "Repository": "CRAN", + "Encoding": "UTF-8" + }, + "rappdirs": { + "Package": "rappdirs", + "Version": "0.3.3", + "Source": "Repository", + "Type": "Package", + "Title": "Application Directories: Determine Where to Save Data, Caches, and Logs", + "Authors@R": "c(person(given = \"Hadley\", family = \"Wickham\", role = c(\"trl\", \"cre\", \"cph\"), email = \"hadley@rstudio.com\"), person(given = \"RStudio\", role = \"cph\"), person(given = \"Sridhar\", family = \"Ratnakumar\", role = \"aut\"), person(given = \"Trent\", family = \"Mick\", role = \"aut\"), person(given = \"ActiveState\", role = \"cph\", comment = \"R/appdir.r, R/cache.r, R/data.r, R/log.r translated from appdirs\"), person(given = \"Eddy\", family = \"Petrisor\", role = \"ctb\"), person(given = \"Trevor\", family = \"Davis\", role = c(\"trl\", \"aut\")), person(given = \"Gabor\", family = \"Csardi\", role = \"ctb\"), person(given = \"Gregory\", family = \"Jefferis\", role = \"ctb\"))", + "Description": "An easy way to determine which directories on the users computer you should use to save data, caches and logs. A port of Python's 'Appdirs' () to R.", + "License": "MIT + file LICENSE", + "URL": "https://rappdirs.r-lib.org, https://github.com/r-lib/rappdirs", + "BugReports": "https://github.com/r-lib/rappdirs/issues", + "Depends": [ + "R (>= 3.2)" + ], + "Suggests": [ + "roxygen2", + "testthat (>= 3.0.0)", + "covr", + "withr" + ], + "Copyright": "Original python appdirs module copyright (c) 2010 ActiveState Software Inc. R port copyright Hadley Wickham, RStudio. See file LICENSE for details.", + "Encoding": "UTF-8", + "RoxygenNote": "7.1.1", + "Config/testthat/edition": "3", + "NeedsCompilation": "yes", + "Author": "Hadley Wickham [trl, cre, cph], RStudio [cph], Sridhar Ratnakumar [aut], Trent Mick [aut], ActiveState [cph] (R/appdir.r, R/cache.r, R/data.r, R/log.r translated from appdirs), Eddy Petrisor [ctb], Trevor Davis [trl, aut], Gabor Csardi [ctb], Gregory Jefferis [ctb]", + "Maintainer": "Hadley Wickham ", + "Repository": "CRAN" + }, + "reactR": { + "Package": "reactR", + "Version": "0.6.1", + "Source": "Repository", + "Type": "Package", + "Title": "React Helpers", + "Date": "2024-09-14", + "Authors@R": "c( person( \"Facebook\", \"Inc\" , role = c(\"aut\", \"cph\") , comment = \"React library in lib, https://reactjs.org/; see AUTHORS for full list of contributors\" ), person( \"Michel\",\"Weststrate\", , role = c(\"aut\", \"cph\") , comment = \"mobx library in lib, https://github.com/mobxjs\" ), person( \"Kent\", \"Russell\" , role = c(\"aut\", \"cre\") , comment = \"R interface\" , email = \"kent.russell@timelyportfolio.com\" ), person( \"Alan\", \"Dipert\" , role = c(\"aut\") , comment = \"R interface\" , email = \"alan@rstudio.com\" ), person( \"Greg\", \"Lin\" , role = c(\"aut\") , comment = \"R interface\" , email = \"glin@glin.io\" ) )", + "Maintainer": "Kent Russell ", + "Description": "Make it easy to use 'React' in R with 'htmlwidget' scaffolds, helper dependency functions, an embedded 'Babel' 'transpiler', and examples.", + "URL": "https://github.com/react-R/reactR", + "BugReports": "https://github.com/react-R/reactR/issues", + "License": "MIT + file LICENSE", + "Encoding": "UTF-8", + "Imports": [ + "htmltools" + ], + "Suggests": [ + "htmlwidgets (>= 1.5.3)", + "rmarkdown", + "shiny", + "V8", + "knitr", + "usethis", + "jsonlite" + ], + "RoxygenNote": "7.3.2", + "VignetteBuilder": "knitr", + "NeedsCompilation": "no", + "Author": "Facebook Inc [aut, cph] (React library in lib, https://reactjs.org/; see AUTHORS for full list of contributors), Michel Weststrate [aut, cph] (mobx library in lib, https://github.com/mobxjs), Kent Russell [aut, cre] (R interface), Alan Dipert [aut] (R interface), Greg Lin [aut] (R interface)", + "Repository": "https://p3m.dev/cran/latest" + }, + "reactable": { + "Package": "reactable", + "Version": "0.4.4", + "Source": "Repository", + "Type": "Package", + "Title": "Interactive Data Tables for R", + "Authors@R": "c( person(\"Greg\", \"Lin\", email = \"glin@glin.io\", role = c(\"aut\", \"cre\")), person(\"Tanner\", \"Linsley\", role = c(\"ctb\", \"cph\"), comment = \"React Table library\"), person(family = \"Emotion team and other contributors\", role = c(\"ctb\", \"cph\"), comment = \"Emotion library\"), person(\"Kent\", \"Russell\", role = c(\"ctb\", \"cph\"), comment = \"reactR package\"), person(\"Ramnath\", \"Vaidyanathan\", role = c(\"ctb\", \"cph\"), comment = \"htmlwidgets package\"), person(\"Joe\", \"Cheng\", role = c(\"ctb\", \"cph\"), comment = \"htmlwidgets package\"), person(\"JJ\", \"Allaire\", role = c(\"ctb\", \"cph\"), comment = \"htmlwidgets package\"), person(\"Yihui\", \"Xie\", role = c(\"ctb\", \"cph\"), comment = \"htmlwidgets package\"), person(\"Kenton\", \"Russell\", role = c(\"ctb\", \"cph\"), comment = \"htmlwidgets package\"), person(family = \"Facebook, Inc. and its affiliates\", role = c(\"ctb\", \"cph\"), comment = \"React library\"), person(family = \"FormatJS\", role = c(\"ctb\", \"cph\"), comment = \"FormatJS libraries\"), person(family = \"Feross Aboukhadijeh, and other contributors\", role = c(\"ctb\", \"cph\"), comment = \"buffer library\"), person(\"Roman\", \"Shtylman\", role = c(\"ctb\", \"cph\"), comment = \"process library\"), person(\"James\", \"Halliday\", role = c(\"ctb\", \"cph\"), comment = \"stream-browserify library\"), person(family = \"Posit Software, PBC\", role = c(\"fnd\", \"cph\")) )", + "Description": "Interactive data tables for R, based on the 'React Table' JavaScript library. Provides an HTML widget that can be used in 'R Markdown' or 'Quarto' documents, 'Shiny' applications, or viewed from an R console.", + "License": "MIT + file LICENSE", + "URL": "https://glin.github.io/reactable/, https://github.com/glin/reactable", + "BugReports": "https://github.com/glin/reactable/issues", + "Depends": [ + "R (>= 3.1)" + ], + "Imports": [ + "digest", + "htmltools (>= 0.5.2)", + "htmlwidgets (>= 1.5.3)", + "jsonlite", + "reactR" + ], + "Suggests": [ + "covr", + "crosstalk", + "dplyr", + "fontawesome", + "knitr", + "leaflet", + "MASS", + "rmarkdown", + "shiny", + "sparkline", + "testthat", + "tippy", + "V8" + ], + "Encoding": "UTF-8", + "RoxygenNote": "7.2.1", + "Config/testthat/edition": "3", + "NeedsCompilation": "no", + "Author": "Greg Lin [aut, cre], Tanner Linsley [ctb, cph] (React Table library), Emotion team and other contributors [ctb, cph] (Emotion library), Kent Russell [ctb, cph] (reactR package), Ramnath Vaidyanathan [ctb, cph] (htmlwidgets package), Joe Cheng [ctb, cph] (htmlwidgets package), JJ Allaire [ctb, cph] (htmlwidgets package), Yihui Xie [ctb, cph] (htmlwidgets package), Kenton Russell [ctb, cph] (htmlwidgets package), Facebook, Inc. and its affiliates [ctb, cph] (React library), FormatJS [ctb, cph] (FormatJS libraries), Feross Aboukhadijeh, and other contributors [ctb, cph] (buffer library), Roman Shtylman [ctb, cph] (process library), James Halliday [ctb, cph] (stream-browserify library), Posit Software, PBC [fnd, cph]", + "Maintainer": "Greg Lin ", + "Repository": "CRAN" + }, + "readr": { + "Package": "readr", + "Version": "2.1.5", + "Source": "Repository", + "Title": "Read Rectangular Text Data", + "Authors@R": "c( person(\"Hadley\", \"Wickham\", , \"hadley@posit.co\", role = \"aut\"), person(\"Jim\", \"Hester\", role = \"aut\"), person(\"Romain\", \"Francois\", role = \"ctb\"), person(\"Jennifer\", \"Bryan\", , \"jenny@posit.co\", role = c(\"aut\", \"cre\"), comment = c(ORCID = \"0000-0002-6983-2759\")), person(\"Shelby\", \"Bearrows\", role = \"ctb\"), person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\")), person(\"https://github.com/mandreyel/\", role = \"cph\", comment = \"mio library\"), person(\"Jukka\", \"Jylänki\", role = c(\"ctb\", \"cph\"), comment = \"grisu3 implementation\"), person(\"Mikkel\", \"Jørgensen\", role = c(\"ctb\", \"cph\"), comment = \"grisu3 implementation\") )", + "Description": "The goal of 'readr' is to provide a fast and friendly way to read rectangular data (like 'csv', 'tsv', and 'fwf'). It is designed to flexibly parse many types of data found in the wild, while still cleanly failing when data unexpectedly changes.", + "License": "MIT + file LICENSE", + "URL": "https://readr.tidyverse.org, https://github.com/tidyverse/readr", + "BugReports": "https://github.com/tidyverse/readr/issues", + "Depends": [ + "R (>= 3.6)" + ], + "Imports": [ + "cli (>= 3.2.0)", + "clipr", + "crayon", + "hms (>= 0.4.1)", + "lifecycle (>= 0.2.0)", + "methods", + "R6", + "rlang", + "tibble", + "utils", + "vroom (>= 1.6.0)" + ], + "Suggests": [ + "covr", + "curl", + "datasets", + "knitr", + "rmarkdown", + "spelling", + "stringi", + "testthat (>= 3.2.0)", + "tzdb (>= 0.1.1)", + "waldo", + "withr", + "xml2" + ], + "LinkingTo": [ + "cpp11", + "tzdb (>= 0.1.1)" + ], + "VignetteBuilder": "knitr", + "Config/Needs/website": "tidyverse, tidyverse/tidytemplate", + "Config/testthat/edition": "3", + "Config/testthat/parallel": "false", + "Encoding": "UTF-8", + "Language": "en-US", + "RoxygenNote": "7.2.3", + "NeedsCompilation": "yes", + "Author": "Hadley Wickham [aut], Jim Hester [aut], Romain Francois [ctb], Jennifer Bryan [aut, cre] (), Shelby Bearrows [ctb], Posit Software, PBC [cph, fnd], https://github.com/mandreyel/ [cph] (mio library), Jukka Jylänki [ctb, cph] (grisu3 implementation), Mikkel Jørgensen [ctb, cph] (grisu3 implementation)", + "Maintainer": "Jennifer Bryan ", + "Repository": "CRAN" + }, + "recipes": { + "Package": "recipes", + "Version": "1.3.1", + "Source": "Repository", + "Title": "Preprocessing and Feature Engineering Steps for Modeling", + "Authors@R": "c( person(\"Max\", \"Kuhn\", , \"max@posit.co\", role = c(\"aut\", \"cre\")), person(\"Hadley\", \"Wickham\", , \"hadley@posit.co\", role = \"aut\"), person(\"Emil\", \"Hvitfeldt\", , \"emil.hvitfeldt@posit.co\", role = \"aut\"), person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\"), comment = c(ROR = \"03wc8by49\")) )", + "Description": "A recipe prepares your data for modeling. We provide an extensible framework for pipeable sequences of feature engineering steps provides preprocessing tools to be applied to data. Statistical parameters for the steps can be estimated from an initial data set and then applied to other data sets. The resulting processed output can then be used as inputs for statistical or machine learning models.", + "License": "MIT + file LICENSE", + "URL": "https://github.com/tidymodels/recipes, https://recipes.tidymodels.org/", + "BugReports": "https://github.com/tidymodels/recipes/issues", + "Depends": [ + "dplyr (>= 1.1.0)", + "R (>= 4.1)" + ], + "Imports": [ + "cli", + "clock (>= 0.6.1)", + "generics (>= 0.1.2)", + "glue", + "gower", + "hardhat (>= 1.4.1)", + "ipred (>= 0.9-12)", + "lifecycle (>= 1.0.3)", + "lubridate (>= 1.8.0)", + "magrittr", + "Matrix", + "purrr (>= 1.0.0)", + "rlang (>= 1.1.0)", + "sparsevctrs (>= 0.3.3)", + "stats", + "tibble", + "tidyr (>= 1.0.0)", + "tidyselect (>= 1.2.0)", + "timeDate", + "utils", + "vctrs (>= 0.5.0)", + "withr" + ], + "Suggests": [ + "covr", + "ddalpha", + "dials (>= 1.2.0)", + "ggplot2", + "igraph", + "kernlab", + "knitr", + "methods", + "modeldata (>= 0.1.1)", + "parsnip (>= 1.2.0)", + "RANN", + "RcppRoll", + "rmarkdown", + "rpart", + "rsample", + "RSpectra", + "splines2", + "testthat (>= 3.0.0)", + "workflows", + "xml2" + ], + "VignetteBuilder": "knitr", + "RdMacros": "lifecycle", + "Config/Needs/website": "tidyverse/tidytemplate, rmarkdown", + "Config/testthat/edition": "3", + "Config/usethis/last-upkeep": "2025-04-23", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.2", + "NeedsCompilation": "no", + "Author": "Max Kuhn [aut, cre], Hadley Wickham [aut], Emil Hvitfeldt [aut], Posit Software, PBC [cph, fnd] (ROR: )", + "Maintainer": "Max Kuhn ", + "Repository": "CRAN" + }, + "renv": { + "Package": "renv", + "Version": "1.1.4", + "Source": "Repository", + "Type": "Package", + "Title": "Project Environments", + "Authors@R": "c( person(\"Kevin\", \"Ushey\", role = c(\"aut\", \"cre\"), email = \"kevin@rstudio.com\", comment = c(ORCID = \"0000-0003-2880-7407\")), person(\"Hadley\", \"Wickham\", role = c(\"aut\"), email = \"hadley@rstudio.com\", comment = c(ORCID = \"0000-0003-4757-117X\")), person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\")) )", + "Description": "A dependency management toolkit for R. Using 'renv', you can create and manage project-local R libraries, save the state of these libraries to a 'lockfile', and later restore your library as required. Together, these tools can help make your projects more isolated, portable, and reproducible.", + "License": "MIT + file LICENSE", + "URL": "https://rstudio.github.io/renv/, https://github.com/rstudio/renv", + "BugReports": "https://github.com/rstudio/renv/issues", + "Imports": [ + "utils" + ], + "Suggests": [ + "BiocManager", + "cli", + "compiler", + "covr", + "cpp11", + "devtools", + "gitcreds", + "jsonlite", + "jsonvalidate", + "knitr", + "miniUI", + "modules", + "packrat", + "pak", + "R6", + "remotes", + "reticulate", + "rmarkdown", + "rstudioapi", + "shiny", + "testthat", + "uuid", + "waldo", + "yaml", + "webfakes" + ], + "Encoding": "UTF-8", + "RoxygenNote": "7.3.2", + "VignetteBuilder": "knitr", + "Config/Needs/website": "tidyverse/tidytemplate", + "Config/testthat/edition": "3", + "Config/testthat/parallel": "true", + "Config/testthat/start-first": "bioconductor,python,install,restore,snapshot,retrieve,remotes", + "NeedsCompilation": "no", + "Author": "Kevin Ushey [aut, cre] (), Hadley Wickham [aut] (), Posit Software, PBC [cph, fnd]", + "Maintainer": "Kevin Ushey ", + "Repository": "CRAN" + }, + "rex": { + "Package": "rex", + "Version": "1.2.1", + "Source": "Repository", + "Type": "Package", + "Title": "Friendly Regular Expressions", + "Authors@R": "c( person(\"Kevin\", \"Ushey\", , \"kevinushey@gmail.com\", role = c(\"aut\", \"cre\")), person(\"Jim\", \"Hester\", , \"james.f.hester@gmail.com\", role = \"aut\"), person(\"Robert\", \"Krzyzanowski\", , \"rkrzyzanowski@gmail.com\", role = \"aut\") )", + "Description": "A friendly interface for the construction of regular expressions.", + "License": "MIT + file LICENSE", + "URL": "https://github.com/kevinushey/rex", + "BugReports": "https://github.com/kevinushey/rex/issues", + "Imports": [ + "lazyeval" + ], + "Suggests": [ + "covr", + "dplyr", + "ggplot2", + "Hmisc", + "knitr", + "magrittr", + "rmarkdown", + "roxygen2", + "rvest", + "stringr", + "testthat" + ], + "VignetteBuilder": "knitr", + "Encoding": "UTF-8", + "RoxygenNote": "7.1.2", + "Collate": "'aaa.R' 'utils.R' 'escape.R' 'capture.R' 'character_class.R' 'counts.R' 'lookarounds.R' 'match.R' 'or.R' 'rex-mode.R' 'rex.R' 'shortcuts.R' 'wildcards.R' 'zzz.R'", + "NeedsCompilation": "no", + "Author": "Kevin Ushey [aut, cre], Jim Hester [aut], Robert Krzyzanowski [aut]", + "Maintainer": "Kevin Ushey ", + "Repository": "CRAN" + }, + "rhino": { + "Package": "rhino", + "Version": "1.11.0", + "Source": "Repository", + "Title": "A Framework for Enterprise Shiny Applications", + "Authors@R": "c( person(\"Kamil\", \"Żyła\", role = c(\"aut\", \"cre\"), email = \"opensource+kamil@appsilon.com\"), person(\"Jakub\", \"Nowicki\", role = \"aut\", email = \"kuba@appsilon.com\"), person(\"Leszek\", \"Siemiński\", role = \"aut\", email = \"leszek.sieminski@appsilon.com\"), person(\"Marek\", \"Rogala\", role = \"aut\", email = \"marek@appsilon.com\"), person(\"Recle\", \"Vibal\", role = \"aut\", email = \"recle.vibal@appsilon.com\"), person(\"Tymoteusz\", \"Makowski\", role = \"aut\", email = \"tymoteusz@appsilon.com\"), person(\"Rodrigo\", \"Basa\", role = \"aut\", email = \"rodrigo@appsilon.com\"), person(\"Eduardo\", \"Almeida\", role = \"ctb\", email = \"eduardo@appsilon.com\"), person(\"Appsilon Sp. z o.o.\", role = \"cph\", email = \"opensource@appsilon.com\") )", + "Description": "A framework that supports creating and extending enterprise Shiny applications using best practices.", + "URL": "https://appsilon.github.io/rhino/, https://github.com/Appsilon/rhino", + "BugReports": "https://github.com/Appsilon/rhino/issues", + "License": "LGPL-3", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.2", + "Depends": [ + "R (>= 2.10)" + ], + "Imports": [ + "box (>= 1.1.3)", + "box.linters (>= 0.10.5)", + "box.lsp", + "callr", + "cli", + "config", + "fs", + "glue", + "lintr (>= 3.0.0)", + "logger", + "purrr", + "renv", + "rstudioapi", + "sass", + "shiny", + "styler", + "testthat (>= 3.0.0)", + "utils", + "withr", + "yaml" + ], + "Suggests": [ + "covr", + "knitr", + "lifecycle", + "mockery", + "rcmdcheck", + "rex", + "rlang", + "rmarkdown", + "shiny.react", + "spelling" + ], + "LazyData": "true", + "Config/testthat/edition": "3", + "Config/testthat/parallel": "true", + "Language": "en-US", + "NeedsCompilation": "no", + "Author": "Kamil Żyła [aut, cre], Jakub Nowicki [aut], Leszek Siemiński [aut], Marek Rogala [aut], Recle Vibal [aut], Tymoteusz Makowski [aut], Rodrigo Basa [aut], Eduardo Almeida [ctb], Appsilon Sp. z o.o. [cph]", + "Maintainer": "Kamil Żyła ", + "Repository": "CRAN" + }, + "rlang": { + "Package": "rlang", + "Version": "1.1.6", + "Source": "Repository", + "Title": "Functions for Base Types and Core R and 'Tidyverse' Features", + "Description": "A toolbox for working with base types, core R features like the condition system, and core 'Tidyverse' features like tidy evaluation.", + "Authors@R": "c( person(\"Lionel\", \"Henry\", ,\"lionel@posit.co\", c(\"aut\", \"cre\")), person(\"Hadley\", \"Wickham\", ,\"hadley@posit.co\", \"aut\"), person(given = \"mikefc\", email = \"mikefc@coolbutuseless.com\", role = \"cph\", comment = \"Hash implementation based on Mike's xxhashlite\"), person(given = \"Yann\", family = \"Collet\", role = \"cph\", comment = \"Author of the embedded xxHash library\"), person(given = \"Posit, PBC\", role = c(\"cph\", \"fnd\")) )", + "License": "MIT + file LICENSE", + "ByteCompile": "true", + "Biarch": "true", + "Depends": [ + "R (>= 3.5.0)" + ], + "Imports": [ + "utils" + ], + "Suggests": [ + "cli (>= 3.1.0)", + "covr", + "crayon", + "desc", + "fs", + "glue", + "knitr", + "magrittr", + "methods", + "pillar", + "pkgload", + "rmarkdown", + "stats", + "testthat (>= 3.2.0)", + "tibble", + "usethis", + "vctrs (>= 0.2.3)", + "withr" + ], + "Enhances": [ + "winch" + ], + "Encoding": "UTF-8", + "RoxygenNote": "7.3.2", + "URL": "https://rlang.r-lib.org, https://github.com/r-lib/rlang", + "BugReports": "https://github.com/r-lib/rlang/issues", + "Config/build/compilation-database": "true", + "Config/testthat/edition": "3", + "Config/Needs/website": "dplyr, tidyverse/tidytemplate", + "NeedsCompilation": "yes", + "Author": "Lionel Henry [aut, cre], Hadley Wickham [aut], mikefc [cph] (Hash implementation based on Mike's xxhashlite), Yann Collet [cph] (Author of the embedded xxHash library), Posit, PBC [cph, fnd]", + "Maintainer": "Lionel Henry ", + "Repository": "CRAN" + }, + "rmarkdown": { + "Package": "rmarkdown", + "Version": "2.29", + "Source": "Repository", + "Type": "Package", + "Title": "Dynamic Documents for R", + "Authors@R": "c( person(\"JJ\", \"Allaire\", , \"jj@posit.co\", role = \"aut\"), person(\"Yihui\", \"Xie\", , \"xie@yihui.name\", role = c(\"aut\", \"cre\"), comment = c(ORCID = \"0000-0003-0645-5666\")), person(\"Christophe\", \"Dervieux\", , \"cderv@posit.co\", role = \"aut\", comment = c(ORCID = \"0000-0003-4474-2498\")), person(\"Jonathan\", \"McPherson\", , \"jonathan@posit.co\", role = \"aut\"), person(\"Javier\", \"Luraschi\", role = \"aut\"), person(\"Kevin\", \"Ushey\", , \"kevin@posit.co\", role = \"aut\"), person(\"Aron\", \"Atkins\", , \"aron@posit.co\", role = \"aut\"), person(\"Hadley\", \"Wickham\", , \"hadley@posit.co\", role = \"aut\"), person(\"Joe\", \"Cheng\", , \"joe@posit.co\", role = \"aut\"), person(\"Winston\", \"Chang\", , \"winston@posit.co\", role = \"aut\"), person(\"Richard\", \"Iannone\", , \"rich@posit.co\", role = \"aut\", comment = c(ORCID = \"0000-0003-3925-190X\")), person(\"Andrew\", \"Dunning\", role = \"ctb\", comment = c(ORCID = \"0000-0003-0464-5036\")), person(\"Atsushi\", \"Yasumoto\", role = c(\"ctb\", \"cph\"), comment = c(ORCID = \"0000-0002-8335-495X\", cph = \"Number sections Lua filter\")), person(\"Barret\", \"Schloerke\", role = \"ctb\"), person(\"Carson\", \"Sievert\", role = \"ctb\", comment = c(ORCID = \"0000-0002-4958-2844\")), person(\"Devon\", \"Ryan\", , \"dpryan79@gmail.com\", role = \"ctb\", comment = c(ORCID = \"0000-0002-8549-0971\")), person(\"Frederik\", \"Aust\", , \"frederik.aust@uni-koeln.de\", role = \"ctb\", comment = c(ORCID = \"0000-0003-4900-788X\")), person(\"Jeff\", \"Allen\", , \"jeff@posit.co\", role = \"ctb\"), person(\"JooYoung\", \"Seo\", role = \"ctb\", comment = c(ORCID = \"0000-0002-4064-6012\")), person(\"Malcolm\", \"Barrett\", role = \"ctb\"), person(\"Rob\", \"Hyndman\", , \"Rob.Hyndman@monash.edu\", role = \"ctb\"), person(\"Romain\", \"Lesur\", role = \"ctb\"), person(\"Roy\", \"Storey\", role = \"ctb\"), person(\"Ruben\", \"Arslan\", , \"ruben.arslan@uni-goettingen.de\", role = \"ctb\"), person(\"Sergio\", \"Oller\", role = \"ctb\"), person(given = \"Posit Software, PBC\", role = c(\"cph\", \"fnd\")), person(, \"jQuery UI contributors\", role = c(\"ctb\", \"cph\"), comment = \"jQuery UI library; authors listed in inst/rmd/h/jqueryui/AUTHORS.txt\"), person(\"Mark\", \"Otto\", role = \"ctb\", comment = \"Bootstrap library\"), person(\"Jacob\", \"Thornton\", role = \"ctb\", comment = \"Bootstrap library\"), person(, \"Bootstrap contributors\", role = \"ctb\", comment = \"Bootstrap library\"), person(, \"Twitter, Inc\", role = \"cph\", comment = \"Bootstrap library\"), person(\"Alexander\", \"Farkas\", role = c(\"ctb\", \"cph\"), comment = \"html5shiv library\"), person(\"Scott\", \"Jehl\", role = c(\"ctb\", \"cph\"), comment = \"Respond.js library\"), person(\"Ivan\", \"Sagalaev\", role = c(\"ctb\", \"cph\"), comment = \"highlight.js library\"), person(\"Greg\", \"Franko\", role = c(\"ctb\", \"cph\"), comment = \"tocify library\"), person(\"John\", \"MacFarlane\", role = c(\"ctb\", \"cph\"), comment = \"Pandoc templates\"), person(, \"Google, Inc.\", role = c(\"ctb\", \"cph\"), comment = \"ioslides library\"), person(\"Dave\", \"Raggett\", role = \"ctb\", comment = \"slidy library\"), person(, \"W3C\", role = \"cph\", comment = \"slidy library\"), person(\"Dave\", \"Gandy\", role = c(\"ctb\", \"cph\"), comment = \"Font-Awesome\"), person(\"Ben\", \"Sperry\", role = \"ctb\", comment = \"Ionicons\"), person(, \"Drifty\", role = \"cph\", comment = \"Ionicons\"), person(\"Aidan\", \"Lister\", role = c(\"ctb\", \"cph\"), comment = \"jQuery StickyTabs\"), person(\"Benct Philip\", \"Jonsson\", role = c(\"ctb\", \"cph\"), comment = \"pagebreak Lua filter\"), person(\"Albert\", \"Krewinkel\", role = c(\"ctb\", \"cph\"), comment = \"pagebreak Lua filter\") )", + "Description": "Convert R Markdown documents into a variety of formats.", + "License": "GPL-3", + "URL": "https://github.com/rstudio/rmarkdown, https://pkgs.rstudio.com/rmarkdown/", + "BugReports": "https://github.com/rstudio/rmarkdown/issues", + "Depends": [ + "R (>= 3.0)" + ], + "Imports": [ + "bslib (>= 0.2.5.1)", + "evaluate (>= 0.13)", + "fontawesome (>= 0.5.0)", + "htmltools (>= 0.5.1)", + "jquerylib", + "jsonlite", + "knitr (>= 1.43)", + "methods", + "tinytex (>= 0.31)", + "tools", + "utils", + "xfun (>= 0.36)", + "yaml (>= 2.1.19)" + ], + "Suggests": [ + "digest", + "dygraphs", + "fs", + "rsconnect", + "downlit (>= 0.4.0)", + "katex (>= 1.4.0)", + "sass (>= 0.4.0)", + "shiny (>= 1.6.0)", + "testthat (>= 3.0.3)", + "tibble", + "vctrs", + "cleanrmd", + "withr (>= 2.4.2)", + "xml2" + ], + "VignetteBuilder": "knitr", + "Config/Needs/website": "rstudio/quillt, pkgdown", + "Config/testthat/edition": "3", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.2", + "SystemRequirements": "pandoc (>= 1.14) - http://pandoc.org", + "NeedsCompilation": "no", + "Author": "JJ Allaire [aut], Yihui Xie [aut, cre] (), Christophe Dervieux [aut] (), Jonathan McPherson [aut], Javier Luraschi [aut], Kevin Ushey [aut], Aron Atkins [aut], Hadley Wickham [aut], Joe Cheng [aut], Winston Chang [aut], Richard Iannone [aut] (), Andrew Dunning [ctb] (), Atsushi Yasumoto [ctb, cph] (, Number sections Lua filter), Barret Schloerke [ctb], Carson Sievert [ctb] (), Devon Ryan [ctb] (), Frederik Aust [ctb] (), Jeff Allen [ctb], JooYoung Seo [ctb] (), Malcolm Barrett [ctb], Rob Hyndman [ctb], Romain Lesur [ctb], Roy Storey [ctb], Ruben Arslan [ctb], Sergio Oller [ctb], Posit Software, PBC [cph, fnd], jQuery UI contributors [ctb, cph] (jQuery UI library; authors listed in inst/rmd/h/jqueryui/AUTHORS.txt), Mark Otto [ctb] (Bootstrap library), Jacob Thornton [ctb] (Bootstrap library), Bootstrap contributors [ctb] (Bootstrap library), Twitter, Inc [cph] (Bootstrap library), Alexander Farkas [ctb, cph] (html5shiv library), Scott Jehl [ctb, cph] (Respond.js library), Ivan Sagalaev [ctb, cph] (highlight.js library), Greg Franko [ctb, cph] (tocify library), John MacFarlane [ctb, cph] (Pandoc templates), Google, Inc. [ctb, cph] (ioslides library), Dave Raggett [ctb] (slidy library), W3C [cph] (slidy library), Dave Gandy [ctb, cph] (Font-Awesome), Ben Sperry [ctb] (Ionicons), Drifty [cph] (Ionicons), Aidan Lister [ctb, cph] (jQuery StickyTabs), Benct Philip Jonsson [ctb, cph] (pagebreak Lua filter), Albert Krewinkel [ctb, cph] (pagebreak Lua filter)", + "Maintainer": "Yihui Xie ", + "Repository": "CRAN" + }, + "rpart": { + "Package": "rpart", + "Version": "4.1.19", + "Source": "Repository", + "Priority": "recommended", + "Date": "2022-10-21", + "Authors@R": "c(person(\"Terry\", \"Therneau\", role = \"aut\", email = \"therneau@mayo.edu\"), person(\"Beth\", \"Atkinson\", role = c(\"aut\", \"cre\"), email = \"atkinson@mayo.edu\"), person(\"Brian\", \"Ripley\", role = \"trl\", email = \"ripley@stats.ox.ac.uk\", comment = \"producer of the initial R port, maintainer 1999-2017\"))", + "Description": "Recursive partitioning for classification, regression and survival trees. An implementation of most of the functionality of the 1984 book by Breiman, Friedman, Olshen and Stone.", + "Title": "Recursive Partitioning and Regression Trees", + "Depends": [ + "R (>= 2.15.0)", + "graphics", + "stats", + "grDevices" + ], + "Suggests": [ + "survival" + ], + "License": "GPL-2 | GPL-3", + "LazyData": "yes", + "ByteCompile": "yes", + "NeedsCompilation": "yes", + "Author": "Terry Therneau [aut], Beth Atkinson [aut, cre], Brian Ripley [trl] (producer of the initial R port, maintainer 1999-2017)", + "Maintainer": "Beth Atkinson ", + "Repository": "CRAN", + "URL": "https://github.com/bethatkinson/rpart, https://cran.r-project.org/package=rpart", + "BugReports": "https://github.com/bethatkinson/rpart/issues" + }, + "rprojroot": { + "Package": "rprojroot", + "Version": "2.1.0", + "Source": "Repository", + "Title": "Finding Files in Project Subdirectories", + "Authors@R": "person(given = \"Kirill\", family = \"M\\u00fcller\", role = c(\"aut\", \"cre\"), email = \"kirill@cynkra.com\", comment = c(ORCID = \"0000-0002-1416-3412\"))", + "Description": "Robust, reliable and flexible paths to files below a project root. The 'root' of a project is defined as a directory that matches a certain criterion, e.g., it contains a certain regular file.", + "License": "MIT + file LICENSE", + "URL": "https://rprojroot.r-lib.org/, https://github.com/r-lib/rprojroot", + "BugReports": "https://github.com/r-lib/rprojroot/issues", + "Depends": [ + "R (>= 3.0.0)" + ], + "Suggests": [ + "covr", + "knitr", + "lifecycle", + "rlang", + "rmarkdown", + "testthat (>= 3.2.0)", + "withr" + ], + "VignetteBuilder": "knitr", + "Config/testthat/edition": "3", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.2.9000", + "Config/autostyle/scope": "line_breaks", + "Config/autostyle/strict": "true", + "Config/Needs/website": "tidyverse/tidytemplate", + "NeedsCompilation": "no", + "Author": "Kirill Müller [aut, cre] (ORCID: )", + "Maintainer": "Kirill Müller ", + "Repository": "CRAN" + }, + "rsample": { + "Package": "rsample", + "Version": "1.3.1", + "Source": "Repository", + "Title": "General Resampling Infrastructure", + "Authors@R": "c( person(\"Hannah\", \"Frick\", , \"hannah@posit.co\", role = c(\"aut\", \"cre\"), comment = c(ORCID = \"0000-0002-6049-5258\")), person(\"Fanny\", \"Chow\", , \"fannybchow@gmail.com\", role = \"aut\"), person(\"Max\", \"Kuhn\", , \"max@posit.co\", role = \"aut\"), person(\"Michael\", \"Mahoney\", , \"mike.mahoney.218@gmail.com\", role = \"aut\", comment = c(ORCID = \"0000-0003-2402-304X\")), person(\"Julia\", \"Silge\", , \"julia.silge@posit.co\", role = \"aut\", comment = c(ORCID = \"0000-0002-3671-836X\")), person(\"Hadley\", \"Wickham\", , \"hadley@posit.co\", role = \"aut\"), person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\"), comment = c(ROR = \"03wc8by49\")) )", + "Description": "Classes and functions to create and summarize different types of resampling objects (e.g. bootstrap, cross-validation).", + "License": "MIT + file LICENSE", + "URL": "https://rsample.tidymodels.org, https://github.com/tidymodels/rsample", + "BugReports": "https://github.com/tidymodels/rsample/issues", + "Depends": [ + "R (>= 4.1)" + ], + "Imports": [ + "cli", + "dplyr (>= 1.1.1)", + "furrr", + "generics", + "glue", + "lifecycle", + "methods", + "pillar", + "purrr (>= 1.0.0)", + "rlang (>= 1.1.0)", + "slider (>= 0.1.5)", + "tibble", + "tidyr", + "tidyselect", + "vctrs (>= 0.5.0)" + ], + "Suggests": [ + "broom", + "covr", + "ggplot2", + "knitr", + "modeldata", + "recipes (>= 0.1.4)", + "rmarkdown", + "stats", + "testthat (>= 3.0.0)", + "utils", + "whisker", + "withr", + "xml2" + ], + "VignetteBuilder": "knitr", + "Config/Needs/website": "GGally, nlstools, tidymodels, tidyverse/tidytemplate", + "Config/testthat/edition": "3", + "Config/usethis/last-upkeep": "2025-04-23", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.2", + "NeedsCompilation": "no", + "Author": "Hannah Frick [aut, cre] (ORCID: ), Fanny Chow [aut], Max Kuhn [aut], Michael Mahoney [aut] (ORCID: ), Julia Silge [aut] (ORCID: ), Hadley Wickham [aut], Posit Software, PBC [cph, fnd] (ROR: )", + "Maintainer": "Hannah Frick ", + "Repository": "CRAN" + }, + "rstudioapi": { + "Package": "rstudioapi", + "Version": "0.17.1", + "Source": "Repository", + "Title": "Safely Access the RStudio API", + "Description": "Access the RStudio API (if available) and provide informative error messages when it's not.", + "Authors@R": "c( person(\"Kevin\", \"Ushey\", role = c(\"aut\", \"cre\"), email = \"kevin@rstudio.com\"), person(\"JJ\", \"Allaire\", role = c(\"aut\"), email = \"jj@posit.co\"), person(\"Hadley\", \"Wickham\", role = c(\"aut\"), email = \"hadley@posit.co\"), person(\"Gary\", \"Ritchie\", role = c(\"aut\"), email = \"gary@posit.co\"), person(family = \"RStudio\", role = \"cph\") )", + "Maintainer": "Kevin Ushey ", + "License": "MIT + file LICENSE", + "URL": "https://rstudio.github.io/rstudioapi/, https://github.com/rstudio/rstudioapi", + "BugReports": "https://github.com/rstudio/rstudioapi/issues", + "RoxygenNote": "7.3.2", + "Suggests": [ + "testthat", + "knitr", + "rmarkdown", + "clipr", + "covr" + ], + "VignetteBuilder": "knitr", + "Encoding": "UTF-8", + "NeedsCompilation": "no", + "Author": "Kevin Ushey [aut, cre], JJ Allaire [aut], Hadley Wickham [aut], Gary Ritchie [aut], RStudio [cph]", + "Repository": "CRAN" + }, + "sass": { + "Package": "sass", + "Version": "0.4.10", + "Source": "Repository", + "Type": "Package", + "Title": "Syntactically Awesome Style Sheets ('Sass')", + "Description": "An 'SCSS' compiler, powered by the 'LibSass' library. With this, R developers can use variables, inheritance, and functions to generate dynamic style sheets. The package uses the 'Sass CSS' extension language, which is stable, powerful, and CSS compatible.", + "Authors@R": "c( person(\"Joe\", \"Cheng\", , \"joe@rstudio.com\", \"aut\"), person(\"Timothy\", \"Mastny\", , \"tim.mastny@gmail.com\", \"aut\"), person(\"Richard\", \"Iannone\", , \"rich@rstudio.com\", \"aut\", comment = c(ORCID = \"0000-0003-3925-190X\")), person(\"Barret\", \"Schloerke\", , \"barret@rstudio.com\", \"aut\", comment = c(ORCID = \"0000-0001-9986-114X\")), person(\"Carson\", \"Sievert\", , \"carson@rstudio.com\", c(\"aut\", \"cre\"), comment = c(ORCID = \"0000-0002-4958-2844\")), person(\"Christophe\", \"Dervieux\", , \"cderv@rstudio.com\", c(\"ctb\"), comment = c(ORCID = \"0000-0003-4474-2498\")), person(family = \"RStudio\", role = c(\"cph\", \"fnd\")), person(family = \"Sass Open Source Foundation\", role = c(\"ctb\", \"cph\"), comment = \"LibSass library\"), person(\"Greter\", \"Marcel\", role = c(\"ctb\", \"cph\"), comment = \"LibSass library\"), person(\"Mifsud\", \"Michael\", role = c(\"ctb\", \"cph\"), comment = \"LibSass library\"), person(\"Hampton\", \"Catlin\", role = c(\"ctb\", \"cph\"), comment = \"LibSass library\"), person(\"Natalie\", \"Weizenbaum\", role = c(\"ctb\", \"cph\"), comment = \"LibSass library\"), person(\"Chris\", \"Eppstein\", role = c(\"ctb\", \"cph\"), comment = \"LibSass library\"), person(\"Adams\", \"Joseph\", role = c(\"ctb\", \"cph\"), comment = \"json.cpp\"), person(\"Trifunovic\", \"Nemanja\", role = c(\"ctb\", \"cph\"), comment = \"utf8.h\") )", + "License": "MIT + file LICENSE", + "URL": "https://rstudio.github.io/sass/, https://github.com/rstudio/sass", + "BugReports": "https://github.com/rstudio/sass/issues", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.2", + "SystemRequirements": "GNU make", + "Imports": [ + "fs (>= 1.2.4)", + "rlang (>= 0.4.10)", + "htmltools (>= 0.5.1)", + "R6", + "rappdirs" + ], + "Suggests": [ + "testthat", + "knitr", + "rmarkdown", + "withr", + "shiny", + "curl" + ], + "VignetteBuilder": "knitr", + "Config/testthat/edition": "3", + "NeedsCompilation": "yes", + "Author": "Joe Cheng [aut], Timothy Mastny [aut], Richard Iannone [aut] (), Barret Schloerke [aut] (), Carson Sievert [aut, cre] (), Christophe Dervieux [ctb] (), RStudio [cph, fnd], Sass Open Source Foundation [ctb, cph] (LibSass library), Greter Marcel [ctb, cph] (LibSass library), Mifsud Michael [ctb, cph] (LibSass library), Hampton Catlin [ctb, cph] (LibSass library), Natalie Weizenbaum [ctb, cph] (LibSass library), Chris Eppstein [ctb, cph] (LibSass library), Adams Joseph [ctb, cph] (json.cpp), Trifunovic Nemanja [ctb, cph] (utf8.h)", + "Maintainer": "Carson Sievert ", + "Repository": "CRAN" + }, + "scales": { + "Package": "scales", + "Version": "1.4.0", + "Source": "Repository", + "Title": "Scale Functions for Visualization", + "Authors@R": "c( person(\"Hadley\", \"Wickham\", , \"hadley@posit.co\", role = \"aut\"), person(\"Thomas Lin\", \"Pedersen\", , \"thomas.pedersen@posit.co\", role = c(\"cre\", \"aut\"), comment = c(ORCID = \"0000-0002-5147-4711\")), person(\"Dana\", \"Seidel\", role = \"aut\"), person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\"), comment = c(ROR = \"03wc8by49\")) )", + "Description": "Graphical scales map data to aesthetics, and provide methods for automatically determining breaks and labels for axes and legends.", + "License": "MIT + file LICENSE", + "URL": "https://scales.r-lib.org, https://github.com/r-lib/scales", + "BugReports": "https://github.com/r-lib/scales/issues", + "Depends": [ + "R (>= 4.1)" + ], + "Imports": [ + "cli", + "farver (>= 2.0.3)", + "glue", + "labeling", + "lifecycle", + "R6", + "RColorBrewer", + "rlang (>= 1.1.0)", + "viridisLite" + ], + "Suggests": [ + "bit64", + "covr", + "dichromat", + "ggplot2", + "hms (>= 0.5.0)", + "stringi", + "testthat (>= 3.0.0)" + ], + "Config/Needs/website": "tidyverse/tidytemplate", + "Config/testthat/edition": "3", + "Config/usethis/last-upkeep": "2025-04-23", + "Encoding": "UTF-8", + "LazyLoad": "yes", + "RoxygenNote": "7.3.2", + "NeedsCompilation": "no", + "Author": "Hadley Wickham [aut], Thomas Lin Pedersen [cre, aut] (), Dana Seidel [aut], Posit Software, PBC [cph, fnd] (03wc8by49)", + "Maintainer": "Thomas Lin Pedersen ", + "Repository": "https://p3m.dev/cran/latest" + }, + "shape": { + "Package": "shape", + "Version": "1.4.6.1", + "Source": "Repository", + "Title": "Functions for Plotting Graphical Shapes, Colors", + "Author": "Karline Soetaert ", + "Maintainer": "Karline Soetaert ", + "Depends": [ + "R (>= 2.01)" + ], + "Imports": [ + "stats", + "graphics", + "grDevices" + ], + "Description": "Functions for plotting graphical shapes such as ellipses, circles, cylinders, arrows, ...", + "License": "GPL (>= 3)", + "NeedsCompilation": "no", + "Repository": "CRAN", + "Encoding": "UTF-8" + }, + "shiny": { + "Package": "shiny", + "Version": "1.11.1", + "Source": "Repository", + "Type": "Package", + "Title": "Web Application Framework for R", + "Authors@R": "c( person(\"Winston\", \"Chang\", role = c(\"aut\", \"cre\"), email = \"winston@posit.co\", comment = c(ORCID = \"0000-0002-1576-2126\")), person(\"Joe\", \"Cheng\", role = \"aut\", email = \"joe@posit.co\"), person(\"JJ\", \"Allaire\", role = \"aut\", email = \"jj@posit.co\"), person(\"Carson\", \"Sievert\", role = \"aut\", email = \"carson@posit.co\", comment = c(ORCID = \"0000-0002-4958-2844\")), person(\"Barret\", \"Schloerke\", role = \"aut\", email = \"barret@posit.co\", comment = c(ORCID = \"0000-0001-9986-114X\")), person(\"Yihui\", \"Xie\", role = \"aut\", email = \"yihui@posit.co\"), person(\"Jeff\", \"Allen\", role = \"aut\"), person(\"Jonathan\", \"McPherson\", role = \"aut\", email = \"jonathan@posit.co\"), person(\"Alan\", \"Dipert\", role = \"aut\"), person(\"Barbara\", \"Borges\", role = \"aut\"), person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\")), person(family = \"jQuery Foundation\", role = \"cph\", comment = \"jQuery library and jQuery UI library\"), person(family = \"jQuery contributors\", role = c(\"ctb\", \"cph\"), comment = \"jQuery library; authors listed in inst/www/shared/jquery-AUTHORS.txt\"), person(family = \"jQuery UI contributors\", role = c(\"ctb\", \"cph\"), comment = \"jQuery UI library; authors listed in inst/www/shared/jqueryui/AUTHORS.txt\"), person(\"Mark\", \"Otto\", role = \"ctb\", comment = \"Bootstrap library\"), person(\"Jacob\", \"Thornton\", role = \"ctb\", comment = \"Bootstrap library\"), person(family = \"Bootstrap contributors\", role = \"ctb\", comment = \"Bootstrap library\"), person(family = \"Twitter, Inc\", role = \"cph\", comment = \"Bootstrap library\"), person(\"Prem Nawaz\", \"Khan\", role = \"ctb\", comment = \"Bootstrap accessibility plugin\"), person(\"Victor\", \"Tsaran\", role = \"ctb\", comment = \"Bootstrap accessibility plugin\"), person(\"Dennis\", \"Lembree\", role = \"ctb\", comment = \"Bootstrap accessibility plugin\"), person(\"Srinivasu\", \"Chakravarthula\", role = \"ctb\", comment = \"Bootstrap accessibility plugin\"), person(\"Cathy\", \"O'Connor\", role = \"ctb\", comment = \"Bootstrap accessibility plugin\"), person(family = \"PayPal, Inc\", role = \"cph\", comment = \"Bootstrap accessibility plugin\"), person(\"Stefan\", \"Petre\", role = c(\"ctb\", \"cph\"), comment = \"Bootstrap-datepicker library\"), person(\"Andrew\", \"Rowls\", role = c(\"ctb\", \"cph\"), comment = \"Bootstrap-datepicker library\"), person(\"Brian\", \"Reavis\", role = c(\"ctb\", \"cph\"), comment = \"selectize.js library\"), person(\"Salmen\", \"Bejaoui\", role = c(\"ctb\", \"cph\"), comment = \"selectize-plugin-a11y library\"), person(\"Denis\", \"Ineshin\", role = c(\"ctb\", \"cph\"), comment = \"ion.rangeSlider library\"), person(\"Sami\", \"Samhuri\", role = c(\"ctb\", \"cph\"), comment = \"Javascript strftime library\"), person(family = \"SpryMedia Limited\", role = c(\"ctb\", \"cph\"), comment = \"DataTables library\"), person(\"John\", \"Fraser\", role = c(\"ctb\", \"cph\"), comment = \"showdown.js library\"), person(\"John\", \"Gruber\", role = c(\"ctb\", \"cph\"), comment = \"showdown.js library\"), person(\"Ivan\", \"Sagalaev\", role = c(\"ctb\", \"cph\"), comment = \"highlight.js library\"), person(given = \"R Core Team\", role = c(\"ctb\", \"cph\"), comment = \"tar implementation from R\") )", + "Description": "Makes it incredibly easy to build interactive web applications with R. Automatic \"reactive\" binding between inputs and outputs and extensive prebuilt widgets make it possible to build beautiful, responsive, and powerful applications with minimal effort.", + "License": "GPL-3 | file LICENSE", + "Depends": [ + "R (>= 3.0.2)", + "methods" + ], + "Imports": [ + "utils", + "grDevices", + "httpuv (>= 1.5.2)", + "mime (>= 0.3)", + "jsonlite (>= 0.9.16)", + "xtable", + "fontawesome (>= 0.4.0)", + "htmltools (>= 0.5.4)", + "R6 (>= 2.0)", + "sourcetools", + "later (>= 1.0.0)", + "promises (>= 1.3.2)", + "tools", + "cli", + "rlang (>= 0.4.10)", + "fastmap (>= 1.1.1)", + "withr", + "commonmark (>= 1.7)", + "glue (>= 1.3.2)", + "bslib (>= 0.6.0)", + "cachem (>= 1.1.0)", + "lifecycle (>= 0.2.0)" + ], + "Suggests": [ + "coro (>= 1.1.0)", + "datasets", + "DT", + "Cairo (>= 1.5-5)", + "testthat (>= 3.2.1)", + "knitr (>= 1.6)", + "markdown", + "rmarkdown", + "ggplot2", + "reactlog (>= 1.0.0)", + "magrittr", + "yaml", + "mirai", + "future", + "dygraphs", + "ragg", + "showtext", + "sass", + "watcher" + ], + "URL": "https://shiny.posit.co/, https://github.com/rstudio/shiny", + "BugReports": "https://github.com/rstudio/shiny/issues", + "Collate": "'globals.R' 'app-state.R' 'app_template.R' 'bind-cache.R' 'bind-event.R' 'bookmark-state-local.R' 'bookmark-state.R' 'bootstrap-deprecated.R' 'bootstrap-layout.R' 'conditions.R' 'map.R' 'utils.R' 'bootstrap.R' 'busy-indicators-spinners.R' 'busy-indicators.R' 'cache-utils.R' 'deprecated.R' 'devmode.R' 'diagnose.R' 'extended-task.R' 'fileupload.R' 'graph.R' 'reactives.R' 'reactive-domains.R' 'history.R' 'hooks.R' 'html-deps.R' 'image-interact-opts.R' 'image-interact.R' 'imageutils.R' 'input-action.R' 'input-checkbox.R' 'input-checkboxgroup.R' 'input-date.R' 'input-daterange.R' 'input-file.R' 'input-numeric.R' 'input-password.R' 'input-radiobuttons.R' 'input-select.R' 'input-slider.R' 'input-submit.R' 'input-text.R' 'input-textarea.R' 'input-utils.R' 'insert-tab.R' 'insert-ui.R' 'jqueryui.R' 'knitr.R' 'middleware-shiny.R' 'middleware.R' 'timer.R' 'shiny.R' 'mock-session.R' 'modal.R' 'modules.R' 'notifications.R' 'priorityqueue.R' 'progress.R' 'react.R' 'reexports.R' 'render-cached-plot.R' 'render-plot.R' 'render-table.R' 'run-url.R' 'runapp.R' 'serializers.R' 'server-input-handlers.R' 'server-resource-paths.R' 'server.R' 'shiny-options.R' 'shiny-package.R' 'shinyapp.R' 'shinyui.R' 'shinywrappers.R' 'showcase.R' 'snapshot.R' 'staticimports.R' 'tar.R' 'test-export.R' 'test-server.R' 'test.R' 'update-input.R' 'utils-lang.R' 'version_bs_date_picker.R' 'version_ion_range_slider.R' 'version_jquery.R' 'version_jqueryui.R' 'version_selectize.R' 'version_strftime.R' 'viewer.R'", + "RoxygenNote": "7.3.2", + "Encoding": "UTF-8", + "Config/testthat/edition": "3", + "Config/Needs/check": "shinytest2", + "NeedsCompilation": "no", + "Author": "Winston Chang [aut, cre] (ORCID: ), Joe Cheng [aut], JJ Allaire [aut], Carson Sievert [aut] (ORCID: ), Barret Schloerke [aut] (ORCID: ), Yihui Xie [aut], Jeff Allen [aut], Jonathan McPherson [aut], Alan Dipert [aut], Barbara Borges [aut], Posit Software, PBC [cph, fnd], jQuery Foundation [cph] (jQuery library and jQuery UI library), jQuery contributors [ctb, cph] (jQuery library; authors listed in inst/www/shared/jquery-AUTHORS.txt), jQuery UI contributors [ctb, cph] (jQuery UI library; authors listed in inst/www/shared/jqueryui/AUTHORS.txt), Mark Otto [ctb] (Bootstrap library), Jacob Thornton [ctb] (Bootstrap library), Bootstrap contributors [ctb] (Bootstrap library), Twitter, Inc [cph] (Bootstrap library), Prem Nawaz Khan [ctb] (Bootstrap accessibility plugin), Victor Tsaran [ctb] (Bootstrap accessibility plugin), Dennis Lembree [ctb] (Bootstrap accessibility plugin), Srinivasu Chakravarthula [ctb] (Bootstrap accessibility plugin), Cathy O'Connor [ctb] (Bootstrap accessibility plugin), PayPal, Inc [cph] (Bootstrap accessibility plugin), Stefan Petre [ctb, cph] (Bootstrap-datepicker library), Andrew Rowls [ctb, cph] (Bootstrap-datepicker library), Brian Reavis [ctb, cph] (selectize.js library), Salmen Bejaoui [ctb, cph] (selectize-plugin-a11y library), Denis Ineshin [ctb, cph] (ion.rangeSlider library), Sami Samhuri [ctb, cph] (Javascript strftime library), SpryMedia Limited [ctb, cph] (DataTables library), John Fraser [ctb, cph] (showdown.js library), John Gruber [ctb, cph] (showdown.js library), Ivan Sagalaev [ctb, cph] (highlight.js library), R Core Team [ctb, cph] (tar implementation from R)", + "Maintainer": "Winston Chang ", + "Repository": "CRAN" + }, + "shinyWidgets": { + "Package": "shinyWidgets", + "Version": "0.9.0", + "Source": "Repository", + "Title": "Custom Inputs Widgets for Shiny", + "Authors@R": "c( person(\"Victor\", \"Perrier\", email = \"victor.perrier@dreamrs.fr\", role = c(\"aut\", \"cre\", \"cph\")), person(\"Fanny\", \"Meyer\", role = \"aut\"), person(\"David\", \"Granjon\", role = \"aut\"), person(\"Ian\", \"Fellows\", role = \"ctb\", comment = \"Methods for mutating vertical tabs & updateMultiInput\"), person(\"Wil\", \"Davis\", role = \"ctb\", comment = \"numericRangeInput function\"), person(\"Spencer\", \"Matthews\", role = \"ctb\", comment = \"autoNumeric methods\"), person(family = \"JavaScript and CSS libraries authors\", role = c(\"ctb\", \"cph\"), comment = \"All authors are listed in LICENSE.md\") )", + "Description": "Collection of custom input controls and user interface components for 'Shiny' applications. Give your applications a unique and colorful style !", + "URL": "https://github.com/dreamRs/shinyWidgets, https://dreamrs.github.io/shinyWidgets/", + "BugReports": "https://github.com/dreamRs/shinyWidgets/issues", + "License": "GPL-3", + "Encoding": "UTF-8", + "LazyData": "true", + "RoxygenNote": "7.3.2", + "Depends": [ + "R (>= 3.1.0)" + ], + "Imports": [ + "bslib", + "sass", + "shiny (>= 1.6.0)", + "htmltools (>= 0.5.1)", + "jsonlite", + "grDevices", + "rlang" + ], + "Suggests": [ + "testthat", + "covr", + "ggplot2", + "DT", + "scales", + "shinydashboard", + "shinydashboardPlus" + ], + "NeedsCompilation": "no", + "Author": "Victor Perrier [aut, cre, cph], Fanny Meyer [aut], David Granjon [aut], Ian Fellows [ctb] (Methods for mutating vertical tabs & updateMultiInput), Wil Davis [ctb] (numericRangeInput function), Spencer Matthews [ctb] (autoNumeric methods), JavaScript and CSS libraries authors [ctb, cph] (All authors are listed in LICENSE.md)", + "Maintainer": "Victor Perrier ", + "Repository": "CRAN" + }, + "shinyjs": { + "Package": "shinyjs", + "Version": "2.1.0", + "Source": "Repository", + "Title": "Easily Improve the User Experience of Your Shiny Apps in Seconds", + "Authors@R": "person(\"Dean\", \"Attali\", email = \"daattali@gmail.com\", role = c(\"aut\", \"cre\"), comment= c(ORCID=\"0000-0002-5645-3493\"))", + "Description": "Perform common useful JavaScript operations in Shiny apps that will greatly improve your apps without having to know any JavaScript. Examples include: hiding an element, disabling an input, resetting an input back to its original value, delaying code execution by a few seconds, and many more useful functions for both the end user and the developer. 'shinyjs' can also be used to easily call your own custom JavaScript functions from R.", + "URL": "https://deanattali.com/shinyjs/", + "BugReports": "https://github.com/daattali/shinyjs/issues", + "Depends": [ + "R (>= 3.1.0)" + ], + "Imports": [ + "digest (>= 0.6.8)", + "jsonlite", + "shiny (>= 1.0.0)" + ], + "Suggests": [ + "htmltools (>= 0.2.9)", + "knitr (>= 1.7)", + "rmarkdown", + "shinyAce", + "shinydisconnect", + "testthat (>= 0.9.1)" + ], + "License": "MIT + file LICENSE", + "VignetteBuilder": "knitr", + "RoxygenNote": "7.1.1", + "Encoding": "UTF-8", + "NeedsCompilation": "no", + "Author": "Dean Attali [aut, cre] ()", + "Maintainer": "Dean Attali ", + "Repository": "CRAN" + }, + "shinytest2": { + "Package": "shinytest2", + "Version": "0.4.1", + "Source": "Repository", + "Title": "Testing for Shiny Applications", + "Authors@R": "c( person(\"Barret\", \"Schloerke\", role = c(\"cre\", \"aut\"), email = \"barret@posit.co\", comment = c(ORCID = \"0000-0001-9986-114X\")), person(family = \"Posit Software, PBC\", role = c(\"cph\", \"fnd\")), person(\"Winston\", \"Chang\", role =\"ctb\", email = \"winston@posit.co\", comment = \"Original author to rstudio/shinytest\"), person(\"Gábor\", \"Csárdi\", role = \"ctb\", email = \"gabor@posit.co\", comment = \"Original author to rstudio/shinytest\"), person(\"Hadley\", \"Wickham\", role = \"ctb\", email = \"hadley@posit.co\", comment = \"Original author to rstudio/shinytest\"), person(family = \"Mango Solutions\", role = c(\"cph\", \"ccp\"), comment = \"Original author to rstudio/shinytest\") )", + "Description": "Automated unit testing of Shiny applications through a headless 'Chromium' browser.", + "License": "MIT + file LICENSE", + "Encoding": "UTF-8", + "Language": "en-US", + "RoxygenNote": "7.3.2", + "URL": "https://rstudio.github.io/shinytest2/, https://github.com/rstudio/shinytest2", + "BugReports": "https://github.com/rstudio/shinytest2/issues", + "VignetteBuilder": "knitr", + "Depends": [ + "testthat (>= 3.1.2)" + ], + "Imports": [ + "R6 (>= 2.4.0)", + "callr", + "checkmate (>= 2.0.0)", + "chromote (>= 0.5.0)", + "cli", + "fs", + "globals (>= 0.14.0)", + "httr", + "jsonlite", + "pingr", + "rlang (>= 1.0.0)", + "rmarkdown", + "shiny", + "withr", + "lifecycle" + ], + "Suggests": [ + "deSolve", + "diffobj", + "ggplot2", + "knitr", + "plotly", + "png", + "rstudioapi", + "shinyWidgets", + "shinytest (>= 1.5.1)", + "shinyvalidate (>= 0.1.2)", + "showimage", + "usethis", + "vdiffr (>= 1.0.0)", + "spelling" + ], + "Config/Needs/check": "rstudio/shiny, bslib", + "Config/Needs/website": "pkgdown, tidyverse/tidytemplate", + "Config/testthat/edition": "3", + "Collate": "'R6-helper.R' 'app-driver-chromote.R' 'app-driver-dir.R' 'app-driver-expect-download.R' 'app-driver-expect-js.R' 'app-driver-expect-screenshot.R' 'app-driver-expect-unique-names.R' 'app-driver-expect-values.R' 'app-driver-get-log.R' 'app-driver-initialize.R' 'app-driver-log-message.R' 'app-driver-message.R' 'app-driver-node.R' 'app-driver-set-inputs.R' 'app-driver-start.R' 'app-driver-stop.R' 'app-driver-timeout.R' 'app-driver-upload-file.R' 'app-driver-variant.R' 'app-driver-wait.R' 'app-driver-window.R' 'app-driver.R' 'chromote-methods.R' 'compare-screenshot-threshold.R' 'cpp11.R' 'expect-snapshot.R' 'expr-recurse.R' 'httr.R' 'migrate.R' 'missing-value.R' 'utils.R' 'platform.R' 'record-test-unique-name.R' 'record-test.R' 'rstudio.R' 'save-app.R' 'shiny-browser.R' 'shinytest2-logs.R' 'shinytest2-package.R' 'test-app.R' 'use.R'", + "LinkingTo": [ + "cpp11" + ], + "NeedsCompilation": "yes", + "Author": "Barret Schloerke [cre, aut] (), Posit Software, PBC [cph, fnd], Winston Chang [ctb] (Original author to rstudio/shinytest), Gábor Csárdi [ctb] (Original author to rstudio/shinytest), Hadley Wickham [ctb] (Original author to rstudio/shinytest), Mango Solutions [cph, ccp] (Original author to rstudio/shinytest)", + "Maintainer": "Barret Schloerke ", + "Repository": "CRAN" + }, + "slider": { + "Package": "slider", + "Version": "0.3.2", + "Source": "Repository", + "Title": "Sliding Window Functions", + "Authors@R": "c( person(\"Davis\", \"Vaughan\", , \"davis@posit.co\", role = c(\"aut\", \"cre\")), person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\")) )", + "Description": "Provides type-stable rolling window functions over any R data type. Cumulative and expanding windows are also supported. For more advanced usage, an index can be used as a secondary vector that defines how sliding windows are to be created.", + "License": "MIT + file LICENSE", + "URL": "https://github.com/r-lib/slider, https://slider.r-lib.org", + "BugReports": "https://github.com/r-lib/slider/issues", + "Depends": [ + "R (>= 4.0.0)" + ], + "Imports": [ + "cli (>= 3.6.1)", + "rlang (>= 1.1.1)", + "vctrs (>= 0.6.3)", + "warp" + ], + "Suggests": [ + "covr", + "dplyr (>= 1.0.0)", + "knitr", + "lubridate", + "rmarkdown", + "testthat (>= 3.0.0)" + ], + "LinkingTo": [ + "vctrs (>= 0.6.3)" + ], + "VignetteBuilder": "knitr", + "Config/build/compilation-database": "true", + "Config/Needs/website": "tidyverse/tidytemplate", + "Config/testthat/edition": "3", + "Config/usethis/last-upkeep": "2024-10-25", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.2", + "Collate": "'arithmetic.R' 'block.R' 'conditions.R' 'hop-common.R' 'hop-index-common.R' 'hop-index.R' 'hop-index2.R' 'hop.R' 'hop2.R' 'phop-index.R' 'phop.R' 'slide-index2.R' 'pslide-index.R' 'slide-period2.R' 'pslide-period.R' 'slide2.R' 'pslide.R' 'segment-tree.R' 'slide-common.R' 'slide-index-common.R' 'slide-index.R' 'slide-period-common.R' 'slide-period.R' 'slide.R' 'slider-package.R' 'summary-index.R' 'summary-slide.R' 'utils.R' 'zzz.R'", + "NeedsCompilation": "yes", + "Author": "Davis Vaughan [aut, cre], Posit Software, PBC [cph, fnd]", + "Maintainer": "Davis Vaughan ", + "Repository": "CRAN" + }, + "sourcetools": { + "Package": "sourcetools", + "Version": "0.1.7-1", + "Source": "Repository", + "Type": "Package", + "Title": "Tools for Reading, Tokenizing and Parsing R Code", + "Author": "Kevin Ushey", + "Maintainer": "Kevin Ushey ", + "Description": "Tools for the reading and tokenization of R code. The 'sourcetools' package provides both an R and C++ interface for the tokenization of R code, and helpers for interacting with the tokenized representation of R code.", + "License": "MIT + file LICENSE", + "Depends": [ + "R (>= 3.0.2)" + ], + "Suggests": [ + "testthat" + ], + "RoxygenNote": "5.0.1", + "BugReports": "https://github.com/kevinushey/sourcetools/issues", + "Encoding": "UTF-8", + "NeedsCompilation": "yes", + "Repository": "CRAN" + }, + "sparsevctrs": { + "Package": "sparsevctrs", + "Version": "0.3.4", + "Source": "Repository", + "Title": "Sparse Vectors for Use in Data Frames", + "Authors@R": "c( person(\"Emil\", \"Hvitfeldt\", , \"emil.hvitfeldt@posit.co\", role = c(\"aut\", \"cre\"), comment = c(ORCID = \"0000-0002-0679-1945\")), person(\"Davis\", \"Vaughan\", , \"davis@posit.co\", role = \"ctb\"), person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\"), comment = c(ROR = \"03wc8by49\")) )", + "Description": "Provides sparse vectors powered by ALTREP (Alternative Representations for R Objects) that behave like regular vectors, and can thus be used in data frames. Also provides tools to convert between sparse matrices and data frames with sparse columns and functions to interact with sparse vectors.", + "License": "MIT + file LICENSE", + "URL": "https://github.com/r-lib/sparsevctrs, https://r-lib.github.io/sparsevctrs/", + "BugReports": "https://github.com/r-lib/sparsevctrs/issues", + "Depends": [ + "R (>= 4.1)" + ], + "Imports": [ + "cli (>= 3.4.0)", + "rlang (>= 1.1.0)", + "vctrs" + ], + "Suggests": [ + "knitr", + "Matrix", + "methods", + "rmarkdown", + "testthat (>= 3.0.0)", + "tibble", + "withr" + ], + "VignetteBuilder": "knitr", + "Config/Needs/website": "tidyverse/tidytemplate, rmarkdown, lobstr, ggplot2, bench, tidyr, ggbeeswarm", + "Config/testthat/edition": "3", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.2", + "Config/usethis/last-upkeep": "2025-05-25", + "NeedsCompilation": "yes", + "Author": "Emil Hvitfeldt [aut, cre] (ORCID: ), Davis Vaughan [ctb], Posit Software, PBC [cph, fnd] (ROR: )", + "Maintainer": "Emil Hvitfeldt ", + "Repository": "CRAN" + }, + "stringi": { + "Package": "stringi", + "Version": "1.8.7", + "Source": "Repository", + "Date": "2025-03-27", + "Title": "Fast and Portable Character String Processing Facilities", + "Description": "A collection of character string/text/natural language processing tools for pattern searching (e.g., with 'Java'-like regular expressions or the 'Unicode' collation algorithm), random string generation, case mapping, string transliteration, concatenation, sorting, padding, wrapping, Unicode normalisation, date-time formatting and parsing, and many more. They are fast, consistent, convenient, and - thanks to 'ICU' (International Components for Unicode) - portable across all locales and platforms. Documentation about 'stringi' is provided via its website at and the paper by Gagolewski (2022, ).", + "URL": "https://stringi.gagolewski.com/, https://github.com/gagolews/stringi, https://icu.unicode.org/", + "BugReports": "https://github.com/gagolews/stringi/issues", + "SystemRequirements": "ICU4C (>= 61, optional)", + "Type": "Package", + "Depends": [ + "R (>= 3.4)" + ], + "Imports": [ + "tools", + "utils", + "stats" + ], + "Biarch": "TRUE", + "License": "file LICENSE", + "Authors@R": "c(person(given = \"Marek\", family = \"Gagolewski\", role = c(\"aut\", \"cre\", \"cph\"), email = \"marek@gagolewski.com\", comment = c(ORCID = \"0000-0003-0637-6028\")), person(given = \"Bartek\", family = \"Tartanus\", role = \"ctb\"), person(\"Unicode, Inc. and others\", role=\"ctb\", comment = \"ICU4C source code, Unicode Character Database\") )", + "RoxygenNote": "7.3.2", + "Encoding": "UTF-8", + "NeedsCompilation": "yes", + "Author": "Marek Gagolewski [aut, cre, cph] (), Bartek Tartanus [ctb], Unicode, Inc. and others [ctb] (ICU4C source code, Unicode Character Database)", + "Maintainer": "Marek Gagolewski ", + "License_is_FOSS": "yes", + "Repository": "CRAN" + }, + "stringr": { + "Package": "stringr", + "Version": "1.5.1", + "Source": "Repository", + "Title": "Simple, Consistent Wrappers for Common String Operations", + "Authors@R": "c( person(\"Hadley\", \"Wickham\", , \"hadley@posit.co\", role = c(\"aut\", \"cre\", \"cph\")), person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\")) )", + "Description": "A consistent, simple and easy to use set of wrappers around the fantastic 'stringi' package. All function and argument names (and positions) are consistent, all functions deal with \"NA\"'s and zero length vectors in the same way, and the output from one function is easy to feed into the input of another.", + "License": "MIT + file LICENSE", + "URL": "https://stringr.tidyverse.org, https://github.com/tidyverse/stringr", + "BugReports": "https://github.com/tidyverse/stringr/issues", + "Depends": [ + "R (>= 3.6)" + ], + "Imports": [ + "cli", + "glue (>= 1.6.1)", + "lifecycle (>= 1.0.3)", + "magrittr", + "rlang (>= 1.0.0)", + "stringi (>= 1.5.3)", + "vctrs (>= 0.4.0)" + ], + "Suggests": [ + "covr", + "dplyr", + "gt", + "htmltools", + "htmlwidgets", + "knitr", + "rmarkdown", + "testthat (>= 3.0.0)", + "tibble" + ], + "VignetteBuilder": "knitr", + "Config/Needs/website": "tidyverse/tidytemplate", + "Config/testthat/edition": "3", + "Encoding": "UTF-8", + "LazyData": "true", + "RoxygenNote": "7.2.3", + "NeedsCompilation": "no", + "Author": "Hadley Wickham [aut, cre, cph], Posit Software, PBC [cph, fnd]", + "Maintainer": "Hadley Wickham ", + "Repository": "CRAN" + }, + "styler": { + "Package": "styler", + "Version": "1.10.3", + "Source": "Repository", + "Type": "Package", + "Title": "Non-Invasive Pretty Printing of R Code", + "Authors@R": "c(person(given = \"Kirill\", family = \"Müller\", role = \"aut\", email = \"kirill@cynkra.com\", comment = c(ORCID = \"0000-0002-1416-3412\")), person(given = \"Lorenz\", family = \"Walthert\", role = c(\"cre\", \"aut\"), email = \"lorenz.walthert@icloud.com\"), person(given = \"Indrajeet\", family = \"Patil\", role = \"ctb\", email = \"patilindrajeet.science@gmail.com\", comment = c(ORCID = \"0000-0003-1995-6531\", Twitter = \"@patilindrajeets\")))", + "Description": "Pretty-prints R code without changing the user's formatting intent.", + "License": "MIT + file LICENSE", + "URL": "https://github.com/r-lib/styler, https://styler.r-lib.org", + "BugReports": "https://github.com/r-lib/styler/issues", + "Depends": [ + "R (>= 3.6.0)" + ], + "Imports": [ + "cli (>= 3.1.1)", + "magrittr (>= 2.0.0)", + "purrr (>= 0.2.3)", + "R.cache (>= 0.15.0)", + "rlang (>= 1.0.0)", + "rprojroot (>= 1.1)", + "tools", + "vctrs (>= 0.4.1)", + "withr (>= 2.3.0)" + ], + "Suggests": [ + "data.tree (>= 0.1.6)", + "digest", + "here", + "knitr", + "prettycode", + "rmarkdown", + "roxygen2", + "rstudioapi (>= 0.7)", + "tibble (>= 1.4.2)", + "testthat (>= 3.0.0)" + ], + "VignetteBuilder": "knitr", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.1", + "Config/testthat/edition": "3", + "Config/testthat/parallel": "true", + "Collate": "'addins.R' 'communicate.R' 'compat-dplyr.R' 'compat-tidyr.R' 'detect-alignment-utils.R' 'detect-alignment.R' 'environments.R' 'expr-is.R' 'indent.R' 'initialize.R' 'io.R' 'nest.R' 'nested-to-tree.R' 'parse.R' 'reindent.R' 'token-define.R' 'relevel.R' 'roxygen-examples-add-remove.R' 'roxygen-examples-find.R' 'roxygen-examples-parse.R' 'roxygen-examples.R' 'rules-indention.R' 'rules-line-breaks.R' 'rules-spaces.R' 'rules-tokens.R' 'serialize.R' 'set-assert-args.R' 'style-guides.R' 'styler-package.R' 'stylerignore.R' 'testing-mocks.R' 'testing-public-api.R' 'ui-caching.R' 'testing.R' 'token-create.R' 'transform-block.R' 'transform-code.R' 'transform-files.R' 'ui-styling.R' 'unindent.R' 'utils-cache.R' 'utils-files.R' 'utils-navigate-nest.R' 'utils-strings.R' 'utils.R' 'vertical.R' 'visit.R' 'zzz.R'", + "NeedsCompilation": "no", + "Author": "Kirill Müller [aut] (), Lorenz Walthert [cre, aut], Indrajeet Patil [ctb] (, @patilindrajeets)", + "Maintainer": "Lorenz Walthert ", + "Repository": "https://p3m.dev/cran/latest" + }, + "survival": { + "Package": "survival", + "Version": "3.5-5", + "Source": "Repository", + "Title": "Survival Analysis", + "Priority": "recommended", + "Date": "2023-03-11", + "Depends": [ + "R (>= 3.5.0)" + ], + "Imports": [ + "graphics", + "Matrix", + "methods", + "splines", + "stats", + "utils" + ], + "LazyData": "Yes", + "LazyDataCompression": "xz", + "ByteCompile": "Yes", + "Authors@R": "c(person(c(\"Terry\", \"M\"), \"Therneau\", email=\"therneau.terry@mayo.edu\", role=c(\"aut\", \"cre\")), person(\"Thomas\", \"Lumley\", role=c(\"ctb\", \"trl\"), comment=\"original S->R port and R maintainer until 2009\"), person(\"Atkinson\", \"Elizabeth\", role=\"ctb\"), person(\"Crowson\", \"Cynthia\", role=\"ctb\"))", + "Description": "Contains the core survival analysis routines, including definition of Surv objects, Kaplan-Meier and Aalen-Johansen (multi-state) curves, Cox models, and parametric accelerated failure time models.", + "License": "LGPL (>= 2)", + "URL": "https://github.com/therneau/survival", + "NeedsCompilation": "yes", + "Author": "Terry M Therneau [aut, cre], Thomas Lumley [ctb, trl] (original S->R port and R maintainer until 2009), Atkinson Elizabeth [ctb], Crowson Cynthia [ctb]", + "Maintainer": "Terry M Therneau ", + "Repository": "CRAN" + }, + "sys": { + "Package": "sys", + "Version": "3.4.3", + "Source": "Repository", + "Type": "Package", + "Title": "Powerful and Reliable Tools for Running System Commands in R", + "Authors@R": "c(person(\"Jeroen\", \"Ooms\", role = c(\"aut\", \"cre\"), email = \"jeroenooms@gmail.com\", comment = c(ORCID = \"0000-0002-4035-0289\")), person(\"Gábor\", \"Csárdi\", , \"csardi.gabor@gmail.com\", role = \"ctb\"))", + "Description": "Drop-in replacements for the base system2() function with fine control and consistent behavior across platforms. Supports clean interruption, timeout, background tasks, and streaming STDIN / STDOUT / STDERR over binary or text connections. Arguments on Windows automatically get encoded and quoted to work on different locales.", + "License": "MIT + file LICENSE", + "URL": "https://jeroen.r-universe.dev/sys", + "BugReports": "https://github.com/jeroen/sys/issues", + "Encoding": "UTF-8", + "RoxygenNote": "7.1.1", + "Suggests": [ + "unix (>= 1.4)", + "spelling", + "testthat" + ], + "Language": "en-US", + "NeedsCompilation": "yes", + "Author": "Jeroen Ooms [aut, cre] (), Gábor Csárdi [ctb]", + "Maintainer": "Jeroen Ooms ", + "Repository": "CRAN" + }, + "testthat": { + "Package": "testthat", + "Version": "3.2.3", + "Source": "Repository", + "Title": "Unit Testing for R", + "Authors@R": "c( person(\"Hadley\", \"Wickham\", , \"hadley@posit.co\", role = c(\"aut\", \"cre\")), person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\")), person(\"R Core team\", role = \"ctb\", comment = \"Implementation of utils::recover()\") )", + "Description": "Software testing is important, but, in part because it is frustrating and boring, many of us avoid it. 'testthat' is a testing framework for R that is easy to learn and use, and integrates with your existing 'workflow'.", + "License": "MIT + file LICENSE", + "URL": "https://testthat.r-lib.org, https://github.com/r-lib/testthat", + "BugReports": "https://github.com/r-lib/testthat/issues", + "Depends": [ + "R (>= 3.6.0)" + ], + "Imports": [ + "brio (>= 1.1.3)", + "callr (>= 3.7.3)", + "cli (>= 3.6.1)", + "desc (>= 1.4.2)", + "digest (>= 0.6.33)", + "evaluate (>= 1.0.1)", + "jsonlite (>= 1.8.7)", + "lifecycle (>= 1.0.3)", + "magrittr (>= 2.0.3)", + "methods", + "pkgload (>= 1.3.2.1)", + "praise (>= 1.0.0)", + "processx (>= 3.8.2)", + "ps (>= 1.7.5)", + "R6 (>= 2.5.1)", + "rlang (>= 1.1.1)", + "utils", + "waldo (>= 0.6.0)", + "withr (>= 3.0.2)" + ], + "Suggests": [ + "covr", + "curl (>= 0.9.5)", + "diffviewer (>= 0.1.0)", + "knitr", + "rmarkdown", + "rstudioapi", + "S7", + "shiny", + "usethis", + "vctrs (>= 0.1.0)", + "xml2" + ], + "VignetteBuilder": "knitr", + "Config/Needs/website": "tidyverse/tidytemplate", + "Config/testthat/edition": "3", + "Config/testthat/parallel": "true", + "Config/testthat/start-first": "watcher, parallel*", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.2", + "NeedsCompilation": "yes", + "Author": "Hadley Wickham [aut, cre], Posit Software, PBC [cph, fnd], R Core team [ctb] (Implementation of utils::recover())", + "Maintainer": "Hadley Wickham ", + "Repository": "CRAN" + }, + "tibble": { + "Package": "tibble", + "Version": "3.3.0", + "Source": "Repository", + "Title": "Simple Data Frames", + "Authors@R": "c(person(given = \"Kirill\", family = \"M\\u00fcller\", role = c(\"aut\", \"cre\"), email = \"kirill@cynkra.com\", comment = c(ORCID = \"0000-0002-1416-3412\")), person(given = \"Hadley\", family = \"Wickham\", role = \"aut\", email = \"hadley@rstudio.com\"), person(given = \"Romain\", family = \"Francois\", role = \"ctb\", email = \"romain@r-enthusiasts.com\"), person(given = \"Jennifer\", family = \"Bryan\", role = \"ctb\", email = \"jenny@rstudio.com\"), person(given = \"RStudio\", role = c(\"cph\", \"fnd\")))", + "Description": "Provides a 'tbl_df' class (the 'tibble') with stricter checking and better formatting than the traditional data frame.", + "License": "MIT + file LICENSE", + "URL": "https://tibble.tidyverse.org/, https://github.com/tidyverse/tibble", + "BugReports": "https://github.com/tidyverse/tibble/issues", + "Depends": [ + "R (>= 3.4.0)" + ], + "Imports": [ + "cli", + "lifecycle (>= 1.0.0)", + "magrittr", + "methods", + "pillar (>= 1.8.1)", + "pkgconfig", + "rlang (>= 1.0.2)", + "utils", + "vctrs (>= 0.5.0)" + ], + "Suggests": [ + "bench", + "bit64", + "blob", + "brio", + "callr", + "DiagrammeR", + "dplyr", + "evaluate", + "formattable", + "ggplot2", + "here", + "hms", + "htmltools", + "knitr", + "lubridate", + "nycflights13", + "pkgload", + "purrr", + "rmarkdown", + "stringi", + "testthat (>= 3.0.2)", + "tidyr", + "withr" + ], + "VignetteBuilder": "knitr", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.2.9000", + "Config/testthat/edition": "3", + "Config/testthat/parallel": "true", + "Config/testthat/start-first": "vignette-formats, as_tibble, add, invariants", + "Config/autostyle/scope": "line_breaks", + "Config/autostyle/strict": "true", + "Config/autostyle/rmd": "false", + "Config/Needs/website": "tidyverse/tidytemplate", + "NeedsCompilation": "yes", + "Author": "Kirill Müller [aut, cre] (ORCID: ), Hadley Wickham [aut], Romain Francois [ctb], Jennifer Bryan [ctb], RStudio [cph, fnd]", + "Maintainer": "Kirill Müller ", + "Repository": "CRAN" + }, + "tidyr": { + "Package": "tidyr", + "Version": "1.3.1", + "Source": "Repository", + "Title": "Tidy Messy Data", + "Authors@R": "c( person(\"Hadley\", \"Wickham\", , \"hadley@posit.co\", role = c(\"aut\", \"cre\")), person(\"Davis\", \"Vaughan\", , \"davis@posit.co\", role = \"aut\"), person(\"Maximilian\", \"Girlich\", role = \"aut\"), person(\"Kevin\", \"Ushey\", , \"kevin@posit.co\", role = \"ctb\"), person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\")) )", + "Description": "Tools to help to create tidy data, where each column is a variable, each row is an observation, and each cell contains a single value. 'tidyr' contains tools for changing the shape (pivoting) and hierarchy (nesting and 'unnesting') of a dataset, turning deeply nested lists into rectangular data frames ('rectangling'), and extracting values out of string columns. It also includes tools for working with missing values (both implicit and explicit).", + "License": "MIT + file LICENSE", + "URL": "https://tidyr.tidyverse.org, https://github.com/tidyverse/tidyr", + "BugReports": "https://github.com/tidyverse/tidyr/issues", + "Depends": [ + "R (>= 3.6)" + ], + "Imports": [ + "cli (>= 3.4.1)", + "dplyr (>= 1.0.10)", + "glue", + "lifecycle (>= 1.0.3)", + "magrittr", + "purrr (>= 1.0.1)", + "rlang (>= 1.1.1)", + "stringr (>= 1.5.0)", + "tibble (>= 2.1.1)", + "tidyselect (>= 1.2.0)", + "utils", + "vctrs (>= 0.5.2)" + ], + "Suggests": [ + "covr", + "data.table", + "knitr", + "readr", + "repurrrsive (>= 1.1.0)", + "rmarkdown", + "testthat (>= 3.0.0)" + ], + "LinkingTo": [ + "cpp11 (>= 0.4.0)" + ], + "VignetteBuilder": "knitr", + "Config/Needs/website": "tidyverse/tidytemplate", + "Config/testthat/edition": "3", + "Encoding": "UTF-8", + "LazyData": "true", + "RoxygenNote": "7.3.0", + "NeedsCompilation": "yes", + "Author": "Hadley Wickham [aut, cre], Davis Vaughan [aut], Maximilian Girlich [aut], Kevin Ushey [ctb], Posit Software, PBC [cph, fnd]", + "Maintainer": "Hadley Wickham ", + "Repository": "CRAN" + }, + "tidyselect": { + "Package": "tidyselect", + "Version": "1.2.1", + "Source": "Repository", + "Title": "Select from a Set of Strings", + "Authors@R": "c( person(\"Lionel\", \"Henry\", , \"lionel@posit.co\", role = c(\"aut\", \"cre\")), person(\"Hadley\", \"Wickham\", , \"hadley@posit.co\", role = \"aut\"), person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\")) )", + "Description": "A backend for the selecting functions of the 'tidyverse'. It makes it easy to implement select-like functions in your own packages in a way that is consistent with other 'tidyverse' interfaces for selection.", + "License": "MIT + file LICENSE", + "URL": "https://tidyselect.r-lib.org, https://github.com/r-lib/tidyselect", + "BugReports": "https://github.com/r-lib/tidyselect/issues", + "Depends": [ + "R (>= 3.4)" + ], + "Imports": [ + "cli (>= 3.3.0)", + "glue (>= 1.3.0)", + "lifecycle (>= 1.0.3)", + "rlang (>= 1.0.4)", + "vctrs (>= 0.5.2)", + "withr" + ], + "Suggests": [ + "covr", + "crayon", + "dplyr", + "knitr", + "magrittr", + "rmarkdown", + "stringr", + "testthat (>= 3.1.1)", + "tibble (>= 2.1.3)" + ], + "VignetteBuilder": "knitr", + "ByteCompile": "true", + "Config/testthat/edition": "3", + "Config/Needs/website": "tidyverse/tidytemplate", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.0.9000", + "NeedsCompilation": "yes", + "Author": "Lionel Henry [aut, cre], Hadley Wickham [aut], Posit Software, PBC [cph, fnd]", + "Maintainer": "Lionel Henry ", + "Repository": "CRAN" + }, + "timeDate": { + "Package": "timeDate", + "Version": "4041.110", + "Source": "Repository", + "Title": "Rmetrics - Chronological and Calendar Objects", + "Authors@R": "c(person(\"Diethelm\", \"Wuertz\", role=\"aut\", comment = \"original code\") , person(\"Tobias\", \"Setz\", role = c(\"aut\"), email = \"tobias.setz@live.com\") , person(\"Yohan\", \"Chalabi\", role = \"aut\") , person(\"Martin\",\"Maechler\", role = \"ctb\", email = \"maechler@stat.math.ethz.ch\", comment = c(ORCID = \"0000-0002-8685-9910\")) , person(given = c(\"Joe\", \"W.\"), family = \"Byers\", role = \"ctb\") , person(given = c(\"Georgi\", \"N.\"), family = \"Boshnakov\", role = c(\"cre\", \"aut\"), email = \"georgi.boshnakov@manchester.ac.uk\") )", + "Description": "The 'timeDate' class fulfils the conventions of the ISO 8601 standard as well as of the ANSI C and POSIX standards. Beyond these standards it provides the \"Financial Center\" concept which allows to handle data records collected in different time zones and mix them up to have always the proper time stamps with respect to your personal financial center, or alternatively to the GMT reference time. It can thus also handle time stamps from historical data records from the same time zone, even if the financial centers changed day light saving times at different calendar dates.", + "Depends": [ + "R (>= 3.6.0)", + "methods" + ], + "Imports": [ + "graphics", + "utils", + "stats" + ], + "Suggests": [ + "RUnit" + ], + "License": "GPL (>= 2)", + "Encoding": "UTF-8", + "URL": "https://geobosh.github.io/timeDateDoc/ (doc), https://r-forge.r-project.org/scm/viewvc.php/pkg/timeDate/?root=rmetrics (devel), https://www.rmetrics.org", + "BugReports": "https://r-forge.r-project.org/projects/rmetrics", + "NeedsCompilation": "no", + "Author": "Diethelm Wuertz [aut] (original code), Tobias Setz [aut], Yohan Chalabi [aut], Martin Maechler [ctb] (), Joe W. Byers [ctb], Georgi N. Boshnakov [cre, aut]", + "Maintainer": "Georgi N. Boshnakov ", + "Repository": "CRAN" + }, + "timechange": { + "Package": "timechange", + "Version": "0.3.0", + "Source": "Repository", + "Title": "Efficient Manipulation of Date-Times", + "Authors@R": "c(person(\"Vitalie\", \"Spinu\", email = \"spinuvit@gmail.com\", role = c(\"aut\", \"cre\")), person(\"Google Inc.\", role = c(\"ctb\", \"cph\")))", + "Description": "Efficient routines for manipulation of date-time objects while accounting for time-zones and daylight saving times. The package includes utilities for updating of date-time components (year, month, day etc.), modification of time-zones, rounding of date-times, period addition and subtraction etc. Parts of the 'CCTZ' source code, released under the Apache 2.0 License, are included in this package. See for more details.", + "Depends": [ + "R (>= 3.3)" + ], + "License": "GPL (>= 3)", + "Encoding": "UTF-8", + "LinkingTo": [ + "cpp11 (>= 0.2.7)" + ], + "Suggests": [ + "testthat (>= 0.7.1.99)", + "knitr" + ], + "SystemRequirements": "A system with zoneinfo data (e.g. /usr/share/zoneinfo) as well as a recent-enough C++11 compiler (such as g++-4.8 or later). On Windows the zoneinfo included with R is used.", + "BugReports": "https://github.com/vspinu/timechange/issues", + "URL": "https://github.com/vspinu/timechange/", + "RoxygenNote": "7.2.1", + "NeedsCompilation": "yes", + "Author": "Vitalie Spinu [aut, cre], Google Inc. [ctb, cph]", + "Maintainer": "Vitalie Spinu ", + "Repository": "CRAN" + }, + "timetk": { + "Package": "timetk", + "Version": "2.9.0", + "Source": "Repository", + "Type": "Package", + "Title": "A Tool Kit for Working with Time Series", + "Authors@R": "c( person(\"Matt\", \"Dancho\", email = \"mdancho@business-science.io\", role = c(\"aut\", \"cre\")), person(\"Davis\", \"Vaughan\", email = \"dvaughan@business-science.io\", role = c(\"aut\")) )", + "Description": "Easy visualization, wrangling, and feature engineering of time series data for forecasting and machine learning prediction. Consolidates and extends time series functionality from packages including 'dplyr', 'stats', 'xts', 'forecast', 'slider', 'padr', 'recipes', and 'rsample'.", + "URL": "https://github.com/business-science/timetk, https://business-science.github.io/timetk/", + "BugReports": "https://github.com/business-science/timetk/issues", + "License": "GPL (>= 3)", + "Encoding": "UTF-8", + "LazyData": "true", + "Depends": [ + "R (>= 3.3.0)" + ], + "Imports": [ + "recipes (>= 1.0.4)", + "rsample", + "dplyr (>= 1.0.0)", + "ggplot2 (>= 3.4.0)", + "forcats", + "stringr", + "plotly", + "lubridate (>= 1.6.0)", + "padr (>= 0.5.2)", + "purrr (>= 0.2.2)", + "readr (>= 1.3.0)", + "stringi (>= 1.4.6)", + "tibble (>= 3.0.3)", + "tidyr (>= 1.1.0)", + "xts (>= 0.9-7)", + "zoo (>= 1.7-14)", + "rlang (>= 1.1.1)", + "tidyselect (>= 1.1.0)", + "slider", + "anytime", + "timeDate", + "forecast", + "tsfeatures", + "hms", + "generics" + ], + "Suggests": [ + "modeltime", + "glmnet", + "workflows", + "parsnip", + "tune (>= 0.1.2)", + "knitr", + "rmarkdown", + "broom", + "scales", + "testthat", + "fracdiff", + "timeSeries", + "tseries", + "trelliscopejs" + ], + "RoxygenNote": "7.2.3", + "VignetteBuilder": "knitr", + "NeedsCompilation": "no", + "Author": "Matt Dancho [aut, cre], Davis Vaughan [aut]", + "Maintainer": "Matt Dancho ", + "Repository": "CRAN" + }, + "tinytex": { + "Package": "tinytex", + "Version": "0.57", + "Source": "Repository", + "Type": "Package", + "Title": "Helper Functions to Install and Maintain TeX Live, and Compile LaTeX Documents", + "Authors@R": "c( person(\"Yihui\", \"Xie\", role = c(\"aut\", \"cre\", \"cph\"), email = \"xie@yihui.name\", comment = c(ORCID = \"0000-0003-0645-5666\")), person(given = \"Posit Software, PBC\", role = c(\"cph\", \"fnd\")), person(\"Christophe\", \"Dervieux\", role = \"ctb\", comment = c(ORCID = \"0000-0003-4474-2498\")), person(\"Devon\", \"Ryan\", role = \"ctb\", email = \"dpryan79@gmail.com\", comment = c(ORCID = \"0000-0002-8549-0971\")), person(\"Ethan\", \"Heinzen\", role = \"ctb\"), person(\"Fernando\", \"Cagua\", role = \"ctb\"), person() )", + "Description": "Helper functions to install and maintain the 'LaTeX' distribution named 'TinyTeX' (), a lightweight, cross-platform, portable, and easy-to-maintain version of 'TeX Live'. This package also contains helper functions to compile 'LaTeX' documents, and install missing 'LaTeX' packages automatically.", + "Imports": [ + "xfun (>= 0.48)" + ], + "Suggests": [ + "testit", + "rstudioapi" + ], + "License": "MIT + file LICENSE", + "URL": "https://github.com/rstudio/tinytex", + "BugReports": "https://github.com/rstudio/tinytex/issues", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.2", + "NeedsCompilation": "no", + "Author": "Yihui Xie [aut, cre, cph] (), Posit Software, PBC [cph, fnd], Christophe Dervieux [ctb] (), Devon Ryan [ctb] (), Ethan Heinzen [ctb], Fernando Cagua [ctb]", + "Maintainer": "Yihui Xie ", + "Repository": "CRAN" + }, + "tseries": { + "Package": "tseries", + "Version": "0.10-58", + "Source": "Repository", + "Title": "Time Series Analysis and Computational Finance", + "Authors@R": "c(person(\"Adrian\", \"Trapletti\", role = \"aut\", email = \"adrian@trapletti.org\"), person(\"Kurt\", \"Hornik\", role = c(\"aut\", \"cre\"), email = \"Kurt.Hornik@R-project.org\", comment = c(ORCID = \"0000-0003-4198-9911\")), person(\"Blake\", \"LeBaron\", role = \"ctb\", comment = \"BDS test code\"))", + "Description": "Time series analysis and computational finance.", + "Depends": [ + "R (>= 3.4.0)" + ], + "Imports": [ + "graphics", + "stats", + "utils", + "quadprog", + "zoo", + "quantmod (>= 0.4-9)", + "jsonlite" + ], + "License": "GPL-2 | GPL-3", + "NeedsCompilation": "yes", + "Author": "Adrian Trapletti [aut], Kurt Hornik [aut, cre] (), Blake LeBaron [ctb] (BDS test code)", + "Maintainer": "Kurt Hornik ", + "Repository": "CRAN", + "Encoding": "UTF-8" + }, + "tsfeatures": { + "Package": "tsfeatures", + "Version": "1.1.1", + "Source": "Repository", + "Title": "Time Series Feature Extraction", + "Authors@R": "c( person(\"Rob\", \"Hyndman\", email = \"Rob.Hyndman@monash.edu\", role = c(\"aut\",\"cre\"), comment = c(ORCID = \"0000-0002-2140-5352\")), person(\"Yanfei\", \"Kang\", role = \"aut\", comment = c(ORCID = \"0000-0001-8769-6650\")), person(\"Pablo\", \"Montero-Manso\", email=\"p.montero.manso@udc.es\", role=\"aut\"), person(\"Mitchell\", \"O'Hara-Wild\", role=\"aut\", comment=c(ORCID = \"0000-0001-6729-7695\")), person(\"Thiyanga\", \"Talagala\", role = \"aut\", comment=c(ORCID = \"0000-0002-0656-9789\")), person(\"Earo\", \"Wang\", role = \"aut\", comment=c(ORCID = \"0000-0001-6448-5260\")), person(\"Yangzhuoran\", \"Yang\", email = \"Fin.Yang@monash.edu\", role = \"aut\"), person(\"Souhaib\", \"Ben Taieb\", role = \"ctb\"), person(\"Cao\", \"Hanqing\", role=\"ctb\"), person(\"D K\", \"Lake\", role=\"ctb\"), person(\"Nikolay\", \"Laptev\", role=\"ctb\"), person(\"J R\", \"Moorman\", role=\"ctb\"), person(\"Bohan\", \"Zhang\", role = \"ctb\"))", + "Description": "Methods for extracting various features from time series data. The features provided are those from Hyndman, Wang and Laptev (2013) , Kang, Hyndman and Smith-Miles (2017) and from Fulcher, Little and Jones (2013) . Features include spectral entropy, autocorrelations, measures of the strength of seasonality and trend, and so on. Users can also define their own feature functions.", + "Depends": [ + "R (>= 3.6.0)" + ], + "Imports": [ + "fracdiff", + "forecast (>= 8.3)", + "purrr", + "RcppRoll (>= 0.2.2)", + "stats", + "tibble", + "tseries", + "urca", + "future", + "furrr" + ], + "Suggests": [ + "testthat", + "knitr", + "rmarkdown", + "ggplot2", + "tidyr", + "dplyr", + "Mcomp", + "GGally" + ], + "License": "GPL-3", + "ByteCompile": "true", + "URL": "https://pkg.robjhyndman.com/tsfeatures/, https://github.com/robjhyndman/tsfeatures", + "BugReports": "https://github.com/robjhyndman/tsfeatures/issues", + "RoxygenNote": "7.2.3", + "VignetteBuilder": "knitr", + "Encoding": "UTF-8", + "NeedsCompilation": "no", + "Author": "Rob Hyndman [aut, cre] (), Yanfei Kang [aut] (), Pablo Montero-Manso [aut], Mitchell O'Hara-Wild [aut] (), Thiyanga Talagala [aut] (), Earo Wang [aut] (), Yangzhuoran Yang [aut], Souhaib Ben Taieb [ctb], Cao Hanqing [ctb], D K Lake [ctb], Nikolay Laptev [ctb], J R Moorman [ctb], Bohan Zhang [ctb]", + "Maintainer": "Rob Hyndman ", + "Repository": "CRAN" + }, + "tzdb": { + "Package": "tzdb", + "Version": "0.5.0", + "Source": "Repository", + "Title": "Time Zone Database Information", + "Authors@R": "c( person(\"Davis\", \"Vaughan\", , \"davis@posit.co\", role = c(\"aut\", \"cre\")), person(\"Howard\", \"Hinnant\", role = \"cph\", comment = \"Author of the included date library\"), person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\")) )", + "Description": "Provides an up-to-date copy of the Internet Assigned Numbers Authority (IANA) Time Zone Database. It is updated periodically to reflect changes made by political bodies to time zone boundaries, UTC offsets, and daylight saving time rules. Additionally, this package provides a C++ interface for working with the 'date' library. 'date' provides comprehensive support for working with dates and date-times, which this package exposes to make it easier for other R packages to utilize. Headers are provided for calendar specific calculations, along with a limited interface for time zone manipulations.", + "License": "MIT + file LICENSE", + "URL": "https://tzdb.r-lib.org, https://github.com/r-lib/tzdb", + "BugReports": "https://github.com/r-lib/tzdb/issues", + "Depends": [ + "R (>= 4.0.0)" + ], + "Suggests": [ + "covr", + "testthat (>= 3.0.0)" + ], + "LinkingTo": [ + "cpp11 (>= 0.5.2)" + ], + "Biarch": "yes", + "Config/Needs/website": "tidyverse/tidytemplate", + "Config/testthat/edition": "3", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.2", + "NeedsCompilation": "yes", + "Author": "Davis Vaughan [aut, cre], Howard Hinnant [cph] (Author of the included date library), Posit Software, PBC [cph, fnd]", + "Maintainer": "Davis Vaughan ", + "Repository": "CRAN" + }, + "urca": { + "Package": "urca", + "Version": "1.3-4", + "Source": "Repository", + "Date": "2024-05-25", + "Title": "Unit Root and Cointegration Tests for Time Series Data", + "Authors@R": "c(person(\"Bernhard\", \"Pfaff\", email = \"bernhard@pfaffikus.de\", role = c(\"aut\", \"cre\")), person(\"Eric\", \"Zivot\",email = \"ezivot@u.washington.edu\", role = \"ctb\"), person(\"Matthieu\", \"Stigler\", role = \"ctb\"))", + "Depends": [ + "R (>= 2.0.0)", + "methods" + ], + "Imports": [ + "nlme", + "graphics", + "stats" + ], + "LazyLoad": "yes", + "Description": "Unit root and cointegration tests encountered in applied econometric analysis are implemented.", + "License": "GPL (>= 2)", + "NeedsCompilation": "yes", + "Author": "Bernhard Pfaff [aut, cre], Eric Zivot [ctb], Matthieu Stigler [ctb]", + "Maintainer": "Bernhard Pfaff ", + "Repository": "CRAN", + "Encoding": "UTF-8" + }, + "utf8": { + "Package": "utf8", + "Version": "1.2.6", + "Source": "Repository", + "Title": "Unicode Text Processing", + "Authors@R": "c(person(given = c(\"Patrick\", \"O.\"), family = \"Perry\", role = c(\"aut\", \"cph\")), person(given = \"Kirill\", family = \"M\\u00fcller\", role = \"cre\", email = \"kirill@cynkra.com\", comment = c(ORCID = \"0000-0002-1416-3412\")), person(given = \"Unicode, Inc.\", role = c(\"cph\", \"dtc\"), comment = \"Unicode Character Database\"))", + "Description": "Process and print 'UTF-8' encoded international text (Unicode). Input, validate, normalize, encode, format, and display.", + "License": "Apache License (== 2.0) | file LICENSE", + "URL": "https://krlmlr.github.io/utf8/, https://github.com/krlmlr/utf8", + "BugReports": "https://github.com/krlmlr/utf8/issues", + "Depends": [ + "R (>= 2.10)" + ], + "Suggests": [ + "cli", + "covr", + "knitr", + "rlang", + "rmarkdown", + "testthat (>= 3.0.0)", + "withr" + ], + "VignetteBuilder": "knitr, rmarkdown", + "Config/testthat/edition": "3", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.2.9000", + "NeedsCompilation": "yes", + "Author": "Patrick O. Perry [aut, cph], Kirill Müller [cre] (ORCID: ), Unicode, Inc. [cph, dtc] (Unicode Character Database)", + "Maintainer": "Kirill Müller ", + "Repository": "CRAN" + }, + "uuid": { + "Package": "uuid", + "Version": "1.2-1", + "Source": "Repository", + "Title": "Tools for Generating and Handling of UUIDs", + "Author": "Simon Urbanek [aut, cre, cph] (https://urbanek.org, ), Theodore Ts'o [aut, cph] (libuuid)", + "Maintainer": "Simon Urbanek ", + "Authors@R": "c(person(\"Simon\", \"Urbanek\", role=c(\"aut\",\"cre\",\"cph\"), email=\"Simon.Urbanek@r-project.org\", comment=c(\"https://urbanek.org\", ORCID=\"0000-0003-2297-1732\")), person(\"Theodore\",\"Ts'o\", email=\"tytso@thunk.org\", role=c(\"aut\",\"cph\"), comment=\"libuuid\"))", + "Depends": [ + "R (>= 2.9.0)" + ], + "Description": "Tools for generating and handling of UUIDs (Universally Unique Identifiers).", + "License": "MIT + file LICENSE", + "URL": "https://www.rforge.net/uuid", + "BugReports": "https://github.com/s-u/uuid/issues", + "NeedsCompilation": "yes", + "Repository": "CRAN", + "Encoding": "UTF-8" + }, + "vctrs": { + "Package": "vctrs", + "Version": "0.6.5", + "Source": "Repository", + "Title": "Vector Helpers", + "Authors@R": "c( person(\"Hadley\", \"Wickham\", , \"hadley@posit.co\", role = \"aut\"), person(\"Lionel\", \"Henry\", , \"lionel@posit.co\", role = \"aut\"), person(\"Davis\", \"Vaughan\", , \"davis@posit.co\", role = c(\"aut\", \"cre\")), person(\"data.table team\", role = \"cph\", comment = \"Radix sort based on data.table's forder() and their contribution to R's order()\"), person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\")) )", + "Description": "Defines new notions of prototype and size that are used to provide tools for consistent and well-founded type-coercion and size-recycling, and are in turn connected to ideas of type- and size-stability useful for analysing function interfaces.", + "License": "MIT + file LICENSE", + "URL": "https://vctrs.r-lib.org/, https://github.com/r-lib/vctrs", + "BugReports": "https://github.com/r-lib/vctrs/issues", + "Depends": [ + "R (>= 3.5.0)" + ], + "Imports": [ + "cli (>= 3.4.0)", + "glue", + "lifecycle (>= 1.0.3)", + "rlang (>= 1.1.0)" + ], + "Suggests": [ + "bit64", + "covr", + "crayon", + "dplyr (>= 0.8.5)", + "generics", + "knitr", + "pillar (>= 1.4.4)", + "pkgdown (>= 2.0.1)", + "rmarkdown", + "testthat (>= 3.0.0)", + "tibble (>= 3.1.3)", + "waldo (>= 0.2.0)", + "withr", + "xml2", + "zeallot" + ], + "VignetteBuilder": "knitr", + "Config/Needs/website": "tidyverse/tidytemplate", + "Config/testthat/edition": "3", + "Encoding": "UTF-8", + "Language": "en-GB", + "RoxygenNote": "7.2.3", + "NeedsCompilation": "yes", + "Author": "Hadley Wickham [aut], Lionel Henry [aut], Davis Vaughan [aut, cre], data.table team [cph] (Radix sort based on data.table's forder() and their contribution to R's order()), Posit Software, PBC [cph, fnd]", + "Maintainer": "Davis Vaughan ", + "Repository": "CRAN" + }, + "viridisLite": { + "Package": "viridisLite", + "Version": "0.4.2", + "Source": "Repository", + "Type": "Package", + "Title": "Colorblind-Friendly Color Maps (Lite Version)", + "Date": "2023-05-02", + "Authors@R": "c( person(\"Simon\", \"Garnier\", email = \"garnier@njit.edu\", role = c(\"aut\", \"cre\")), person(\"Noam\", \"Ross\", email = \"noam.ross@gmail.com\", role = c(\"ctb\", \"cph\")), person(\"Bob\", \"Rudis\", email = \"bob@rud.is\", role = c(\"ctb\", \"cph\")), person(\"Marco\", \"Sciaini\", email = \"sciaini.marco@gmail.com\", role = c(\"ctb\", \"cph\")), person(\"Antônio Pedro\", \"Camargo\", role = c(\"ctb\", \"cph\")), person(\"Cédric\", \"Scherer\", email = \"scherer@izw-berlin.de\", role = c(\"ctb\", \"cph\")) )", + "Maintainer": "Simon Garnier ", + "Description": "Color maps designed to improve graph readability for readers with common forms of color blindness and/or color vision deficiency. The color maps are also perceptually-uniform, both in regular form and also when converted to black-and-white for printing. This is the 'lite' version of the 'viridis' package that also contains 'ggplot2' bindings for discrete and continuous color and fill scales and can be found at .", + "License": "MIT + file LICENSE", + "Encoding": "UTF-8", + "Depends": [ + "R (>= 2.10)" + ], + "Suggests": [ + "hexbin (>= 1.27.0)", + "ggplot2 (>= 1.0.1)", + "testthat", + "covr" + ], + "URL": "https://sjmgarnier.github.io/viridisLite/, https://github.com/sjmgarnier/viridisLite/", + "BugReports": "https://github.com/sjmgarnier/viridisLite/issues/", + "RoxygenNote": "7.2.3", + "NeedsCompilation": "no", + "Author": "Simon Garnier [aut, cre], Noam Ross [ctb, cph], Bob Rudis [ctb, cph], Marco Sciaini [ctb, cph], Antônio Pedro Camargo [ctb, cph], Cédric Scherer [ctb, cph]", + "Repository": "CRAN" + }, + "vroom": { + "Package": "vroom", + "Version": "1.6.5", + "Source": "Repository", + "Title": "Read and Write Rectangular Text Data Quickly", + "Authors@R": "c( person(\"Jim\", \"Hester\", role = \"aut\", comment = c(ORCID = \"0000-0002-2739-7082\")), person(\"Hadley\", \"Wickham\", , \"hadley@posit.co\", role = \"aut\", comment = c(ORCID = \"0000-0003-4757-117X\")), person(\"Jennifer\", \"Bryan\", , \"jenny@posit.co\", role = c(\"aut\", \"cre\"), comment = c(ORCID = \"0000-0002-6983-2759\")), person(\"Shelby\", \"Bearrows\", role = \"ctb\"), person(\"https://github.com/mandreyel/\", role = \"cph\", comment = \"mio library\"), person(\"Jukka\", \"Jylänki\", role = \"cph\", comment = \"grisu3 implementation\"), person(\"Mikkel\", \"Jørgensen\", role = \"cph\", comment = \"grisu3 implementation\"), person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\")) )", + "Description": "The goal of 'vroom' is to read and write data (like 'csv', 'tsv' and 'fwf') quickly. When reading it uses a quick initial indexing step, then reads the values lazily , so only the data you actually use needs to be read. The writer formats the data in parallel and writes to disk asynchronously from formatting.", + "License": "MIT + file LICENSE", + "URL": "https://vroom.r-lib.org, https://github.com/tidyverse/vroom", + "BugReports": "https://github.com/tidyverse/vroom/issues", + "Depends": [ + "R (>= 3.6)" + ], + "Imports": [ + "bit64", + "cli (>= 3.2.0)", + "crayon", + "glue", + "hms", + "lifecycle (>= 1.0.3)", + "methods", + "rlang (>= 0.4.2)", + "stats", + "tibble (>= 2.0.0)", + "tidyselect", + "tzdb (>= 0.1.1)", + "vctrs (>= 0.2.0)", + "withr" + ], + "Suggests": [ + "archive", + "bench (>= 1.1.0)", + "covr", + "curl", + "dplyr", + "forcats", + "fs", + "ggplot2", + "knitr", + "patchwork", + "prettyunits", + "purrr", + "rmarkdown", + "rstudioapi", + "scales", + "spelling", + "testthat (>= 2.1.0)", + "tidyr", + "utils", + "waldo", + "xml2" + ], + "LinkingTo": [ + "cpp11 (>= 0.2.0)", + "progress (>= 1.2.1)", + "tzdb (>= 0.1.1)" + ], + "VignetteBuilder": "knitr", + "Config/Needs/website": "nycflights13, tidyverse/tidytemplate", + "Config/testthat/edition": "3", + "Config/testthat/parallel": "false", + "Copyright": "file COPYRIGHTS", + "Encoding": "UTF-8", + "Language": "en-US", + "RoxygenNote": "7.2.3.9000", + "NeedsCompilation": "yes", + "Author": "Jim Hester [aut] (), Hadley Wickham [aut] (), Jennifer Bryan [aut, cre] (), Shelby Bearrows [ctb], https://github.com/mandreyel/ [cph] (mio library), Jukka Jylänki [cph] (grisu3 implementation), Mikkel Jørgensen [cph] (grisu3 implementation), Posit Software, PBC [cph, fnd]", + "Maintainer": "Jennifer Bryan ", + "Repository": "CRAN" + }, + "waldo": { + "Package": "waldo", + "Version": "0.6.2", + "Source": "Repository", + "Title": "Find Differences Between R Objects", + "Authors@R": "c( person(\"Hadley\", \"Wickham\", , \"hadley@posit.co\", role = c(\"aut\", \"cre\")), person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\")) )", + "Description": "Compare complex R objects and reveal the key differences. Designed particularly for use in testing packages where being able to quickly isolate key differences makes understanding test failures much easier.", + "License": "MIT + file LICENSE", + "URL": "https://waldo.r-lib.org, https://github.com/r-lib/waldo", + "BugReports": "https://github.com/r-lib/waldo/issues", + "Depends": [ + "R (>= 4.0)" + ], + "Imports": [ + "cli", + "diffobj (>= 0.3.4)", + "glue", + "methods", + "rlang (>= 1.1.0)" + ], + "Suggests": [ + "bit64", + "R6", + "S7", + "testthat (>= 3.0.0)", + "withr", + "xml2" + ], + "Config/Needs/website": "tidyverse/tidytemplate", + "Config/testthat/edition": "3", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.2", + "NeedsCompilation": "no", + "Author": "Hadley Wickham [aut, cre], Posit Software, PBC [cph, fnd]", + "Maintainer": "Hadley Wickham ", + "Repository": "CRAN" + }, + "warp": { + "Package": "warp", + "Version": "0.2.1", + "Source": "Repository", + "Title": "Group Dates", + "Authors@R": "c( person(\"Davis\", \"Vaughan\", , \"davis@posit.co\", role = c(\"aut\", \"cre\")), person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\")) )", + "Description": "Tooling to group dates by a variety of periods including: yearly, monthly, by second, by week of the month, and more. The groups are defined in such a way that they also represent the distance between dates in terms of the period. This extracts valuable information that can be used in further calculations that rely on a specific temporal spacing between observations.", + "License": "MIT + file LICENSE", + "URL": "https://github.com/DavisVaughan/warp, https://davisvaughan.github.io/warp/", + "BugReports": "https://github.com/DavisVaughan/warp/issues", + "Depends": [ + "R (>= 3.2)" + ], + "Suggests": [ + "covr", + "knitr", + "rmarkdown", + "testthat (>= 3.0.0)" + ], + "VignetteBuilder": "knitr", + "Config/Needs/website": "tidyverse/tidytemplate", + "Encoding": "UTF-8", + "RoxygenNote": "7.2.3", + "NeedsCompilation": "yes", + "Author": "Davis Vaughan [aut, cre], Posit Software, PBC [cph, fnd]", + "Maintainer": "Davis Vaughan ", + "Repository": "CRAN" + }, + "websocket": { + "Package": "websocket", + "Version": "1.4.4", + "Source": "Repository", + "Title": "'WebSocket' Client Library", + "Description": "Provides a 'WebSocket' client interface for R. 'WebSocket' is a protocol for low-overhead real-time communication: .", + "Authors@R": "c( person(\"Winston\", \"Chang\", role = c(\"aut\", \"cre\"), email = \"winston@posit.co\"), person(\"Joe\", \"Cheng\", role = \"aut\", email = \"joe@posit.co\"), person(\"Alan\", \"Dipert\", role = \"aut\"), person(\"Barbara\", \"Borges\", role = \"aut\"), person(family = \"Posit, PBC\", role = \"cph\"), person(\"Peter\", \"Thorson\", role = c(\"ctb\", \"cph\"), comment = \"WebSocket++ library\"), person(\"René\", \"Nyffenegger\", role = c(\"ctb\", \"cph\"), comment = \"Base 64 library\"), person(\"Micael\", \"Hildenborg\", role = c(\"ctb\", \"cph\"), comment = \"SHA1 library\"), person(family = \"Aladdin Enterprises\", role = \"cph\", comment = \"MD5 library\"), person(\"Bjoern\", \"Hoehrmann\", role = c(\"ctb\", \"cph\"), comment = \"UTF8 Validation library\"))", + "License": "GPL-2", + "Encoding": "UTF-8", + "ByteCompile": "true", + "Imports": [ + "R6", + "later (>= 1.2.0)" + ], + "LinkingTo": [ + "cpp11", + "AsioHeaders", + "later" + ], + "BugReports": "https://github.com/rstudio/websocket/issues", + "SystemRequirements": "GNU make, OpenSSL >= 1.0.2", + "RoxygenNote": "7.3.2", + "Suggests": [ + "httpuv", + "testthat", + "knitr", + "rmarkdown" + ], + "VignetteBuilder": "knitr", + "NeedsCompilation": "yes", + "Author": "Winston Chang [aut, cre], Joe Cheng [aut], Alan Dipert [aut], Barbara Borges [aut], Posit, PBC [cph], Peter Thorson [ctb, cph] (WebSocket++ library), René Nyffenegger [ctb, cph] (Base 64 library), Micael Hildenborg [ctb, cph] (SHA1 library), Aladdin Enterprises [cph] (MD5 library), Bjoern Hoehrmann [ctb, cph] (UTF8 Validation library)", + "Maintainer": "Winston Chang ", + "Repository": "CRAN" + }, + "withr": { + "Package": "withr", + "Version": "3.0.2", + "Source": "Repository", + "Title": "Run Code 'With' Temporarily Modified Global State", + "Authors@R": "c( person(\"Jim\", \"Hester\", role = \"aut\"), person(\"Lionel\", \"Henry\", , \"lionel@posit.co\", role = c(\"aut\", \"cre\")), person(\"Kirill\", \"Müller\", , \"krlmlr+r@mailbox.org\", role = \"aut\"), person(\"Kevin\", \"Ushey\", , \"kevinushey@gmail.com\", role = \"aut\"), person(\"Hadley\", \"Wickham\", , \"hadley@posit.co\", role = \"aut\"), person(\"Winston\", \"Chang\", role = \"aut\"), person(\"Jennifer\", \"Bryan\", role = \"ctb\"), person(\"Richard\", \"Cotton\", role = \"ctb\"), person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\")) )", + "Description": "A set of functions to run code 'with' safely and temporarily modified global state. Many of these functions were originally a part of the 'devtools' package, this provides a simple package with limited dependencies to provide access to these functions.", + "License": "MIT + file LICENSE", + "URL": "https://withr.r-lib.org, https://github.com/r-lib/withr#readme", + "BugReports": "https://github.com/r-lib/withr/issues", + "Depends": [ + "R (>= 3.6.0)" + ], + "Imports": [ + "graphics", + "grDevices" + ], + "Suggests": [ + "callr", + "DBI", + "knitr", + "methods", + "rlang", + "rmarkdown (>= 2.12)", + "RSQLite", + "testthat (>= 3.0.0)" + ], + "VignetteBuilder": "knitr", + "Config/Needs/website": "tidyverse/tidytemplate", + "Config/testthat/edition": "3", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.2", + "Collate": "'aaa.R' 'collate.R' 'connection.R' 'db.R' 'defer-exit.R' 'standalone-defer.R' 'defer.R' 'devices.R' 'local_.R' 'with_.R' 'dir.R' 'env.R' 'file.R' 'language.R' 'libpaths.R' 'locale.R' 'makevars.R' 'namespace.R' 'options.R' 'par.R' 'path.R' 'rng.R' 'seed.R' 'wrap.R' 'sink.R' 'tempfile.R' 'timezone.R' 'torture.R' 'utils.R' 'with.R'", + "NeedsCompilation": "no", + "Author": "Jim Hester [aut], Lionel Henry [aut, cre], Kirill Müller [aut], Kevin Ushey [aut], Hadley Wickham [aut], Winston Chang [aut], Jennifer Bryan [ctb], Richard Cotton [ctb], Posit Software, PBC [cph, fnd]", + "Maintainer": "Lionel Henry ", + "Repository": "CRAN" + }, + "xfun": { + "Package": "xfun", + "Version": "0.53", + "Source": "Repository", + "Type": "Package", + "Title": "Supporting Functions for Packages Maintained by 'Yihui Xie'", + "Authors@R": "c( person(\"Yihui\", \"Xie\", role = c(\"aut\", \"cre\", \"cph\"), email = \"xie@yihui.name\", comment = c(ORCID = \"0000-0003-0645-5666\", URL = \"https://yihui.org\")), person(\"Wush\", \"Wu\", role = \"ctb\"), person(\"Daijiang\", \"Li\", role = \"ctb\"), person(\"Xianying\", \"Tan\", role = \"ctb\"), person(\"Salim\", \"Brüggemann\", role = \"ctb\", email = \"salim-b@pm.me\", comment = c(ORCID = \"0000-0002-5329-5987\")), person(\"Christophe\", \"Dervieux\", role = \"ctb\"), person() )", + "Description": "Miscellaneous functions commonly used in other packages maintained by 'Yihui Xie'.", + "Depends": [ + "R (>= 3.2.0)" + ], + "Imports": [ + "grDevices", + "stats", + "tools" + ], + "Suggests": [ + "testit", + "parallel", + "codetools", + "methods", + "rstudioapi", + "tinytex (>= 0.30)", + "mime", + "litedown (>= 0.6)", + "commonmark", + "knitr (>= 1.50)", + "remotes", + "pak", + "curl", + "xml2", + "jsonlite", + "magick", + "yaml", + "data.table", + "qs" + ], + "License": "MIT + file LICENSE", + "URL": "https://github.com/yihui/xfun", + "BugReports": "https://github.com/yihui/xfun/issues", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.2", + "VignetteBuilder": "litedown", + "NeedsCompilation": "yes", + "Author": "Yihui Xie [aut, cre, cph] (ORCID: , URL: https://yihui.org), Wush Wu [ctb], Daijiang Li [ctb], Xianying Tan [ctb], Salim Brüggemann [ctb] (ORCID: ), Christophe Dervieux [ctb]", + "Maintainer": "Yihui Xie ", + "Repository": "CRAN" + }, + "xml2": { + "Package": "xml2", + "Version": "1.3.8", + "Source": "Repository", + "Title": "Parse XML", + "Authors@R": "c( person(\"Hadley\", \"Wickham\", role = \"aut\"), person(\"Jim\", \"Hester\", role = \"aut\"), person(\"Jeroen\", \"Ooms\", email = \"jeroenooms@gmail.com\", role = c(\"aut\", \"cre\")), person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\")), person(\"R Foundation\", role = \"ctb\", comment = \"Copy of R-project homepage cached as example\") )", + "Description": "Bindings to 'libxml2' for working with XML data using a simple, consistent interface based on 'XPath' expressions. Also supports XML schema validation; for 'XSLT' transformations see the 'xslt' package.", + "License": "MIT + file LICENSE", + "URL": "https://xml2.r-lib.org, https://r-lib.r-universe.dev/xml2", + "BugReports": "https://github.com/r-lib/xml2/issues", + "Depends": [ + "R (>= 3.6.0)" + ], + "Imports": [ + "cli", + "methods", + "rlang (>= 1.1.0)" + ], + "Suggests": [ + "covr", + "curl", + "httr", + "knitr", + "magrittr", + "mockery", + "rmarkdown", + "testthat (>= 3.2.0)", + "xslt" + ], + "VignetteBuilder": "knitr", + "Config/Needs/website": "tidyverse/tidytemplate", + "Encoding": "UTF-8", + "RoxygenNote": "7.2.3", + "SystemRequirements": "libxml2: libxml2-dev (deb), libxml2-devel (rpm)", + "Collate": "'S4.R' 'as_list.R' 'xml_parse.R' 'as_xml_document.R' 'classes.R' 'format.R' 'import-standalone-obj-type.R' 'import-standalone-purrr.R' 'import-standalone-types-check.R' 'init.R' 'nodeset_apply.R' 'paths.R' 'utils.R' 'xml2-package.R' 'xml_attr.R' 'xml_children.R' 'xml_document.R' 'xml_find.R' 'xml_missing.R' 'xml_modify.R' 'xml_name.R' 'xml_namespaces.R' 'xml_node.R' 'xml_nodeset.R' 'xml_path.R' 'xml_schema.R' 'xml_serialize.R' 'xml_structure.R' 'xml_text.R' 'xml_type.R' 'xml_url.R' 'xml_write.R' 'zzz.R'", + "Config/testthat/edition": "3", + "NeedsCompilation": "yes", + "Author": "Hadley Wickham [aut], Jim Hester [aut], Jeroen Ooms [aut, cre], Posit Software, PBC [cph, fnd], R Foundation [ctb] (Copy of R-project homepage cached as example)", + "Maintainer": "Jeroen Ooms ", + "Repository": "CRAN" + }, + "xmlparsedata": { + "Package": "xmlparsedata", + "Version": "1.0.5", + "Source": "Repository", + "Title": "Parse Data of 'R' Code as an 'XML' Tree", + "Author": "Gábor Csárdi", + "Maintainer": "Gábor Csárdi ", + "Description": "Convert the output of 'utils::getParseData()' to an 'XML' tree, that one can search via 'XPath', and easier to manipulate in general.", + "License": "MIT + file LICENSE", + "LazyData": "true", + "URL": "https://github.com/r-lib/xmlparsedata#readme", + "BugReports": "https://github.com/r-lib/xmlparsedata/issues", + "RoxygenNote": "6.0.1", + "Suggests": [ + "covr", + "testthat", + "xml2" + ], + "Depends": [ + "R (>= 3.0.0)" + ], + "Encoding": "UTF-8", + "NeedsCompilation": "no", + "Repository": "CRAN" + }, + "xtable": { + "Package": "xtable", + "Version": "1.8-4", + "Source": "Repository", + "Date": "2019-04-08", + "Title": "Export Tables to LaTeX or HTML", + "Authors@R": "c(person(\"David B.\", \"Dahl\", role=\"aut\"), person(\"David\", \"Scott\", role=c(\"aut\",\"cre\"), email=\"d.scott@auckland.ac.nz\"), person(\"Charles\", \"Roosen\", role=\"aut\"), person(\"Arni\", \"Magnusson\", role=\"aut\"), person(\"Jonathan\", \"Swinton\", role=\"aut\"), person(\"Ajay\", \"Shah\", role=\"ctb\"), person(\"Arne\", \"Henningsen\", role=\"ctb\"), person(\"Benno\", \"Puetz\", role=\"ctb\"), person(\"Bernhard\", \"Pfaff\", role=\"ctb\"), person(\"Claudio\", \"Agostinelli\", role=\"ctb\"), person(\"Claudius\", \"Loehnert\", role=\"ctb\"), person(\"David\", \"Mitchell\", role=\"ctb\"), person(\"David\", \"Whiting\", role=\"ctb\"), person(\"Fernando da\", \"Rosa\", role=\"ctb\"), person(\"Guido\", \"Gay\", role=\"ctb\"), person(\"Guido\", \"Schulz\", role=\"ctb\"), person(\"Ian\", \"Fellows\", role=\"ctb\"), person(\"Jeff\", \"Laake\", role=\"ctb\"), person(\"John\", \"Walker\", role=\"ctb\"), person(\"Jun\", \"Yan\", role=\"ctb\"), person(\"Liviu\", \"Andronic\", role=\"ctb\"), person(\"Markus\", \"Loecher\", role=\"ctb\"), person(\"Martin\", \"Gubri\", role=\"ctb\"), person(\"Matthieu\", \"Stigler\", role=\"ctb\"), person(\"Robert\", \"Castelo\", role=\"ctb\"), person(\"Seth\", \"Falcon\", role=\"ctb\"), person(\"Stefan\", \"Edwards\", role=\"ctb\"), person(\"Sven\", \"Garbade\", role=\"ctb\"), person(\"Uwe\", \"Ligges\", role=\"ctb\"))", + "Maintainer": "David Scott ", + "Imports": [ + "stats", + "utils" + ], + "Suggests": [ + "knitr", + "plm", + "zoo", + "survival" + ], + "VignetteBuilder": "knitr", + "Description": "Coerce data to LaTeX and HTML tables.", + "URL": "http://xtable.r-forge.r-project.org/", + "Depends": [ + "R (>= 2.10.0)" + ], + "License": "GPL (>= 2)", + "Repository": "CRAN", + "NeedsCompilation": "no", + "Author": "David B. Dahl [aut], David Scott [aut, cre], Charles Roosen [aut], Arni Magnusson [aut], Jonathan Swinton [aut], Ajay Shah [ctb], Arne Henningsen [ctb], Benno Puetz [ctb], Bernhard Pfaff [ctb], Claudio Agostinelli [ctb], Claudius Loehnert [ctb], David Mitchell [ctb], David Whiting [ctb], Fernando da Rosa [ctb], Guido Gay [ctb], Guido Schulz [ctb], Ian Fellows [ctb], Jeff Laake [ctb], John Walker [ctb], Jun Yan [ctb], Liviu Andronic [ctb], Markus Loecher [ctb], Martin Gubri [ctb], Matthieu Stigler [ctb], Robert Castelo [ctb], Seth Falcon [ctb], Stefan Edwards [ctb], Sven Garbade [ctb], Uwe Ligges [ctb]", + "Encoding": "UTF-8" + }, + "xts": { + "Package": "xts", + "Version": "0.14.1", + "Source": "Repository", + "Type": "Package", + "Title": "eXtensible Time Series", + "Authors@R": "c( person(given=c(\"Jeffrey\",\"A.\"), family=\"Ryan\", role=c(\"aut\",\"cph\")), person(given=c(\"Joshua\",\"M.\"), family=\"Ulrich\", role=c(\"cre\",\"aut\"), email=\"josh.m.ulrich@gmail.com\"), person(given=\"Ross\", family=\"Bennett\", role=\"ctb\"), person(given=\"Corwin\", family=\"Joy\", role=\"ctb\") )", + "Depends": [ + "R (>= 3.6.0)", + "zoo (>= 1.7-12)" + ], + "Imports": [ + "methods" + ], + "LinkingTo": [ + "zoo" + ], + "Suggests": [ + "timeSeries", + "timeDate", + "tseries", + "chron", + "tinytest" + ], + "LazyLoad": "yes", + "Description": "Provide for uniform handling of R's different time-based data classes by extending zoo, maximizing native format information preservation and allowing for user level customization and extension, while simplifying cross-class interoperability.", + "License": "GPL (>= 2)", + "URL": "https://joshuaulrich.github.io/xts/, https://github.com/joshuaulrich/xts", + "BugReports": "https://github.com/joshuaulrich/xts/issues", + "Encoding": "UTF-8", + "NeedsCompilation": "yes", + "Author": "Jeffrey A. Ryan [aut, cph], Joshua M. Ulrich [cre, aut], Ross Bennett [ctb], Corwin Joy [ctb]", + "Maintainer": "Joshua M. Ulrich ", + "Repository": "CRAN" + }, + "yaml": { + "Package": "yaml", + "Version": "2.3.10", + "Source": "Repository", + "Type": "Package", + "Title": "Methods to Convert R Data to YAML and Back", + "Date": "2024-07-22", + "Suggests": [ + "RUnit" + ], + "Author": "Shawn P Garbett [aut], Jeremy Stephens [aut, cre], Kirill Simonov [aut], Yihui Xie [ctb], Zhuoer Dong [ctb], Hadley Wickham [ctb], Jeffrey Horner [ctb], reikoch [ctb], Will Beasley [ctb], Brendan O'Connor [ctb], Gregory R. Warnes [ctb], Michael Quinn [ctb], Zhian N. Kamvar [ctb], Charlie Gao [ctb]", + "Maintainer": "Shawn Garbett ", + "License": "BSD_3_clause + file LICENSE", + "Description": "Implements the 'libyaml' 'YAML' 1.1 parser and emitter () for R.", + "URL": "https://github.com/vubiostat/r-yaml/", + "BugReports": "https://github.com/vubiostat/r-yaml/issues", + "NeedsCompilation": "yes", + "Repository": "RSPM", + "Encoding": "UTF-8" + }, + "zip": { + "Package": "zip", + "Version": "2.3.3", + "Source": "Repository", + "Title": "Cross-Platform 'zip' Compression", + "Authors@R": "c( person(\"Gábor\", \"Csárdi\", , \"csardi.gabor@gmail.com\", role = c(\"aut\", \"cre\")), person(\"Kuba\", \"Podgórski\", role = \"ctb\"), person(\"Rich\", \"Geldreich\", role = \"ctb\"), person(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\"), comment = c(ROR = \"03wc8by49\")) )", + "Description": "Cross-Platform 'zip' Compression Library. A replacement for the 'zip' function, that does not require any additional external tools on any platform.", + "License": "MIT + file LICENSE", + "URL": "https://github.com/r-lib/zip, https://r-lib.github.io/zip/", + "BugReports": "https://github.com/r-lib/zip/issues", + "Suggests": [ + "covr", + "pillar", + "processx", + "R6", + "testthat", + "withr" + ], + "Config/Needs/website": "tidyverse/tidytemplate", + "Config/testthat/edition": "3", + "Config/usethis/last-upkeep": "2025-05-07", + "Encoding": "UTF-8", + "RoxygenNote": "7.3.2.9000", + "NeedsCompilation": "yes", + "Author": "Gábor Csárdi [aut, cre], Kuba Podgórski [ctb], Rich Geldreich [ctb], Posit Software, PBC [cph, fnd] (ROR: )", + "Maintainer": "Gábor Csárdi ", + "Repository": "CRAN" + }, + "zoo": { + "Package": "zoo", + "Version": "1.8-14", + "Source": "Repository", + "Date": "2025-04-09", + "Title": "S3 Infrastructure for Regular and Irregular Time Series (Z's Ordered Observations)", + "Authors@R": "c(person(given = \"Achim\", family = \"Zeileis\", role = c(\"aut\", \"cre\"), email = \"Achim.Zeileis@R-project.org\", comment = c(ORCID = \"0000-0003-0918-3766\")), person(given = \"Gabor\", family = \"Grothendieck\", role = \"aut\", email = \"ggrothendieck@gmail.com\"), person(given = c(\"Jeffrey\", \"A.\"), family = \"Ryan\", role = \"aut\", email = \"jeff.a.ryan@gmail.com\"), person(given = c(\"Joshua\", \"M.\"), family = \"Ulrich\", role = \"ctb\", email = \"josh.m.ulrich@gmail.com\"), person(given = \"Felix\", family = \"Andrews\", role = \"ctb\", email = \"felix@nfrac.org\"))", + "Description": "An S3 class with methods for totally ordered indexed observations. It is particularly aimed at irregular time series of numeric vectors/matrices and factors. zoo's key design goals are independence of a particular index/date/time class and consistency with ts and base R by providing methods to extend standard generics.", + "Depends": [ + "R (>= 3.1.0)", + "stats" + ], + "Suggests": [ + "AER", + "coda", + "chron", + "ggplot2 (>= 3.5.0)", + "mondate", + "scales", + "stinepack", + "strucchange", + "timeDate", + "timeSeries", + "tinyplot", + "tis", + "tseries", + "xts" + ], + "Imports": [ + "utils", + "graphics", + "grDevices", + "lattice (>= 0.20-27)" + ], + "License": "GPL-2 | GPL-3", + "URL": "https://zoo.R-Forge.R-project.org/", + "NeedsCompilation": "yes", + "Author": "Achim Zeileis [aut, cre] (), Gabor Grothendieck [aut], Jeffrey A. Ryan [aut], Joshua M. Ulrich [ctb], Felix Andrews [ctb]", + "Maintainer": "Achim Zeileis ", + "Repository": "CRAN", + "Encoding": "UTF-8" + } + } +} diff --git a/extensions/connect-user-metrics/renv/.gitignore b/extensions/connect-user-metrics/renv/.gitignore new file mode 100644 index 00000000..0ec0cbba --- /dev/null +++ b/extensions/connect-user-metrics/renv/.gitignore @@ -0,0 +1,7 @@ +library/ +local/ +cellar/ +lock/ +python/ +sandbox/ +staging/ diff --git a/extensions/connect-user-metrics/renv/activate.R b/extensions/connect-user-metrics/renv/activate.R new file mode 100644 index 00000000..90b251ca --- /dev/null +++ b/extensions/connect-user-metrics/renv/activate.R @@ -0,0 +1,1334 @@ + +local({ + + # the requested version of renv + version <- "1.1.4" + attr(version, "sha") <- NULL + + # the project directory + project <- Sys.getenv("RENV_PROJECT") + if (!nzchar(project)) + project <- getwd() + + # use start-up diagnostics if enabled + diagnostics <- Sys.getenv("RENV_STARTUP_DIAGNOSTICS", unset = "FALSE") + if (diagnostics) { + start <- Sys.time() + profile <- tempfile("renv-startup-", fileext = ".Rprof") + utils::Rprof(profile) + on.exit({ + utils::Rprof(NULL) + elapsed <- signif(difftime(Sys.time(), start, units = "auto"), digits = 2L) + writeLines(sprintf("- renv took %s to run the autoloader.", format(elapsed))) + writeLines(sprintf("- Profile: %s", profile)) + print(utils::summaryRprof(profile)) + }, add = TRUE) + } + + # figure out whether the autoloader is enabled + enabled <- local({ + + # first, check config option + override <- getOption("renv.config.autoloader.enabled") + if (!is.null(override)) + return(override) + + # if we're being run in a context where R_LIBS is already set, + # don't load -- presumably we're being run as a sub-process and + # the parent process has already set up library paths for us + rcmd <- Sys.getenv("R_CMD", unset = NA) + rlibs <- Sys.getenv("R_LIBS", unset = NA) + if (!is.na(rlibs) && !is.na(rcmd)) + return(FALSE) + + # next, check environment variables + # prefer using the configuration one in the future + envvars <- c( + "RENV_CONFIG_AUTOLOADER_ENABLED", + "RENV_AUTOLOADER_ENABLED", + "RENV_ACTIVATE_PROJECT" + ) + + for (envvar in envvars) { + envval <- Sys.getenv(envvar, unset = NA) + if (!is.na(envval)) + return(tolower(envval) %in% c("true", "t", "1")) + } + + # enable by default + TRUE + + }) + + # bail if we're not enabled + if (!enabled) { + + # if we're not enabled, we might still need to manually load + # the user profile here + profile <- Sys.getenv("R_PROFILE_USER", unset = "~/.Rprofile") + if (file.exists(profile)) { + cfg <- Sys.getenv("RENV_CONFIG_USER_PROFILE", unset = "TRUE") + if (tolower(cfg) %in% c("true", "t", "1")) + sys.source(profile, envir = globalenv()) + } + + return(FALSE) + + } + + # avoid recursion + if (identical(getOption("renv.autoloader.running"), TRUE)) { + warning("ignoring recursive attempt to run renv autoloader") + return(invisible(TRUE)) + } + + # signal that we're loading renv during R startup + options(renv.autoloader.running = TRUE) + on.exit(options(renv.autoloader.running = NULL), add = TRUE) + + # signal that we've consented to use renv + options(renv.consent = TRUE) + + # load the 'utils' package eagerly -- this ensures that renv shims, which + # mask 'utils' packages, will come first on the search path + library(utils, lib.loc = .Library) + + # unload renv if it's already been loaded + if ("renv" %in% loadedNamespaces()) + unloadNamespace("renv") + + # load bootstrap tools + ansify <- function(text) { + if (renv_ansify_enabled()) + renv_ansify_enhanced(text) + else + renv_ansify_default(text) + } + + renv_ansify_enabled <- function() { + + override <- Sys.getenv("RENV_ANSIFY_ENABLED", unset = NA) + if (!is.na(override)) + return(as.logical(override)) + + pane <- Sys.getenv("RSTUDIO_CHILD_PROCESS_PANE", unset = NA) + if (identical(pane, "build")) + return(FALSE) + + testthat <- Sys.getenv("TESTTHAT", unset = "false") + if (tolower(testthat) %in% "true") + return(FALSE) + + iderun <- Sys.getenv("R_CLI_HAS_HYPERLINK_IDE_RUN", unset = "false") + if (tolower(iderun) %in% "false") + return(FALSE) + + TRUE + + } + + renv_ansify_default <- function(text) { + text + } + + renv_ansify_enhanced <- function(text) { + + # R help links + pattern <- "`\\?(renv::(?:[^`])+)`" + replacement <- "`\033]8;;x-r-help:\\1\a?\\1\033]8;;\a`" + text <- gsub(pattern, replacement, text, perl = TRUE) + + # runnable code + pattern <- "`(renv::(?:[^`])+)`" + replacement <- "`\033]8;;x-r-run:\\1\a\\1\033]8;;\a`" + text <- gsub(pattern, replacement, text, perl = TRUE) + + # return ansified text + text + + } + + renv_ansify_init <- function() { + + envir <- renv_envir_self() + if (renv_ansify_enabled()) + assign("ansify", renv_ansify_enhanced, envir = envir) + else + assign("ansify", renv_ansify_default, envir = envir) + + } + + `%||%` <- function(x, y) { + if (is.null(x)) y else x + } + + catf <- function(fmt, ..., appendLF = TRUE) { + + quiet <- getOption("renv.bootstrap.quiet", default = FALSE) + if (quiet) + return(invisible()) + + msg <- sprintf(fmt, ...) + cat(msg, file = stdout(), sep = if (appendLF) "\n" else "") + + invisible(msg) + + } + + header <- function(label, + ..., + prefix = "#", + suffix = "-", + n = min(getOption("width"), 78)) + { + label <- sprintf(label, ...) + n <- max(n - nchar(label) - nchar(prefix) - 2L, 8L) + if (n <= 0) + return(paste(prefix, label)) + + tail <- paste(rep.int(suffix, n), collapse = "") + paste0(prefix, " ", label, " ", tail) + + } + + heredoc <- function(text, leave = 0) { + + # remove leading, trailing whitespace + trimmed <- gsub("^\\s*\\n|\\n\\s*$", "", text) + + # split into lines + lines <- strsplit(trimmed, "\n", fixed = TRUE)[[1L]] + + # compute common indent + indent <- regexpr("[^[:space:]]", lines) + common <- min(setdiff(indent, -1L)) - leave + text <- paste(substring(lines, common), collapse = "\n") + + # substitute in ANSI links for executable renv code + ansify(text) + + } + + bootstrap <- function(version, library) { + + friendly <- renv_bootstrap_version_friendly(version) + section <- header(sprintf("Bootstrapping renv %s", friendly)) + catf(section) + + # attempt to download renv + catf("- Downloading renv ... ", appendLF = FALSE) + withCallingHandlers( + tarball <- renv_bootstrap_download(version), + error = function(err) { + catf("FAILED") + stop("failed to download:\n", conditionMessage(err)) + } + ) + catf("OK") + on.exit(unlink(tarball), add = TRUE) + + # now attempt to install + catf("- Installing renv ... ", appendLF = FALSE) + withCallingHandlers( + status <- renv_bootstrap_install(version, tarball, library), + error = function(err) { + catf("FAILED") + stop("failed to install:\n", conditionMessage(err)) + } + ) + catf("OK") + + # add empty line to break up bootstrapping from normal output + catf("") + + return(invisible()) + } + + renv_bootstrap_tests_running <- function() { + getOption("renv.tests.running", default = FALSE) + } + + renv_bootstrap_repos <- function() { + + # get CRAN repository + cran <- getOption("renv.repos.cran", "https://cloud.r-project.org") + + # check for repos override + repos <- Sys.getenv("RENV_CONFIG_REPOS_OVERRIDE", unset = NA) + if (!is.na(repos)) { + + # check for RSPM; if set, use a fallback repository for renv + rspm <- Sys.getenv("RSPM", unset = NA) + if (identical(rspm, repos)) + repos <- c(RSPM = rspm, CRAN = cran) + + return(repos) + + } + + # check for lockfile repositories + repos <- tryCatch(renv_bootstrap_repos_lockfile(), error = identity) + if (!inherits(repos, "error") && length(repos)) + return(repos) + + # retrieve current repos + repos <- getOption("repos") + + # ensure @CRAN@ entries are resolved + repos[repos == "@CRAN@"] <- cran + + # add in renv.bootstrap.repos if set + default <- c(FALLBACK = "https://cloud.r-project.org") + extra <- getOption("renv.bootstrap.repos", default = default) + repos <- c(repos, extra) + + # remove duplicates that might've snuck in + dupes <- duplicated(repos) | duplicated(names(repos)) + repos[!dupes] + + } + + renv_bootstrap_repos_lockfile <- function() { + + lockpath <- Sys.getenv("RENV_PATHS_LOCKFILE", unset = "renv.lock") + if (!file.exists(lockpath)) + return(NULL) + + lockfile <- tryCatch(renv_json_read(lockpath), error = identity) + if (inherits(lockfile, "error")) { + warning(lockfile) + return(NULL) + } + + repos <- lockfile$R$Repositories + if (length(repos) == 0) + return(NULL) + + keys <- vapply(repos, `[[`, "Name", FUN.VALUE = character(1)) + vals <- vapply(repos, `[[`, "URL", FUN.VALUE = character(1)) + names(vals) <- keys + + return(vals) + + } + + renv_bootstrap_download <- function(version) { + + sha <- attr(version, "sha", exact = TRUE) + + methods <- if (!is.null(sha)) { + + # attempting to bootstrap a development version of renv + c( + function() renv_bootstrap_download_tarball(sha), + function() renv_bootstrap_download_github(sha) + ) + + } else { + + # attempting to bootstrap a release version of renv + c( + function() renv_bootstrap_download_tarball(version), + function() renv_bootstrap_download_cran_latest(version), + function() renv_bootstrap_download_cran_archive(version) + ) + + } + + for (method in methods) { + path <- tryCatch(method(), error = identity) + if (is.character(path) && file.exists(path)) + return(path) + } + + stop("All download methods failed") + + } + + renv_bootstrap_download_impl <- function(url, destfile) { + + mode <- "wb" + + # https://bugs.r-project.org/bugzilla/show_bug.cgi?id=17715 + fixup <- + Sys.info()[["sysname"]] == "Windows" && + substring(url, 1L, 5L) == "file:" + + if (fixup) + mode <- "w+b" + + args <- list( + url = url, + destfile = destfile, + mode = mode, + quiet = TRUE + ) + + if ("headers" %in% names(formals(utils::download.file))) { + headers <- renv_bootstrap_download_custom_headers(url) + if (length(headers) && is.character(headers)) + args$headers <- headers + } + + do.call(utils::download.file, args) + + } + + renv_bootstrap_download_custom_headers <- function(url) { + + headers <- getOption("renv.download.headers") + if (is.null(headers)) + return(character()) + + if (!is.function(headers)) + stopf("'renv.download.headers' is not a function") + + headers <- headers(url) + if (length(headers) == 0L) + return(character()) + + if (is.list(headers)) + headers <- unlist(headers, recursive = FALSE, use.names = TRUE) + + ok <- + is.character(headers) && + is.character(names(headers)) && + all(nzchar(names(headers))) + + if (!ok) + stop("invocation of 'renv.download.headers' did not return a named character vector") + + headers + + } + + renv_bootstrap_download_cran_latest <- function(version) { + + spec <- renv_bootstrap_download_cran_latest_find(version) + type <- spec$type + repos <- spec$repos + + baseurl <- utils::contrib.url(repos = repos, type = type) + ext <- if (identical(type, "source")) + ".tar.gz" + else if (Sys.info()[["sysname"]] == "Windows") + ".zip" + else + ".tgz" + name <- sprintf("renv_%s%s", version, ext) + url <- paste(baseurl, name, sep = "/") + + destfile <- file.path(tempdir(), name) + status <- tryCatch( + renv_bootstrap_download_impl(url, destfile), + condition = identity + ) + + if (inherits(status, "condition")) + return(FALSE) + + # report success and return + destfile + + } + + renv_bootstrap_download_cran_latest_find <- function(version) { + + # check whether binaries are supported on this system + binary <- + getOption("renv.bootstrap.binary", default = TRUE) && + !identical(.Platform$pkgType, "source") && + !identical(getOption("pkgType"), "source") && + Sys.info()[["sysname"]] %in% c("Darwin", "Windows") + + types <- c(if (binary) "binary", "source") + + # iterate over types + repositories + for (type in types) { + for (repos in renv_bootstrap_repos()) { + + # build arguments for utils::available.packages() call + args <- list(type = type, repos = repos) + + # add custom headers if available -- note that + # utils::available.packages() will pass this to download.file() + if ("headers" %in% names(formals(utils::download.file))) { + headers <- renv_bootstrap_download_custom_headers(repos) + if (length(headers) && is.character(headers)) + args$headers <- headers + } + + # retrieve package database + db <- tryCatch( + as.data.frame( + do.call(utils::available.packages, args), + stringsAsFactors = FALSE + ), + error = identity + ) + + if (inherits(db, "error")) + next + + # check for compatible entry + entry <- db[db$Package %in% "renv" & db$Version %in% version, ] + if (nrow(entry) == 0) + next + + # found it; return spec to caller + spec <- list(entry = entry, type = type, repos = repos) + return(spec) + + } + } + + # if we got here, we failed to find renv + fmt <- "renv %s is not available from your declared package repositories" + stop(sprintf(fmt, version)) + + } + + renv_bootstrap_download_cran_archive <- function(version) { + + name <- sprintf("renv_%s.tar.gz", version) + repos <- renv_bootstrap_repos() + urls <- file.path(repos, "src/contrib/Archive/renv", name) + destfile <- file.path(tempdir(), name) + + for (url in urls) { + + status <- tryCatch( + renv_bootstrap_download_impl(url, destfile), + condition = identity + ) + + if (identical(status, 0L)) + return(destfile) + + } + + return(FALSE) + + } + + renv_bootstrap_download_tarball <- function(version) { + + # if the user has provided the path to a tarball via + # an environment variable, then use it + tarball <- Sys.getenv("RENV_BOOTSTRAP_TARBALL", unset = NA) + if (is.na(tarball)) + return() + + # allow directories + if (dir.exists(tarball)) { + name <- sprintf("renv_%s.tar.gz", version) + tarball <- file.path(tarball, name) + } + + # bail if it doesn't exist + if (!file.exists(tarball)) { + + # let the user know we weren't able to honour their request + fmt <- "- RENV_BOOTSTRAP_TARBALL is set (%s) but does not exist." + msg <- sprintf(fmt, tarball) + warning(msg) + + # bail + return() + + } + + catf("- Using local tarball '%s'.", tarball) + tarball + + } + + renv_bootstrap_github_token <- function() { + for (envvar in c("GITHUB_TOKEN", "GITHUB_PAT", "GH_TOKEN")) { + envval <- Sys.getenv(envvar, unset = NA) + if (!is.na(envval)) + return(envval) + } + } + + renv_bootstrap_download_github <- function(version) { + + enabled <- Sys.getenv("RENV_BOOTSTRAP_FROM_GITHUB", unset = "TRUE") + if (!identical(enabled, "TRUE")) + return(FALSE) + + # prepare download options + token <- renv_bootstrap_github_token() + if (is.null(token)) + token <- "" + + if (nzchar(Sys.which("curl")) && nzchar(token)) { + fmt <- "--location --fail --header \"Authorization: token %s\"" + extra <- sprintf(fmt, token) + saved <- options("download.file.method", "download.file.extra") + options(download.file.method = "curl", download.file.extra = extra) + on.exit(do.call(base::options, saved), add = TRUE) + } else if (nzchar(Sys.which("wget")) && nzchar(token)) { + fmt <- "--header=\"Authorization: token %s\"" + extra <- sprintf(fmt, token) + saved <- options("download.file.method", "download.file.extra") + options(download.file.method = "wget", download.file.extra = extra) + on.exit(do.call(base::options, saved), add = TRUE) + } + + url <- file.path("https://api.github.com/repos/rstudio/renv/tarball", version) + name <- sprintf("renv_%s.tar.gz", version) + destfile <- file.path(tempdir(), name) + + status <- tryCatch( + renv_bootstrap_download_impl(url, destfile), + condition = identity + ) + + if (!identical(status, 0L)) + return(FALSE) + + renv_bootstrap_download_augment(destfile) + + return(destfile) + + } + + # Add Sha to DESCRIPTION. This is stop gap until #890, after which we + # can use renv::install() to fully capture metadata. + renv_bootstrap_download_augment <- function(destfile) { + sha <- renv_bootstrap_git_extract_sha1_tar(destfile) + if (is.null(sha)) { + return() + } + + # Untar + tempdir <- tempfile("renv-github-") + on.exit(unlink(tempdir, recursive = TRUE), add = TRUE) + untar(destfile, exdir = tempdir) + pkgdir <- dir(tempdir, full.names = TRUE)[[1]] + + # Modify description + desc_path <- file.path(pkgdir, "DESCRIPTION") + desc_lines <- readLines(desc_path) + remotes_fields <- c( + "RemoteType: github", + "RemoteHost: api.github.com", + "RemoteRepo: renv", + "RemoteUsername: rstudio", + "RemotePkgRef: rstudio/renv", + paste("RemoteRef: ", sha), + paste("RemoteSha: ", sha) + ) + writeLines(c(desc_lines[desc_lines != ""], remotes_fields), con = desc_path) + + # Re-tar + local({ + old <- setwd(tempdir) + on.exit(setwd(old), add = TRUE) + + tar(destfile, compression = "gzip") + }) + invisible() + } + + # Extract the commit hash from a git archive. Git archives include the SHA1 + # hash as the comment field of the tarball pax extended header + # (see https://www.kernel.org/pub/software/scm/git/docs/git-archive.html) + # For GitHub archives this should be the first header after the default one + # (512 byte) header. + renv_bootstrap_git_extract_sha1_tar <- function(bundle) { + + # open the bundle for reading + # We use gzcon for everything because (from ?gzcon) + # > Reading from a connection which does not supply a 'gzip' magic + # > header is equivalent to reading from the original connection + conn <- gzcon(file(bundle, open = "rb", raw = TRUE)) + on.exit(close(conn)) + + # The default pax header is 512 bytes long and the first pax extended header + # with the comment should be 51 bytes long + # `52 comment=` (11 chars) + 40 byte SHA1 hash + len <- 0x200 + 0x33 + res <- rawToChar(readBin(conn, "raw", n = len)[0x201:len]) + + if (grepl("^52 comment=", res)) { + sub("52 comment=", "", res) + } else { + NULL + } + } + + renv_bootstrap_install <- function(version, tarball, library) { + + # attempt to install it into project library + dir.create(library, showWarnings = FALSE, recursive = TRUE) + output <- renv_bootstrap_install_impl(library, tarball) + + # check for successful install + status <- attr(output, "status") + if (is.null(status) || identical(status, 0L)) + return(status) + + # an error occurred; report it + header <- "installation of renv failed" + lines <- paste(rep.int("=", nchar(header)), collapse = "") + text <- paste(c(header, lines, output), collapse = "\n") + stop(text) + + } + + renv_bootstrap_install_impl <- function(library, tarball) { + + # invoke using system2 so we can capture and report output + bin <- R.home("bin") + exe <- if (Sys.info()[["sysname"]] == "Windows") "R.exe" else "R" + R <- file.path(bin, exe) + + args <- c( + "--vanilla", "CMD", "INSTALL", "--no-multiarch", + "-l", shQuote(path.expand(library)), + shQuote(path.expand(tarball)) + ) + + system2(R, args, stdout = TRUE, stderr = TRUE) + + } + + renv_bootstrap_platform_prefix_default <- function() { + + # read version component + version <- Sys.getenv("RENV_PATHS_VERSION", unset = "R-%v") + + # expand placeholders + placeholders <- list( + list("%v", format(getRversion()[1, 1:2])), + list("%V", format(getRversion()[1, 1:3])) + ) + + for (placeholder in placeholders) + version <- gsub(placeholder[[1L]], placeholder[[2L]], version, fixed = TRUE) + + # include SVN revision for development versions of R + # (to avoid sharing platform-specific artefacts with released versions of R) + devel <- + identical(R.version[["status"]], "Under development (unstable)") || + identical(R.version[["nickname"]], "Unsuffered Consequences") + + if (devel) + version <- paste(version, R.version[["svn rev"]], sep = "-r") + + version + + } + + renv_bootstrap_platform_prefix <- function() { + + # construct version prefix + version <- renv_bootstrap_platform_prefix_default() + + # build list of path components + components <- c(version, R.version$platform) + + # include prefix if provided by user + prefix <- renv_bootstrap_platform_prefix_impl() + if (!is.na(prefix) && nzchar(prefix)) + components <- c(prefix, components) + + # build prefix + paste(components, collapse = "/") + + } + + renv_bootstrap_platform_prefix_impl <- function() { + + # if an explicit prefix has been supplied, use it + prefix <- Sys.getenv("RENV_PATHS_PREFIX", unset = NA) + if (!is.na(prefix)) + return(prefix) + + # if the user has requested an automatic prefix, generate it + auto <- Sys.getenv("RENV_PATHS_PREFIX_AUTO", unset = NA) + if (is.na(auto) && getRversion() >= "4.4.0") + auto <- "TRUE" + + if (auto %in% c("TRUE", "True", "true", "1")) + return(renv_bootstrap_platform_prefix_auto()) + + # empty string on failure + "" + + } + + renv_bootstrap_platform_prefix_auto <- function() { + + prefix <- tryCatch(renv_bootstrap_platform_os(), error = identity) + if (inherits(prefix, "error") || prefix %in% "unknown") { + + msg <- paste( + "failed to infer current operating system", + "please file a bug report at https://github.com/rstudio/renv/issues", + sep = "; " + ) + + warning(msg) + + } + + prefix + + } + + renv_bootstrap_platform_os <- function() { + + sysinfo <- Sys.info() + sysname <- sysinfo[["sysname"]] + + # handle Windows + macOS up front + if (sysname == "Windows") + return("windows") + else if (sysname == "Darwin") + return("macos") + + # check for os-release files + for (file in c("/etc/os-release", "/usr/lib/os-release")) + if (file.exists(file)) + return(renv_bootstrap_platform_os_via_os_release(file, sysinfo)) + + # check for redhat-release files + if (file.exists("/etc/redhat-release")) + return(renv_bootstrap_platform_os_via_redhat_release()) + + "unknown" + + } + + renv_bootstrap_platform_os_via_os_release <- function(file, sysinfo) { + + # read /etc/os-release + release <- utils::read.table( + file = file, + sep = "=", + quote = c("\"", "'"), + col.names = c("Key", "Value"), + comment.char = "#", + stringsAsFactors = FALSE + ) + + vars <- as.list(release$Value) + names(vars) <- release$Key + + # get os name + os <- tolower(sysinfo[["sysname"]]) + + # read id + id <- "unknown" + for (field in c("ID", "ID_LIKE")) { + if (field %in% names(vars) && nzchar(vars[[field]])) { + id <- vars[[field]] + break + } + } + + # read version + version <- "unknown" + for (field in c("UBUNTU_CODENAME", "VERSION_CODENAME", "VERSION_ID", "BUILD_ID")) { + if (field %in% names(vars) && nzchar(vars[[field]])) { + version <- vars[[field]] + break + } + } + + # join together + paste(c(os, id, version), collapse = "-") + + } + + renv_bootstrap_platform_os_via_redhat_release <- function() { + + # read /etc/redhat-release + contents <- readLines("/etc/redhat-release", warn = FALSE) + + # infer id + id <- if (grepl("centos", contents, ignore.case = TRUE)) + "centos" + else if (grepl("redhat", contents, ignore.case = TRUE)) + "redhat" + else + "unknown" + + # try to find a version component (very hacky) + version <- "unknown" + + parts <- strsplit(contents, "[[:space:]]")[[1L]] + for (part in parts) { + + nv <- tryCatch(numeric_version(part), error = identity) + if (inherits(nv, "error")) + next + + version <- nv[1, 1] + break + + } + + paste(c("linux", id, version), collapse = "-") + + } + + renv_bootstrap_library_root_name <- function(project) { + + # use project name as-is if requested + asis <- Sys.getenv("RENV_PATHS_LIBRARY_ROOT_ASIS", unset = "FALSE") + if (asis) + return(basename(project)) + + # otherwise, disambiguate based on project's path + id <- substring(renv_bootstrap_hash_text(project), 1L, 8L) + paste(basename(project), id, sep = "-") + + } + + renv_bootstrap_library_root <- function(project) { + + prefix <- renv_bootstrap_profile_prefix() + + path <- Sys.getenv("RENV_PATHS_LIBRARY", unset = NA) + if (!is.na(path)) + return(paste(c(path, prefix), collapse = "/")) + + path <- renv_bootstrap_library_root_impl(project) + if (!is.null(path)) { + name <- renv_bootstrap_library_root_name(project) + return(paste(c(path, prefix, name), collapse = "/")) + } + + renv_bootstrap_paths_renv("library", project = project) + + } + + renv_bootstrap_library_root_impl <- function(project) { + + root <- Sys.getenv("RENV_PATHS_LIBRARY_ROOT", unset = NA) + if (!is.na(root)) + return(root) + + type <- renv_bootstrap_project_type(project) + if (identical(type, "package")) { + userdir <- renv_bootstrap_user_dir() + return(file.path(userdir, "library")) + } + + } + + renv_bootstrap_validate_version <- function(version, description = NULL) { + + # resolve description file + # + # avoid passing lib.loc to `packageDescription()` below, since R will + # use the loaded version of the package by default anyhow. note that + # this function should only be called after 'renv' is loaded + # https://github.com/rstudio/renv/issues/1625 + description <- description %||% packageDescription("renv") + + # check whether requested version 'version' matches loaded version of renv + sha <- attr(version, "sha", exact = TRUE) + valid <- if (!is.null(sha)) + renv_bootstrap_validate_version_dev(sha, description) + else + renv_bootstrap_validate_version_release(version, description) + + if (valid) + return(TRUE) + + # the loaded version of renv doesn't match the requested version; + # give the user instructions on how to proceed + dev <- identical(description[["RemoteType"]], "github") + remote <- if (dev) + paste("rstudio/renv", description[["RemoteSha"]], sep = "@") + else + paste("renv", description[["Version"]], sep = "@") + + # display both loaded version + sha if available + friendly <- renv_bootstrap_version_friendly( + version = description[["Version"]], + sha = if (dev) description[["RemoteSha"]] + ) + + fmt <- heredoc(" + renv %1$s was loaded from project library, but this project is configured to use renv %2$s. + - Use `renv::record(\"%3$s\")` to record renv %1$s in the lockfile. + - Use `renv::restore(packages = \"renv\")` to install renv %2$s into the project library. + ") + catf(fmt, friendly, renv_bootstrap_version_friendly(version), remote) + + FALSE + + } + + renv_bootstrap_validate_version_dev <- function(version, description) { + + expected <- description[["RemoteSha"]] + if (!is.character(expected)) + return(FALSE) + + pattern <- sprintf("^\\Q%s\\E", version) + grepl(pattern, expected, perl = TRUE) + + } + + renv_bootstrap_validate_version_release <- function(version, description) { + expected <- description[["Version"]] + is.character(expected) && identical(expected, version) + } + + renv_bootstrap_hash_text <- function(text) { + + hashfile <- tempfile("renv-hash-") + on.exit(unlink(hashfile), add = TRUE) + + writeLines(text, con = hashfile) + tools::md5sum(hashfile) + + } + + renv_bootstrap_load <- function(project, libpath, version) { + + # try to load renv from the project library + if (!requireNamespace("renv", lib.loc = libpath, quietly = TRUE)) + return(FALSE) + + # warn if the version of renv loaded does not match + renv_bootstrap_validate_version(version) + + # execute renv load hooks, if any + hooks <- getHook("renv::autoload") + for (hook in hooks) + if (is.function(hook)) + tryCatch(hook(), error = warnify) + + # load the project + renv::load(project) + + TRUE + + } + + renv_bootstrap_profile_load <- function(project) { + + # if RENV_PROFILE is already set, just use that + profile <- Sys.getenv("RENV_PROFILE", unset = NA) + if (!is.na(profile) && nzchar(profile)) + return(profile) + + # check for a profile file (nothing to do if it doesn't exist) + path <- renv_bootstrap_paths_renv("profile", profile = FALSE, project = project) + if (!file.exists(path)) + return(NULL) + + # read the profile, and set it if it exists + contents <- readLines(path, warn = FALSE) + if (length(contents) == 0L) + return(NULL) + + # set RENV_PROFILE + profile <- contents[[1L]] + if (!profile %in% c("", "default")) + Sys.setenv(RENV_PROFILE = profile) + + profile + + } + + renv_bootstrap_profile_prefix <- function() { + profile <- renv_bootstrap_profile_get() + if (!is.null(profile)) + return(file.path("profiles", profile, "renv")) + } + + renv_bootstrap_profile_get <- function() { + profile <- Sys.getenv("RENV_PROFILE", unset = "") + renv_bootstrap_profile_normalize(profile) + } + + renv_bootstrap_profile_set <- function(profile) { + profile <- renv_bootstrap_profile_normalize(profile) + if (is.null(profile)) + Sys.unsetenv("RENV_PROFILE") + else + Sys.setenv(RENV_PROFILE = profile) + } + + renv_bootstrap_profile_normalize <- function(profile) { + + if (is.null(profile) || profile %in% c("", "default")) + return(NULL) + + profile + + } + + renv_bootstrap_path_absolute <- function(path) { + + substr(path, 1L, 1L) %in% c("~", "/", "\\") || ( + substr(path, 1L, 1L) %in% c(letters, LETTERS) && + substr(path, 2L, 3L) %in% c(":/", ":\\") + ) + + } + + renv_bootstrap_paths_renv <- function(..., profile = TRUE, project = NULL) { + renv <- Sys.getenv("RENV_PATHS_RENV", unset = "renv") + root <- if (renv_bootstrap_path_absolute(renv)) NULL else project + prefix <- if (profile) renv_bootstrap_profile_prefix() + components <- c(root, renv, prefix, ...) + paste(components, collapse = "/") + } + + renv_bootstrap_project_type <- function(path) { + + descpath <- file.path(path, "DESCRIPTION") + if (!file.exists(descpath)) + return("unknown") + + desc <- tryCatch( + read.dcf(descpath, all = TRUE), + error = identity + ) + + if (inherits(desc, "error")) + return("unknown") + + type <- desc$Type + if (!is.null(type)) + return(tolower(type)) + + package <- desc$Package + if (!is.null(package)) + return("package") + + "unknown" + + } + + renv_bootstrap_user_dir <- function() { + dir <- renv_bootstrap_user_dir_impl() + path.expand(chartr("\\", "/", dir)) + } + + renv_bootstrap_user_dir_impl <- function() { + + # use local override if set + override <- getOption("renv.userdir.override") + if (!is.null(override)) + return(override) + + # use R_user_dir if available + tools <- asNamespace("tools") + if (is.function(tools$R_user_dir)) + return(tools$R_user_dir("renv", "cache")) + + # try using our own backfill for older versions of R + envvars <- c("R_USER_CACHE_DIR", "XDG_CACHE_HOME") + for (envvar in envvars) { + root <- Sys.getenv(envvar, unset = NA) + if (!is.na(root)) + return(file.path(root, "R/renv")) + } + + # use platform-specific default fallbacks + if (Sys.info()[["sysname"]] == "Windows") + file.path(Sys.getenv("LOCALAPPDATA"), "R/cache/R/renv") + else if (Sys.info()[["sysname"]] == "Darwin") + "~/Library/Caches/org.R-project.R/R/renv" + else + "~/.cache/R/renv" + + } + + renv_bootstrap_version_friendly <- function(version, shafmt = NULL, sha = NULL) { + sha <- sha %||% attr(version, "sha", exact = TRUE) + parts <- c(version, sprintf(shafmt %||% " [sha: %s]", substring(sha, 1L, 7L))) + paste(parts, collapse = "") + } + + renv_bootstrap_exec <- function(project, libpath, version) { + if (!renv_bootstrap_load(project, libpath, version)) + renv_bootstrap_run(project, libpath, version) + } + + renv_bootstrap_run <- function(project, libpath, version) { + + # perform bootstrap + bootstrap(version, libpath) + + # exit early if we're just testing bootstrap + if (!is.na(Sys.getenv("RENV_BOOTSTRAP_INSTALL_ONLY", unset = NA))) + return(TRUE) + + # try again to load + if (requireNamespace("renv", lib.loc = libpath, quietly = TRUE)) { + return(renv::load(project = project)) + } + + # failed to download or load renv; warn the user + msg <- c( + "Failed to find an renv installation: the project will not be loaded.", + "Use `renv::activate()` to re-initialize the project." + ) + + warning(paste(msg, collapse = "\n"), call. = FALSE) + + } + + renv_json_read <- function(file = NULL, text = NULL) { + + jlerr <- NULL + + # if jsonlite is loaded, use that instead + if ("jsonlite" %in% loadedNamespaces()) { + + json <- tryCatch(renv_json_read_jsonlite(file, text), error = identity) + if (!inherits(json, "error")) + return(json) + + jlerr <- json + + } + + # otherwise, fall back to the default JSON reader + json <- tryCatch(renv_json_read_default(file, text), error = identity) + if (!inherits(json, "error")) + return(json) + + # report an error + if (!is.null(jlerr)) + stop(jlerr) + else + stop(json) + + } + + renv_json_read_jsonlite <- function(file = NULL, text = NULL) { + text <- paste(text %||% readLines(file, warn = FALSE), collapse = "\n") + jsonlite::fromJSON(txt = text, simplifyVector = FALSE) + } + + renv_json_read_patterns <- function() { + + list( + + # objects + list("{", "\t\n\tobject(\t\n\t", TRUE), + list("}", "\t\n\t)\t\n\t", TRUE), + + # arrays + list("[", "\t\n\tarray(\t\n\t", TRUE), + list("]", "\n\t\n)\n\t\n", TRUE), + + # maps + list(":", "\t\n\t=\t\n\t", TRUE), + + # newlines + list("\\u000a", "\n", FALSE) + + ) + + } + + renv_json_read_envir <- function() { + + envir <- new.env(parent = emptyenv()) + + envir[["+"]] <- `+` + envir[["-"]] <- `-` + + envir[["object"]] <- function(...) { + result <- list(...) + names(result) <- as.character(names(result)) + result + } + + envir[["array"]] <- list + + envir[["true"]] <- TRUE + envir[["false"]] <- FALSE + envir[["null"]] <- NULL + + envir + + } + + renv_json_read_remap <- function(object, patterns) { + + # repair names if necessary + if (!is.null(names(object))) { + + nms <- names(object) + for (pattern in patterns) + nms <- gsub(pattern[[2L]], pattern[[1L]], nms, fixed = TRUE) + names(object) <- nms + + } + + # repair strings if necessary + if (is.character(object)) { + for (pattern in patterns) + object <- gsub(pattern[[2L]], pattern[[1L]], object, fixed = TRUE) + } + + # recurse for other objects + if (is.recursive(object)) + for (i in seq_along(object)) + object[i] <- list(renv_json_read_remap(object[[i]], patterns)) + + # return remapped object + object + + } + + renv_json_read_default <- function(file = NULL, text = NULL) { + + # read json text + text <- paste(text %||% readLines(file, warn = FALSE), collapse = "\n") + + # convert into something the R parser will understand + patterns <- renv_json_read_patterns() + transformed <- text + for (pattern in patterns) + transformed <- gsub(pattern[[1L]], pattern[[2L]], transformed, fixed = TRUE) + + # parse it + rfile <- tempfile("renv-json-", fileext = ".R") + on.exit(unlink(rfile), add = TRUE) + writeLines(transformed, con = rfile) + json <- parse(rfile, keep.source = FALSE, srcfile = NULL)[[1L]] + + # evaluate in safe environment + result <- eval(json, envir = renv_json_read_envir()) + + # fix up strings if necessary -- do so only with reversible patterns + patterns <- Filter(function(pattern) pattern[[3L]], patterns) + renv_json_read_remap(result, patterns) + + } + + + # load the renv profile, if any + renv_bootstrap_profile_load(project) + + # construct path to library root + root <- renv_bootstrap_library_root(project) + + # construct library prefix for platform + prefix <- renv_bootstrap_platform_prefix() + + # construct full libpath + libpath <- file.path(root, prefix) + + # run bootstrap code + renv_bootstrap_exec(project, libpath, version) + + invisible() + +}) diff --git a/extensions/connect-user-metrics/renv/settings.json b/extensions/connect-user-metrics/renv/settings.json new file mode 100644 index 00000000..ffdbb320 --- /dev/null +++ b/extensions/connect-user-metrics/renv/settings.json @@ -0,0 +1,19 @@ +{ + "bioconductor.version": null, + "external.libraries": [], + "ignored.packages": [], + "package.dependency.fields": [ + "Imports", + "Depends", + "LinkingTo" + ], + "ppm.enabled": null, + "ppm.ignored.urls": [], + "r.version": null, + "snapshot.type": "implicit", + "use.cache": true, + "vcs.ignore.cellar": true, + "vcs.ignore.library": true, + "vcs.ignore.local": true, + "vcs.manage.ignores": true +} diff --git a/extensions/connect-user-metrics/rhino.yml b/extensions/connect-user-metrics/rhino.yml new file mode 100644 index 00000000..fea13278 --- /dev/null +++ b/extensions/connect-user-metrics/rhino.yml @@ -0,0 +1 @@ +sass: node diff --git a/extensions/connect-user-metrics/tests/testthat.R b/extensions/connect-user-metrics/tests/testthat.R new file mode 100644 index 00000000..7d25b5b9 --- /dev/null +++ b/extensions/connect-user-metrics/tests/testthat.R @@ -0,0 +1 @@ +shinytest2::test_app() diff --git a/extensions/connect-user-metrics/tests/testthat/setup.R b/extensions/connect-user-metrics/tests/testthat/setup.R new file mode 100644 index 00000000..8fcd2b8b --- /dev/null +++ b/extensions/connect-user-metrics/tests/testthat/setup.R @@ -0,0 +1,2 @@ +# Load application support files into testing environment +shinytest2::load_app_env() # nolint: namespaced_function_calls diff --git a/extensions/connect-user-metrics/tests/testthat/test-aggregation.R b/extensions/connect-user-metrics/tests/testthat/test-aggregation.R new file mode 100644 index 00000000..187bd483 --- /dev/null +++ b/extensions/connect-user-metrics/tests/testthat/test-aggregation.R @@ -0,0 +1,206 @@ +box::use( + dplyr[mutate, select, tibble], + lubridate[as_datetime], + magrittr[`%>%`], + testthat[describe, expect_equal, it], + tools[toTitleCase], +) + +box::use( + app/logic/aggregation[format_agg_usage, process_agg_usage], + app/logic/utils[week_start_day], +) + +describe("process_agg_usage", { + # Setup test data to match real data structure + test_usage <- data.frame( + content_guid = c("app1", "app1", "app1", "app2"), + user_guid = c("user1", "user1", "user2", "user1"), + started = as_datetime(c( + "2024-01-01 10:00:00", "2024-01-01 11:00:00", + "2024-01-01 12:00:00", "2024-01-02 10:00:00" + )), + ended = as_datetime(c( + "2024-01-01 10:30:00", "2024-01-01 11:30:00", + "2024-01-01 13:00:00", "2024-01-02 11:00:00" + )), + stringsAsFactors = FALSE + ) %>% + mutate( + duration = as.numeric(ended - started, units = "secs"), + start_date = as.Date(started), + title = ifelse(content_guid == "app1", "App One", "App Two"), + username = ifelse(user_guid == "user1", "User One", "User Two") + ) + + test_apps <- data.frame( + guid = c("app1", "app2"), + title = c("App One", "App Two"), + stringsAsFactors = FALSE + ) + + test_users <- data.frame( + guid = c("user1", "user2"), + username = c("User One", "User Two"), + stringsAsFactors = FALSE + ) + + it("aggregates by start_date", { + result <- process_agg_usage( + usage = test_usage, + agg_levels = "start_date", + date_aggregation = "day", + apps = test_apps, + users = test_users + ) + + expect_equal(nrow(result), 2) # One row per date + expect_equal(as.character(sort(result$start_date)), c("2024-01-01", "2024-01-02")) + expect_equal(sort(result$`Session count`), c(1, 3)) # 1 session on day 2, 3 on day 1 + expect_equal(sort(result$`Unique users`), c(1, 2)) # 1 user on day 2, 2 users on day 1 + expect_equal( + sort(result$avg_duration), c(2400, 3600) + ) # Day 1: avg(1800,1800,3600)=2400, Day 2: 3600 + }) + + it("aggregates by content_guid and start_date", { + result <- process_agg_usage( + usage = test_usage, + agg_levels = c("content_guid", "start_date"), + date_aggregation = "day", + apps = test_apps, + users = test_users + ) + + expect_equal(nrow(result), 2) # app1-day1, app2-day2 + expect_equal(sort(result$title), c("App One", "App Two")) + expect_equal(as.character(sort(unique(result$start_date))), c("2024-01-01", "2024-01-02")) + expect_equal(sort(result$`Session count`), c(1, 3)) # app2-day2: 1, app1-day1: 3 + expect_equal(sort(result$`Unique users`), c(1, 2)) # app2-day2: 1 user, app1-day1: 2 users + }) + + it("aggregates by content_guid and user_guid", { + result <- process_agg_usage( + usage = test_usage, + agg_levels = c("content_guid", "user_guid"), + date_aggregation = "day", + apps = test_apps, + users = test_users + ) + + expect_equal(nrow(result), 3) # user1-app1, user2-app1, user1-app2 + expect_equal(sort(result$title), c("App One", "App One", "App Two")) + expect_equal(sort(result$username), c("User One", "User One", "User Two")) + expect_equal( + sort(result$`Session count`), c(1, 1, 2) + ) # user2-app1: 1, user1-app2: 1, user1-app1: 2 + }) +}) + +describe("format_agg_usage", { + # Setup test data + test_agg_data <- tibble( + title = c("App One", "App Two"), + username = c("User One", "User Two"), + start_date = as.Date(c("2024-01-01", "2024-01-02")), + `Session count` = c(3, 1), + `Unique users` = c(2, 1), + avg_duration = c(2400, 3600), + content_guid = c("abc123", "def456") + ) + + mock_format_duration <- function(x) { + paste(round(x / 60), "minutes") + } + + it("formats daily aggregation correctly", { + result <- format_agg_usage(test_agg_data, "day", mock_format_duration) + + expect_equal( + colnames(result), + c( + "Application", "Username", "Date", "Session count", + "Unique users", "Average session duration" + ) + ) + expect_equal( + result$`Average session duration`, + c("40 minutes", "60 minutes") + ) + }) + + it("formats weekly aggregation correctly", { + result <- format_agg_usage(test_agg_data, "week", mock_format_duration) + + expect_equal( + colnames(result), + c( + "Application", "Username", + paste(toTitleCase(week_start_day), "Date"), + "Session count", "Unique users", "Average session duration" + ) + ) + expect_equal( + result$`Average session duration`, + c("40 minutes", "60 minutes") + ) + }) + + it("formats monthly aggregation correctly", { + result <- format_agg_usage(test_agg_data, "month", mock_format_duration) + expect_equal( + colnames(result), + c( + "Application", "Username", "Month", "Session count", + "Unique users", "Average session duration" + ) + ) + expect_equal( + result$`Average session duration`, + c("40 minutes", "60 minutes") + ) + }) + + it("handles missing username column", { + data_no_username <- test_agg_data %>% + select(-username) + + result <- format_agg_usage(data_no_username, "day", mock_format_duration) + expect_equal( + colnames(result), + c( + "Application", "Date", "Session count", + "Unique users", "Average session duration" + ) + ) + }) + + it("handles missing title column", { + data_no_title <- test_agg_data %>% + select(-title) + + result <- format_agg_usage(data_no_title, "day", mock_format_duration) + expect_equal( + colnames(result), + c( + "Username", "Date", "Session count", + "Unique users", "Average session duration" + ) + ) + }) + + it("handles data with only required columns", { + minimal_data <- tibble( + start_date = as.Date(c("2024-01-01", "2024-01-02")), + `Session count` = c(3, 1), + `Unique users` = c(2, 1), + avg_duration = c(2400, 3600) + ) + + result <- format_agg_usage(minimal_data, "day", mock_format_duration) + expect_equal( + colnames(result), + c("Date", "Session count", "Unique users", "Average session duration") + ) + }) +}) diff --git a/extensions/connect-user-metrics/tests/testthat/test-charts.R b/extensions/connect-user-metrics/tests/testthat/test-charts.R new file mode 100644 index 00000000..3ed84d6b --- /dev/null +++ b/extensions/connect-user-metrics/tests/testthat/test-charts.R @@ -0,0 +1,69 @@ +box::use( + checkmate[expect_data_frame], + testthat[context, test_that], +) + +box::use( + app/logic/charts, +) + +impl <- attr(charts, "namespace") + +context("charts date_zero_value_fillter()") + +test_that("returns data as is when start date equals to end date", { + test_data <- data.frame( + start_date = as.Date(c("2022-10-01")), + values = 5 + ) + + date_range <- as.Date(c("2022-10-01", "2022-10-01")) # 1 day + + result <- impl$date_zero_value_filler(test_data, date_range, "day") + + expect_data_frame(result, nrows = 1) +}) + +test_that("it fills up by day", { + test_data <- data.frame( + start_date = as.Date(c("2022-10-04", "2022-10-11", "2022-10-27")), + values = c(5, 3, 10) + ) + + date_range <- as.Date(c("2022-10-02", "2022-10-29")) # 28 days + + result <- impl$date_zero_value_filler(test_data, date_range, "day") + + expect_data_frame(result, nrows = 28) +}) + +test_that("it fills up by week", { + test_data <- data.frame( + start_date = as.Date(c("2022-10-03", "2022-10-10", "2022-10-24")), + values = c(5, 3, 10) + ) + + date_range <- as.Date(c("2022-10-02", "2022-10-29")) # 5 calendar weeks + + result <- impl$date_zero_value_filler( + test_data, + date_range, + "week", + week_start = 1 # week starts from Monday + ) + + expect_data_frame(result, nrows = 5) +}) + +test_that("it fills up by month", { + test_data <- data.frame( + start_date = as.Date(c("2022-09-01", "2022-11-01", "2022-12-01")), + values = c(5, 3, 10) + ) + + date_range <- as.Date(c("2022-09-01", "2022-12-01")) # 4 months + + result <- impl$date_zero_value_filler(test_data, date_range, "month") + + expect_data_frame(result, nrows = 4) +}) diff --git a/extensions/connect-user-metrics/tests/testthat/test-config.R b/extensions/connect-user-metrics/tests/testthat/test-config.R new file mode 100644 index 00000000..cfdd6979 --- /dev/null +++ b/extensions/connect-user-metrics/tests/testthat/test-config.R @@ -0,0 +1,181 @@ +box::use( + magrittr[`%>%`], + purrr[map], + testthat, + tibble[tibble], + yaml[write_yaml], +) + +box::use( + app/logic/config_settings, + app/logic/utils[AGG_LEVELS], +) + +impl <- attr(config_settings, "namespace") + +# all_params_present, check_config_data + +raw_data <- list( + apps = data.frame(guid = 1:3, title = c("app1", "app2", "app3")), + users = data.frame(guid = 1:3, username = c("user1", "user2", "user3")) +) + +testthat$context("Reading config file") +testthat$test_that("config.yml can be loaded and contains necessary inputs", { + config1 <- list( + default = list("apps" = "app1,app2", "users" = "user1,user2,user3", "agg_levels" = NULL) + ) + dir.create("conf", recursive = TRUE) + write_yaml(config1, file = "conf/config.yml") + config <- config_settings$read_config_yml(file_path = "conf/config.yml") + testthat$expect_true(inherits(config, "list")) + testthat$expect_named(config, c("apps", "users", "agg_levels")) +}) + +testthat$test_that("Multiple parameters can be read", { + config <- config_settings$read_config_yml(file_path = "conf/config.yml") + testthat$expect_equal(config$apps, list("app1", "app2")) + testthat$expect_equal(config$users, list("user1", "user2", "user3")) + testthat$expect_null(config$agg_levels) +}) + +testthat$test_that("Wrong or missing yml is treated as NULL", { + # Trying to read non-existent config.yml + testthat$expect_error( + config_settings$read_config_yml(file_path = "configuration.yml") + ) # Misspelled file + + # Wrong config structure + config2 <- list(custom = list()) + write_yaml(config2, "conf/config.yml") + testthat$expect_error(config_settings$read_config_yml(file_path = "conf/config.yml")) + + unlink("conf/", recursive = TRUE) +}) + +testthat$context("Check config parameters") +testthat$test_that("All parameters values present in apps & users", { + config <- list( + default = list( + "apps" = "app1,app2", + "users" = "user1,user2,user3", + "agg_levels" = "user_guid" + ) + ) + config <- config$default %>% map(config_settings$split_yml_params) + apps_check <- config_settings$is_config_valid(config, "apps", data = raw_data$apps$title) + testthat$expect_true(apps_check) + + users_check <- config_settings$is_config_valid(config, "users", data = raw_data$users$username) + testthat$expect_true(users_check) + + agg_check <- config_settings$is_config_valid(config, "agg_levels", data = AGG_LEVELS) + testthat$expect_true(agg_check) +}) + +testthat$test_that("Parameter values not found in apps & users", { + config <- list( + default = list( + "apps" = "app4,app5", + "users" = "user4", + "agg_levels" = "user_guid" + ) + ) + config <- config$default %>% map(config_settings$split_yml_params) + apps_check <- config_settings$is_config_valid(config, "apps", data = raw_data$apps$title) + testthat$expect_false(apps_check) + + users_check <- config_settings$is_config_valid(config, "users", data = raw_data$users$username) + testthat$expect_false(users_check) + + agg_check <- config_settings$is_config_valid(config, "agg_levels", data = AGG_LEVELS) + testthat$expect_true(agg_check) +}) + +testthat$test_that("Not user parameter provided (Only apps & aggregation level)", { + config <- list( + default = list( + "apps" = "app1,app2", + "agg_levels" = "content_guid" + ) + ) + config <- config$default %>% map(config_settings$split_yml_params) + apps_check <- config_settings$is_config_valid(config, "apps", data = raw_data$apps$title) + testthat$expect_true(apps_check) + + users_check <- config_settings$is_config_valid(config, "users", data = raw_data$users$username) + testthat$expect_true(users_check) + + agg_check <- config_settings$is_config_valid(config, "agg_levels", data = AGG_LEVELS) + testthat$expect_true(agg_check) +}) + +testthat$context("Validate config parameters") + +testthat$test_that("validate_agg_time validates time levels correctly", { + config <- list(agg_time = "day") + testthat$expect_true(impl$validate_agg_time(config)) + + config <- list(agg_time = "invalid_time") + testthat$expect_false(impl$validate_agg_time(config)) +}) + +testthat$test_that("validate_min_time validates time format correctly", { + config <- list(min_time = "00:30:00") + testthat$expect_true(impl$validate_min_time(config)) + + config <- list(min_time = "invalid_time") + testthat$expect_false(impl$validate_min_time(config)) + + config <- list(min_time = "25:00:00") # Invalid hour + testthat$expect_false(impl$validate_min_time(config)) +}) + +testthat$test_that("validate_goal validates different goal types correctly", { + # Numeric goal + config <- list(unique_users_goal = "100") + testthat$expect_true(impl$validate_goal(config, "unique_users_goal")) + + # Tibble goal + config <- list(sessions_goal = tibble( + date = c("2024-01-01", "2024-01-02"), + goal = c(100, 200) + )) + testthat$expect_true(impl$validate_goal(config, "sessions_goal")) + + # Invalid numeric goal + config <- list(unique_users_goal = "invalid") + testthat$expect_warning(result <- impl$validate_goal(config, "unique_users_goal")) + testthat$expect_false(result) + + # Empty tibble goal + config <- list(sessions_goal = tibble()) + testthat$expect_false(impl$validate_goal(config, "sessions_goal")) + + # Missing goal + config <- list() + testthat$expect_false(impl$validate_goal(config, "sessions_goal")) +}) + +testthat$test_that("validate_week_start validates day names correctly", { + config <- list(week_start = "monday") + testthat$expect_true(impl$validate_week_start(config)) + + config <- list(week_start = "sunday") + testthat$expect_true(impl$validate_week_start(config)) + + config <- list(week_start = "invalid_day") + testthat$expect_false(impl$validate_week_start(config)) + + config <- list(week_start = "MONDAY") # Case sensitive + testthat$expect_false(impl$validate_week_start(config)) + + config <- list(week_start = NULL) + testthat$expect_false(impl$validate_week_start(config)) + + config <- list(week_start = NA) + testthat$expect_false(impl$validate_week_start(config)) + + config <- list(week_start = "") + testthat$expect_false(impl$validate_week_start(config)) +}) diff --git a/extensions/connect-user-metrics/tests/testthat/test-data_utils.R b/extensions/connect-user-metrics/tests/testthat/test-data_utils.R new file mode 100644 index 00000000..b1f12752 --- /dev/null +++ b/extensions/connect-user-metrics/tests/testthat/test-data_utils.R @@ -0,0 +1,63 @@ +box::use( + testthat[expect_equal, expect_error, test_that], +) + +box::use( + app/logic/data_utils, +) + +test_that("is_non_trivial_string works", { + + # true ones --- + expect_equal(data_utils$is_non_trivial_string(1), TRUE) + + expect_equal(data_utils$is_non_trivial_string("a"), TRUE) + + expect_equal(data_utils$is_non_trivial_string("abcdef"), TRUE) + + expect_equal(data_utils$is_non_trivial_string(TRUE), TRUE) + + # false ones ---- + expect_equal(data_utils$is_non_trivial_string(""), FALSE) + + expect_equal(data_utils$is_non_trivial_string(NA), FALSE) + + expect_equal(data_utils$is_non_trivial_string(NA_character_), FALSE) + + expect_equal(data_utils$is_non_trivial_string(NULL), FALSE) + + # error ones ---- + # we don't expect vectors of lenght > 1 + expect_error(data_utils$is_non_trivial_string(1:5)) +}) + +test_that("split_guids works", { + + guids <- "" + expect_equal(data_utils$split_guids(guids), NULL) + + guids <- "a" + expect_equal(data_utils$split_guids(guids), "a") + + guids <- "a,b" + expect_equal(data_utils$split_guids(guids), c("a", "b")) + + # we are not trimming whitespaces in the strings + guids <- "a, b" + expect_equal(data_utils$split_guids(guids), c("a", " b")) + + guids <- "a,,b" + expect_equal(data_utils$split_guids(guids), c("a", "b")) + + guids <- ",,b" + expect_equal(data_utils$split_guids(guids), "b") + + guids <- ",,,,,," + expect_equal(data_utils$split_guids(guids), NULL) + + guids <- NA + expect_equal(data_utils$split_guids(guids), NULL) + + guids <- NA_character_ + expect_equal(data_utils$split_guids(guids), NULL) +}) diff --git a/extensions/connect-user-metrics/tests/testthat/test-duration_utils.R b/extensions/connect-user-metrics/tests/testthat/test-duration_utils.R new file mode 100644 index 00000000..d1376998 --- /dev/null +++ b/extensions/connect-user-metrics/tests/testthat/test-duration_utils.R @@ -0,0 +1,62 @@ +box::use( + testthat[context, expect_equal, expect_length, test_that], +) + +box::use( + app/logic/duration_utils[format_duration], +) + + +context("Test duration_utils$format_duration()") + +test_that("format_duration returns empty string when passed duration is not valid", { + expect_equal(format_duration(NA), c("")) + expect_equal(format_duration(c(NA, NA, NA)), c("", "", "")) + expect_equal(format_duration(NaN), c("")) +}) + +test_that("format_duration returns zero length vector when receives zero length vector", { + expect_equal(format_duration(numeric(0)), character(0)) + expect_equal(format_duration(c()), character(0)) +}) + + +test_that("format_duration rounds floating point values", { + expect_equal(format_duration(10.5), "00:00:10") + expect_equal(format_duration(10.3), "00:00:10") + expect_equal(format_duration(10.7), "00:00:11") +}) + +test_that("format_duration combinations of NaN/NA return empty string at proper positions", { + input <- c(56, NA, 79, 245, NaN, 90) + output <- format_duration(input) + expect_length(output, length(input)) + expect_equal(output[1], "00:00:56") + expect_equal(output[2], "") + expect_equal(output[3], "00:01:19") + expect_equal(output[4], "00:04:05") + expect_equal(output[5], "") + expect_equal(output[6], "00:01:30") +}) + +test_that("format_duration outputs the same legth as input's", { + for (n in c(1:10, 15, 30, 90, 200, 500)) { + input <- sample(1:10000, size = n) + expect_length(format_duration(input), n) + } +}) + +test_that("format_duration output proper strings", { + input <- c(0, 1, 30, 60, 55, 180, 185, 250, 3600, 3620, 4859, 3600 * 24 + 60 * 2 + 55) + output <- c( + "00:00:00", "00:00:01", "00:00:30", "00:01:00", "00:00:55", "00:03:00", "00:03:05", + "00:04:10", "01:00:00", "01:00:20", "01:20:59", "24:02:55" + ) + expect_equal(format_duration(input), output) +}) + +test_that("format_duration outputs 00:00:00 for negative numbers", { + input <- c(-1, -10, -3600) + output <- rep("00:00:00", length(input)) + expect_equal(format_duration(input), output) +}) diff --git a/extensions/connect-user-metrics/tests/testthat/test-session_duration.R b/extensions/connect-user-metrics/tests/testthat/test-session_duration.R new file mode 100644 index 00000000..3207488f --- /dev/null +++ b/extensions/connect-user-metrics/tests/testthat/test-session_duration.R @@ -0,0 +1,57 @@ +box::use( + testthat[expect_equal, test_that], +) + +box::use( + app/view/session_duration, +) + +test_that("min_time is correctly used in session_duration", { + default_return <- session_duration$default_min_time_list + + min_time <- "00:00:00" + expect_equal(session_duration$get_min_time(min_time), default_return) + + min_time <- "00:00:-10" + expect_equal(session_duration$get_min_time(min_time), default_return) + + min_time <- "00:00:10" + expect_equal(session_duration$get_min_time(min_time), list(number = 10, unit = "seconds")) + + min_time <- "00:00:90" + expect_equal(session_duration$get_min_time(min_time), list(number = 90, unit = "seconds")) + + min_time <- "00:01:00" + expect_equal(session_duration$get_min_time(min_time), list(number = 1, unit = "minutes")) + + min_time <- "00:01:20" + expect_equal(session_duration$get_min_time(min_time), list(number = 80, unit = "seconds")) + + min_time <- "01:01:01" + expect_equal(session_duration$get_min_time(min_time), list(number = 3661, unit = "seconds")) + + min_time <- "01:01:00" + expect_equal(session_duration$get_min_time(min_time), list(number = 61, unit = "minutes")) + + min_time <- "01:00:00" + expect_equal(session_duration$get_min_time(min_time), list(number = 1, unit = "hours")) + + min_time <- "11:00:00" + expect_equal(session_duration$get_min_time(min_time), list(number = 11, unit = "hours")) + + # wrong formats of string ---- + min_time <- "00:AA:00" + expect_equal(suppressWarnings(session_duration$get_min_time(min_time)), default_return) + + min_time <- "" + expect_equal(suppressWarnings(session_duration$get_min_time(min_time)), default_return) + + min_time <- "a,b,c,d,e" + expect_equal(suppressWarnings(session_duration$get_min_time(min_time)), default_return) + + min_time <- "MY_DATETIME" + expect_equal(suppressWarnings(session_duration$get_min_time(min_time)), default_return) + + min_time <- "10:20" + expect_equal(suppressWarnings(session_duration$get_min_time(min_time)), default_return) +}) diff --git a/extensions/connect-user-metrics/tests/testthat/test-ui_utils.R b/extensions/connect-user-metrics/tests/testthat/test-ui_utils.R new file mode 100644 index 00000000..ee12e242 --- /dev/null +++ b/extensions/connect-user-metrics/tests/testthat/test-ui_utils.R @@ -0,0 +1,220 @@ +box::use( + jsonlite[fromJSON], + testthat[ + expect_equal, + expect_match, + expect_true, + expect_type, + test_that + ], + withr[with_tempdir], + yaml[read_yaml], +) + +box::use( + app/logic/ui_utils, +) + +black <- "#000000" +white <- "#FFFFFF" +gray <- "#808080" + +test_that("color_mix returns hex color", { + ui_utils$color_mix(black, white, 0.2) |> + expect_type("character") |> + expect_match("#") +}) + +test_that("color_mix returns base color when weight is 0", { + expect_equal( + ui_utils$color_mix(black, white, 0), + black + ) +}) + +test_that("color_mix returns blend color when weight is 1", { + expect_equal( + ui_utils$color_mix(black, white, 1), + white + ) +}) + +test_that("color_mix returns gray when white and black are mixed in same equally", { + expect_equal( + ui_utils$color_mix(black, white, 0.5), + gray + ) +}) + +test_that("replace_placeholders replaces single placeholder", { + input <- "color: $COLOR" + replacements <- list("$COLOR" = black) + + expect_equal( + ui_utils$replace_placeholders(input, replacements), + "color: #000000" + ) +}) + +test_that("replace_placeholders replaces multiple placeholders", { + input <- "font: $FONT, color: $COLOR" + replacements <- list( + "$FONT" = "Roboto", + "$COLOR" = black + ) + + expect_equal( + ui_utils$replace_placeholders(input, replacements), + "font: Roboto, color: #000000" + ) +}) + +test_that("replace_placeholders is not replacing placeholders if no matches", { + input <- "Text with $PLACEHOLDER" + + replacements <- list( + "$NAME" = "Test" + ) + expect_equal( + ui_utils$replace_placeholders(input, replacements), + "Text with $PLACEHOLDER" + ) + + replacements <- list() + expect_equal( + ui_utils$replace_placeholders(input, replacements), + "Text with $PLACEHOLDER" + ) +}) + +test_that("replace_placeholders replaces across multiple lines", { + input <- c( + "{", + " \"color\": \"$COLOR\",", + " \"font\": \"$FONT\"", + "}" + ) + + replacements <- list( + "$COLOR" = black, + "$FONT" = "Roboto" + ) + + expect_equal( + ui_utils$replace_placeholders(input, replacements), + c( + "{", + " \"color\": \"#000000\",", + " \"font\": \"Roboto\"", + "}" + ) + ) +}) + +test_that("compose_charts_theme returns '' when there is no replacements or template file", { + expect_equal( + ui_utils$compose_charts_theme( + placeholder_replacements = NULL, + template_path = "app/test_template.json" + ), + "" + ) + + expect_equal( + ui_utils$compose_charts_theme( + placeholder_replacements = NA, + template_path = "app/test_template.json" + ), + "" + ) + + expect_equal( + ui_utils$compose_charts_theme( + placeholder_replacements = list(), + template_path = "app/test_template.json" + ), + "" + ) + + expect_equal( + ui_utils$compose_charts_theme( + placeholder_replacements = list( + "$TEST" = "test", + ), + template_path = "app/test_template.json" + ), + "" + ) + + expect_equal( + ui_utils$compose_charts_theme( + placeholder_replacements = list(), + template_path = "app/metrics_theme_template.json" + ), + "" + ) +}) + +test_that("compose_charts_theme returns path to charts theme and replaces placeholders with values from brand file", { #nolint line_length_linter + with_tempdir( + { + brand_path <- "test_brand.yml" + template_path <- "test_template.json" + output_path <- sub("_template", "", template_path) + expected_theme_path <- "expected_theme.json" + + # Minimal valid branding file + writeLines( + c( + "color:", + " palette:", + " black: \"#000000\"", + " primary: black" + ), + brand_path + ) + + # Minimal valid charts theme template file + writeLines( + c( + "{", + " \"color\": \"$PRIMARY_COLOR\"", + "}" + ), + template_path + ) + + # Expected charts theme file + writeLines( + c( + "{", + " \"color\": \"#000000\"", + "}" + ), + expected_theme_path + ) + + brand <- read_yaml(brand_path) + placeholder_replacements <- list( + "$PRIMARY_COLOR" = brand$color$palette[[brand$color$primary]] + ) + + chart_theme_path <- ui_utils$compose_charts_theme( + placeholder_replacements = placeholder_replacements, + template_path = template_path + ) + + expect_true(file.exists(chart_theme_path)) + + expect_equal( + chart_theme_path, + output_path + ) + + expect_equal( + fromJSON(chart_theme_path), + fromJSON(expected_theme_path) + ) + } + ) +}) diff --git a/extensions/connect-user-metrics/tests/testthat/test-utils.R b/extensions/connect-user-metrics/tests/testthat/test-utils.R new file mode 100644 index 00000000..2916d380 --- /dev/null +++ b/extensions/connect-user-metrics/tests/testthat/test-utils.R @@ -0,0 +1,333 @@ +box::use( + lubridate[as_date, days], + testthat[expect_equal, expect_null, test_that], +) + +box::use( + app/logic/utils, +) + +impl <- attr(utils, "namespace") + +test_that("map_wday gives monday as one", { + expect_equal(utils$map_wday(c("Monday")), c(1)) +}) + +test_that("map_wday is case insensitive", { + expect_equal(utils$map_wday(c("Monday", "monday", "mOnDaY")), c(1, 1, 1)) +}) + +test_that("map_wday sets sunday as 7", { + expect_equal(utils$map_wday(c("Sunday")), c(7)) +}) + +test_that("get_goal_spec works for basic example", { + test_goal_df <- data.frame( + freq = c("day"), + per = c("start_date"), + goal = c("28") + ) + expect_equal( + 28, + impl$get_goal_spec(test_goal_df, agg_levels = c("start_date"), date_agg = c("day")) + ) +}) + +test_that("get_goal_spec gives NULL for non existent goals", { + test_goal_df <- data.frame( + freq = c("day"), + per = c("start_date"), + goal = c("28") + ) + expect_null(impl$get_goal_spec(test_goal_df, agg_levels = c("start_date"), date_agg = c("week"))) + expect_null(impl$get_goal_spec(test_goal_df, agg_levels = c("content_guid"), date_agg = c("day"))) + + test_goal_df <- data.frame( + freq = c("day"), + per = c("start_date,content_guid"), + goal = c("28") + ) + expect_null(impl$get_goal_spec(test_goal_df, agg_levels = c("start_date"), date_agg = c("day"))) + expect_null(impl$get_goal_spec(test_goal_df, agg_levels = c("content_guid"), date_agg = c("day"))) +}) + +test_that("get_goal_spec captures comma separated lists", { + test_goal_df <- data.frame( + freq = c("day"), + per = c("start_date,content_guid"), + goal = c("28") + ) + expect_equal( + 28, + impl$get_goal_spec( + test_goal_df, + agg_levels = c("start_date", "content_guid"), + date_agg = c("day") + ) + ) +}) + +test_that("get_goal_spec avoids whitespace in user input", { + test_goal_df <- data.frame( + freq = c("day"), + per = c(" start_date , content_guid "), + goal = c("28") + ) + expect_equal( + 28, + impl$get_goal_spec( + test_goal_df, + agg_levels = c("start_date", "content_guid"), + date_agg = c("day") + ) + ) +}) + +test_that("get_goal_spec is robust to ordering of agg_level in input_df", { + test_goal_df <- data.frame( + freq = c("day"), + per = c("content_guid,start_date"), + goal = c("28") + ) + expect_equal( + 28, + impl$get_goal_spec( + test_goal_df, + agg_levels = c("start_date", "content_guid"), + date_agg = c("day") + ) + ) + + test_goal_df <- data.frame( + freq = c("day"), + per = c("content_guid,start_date,user_guid"), + goal = c("28") + ) + expect_equal( + 28, + impl$get_goal_spec( + test_goal_df, + agg_levels = c("start_date", "content_guid", "user_guid"), + date_agg = c("day") + ) + ) +}) + +test_that("get_goal_spec is robust to ordering of agg_level in func args", { + test_goal_df <- data.frame( + freq = c("day"), + per = c("start_date,content_guid"), + goal = c("28") + ) + expect_equal( + 28, + impl$get_goal_spec( + test_goal_df, + agg_levels = c("content_guid", "start_date"), + date_agg = c("day") + ) + ) + + test_goal_df <- data.frame( + freq = c("day"), + per = c("content_guid,start_date,user_guid"), + goal = c("28") + ) + expect_equal( + 28, + impl$get_goal_spec( + test_goal_df, + agg_levels = c("start_date", "user_guid", "content_guid"), + date_agg = c("day") + ) + ) +}) + +test_that("process_chart_goal handles numeric input", { + expect_equal( + 42, + utils$process_chart_goal(42, agg_levels = c("start_date"), date_aggregation = "day") + ) +}) + +test_that("process_chart_goal handles NULL input", { + expect_null( + utils$process_chart_goal(NULL, agg_levels = c("start_date"), date_aggregation = "day") + ) +}) + +test_that("create_image_path returns image path when image filename is given as an input", { + image_filename <- "image.jpeg" + + expect_equal( + as.character(utils$create_image_path(image_filename)), + "static/images/image.jpeg" + ) +}) + +test_that("create_image_path returns image path when image is located in sub-folder", { + image_filename <- "test/image.jpeg" + + expect_equal( + as.character(utils$create_image_path(image_filename)), + "static/images/test/image.jpeg" + ) +}) + +test_that("get_app_titles returns app titles if they exist", { + apps <- data.frame( + guid = c("test_guid_1", "test_guid_2", "test_guid_3"), + name = c("test_name_1", "test_name_2", "test_name_3"), + title = c("test_title_1", "test_title_2", "test_title_3") + ) + + expect_equal( + c("test_title_1", "test_title_2", "test_title_3"), + utils$get_app_titles(apps$guid, apps$title, apps$name) + ) +}) + +test_that("get_app_titles returns app names instead of NA titles", { + apps <- data.frame( + guid = c("test_guid_1", "test_guid_2", "test_guid_3"), + name = c("test_name_1", "test_name_2", "test_name_3"), + title = c("test_title_1", NA, "test_title_3") + ) + + expect_equal( + c("test_title_1", "test_name_2", "test_title_3"), + utils$get_app_titles(apps$guid, apps$title, apps$name) + ) +}) + +test_that("get_app_titles returns app names instead of empty titles", { + apps <- data.frame( + guid = c("test_guid_1", "test_guid_2", "test_guid_3"), + name = c("test_name_1", "test_name_2", "test_name_3"), + title = c("", "test_title_2", "") + ) + + expect_equal( + c("test_name_1", "test_title_2", "test_name_3"), + utils$get_app_titles(apps$guid, apps$title, apps$name) + ) +}) + +test_that("get_app_titles returns guid when both name and title is NA or empty", { + apps <- data.frame( + guid = c("test_guid_1", "test_guid_2", "test_guid_3", "test_guid_4", NA), + name = c("test_name_1", NA, "", "test_name_4", NA), + title = c("test_title_1", NA, "", "", NA) + ) + + expect_equal( + c("test_title_1", "test_guid_2", "test_guid_3", "test_name_4", NA), + utils$get_app_titles(apps$guid, apps$title, apps$name) + ) +}) + +test_that("get_date_range_length_in_units returns zero when start date is greater than end date", { + expect_equal( + 0, + utils$get_date_range_length_in_units( + start_date = "2025-04-01", + end_date = "2025-03-01", + unit = "day" + ) + ) +}) + +test_that("get_date_range_length_in_units returns difference between two dates in days", { + expect_equal( + 1, + utils$get_date_range_length_in_units( + start_date = "2025-03-01", + end_date = "2025-03-01", + unit = "day" + ) + ) + + expect_equal( + 32, + utils$get_date_range_length_in_units( + start_date = "2025-03-01", + end_date = "2025-04-01", + unit = "day" + ) + ) +}) + +test_that("get_date_range_length_in_units returns difference between two dates in weeks", { + week_day_ids <- seq(1:7) + names(week_day_ids) <- c( + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday", + "Saturday", + "Sunday" + ) + + # Check each day in the period of two calendar weeks + for (i in 0:13) { + initial_monday <- as_date("2025-03-03") + + expect_equal( + utils$get_date_range_length_in_units( + start_date = initial_monday, + end_date = initial_monday + days(i), + unit = "week", + week_start = week_day_ids["Monday"] + ), + 1 + i %/% 7 + ) + } + + # Check same date range with different week start days + expect_equal( + 6, + utils$get_date_range_length_in_units( + start_date = "2025-03-02", # Sunday + end_date = "2025-04-01", + unit = "week", + week_start = week_day_ids["Monday"] + ) + ) + + expect_equal( + 5, + utils$get_date_range_length_in_units( + start_date = "2025-03-02", # Sunday + end_date = "2025-04-01", + unit = "week", + week_start = week_day_ids["Sunday"] + ) + ) +}) + +test_that("get_date_range_length_in_units returns difference between two dates in months", { + # Each day in the same month return same length in months + for (i in 0:30) { + initial_day <- as_date("2025-03-01") + + expect_equal( + 1, + utils$get_date_range_length_in_units( + start_date = initial_day, + end_date = initial_day + days(i), + unit = "month" + ) + ) + } + + # Date range of two calendar months + expect_equal( + 2, + utils$get_date_range_length_in_units( + start_date = "2025-03-01", + end_date = "2025-04-01", + unit = "month" + ) + ) +}) diff --git a/extensions/connect-user-metrics/user.metrics.Rproj b/extensions/connect-user-metrics/user.metrics.Rproj new file mode 100644 index 00000000..e24a7795 --- /dev/null +++ b/extensions/connect-user-metrics/user.metrics.Rproj @@ -0,0 +1,18 @@ +Version: 1.0 +ProjectId: ad131b4c-1efe-42fc-b38e-6000236a4d71 + +RestoreWorkspace: No +SaveWorkspace: No +AlwaysSaveHistory: Default + +EnableCodeIndexing: Yes +UseSpacesForTab: Yes +NumSpacesForTab: 2 +Encoding: UTF-8 + +RnwWeave: Sweave +LaTeX: pdfLaTeX + +AutoAppendNewline: Yes +StripTrailingWhitespace: Yes +LineEndingConversion: Posix