[R-pkg-devel] CRAN submission with "possibly unsafe calls" or alternative approach?
    Rainer M Krug 
    R@|ner @end|ng |rom krug@@de
       
    Fri Dec  6 10:05:20 CET 2019
    
    
  
Hi
In my package `dmdScheme` I define three variables. Depending on a state in the package (a selected metadata schemes) these are set as followed from within the package:
```
  unlockBinding("dmdScheme_example", as.environment("package:dmdScheme"))
  assign("dmdScheme_example", scheme_example, "package:dmdScheme")
  lockBinding("dmdScheme_example", as.environment("package:dmdScheme"))
  scheme_raw <- as_dmdScheme_raw(scheme_example)
  unlockBinding("dmdScheme_raw", as.environment("package:dmdScheme"))
  assign("dmdScheme_raw", scheme_raw, "package:dmdScheme")
  lockBinding("dmdScheme_raw", as.environment("package:dmdScheme"))
  scheme <- as_dmdScheme(scheme_raw, keepData = FALSE, checkVersion = FALSE)
  unlockBinding("dmdScheme", as.environment("package:dmdScheme"))
  assign("dmdScheme", scheme, "package:dmdScheme")
  lockBinding("dmdScheme", as.environment("package:dmdScheme”))
```
( See https://github.com/Exp-Micro-Ecol-Hub/dmdScheme/blob/b97e7b5ef116476e065aeec1da1050eecbd6adf7/R/scheme_use.R#L37-L49 )
My reasoning is that I want to lock these variables, as they are essential to the functioning of the package.
But I get, probably not surprising, the following NOTE:
```
* checking R code for possible problems ... NOTE
Found the following possibly unsafe calls:
File ‘dmdScheme/R/scheme_use.R’:
  unlockBinding("dmdScheme_example", as.environment("package:dmdScheme"))
  unlockBinding("dmdScheme_raw", as.environment("package:dmdScheme"))
  unlockBinding("dmdScheme", as.environment("package:dmdScheme"))
```
For the submission to CRAN, Can I disregard this note and explain it during the submission?
My second question concerns the values itself. I set the variables to NULL in the /data folder in the package, but even after they are set as above, the valuee in `dmdScheme::dmdScheme` is still NULL:
```
> names(dmdScheme)
[1] "Experiment"       "Genus"            "Treatments"       "Measurement"
[5] "DataExtraction"   "DataFileMetaData"
> names(dmdScheme::dmdScheme)
NULL
>
```
Is there a way, that I can change the value of dmdScheme::… variables during runtime?
Thanks,
Rainer
--
Rainer M. Krug, PhD (Conservation Ecology, SUN), MSc (Conservation Biology, UCT), Dipl. Phys. (Germany)
Orcid ID: 0000-0002-7490-0066
Department of Evolutionary Biology and Environmental Studies
University of Zürich
Office Y34-J-74
Winterthurerstrasse 190
8075 Zürich
Switzerland
Office:	+41 (0)44 635 47 64
Cell:       	+41 (0)78 630 66 57
email:      Rainer.Krug using uzh.ch
		Rainer using krugs.de
Skype:     RMkrug
PGP: 0x0F52F982
    
    
More information about the R-package-devel
mailing list