I think this solution will *not* be acceptable to CRAN. (The policy
doesn't say "don't modify the global workspace unless you're careful",
it says "don't modify the global workspace".) You can ask for an
exception, but your chances of success are very low.
It would be best to find a way to solve your problem without
assigning to the global workspace. Can you assign to an environment
that is contained within your package, which all of the functions in
your package will also have access to?
cheers
Ben Bolker
On 12/11/20 1:52 PM, Tiago Olivoto wrote:
Thank Matt for your response.
Would be an acceptable solution to check if the variable exists first and
creating the new variable with a suffix? Please, see the following example
var_name <- "name"
var_name <- ifelse(exists(var_name),
paste(var_name, "_vct", sep = ""),
var_name)
and then
assign(var_name, 1, envir = .GlobalEnv)
Cheers,
Tiago
Em sex., 11 de dez. de 2020 às 15:20, Matt Denwood <m...@sund.ku.dk> escreveu:
On 11 Dec 2020, at 18:32, Tiago Olivoto <tiagooliv...@gmail.com> wrote:
Hi everyone,
This can be a very simple question, but I really have the following
doubt.
CRAN Policies says that 'Packages should not modify the global
environment
(user’s workspace)'. So, may I or may I not create a function that will
call internally the following code? (a simple example)
assign("name", 1, envir = .GlobalEnv)
You may not - and for good reason, as the user may have an existing
variable called “name” that will be destroyed by such an action. If you
run "R CMD check —as-cran" on a package containing this code you will get a
warning (or maybe a note, I can’t remember), and the package would most
likely be refused if you tried to submit it to CRAN.
Cheers,
Matt
Cheers
Tiago
[[alternative HTML version deleted]]
______________________________________________
R-package-devel@r-project.org mailing list
https://eur02.safelinks.protection.outlook.com/?url=https%3A%2F%2Fstat.ethz.ch%2Fmailman%2Flistinfo%2Fr-package-devel&data=04%7C01%7Cmd%40sund.ku.dk%7C42392098d3324de389b008d89dfad39d%7Ca3927f91cda14696af898c9f1ceffa91%7C0%7C0%7C637433048371869663%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C2000&sdata=NFTbsJDlZNQWajN%2F%2BeftuclrkJSGtTnM9kEtobn9VLs%3D&reserved=0
[[alternative HTML version deleted]]
______________________________________________
R-package-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-package-devel
______________________________________________
R-package-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-package-devel