From 64387ba47e43da47ee34e4ae25e32a78091293cf Mon Sep 17 00:00:00 2001 From: tzs66405 Date: Fri, 10 Jan 2025 10:10:53 -0500 Subject: [PATCH] Fixed compatibility bug in glue version `1.8.0` --- DESCRIPTION | 2 +- NEWS.md | 4 ++++ R/Vectorize.R | 2 +- R/nm_object.R | 4 ++-- R/nm_tran.R | 2 +- 5 files changed, 9 insertions(+), 5 deletions(-) diff --git a/DESCRIPTION b/DESCRIPTION index 55d9234b..c8c23488 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -3,7 +3,7 @@ Type: Package Title: Script Based 'NONMEM' Model Development URL: https://tsahota.github.io/NMproject/, https://github.com/tsahota/NMproject BugReports: https://github.com/tsahota/NMproject/issues -Version: 0.6.9 +Version: 0.6.10 Authors@R: c( person("Tarj", "Sahota", email = "t.sahota0@gmail.com", role = c("aut", "cre", "cph")), diff --git a/NEWS.md b/NEWS.md index 5e15a329..4952b175 100644 --- a/NEWS.md +++ b/NEWS.md @@ -1,3 +1,7 @@ +# NMproject 0.6.10 + +* Fixed compatibility bug in glue version `1.8.0` + # NMproject 0.6.9 * Removed timing test diff --git a/R/Vectorize.R b/R/Vectorize.R index a5215a8b..0255ee98 100644 --- a/R/Vectorize.R +++ b/R/Vectorize.R @@ -68,7 +68,7 @@ Vectorize_nm_list <- function(FUN, vectorize.args = arg.names, SIMPLIFY = FALSE, m <- args[dovec][[1]][[i]] ## nm_generic if (is.character(replace_arg_value)) { args[dovec][[replace_arg]][i] <- stringr::str_glue(replace_arg_value, - .envir = m + .envir = as.environment(m) ) } } diff --git a/R/nm_object.R b/R/nm_object.R index 17be2ed2..eb3c1e4e 100644 --- a/R/nm_object.R +++ b/R/nm_object.R @@ -545,7 +545,7 @@ glue_text_nm <- function(m, text) { UseMethod("glue_text_nm") } glue_text_nm.nm_generic <- function(m, text) { - stringr::str_glue(text, .envir = m, .na = NULL) + stringr::str_glue(text, .envir = as.environment(m), .na = NULL) } glue_text_nm.nm_list <- Vectorize_nm_list(glue_text_nm.nm_generic, SIMPLIFY = TRUE) @@ -555,7 +555,7 @@ replace_tag <- function(m, field) { if (!is.na(m$glue_fields[[field]])) { ## start by resetting to raw m[[field]] <- glue_text_nm(m, m$glue_fields[[field]]) - # m[[field]] <- stringr::str_glue(m$glue_fields[[field]], .envir = m) + # m[[field]] <- stringr::str_glue(m$glue_fields[[field]], .envir = as.environment(m)) m[[field]] <- as.character(m[[field]]) } m diff --git a/R/nm_tran.R b/R/nm_tran.R index 4a6c1a04..ae36a32f 100644 --- a/R/nm_tran.R +++ b/R/nm_tran.R @@ -66,7 +66,7 @@ nm_tran.default <- function(x) { message("running NMTRAN on ", x) nm_tran_command <- nm_tran_command() - cmd <- stringr::str_glue(nm_tran_command, .envir = list(ctl_name = basename(x)), .na = NULL) + cmd <- stringr::str_glue(nm_tran_command, .envir = as.environment(list(ctl_name = basename(x))), .na = NULL) ## if non-glue - append the control file name if (cmd == nm_tran_command) cmd <- paste(cmd, "<", basename(x))