diff --git a/index.qmd b/index.qmd index 1c4b6ccc..d85a0d1c 100644 --- a/index.qmd +++ b/index.qmd @@ -12,7 +12,7 @@ listing: sort-ui: true filter-ui: true page-layout: full -margin-header: Get notified of new posts by joining [pharmaverse/slack](https://pharmaverse.slack.com) +margin-header: Get notified of new posts by joining [pharmaverse/slack](https://pharmaverse.slack.com) Be sure to check out [https://www.r-bloggers.com]( https://www.r-bloggers.com) title-block-banner: true #image: frontimage.png --- diff --git a/inst/WORDLIST.txt b/inst/WORDLIST.txt index 478cbbd7..3973695e 100644 --- a/inst/WORDLIST.txt +++ b/inst/WORDLIST.txt @@ -643,3 +643,5 @@ webR WebR wfk WnpvVgmyE +Dony +Unardi diff --git a/media/teal.png b/media/teal.png index b8b59dd2..b46c1045 100644 Binary files a/media/teal.png and b/media/teal.png differ diff --git a/posts/2024-02-13_teal_on_cran/appendix.R b/posts/2024-02-13_teal_on_cran/appendix.R new file mode 100644 index 00000000..ece5203f --- /dev/null +++ b/posts/2024-02-13_teal_on_cran/appendix.R @@ -0,0 +1,78 @@ +# markdown helpers -------------------------------------------------------- + +markdown_appendix <- function(name, content) { + paste(paste("##", name, "{.appendix}"), " ", content, sep = "\n") +} +markdown_link <- function(text, path) { + paste0("[", text, "](", path, ")") +} + + + +# worker functions -------------------------------------------------------- + +insert_source <- function(repo_spec, name, + collection = "posts", + branch = "main", + host = "https://github.com", + text = "source code") { + path <- paste( + host, + repo_spec, + "tree", + branch, + collection, + name, + "code_sections.qmd", + sep = "/" + ) + return(markdown_link(text, path)) +} + +insert_timestamp <- function(tzone = Sys.timezone()) { + time <- lubridate::now(tzone = tzone) + stamp <- as.character(time, tz = tzone, usetz = TRUE) + return(stamp) +} + +insert_lockfile <- function(repo_spec, name, + collection = "posts", + branch = "main", + host = "https://github.com", + text = "R environment") { + path <- paste( + host, + repo_spec, + "tree", + branch, + collection, + name, + "renv.lock", + sep = "/" + ) + return(markdown_link(text, path)) +} + + + +# top level function ------------------------------------------------------ + +insert_appendix <- function(repo_spec, name, collection = "posts") { + appendices <- paste( + markdown_appendix( + name = "Last updated", + content = insert_timestamp() + ), + " ", + markdown_appendix( + name = "Details", + content = paste( + insert_source(repo_spec, name, collection), + insert_lockfile(repo_spec, name, collection), + sep = ", " + ) + ), + sep = "\n" + ) + knitr::asis_output(appendices) +} diff --git a/posts/2024-02-13_teal_on_cran/teal.png b/posts/2024-02-13_teal_on_cran/teal.png new file mode 100644 index 00000000..b46c1045 Binary files /dev/null and b/posts/2024-02-13_teal_on_cran/teal.png differ diff --git a/posts/2024-02-13_teal_on_cran/teal_on_cran.qmd b/posts/2024-02-13_teal_on_cran/teal_on_cran.qmd new file mode 100644 index 00000000..99ec5c75 --- /dev/null +++ b/posts/2024-02-13_teal_on_cran/teal_on_cran.qmd @@ -0,0 +1,65 @@ +--- +title: "teal is now available on CRAN 🎉" +author: + - name: Dony Unardi +description: "Announcing the release of teal v0.15.0 on CRAN!" +date: "2024-02-14" +# please do not use any non-default categories. +# You can find the default categories in the repository README.md +categories: [community] +# feel free to change the image +image: "teal.png" +--- + + + +```{r setup, include=FALSE} +long_slug <- "2024-02-13_teal_on_cran" +# renv::use(lockfile = "renv.lock") +``` + + +![](teal.png){fig-align="center" width="220"} + +We're thrilled to announce that `teal` v0.15.0 has been released on CRAN! + +This marks a significant milestone in our journey, and we're incredibly excited about the possibilities `teal` brings to the R community, particularly within clinical trial settings. + +One of the most notable changes in this release is the introduction of `teal_data` class. This addition enhances how data is handled within the `teal` framework, paving the way for custom data modules tailored to the needs of our R users, both inside and outside the clinical trial space. With `teal_data`, users can expect improved efficiency and flexibility in managing their data, opening doors to innovative approaches in data analysis and visualization. + +While we're enthusiastic about the advancements `teal` v0.15.0 brings, we have to introduce breaking changes to this version. + +But worry not, we've got you covered! + +To ease the transition, we've provided comprehensive guidance on migrating your applications from version 0.14.0 to 0.15.0. Check out our migration guide [here](https://github.com/insightsengineering/teal/discussions/945), and feel free to ask any questions you may have in the discussion thread. + +As we roll out `teal` v0.15.0, we're also working diligently on releasing *teal modules* packages to CRAN to fully support this version. While we're still in the process, we encourage you to dive into the latest `teal` release and start exploring its capabilities. To get started, make sure to install the development versions of `teal.transform`, `teal.reporter`, and any other modules you're using. + +To simplify the process, you can execute the following code to verify that you have the correct `teal` and *teal modules* versions: +```r +# installing latest stable release from CRAN +install.packages(c("teal.logger", "teal.code", "teal.widgets", "teal.data", "teal.slice", "teal")) + +# installing dev version from pharmaverse +install.packages(c("teal.reporter", "teal.transform", "teal.modules.general", "teal.modules.clinical"), repos = c("https://pharmaverse.r-universe.dev", getOption("repos"))) +``` + +Rest assured, we're committed to completing the release of the *teal modules* as swiftly as possible to provide users with an uninterrupted experience. + +As always, thank you for your continued support and enthusiasm for `teal`. We can't wait to see the incredible ways in which `teal` empowers you to revolutionize your data exploration in R. + +For further details about the release, please refer to [this link](https://github.com/insightsengineering/teal/releases/tag/v0.15.0). + +Feel free to explore the `teal` website [here](https://insightsengineering.github.io/teal/latest-tag/) to learn more about the latest features. + +![](teal_screenshot.jpg){fig-align="center"} + + + +```{r, echo=FALSE} +source("appendix.R") +insert_appendix( + repo_spec = "pharmaverse/blog", + name = long_slug +) +``` diff --git a/posts/2024-02-13_teal_on_cran/teal_screenshot.jpg b/posts/2024-02-13_teal_on_cran/teal_screenshot.jpg new file mode 100644 index 00000000..123aeda2 Binary files /dev/null and b/posts/2024-02-13_teal_on_cran/teal_screenshot.jpg differ