diff --git a/DESCRIPTION b/DESCRIPTION index 555ba70..88764e7 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -1,10 +1,10 @@ Type: Package Package: sasr Title: 'SAS' Interface -Version: 0.1.3 -Date: 2025-02-20 +Version: 0.1.4 +Date: 2025-02-26 Authors@R: c( - person("Liming", "Li", , "clark.liming@google.com", role = c("aut", "cre")), + person("Liming", "Li", , "clark.liming@gmail.com", role = c("aut", "cre")), person("Daniel", "Sabanes Bove", , "daniel.sabanesbove@gmail.com", role = "aut"), person("Isaac", "Gravestock", , "isaac.gravestock@roche.com", role = "aut"), person("F. Hoffmann-La Roche AG", role = c("cph", "fnd")) diff --git a/NEWS.md b/NEWS.md index 452076c..3a327f1 100644 --- a/NEWS.md +++ b/NEWS.md @@ -1,4 +1,4 @@ -# sasr 0.1.3 +# sasr 0.1.4 * Add a basic SAS engine for knitr. * Update `sas_session` to allow finer control over the sas session. diff --git a/R/sas_engine.R b/R/sas_engine.R index e89e460..56c2b81 100644 --- a/R/sas_engine.R +++ b/R/sas_engine.R @@ -1,6 +1,9 @@ #' SAS engine function #' @param options See knitr documentation on engines. sas_engine <- function(options) { + if (!requireNamespace("knitr", quietly = TRUE)) { + stop("Please install knitr to use the SAS engine.") + } if (options$eval) { ret <- sasr::run_sas(paste0(options$code, collapse = "\n"), results = "HTML") if (identical(ret$LST, "")) { @@ -13,5 +16,5 @@ sas_engine <- function(options) { output <- NULL } options$results <- "asis" - engine_output(options, code = options$code, out = output) + knitr::engine_output(options, code = options$code, out = output) } diff --git a/R/zzz.R b/R/zzz.R index 706cb41..e12316d 100644 --- a/R/zzz.R +++ b/R/zzz.R @@ -14,7 +14,7 @@ saspy <- NULL .onLoad <- function(libname, pkgname) { options("sascfg" = "sascfg_personal.py") saspy <<- import("saspy", delay_load = TRUE) - if (require("knitr", quietly = TRUE)) { + if (requireNamespace("knitr", quietly = TRUE)) { knitr::knit_engines$set(sas = sas_engine) } } diff --git a/man/sasr-package.Rd b/man/sasr-package.Rd index c2cc446..b3b13cd 100644 --- a/man/sasr-package.Rd +++ b/man/sasr-package.Rd @@ -18,7 +18,7 @@ Useful links: } \author{ -\strong{Maintainer}: Liming Li \email{clark.liming@google.com} +\strong{Maintainer}: Liming Li \email{clark.liming@gmail.com} Authors: \itemize{ diff --git a/tests/testthat/test-rmarkdown.R b/tests/testthat/test-rmarkdown.R index 20c9eb9..2b40a4e 100644 --- a/tests/testthat/test-rmarkdown.R +++ b/tests/testthat/test-rmarkdown.R @@ -2,6 +2,6 @@ test_that("rmarkdown engine works", { .sasr_env$.sas_session <- dummy_session expect_snapshot( - rmarkdown::render(system.file("example.Rmd", package = "sasr"), quiet = TRUE) + rmarkdown::render(system.file("example.Rmd", package = "sasr"), quiet = TRUE, output_dir = tempdir()), ) })