Re: [R-pkg-devel] [External] RcmdrPlugin.HH_1.1-48.tar.gz
> Joshua Ulrich > on Wed, 6 Mar 2024 10:57:28 -0600 writes: > On Wed, Mar 6, 2024 at 1:03 AM Richard M. Heiberger > wrote: >> >> Thank you Duncan, Jeff, Ivan. >> >> I did all that Duncan and Jeff suggested, plus a bit more >> that appeared to be necessary. All of what I did is >> documented in the RcmdrPlugin.HH/NEWS file. >> >> Ivan's comments were received after I sent 1.1-50 to CRAN >> and it was accepted. >> > I recommend you revert all the changes you made that are > documented in the package NEWS, and at minimum follow > Ivan's advice to use exportPattern("^[^\\.]") instead of > exportPattern("."). It would be even better to follow the > advice in Writing R Extensions and list each exported > object individually. I agree: at least use exportPattern("^[^\\.]") instead of the 'very un-recommended' (.) which -- as Ivan mentioned -- does export *everything* -- entirely destroying one important advantage of namespaces, namely to have "private" auxiliary functions/objects/data . Martin >> I suggest that my notes in the NEWS file, perhaps >> augmented with Ivan's comments, might be added to >> utils/man/globalVariables.Rd and to the " section >> ‘Package structure’ in the ‘Writing R Extensions’ manual. >> " >> > That section of Writing R Extensions specifically says not > to do what you did. > Beware of patterns which include names starting with a > period: some of these are internal-only variables and > should never be exported, e.g. ‘.__S3MethodsTable__.’ (and > loading excludes known cases). > Duncan pointed out that '.__global__' is an internal-only > variable created by globalVariables(), which means it > should never be exported by a package. Imagine the number > of conflicts there would be if every package that used > globalVariables() exported the '.__global__' > object... there would probably be thousands, yikes! > It's possible that future versions of 'R CMD check' will > error if there are any incorrectly exported internal > variables (like '.__global__'), which would cause your > package to fail. > Best, Josh >> >> > On Mar 6, 2024, at 01:38, Ivan Krylov >> wrote: >> > >> > В Tue, 5 Mar 2024 22:41:32 + > "Richard >> M. Heiberger" пишет: >> > >> >> Undocumented code objects: >> '.__global__' >> All >> user-level objects in a package should have documentation >> >> entries. See chapter 'Writing R documentation files' >> in the 'Writing R >> Extensions' manual. >> > >> > This object is not here for the user of the package. If >> you don't > export it, there will be no WARNING about it >> being undocumented. This > variable is exported because >> of exportPattern(".") in the file > NAMESPACE. The lone >> dot is a regular expression that matches any name > of an >> R object. >> > >> > If you don't want to manually list your exports in the >> NAMESPACE file > (which can get tedious) or generate it >> (which takes additional > dependencies and build steps), >> you can use exportPattern('^[^\\.]') to > export >> everything except objects with a name starting with a >> period: > >> https://cran.r-project.org/doc/manuals/R-exts.html#Specifying-imports-and-exports >> > >> > -- >> > Best regards, > Ivan >> >> __ >> R-package-devel@r-project.org mailing list >> https://stat.ethz.ch/mailman/listinfo/r-package-devel > -- > Joshua Ulrich | about.me/joshuaulrich FOSS Trading | > www.fosstrading.com > __ > 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
Re: [R-pkg-devel] [External] RcmdrPlugin.HH_1.1-48.tar.gz
On Wed, Mar 6, 2024 at 1:03 AM Richard M. Heiberger wrote: > > Thank you Duncan, Jeff, Ivan. > > I did all that Duncan and Jeff suggested, plus a bit more that appeared to be > necessary. > All of what I did is documented in the RcmdrPlugin.HH/NEWS file. > > Ivan's comments were received after I sent 1.1-50 to CRAN and it was accepted. > I recommend you revert all the changes you made that are documented in the package NEWS, and at minimum follow Ivan's advice to use exportPattern("^[^\\.]") instead of exportPattern("."). It would be even better to follow the advice in Writing R Extensions and list each exported object individually. > I suggest that my notes in the NEWS file, perhaps augmented with Ivan's > comments, > might be added to utils/man/globalVariables.Rd and to the > " > section ‘Package > structure’ in the ‘Writing R Extensions’ manual. > " > That section of Writing R Extensions specifically says not to do what you did. Beware of patterns which include names starting with a period: some of these are internal-only variables and should never be exported, e.g. ‘.__S3MethodsTable__.’ (and loading excludes known cases). Duncan pointed out that '.__global__' is an internal-only variable created by globalVariables(), which means it should never be exported by a package. Imagine the number of conflicts there would be if every package that used globalVariables() exported the '.__global__' object... there would probably be thousands, yikes! It's possible that future versions of 'R CMD check' will error if there are any incorrectly exported internal variables (like '.__global__'), which would cause your package to fail. Best, Josh > > > On Mar 6, 2024, at 01:38, Ivan Krylov wrote: > > > > В Tue, 5 Mar 2024 22:41:32 + > > "Richard M. Heiberger" пишет: > > > >> Undocumented code objects: > >> '.__global__' > >> All user-level objects in a package should have documentation > >> entries. See chapter 'Writing R documentation files' in the 'Writing R > >> Extensions' manual. > > > > This object is not here for the user of the package. If you don't > > export it, there will be no WARNING about it being undocumented. This > > variable is exported because of exportPattern(".") in the file > > NAMESPACE. The lone dot is a regular expression that matches any name > > of an R object. > > > > If you don't want to manually list your exports in the NAMESPACE file > > (which can get tedious) or generate it (which takes additional > > dependencies and build steps), you can use exportPattern('^[^\\.]') to > > export everything except objects with a name starting with a period: > > https://cran.r-project.org/doc/manuals/R-exts.html#Specifying-imports-and-exports > > > > -- > > Best regards, > > Ivan > > __ > R-package-devel@r-project.org mailing list > https://stat.ethz.ch/mailman/listinfo/r-package-devel -- Joshua Ulrich | about.me/joshuaulrich FOSS Trading | www.fosstrading.com __ R-package-devel@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-package-devel
Re: [R-pkg-devel] [External] RcmdrPlugin.HH_1.1-48.tar.gz
Thank you Duncan, Jeff, Ivan. I did all that Duncan and Jeff suggested, plus a bit more that appeared to be necessary. All of what I did is documented in the RcmdrPlugin.HH/NEWS file. Ivan's comments were received after I sent 1.1-50 to CRAN and it was accepted. I suggest that my notes in the NEWS file, perhaps augmented with Ivan's comments, might be added to utils/man/globalVariables.Rd and to the " section ‘Package structure’ in the ‘Writing R Extensions’ manual. " > On Mar 6, 2024, at 01:38, Ivan Krylov wrote: > > В Tue, 5 Mar 2024 22:41:32 + > "Richard M. Heiberger" пишет: > >> Undocumented code objects: >> '.__global__' >> All user-level objects in a package should have documentation >> entries. See chapter 'Writing R documentation files' in the 'Writing R >> Extensions' manual. > > This object is not here for the user of the package. If you don't > export it, there will be no WARNING about it being undocumented. This > variable is exported because of exportPattern(".") in the file > NAMESPACE. The lone dot is a regular expression that matches any name > of an R object. > > If you don't want to manually list your exports in the NAMESPACE file > (which can get tedious) or generate it (which takes additional > dependencies and build steps), you can use exportPattern('^[^\\.]') to > export everything except objects with a name starting with a period: > https://cran.r-project.org/doc/manuals/R-exts.html#Specifying-imports-and-exports > > -- > Best regards, > Ivan __ R-package-devel@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-package-devel
Re: [R-pkg-devel] [External] RcmdrPlugin.HH_1.1-48.tar.gz
Remove leading periods from all file names in the tar.gz. Use .Rbuildignore to handle such files in your dev directory if you need them. Maybe also look at [1]. [1] https://stackoverflow.com/questions/40950799/r-cmd-check-error-how-to-get-rid-of-hidden-files-and-directory-in-devel-r-pack On March 5, 2024 5:34:36 PM PST, "Richard M. Heiberger" wrote: >Almost. > >I used >prompt(".__global__") >to create file >man/.__global__.Rd > >This file does not appear in the tar.gz file, but without a note of rejection. >When I checked my disk directory directly >R CMD check RcmdrPlugin.HH >the file was rejected with > >Found the following hidden files and directories: > .DS_Store > R/.DS_Store > man/.__global__.Rd >These were most likely included in error. See section ‘Package >structure’ in the ‘Writing R Extensions’ manual. > >I looked there >Section 1.1 says that the acceptable characters are >A-Za-z0-9._!#$%&+,;=@^(){}'[] >and "." and _ are explicitly included. > >What should I try next? > > >> On Mar 5, 2024, at 18:21, Duncan Murdoch wrote: >> >> On 05/03/2024 5:41 p.m., Richard M. Heiberger wrote: >>> My package is being rejected by auto-check >>> Flavor: r-devel-linux-x86_64-debian-gcc, r-devel-windows-x86_64 >>> Check: for missing documentation entries, Result: WARNING >>> Undocumented code objects: >>>'.__global__' >>> All user-level objects in a package should have documentation entries. >>> See chapter 'Writing R documentation files' in the 'Writing R >>> Extensions' manual. >>> The problem is that the string'.__global__' is not in the package. >>> I can't find it and John Fox, the maintainer of Rcmdr, can'f find it. >>> Can someone help me understand why a non-existent string is being detected? >> >> That's the variable modified by the `globalVariables()` function. So it may >> well exist in your package. I'd guess the problem is that your package >> exports functions by giving a pattern for the names instead of listing each >> one separately, and it matches that variable. >> >> Duncan Murdoch >> >> >> > >__ >R-package-devel@r-project.org mailing list >https://stat.ethz.ch/mailman/listinfo/r-package-devel -- Sent from my phone. Please excuse my brevity. __ R-package-devel@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-package-devel
Re: [R-pkg-devel] [External] RcmdrPlugin.HH_1.1-48.tar.gz
Almost. I used prompt(".__global__") to create file man/.__global__.Rd This file does not appear in the tar.gz file, but without a note of rejection. When I checked my disk directory directly R CMD check RcmdrPlugin.HH the file was rejected with Found the following hidden files and directories: .DS_Store R/.DS_Store man/.__global__.Rd These were most likely included in error. See section ‘Package structure’ in the ‘Writing R Extensions’ manual. I looked there Section 1.1 says that the acceptable characters are A-Za-z0-9._!#$%&+,;=@^(){}'[] and "." and _ are explicitly included. What should I try next? > On Mar 5, 2024, at 18:21, Duncan Murdoch wrote: > > On 05/03/2024 5:41 p.m., Richard M. Heiberger wrote: >> My package is being rejected by auto-check >> Flavor: r-devel-linux-x86_64-debian-gcc, r-devel-windows-x86_64 >> Check: for missing documentation entries, Result: WARNING >> Undocumented code objects: >>'.__global__' >> All user-level objects in a package should have documentation entries. >> See chapter 'Writing R documentation files' in the 'Writing R >> Extensions' manual. >> The problem is that the string'.__global__' is not in the package. >> I can't find it and John Fox, the maintainer of Rcmdr, can'f find it. >> Can someone help me understand why a non-existent string is being detected? > > That's the variable modified by the `globalVariables()` function. So it may > well exist in your package. I'd guess the problem is that your package > exports functions by giving a pattern for the names instead of listing each > one separately, and it matches that variable. > > Duncan Murdoch > > > __ R-package-devel@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-package-devel