Dear Dan : Thanks again for your kind help. I did clean up my package git working tree, make every commit readable, tractable. I've read about R writing extension manual and that helped a lot. Many thanks to Herve' insightful answer to overcome file permission issue, R CMD check working perfectly now. Through the long list of R CMD check report, CMD check alarmed me several possible issues on my packages, and I am working on it. Plus, R CMD check complained about some hidden file such as .gitignore, .Rproj.user, .git . Therefore I did strip away these files following this way :
C:\Windows\system32>cd C:\Program Files\R\R-devel\bin\x64 C:\Program Files\R\R-devel\bin\x64>R CMD build "C:\Users\jvrat\Documents\MSPC" * checking for file 'C:\Users\jvrat\Documents\MSPC/DESCRIPTION' ... OK * preparing 'MSPC': * checking DESCRIPTION meta-information ... OK * installing the package to build vignettes * creating vignettes ... OK * checking for LF line-endings in source and make files * checking for empty or unneeded directories Removed empty directory 'MSPC/tests/testthat' * building 'MSPC_0.99.0.tar.gz' C:\Program Files\R\R-devel\bin\x64>R CMD check "MSPC_0.99.0.tar.gz" * using log directory 'C:/Program Files/R/R-devel/bin/x64/MSPC.Rcheck' * using R Under development (unstable) (2016-11-09 r71642) * using platform: x86_64-w64-mingw32 (64-bit) * using session charset: ISO8859-1 * checking for file 'MSPC/DESCRIPTION' ... OK * checking extension type ... Package * this is package 'MSPC' version '0.99.0' * checking package namespace information ... OK Now inst/ directory is created in MSPC_0.99.0.tar.gz, I could add my external data in extdata (I think I need manually create extdata folder) and make available these data for vignette code. But How can I commit these changes to git automatically ? Because MSPC_0.99.0.tar.gz was not in my package directory, I cannot push these changes to git. Could you give me possible idea please ? Many thanks to Bioconductor Project team. Best regards : Jurat On Fri, Dec 2, 2016 at 7:05 PM, Dan Tenenbaum <dtene...@fredhutch.org> wrote: > I tried building your package, there are a number of issues with it. > > I recommend that you 1) always be aware of what is and is not in github, > by using the 'git status' command. Bear in mind that if files are not > committed to git then we will not be able to see them and not be able to > help you. Specifically, the inst folder and everything under it does not > exist in the github repository. Therefore I get an error in the chunk at > lines 45-50, I don't get as far as you (error in lines 60-64). > > As Herve suggests, please run R CMD check from a directory that you have > write permission in, such as your home directory. > > R CMD check will alert you about various problems, including referring to > packages in NAMESPACE but not DESCRIPTION, relying on BiocStyle but not > mentioning it in DESCRIPTION, etc. > > Dan > > > > ----- Original Message ----- > > From: "Jurat Shayidin" <juratb...@gmail.com> > > To: "Dan Tenenbaum" <dtene...@fredhutch.org>, "bioc-devel" < > bioc-devel@r-project.org> > > Sent: Friday, December 2, 2016 9:11:29 AM > > Subject: Re: [Bioc-devel] package vignette error : external data can't > be captured when compiling package vignette > > > Dear Dan : > > > > I forgot to commit vignette file, now I pushed new changes, so now error > > could be something else. People in stackoverflow suggest me to put all my > > external data (a.k.a, bed files) into vignette folder, try to run R CMD > > check and see what happen, I did this solution, but it doesn't work. > Plus, > > I checked file permission of my package parent directory, seems fine to > me. > > How I check file permission of my package ? > > How can I fix this write permission on my machine ? This is not intuitive > > to me, Any hint please ? > > > > Herve suggest me don't create inst/extdata directory manually, but I > still > > can't let external data available for vignette code. FYI, my objective in > > vignette file : let external data available for package use, compile > > trivial version of vignette with no error, then continue to make it > > perfect. Here is updated session of R CMD check : > > > > > > Microsoft Windows [Version 6.3.9600] > > (c) 2013 Microsoft Corporation. All rights reserved. > > > > C:\Users\jvrat>cd C:\Program Files\R\R-devel\bin\x64 > > > > C:\Program Files\R\R-devel\bin\x64>R CMD INSTALL > > "C:\Users\jvrat\Documents\MSPC" > > * installing to library 'C:/Users/jvrat/Documents/R/win-library/3.4' > > * installing *source* package 'MSPC' ... > > ** R > > ** inst > > ** preparing package for lazy loading > > ** help > > *** installing help indices > > ** building package indices > > ** installing vignettes > > ** testing if installed package can be loaded > > * DONE (MSPC) > > > > C:\Program Files\R\R-devel\bin\x64>R CMD check > > "C:\Users\jvrat\Documents\MSPC" > > Warning in dir.create(pkgoutdir, mode = "0755") : > > cannot create dir 'C:\Program Files\R\R-devel\bin\x64\MSPC.Rcheck', > > reason 'Permission denied' > > ERROR: cannot create check dir 'C:/Program > > Files/R/R-devel/bin/x64/MSPC.Rcheck' > > > > C:\Program Files\R\R-devel\bin\x64>R CMD build > > "C:\Users\jvrat\Documents\MSPC" > > * checking for file 'C:\Users\jvrat\Documents\MSPC/DESCRIPTION' ... OK > > * preparing 'MSPC': > > * checking DESCRIPTION meta-information ... OK > > * installing the package to build vignettes > > * creating vignettes ...Warning: running command > > '"C:/PROGRA~1/R/R-devel/bin/x64/Rscript" --vanilla --default-packages= > -e > > "tools::buildVignettes(dir = '.', tangle = TRUE)"' had status 1 > > ERROR > > Warning in engine$weave(file, quiet = quiet, encoding = enc) : > > Pandoc (>= 1.12.3) and/or pandoc-citeproc not available. Falling back to > > R Markdown v1. > > Quitting from lines 60-64 (vignette.Rmd) > > Error: processing vignette 'vignette.Rmd' failed with diagnostics: > > subscript out of bounds > > Execution halted > > > > C:\Program Files\R\R-devel\bin\x64> > > > > > > How I fix R CMD check error above ? system.file() still can't detect > > external data. Any idea please ? Thanks a lot > > > > Best regards : > > > > Jurat > > > > > > On Fri, Dec 2, 2016 at 5:43 PM, Dan Tenenbaum <dtene...@fredhutch.org> > > wrote: > > > >> See below. > >> > >> ----- Original Message ----- > >> > From: "Jurat Shayidin" <juratb...@gmail.com> > >> > To: "Dan Tenenbaum" <dtene...@fredhutch.org>, "bioc-devel" < > >> bioc-devel@r-project.org> > >> > Sent: Friday, December 2, 2016 8:32:35 AM > >> > Subject: Re: [Bioc-devel] package vignette error : external data can't > >> be captured when compiling package vignette > >> > >> > Dear Dan : > >> > > >> > Really appreciated for your quick respond. Instead, I am using R CMD > >> check > >> > on my packages, I have an error. Here is whole session detail : > >> > > >> > Microsoft Windows [Version 6.3.9600] > >> > (c) 2013 Microsoft Corporation. All rights reserved. > >> > > >> > C:\Users\jvrat>cd C:\Program Files\R\R-devel\bin\x64 > >> > > >> > C:\Program Files\R\R-devel\bin\x64>R CMD INSTALL > >> > "C:\Users\jvrat\Documents\MSPC" > >> > * installing to library 'C:/Users/jvrat/Documents/R/win-library/3.4' > >> > * installing *source* package 'MSPC' ... > >> > ** R > >> > ** inst > >> > ** preparing package for lazy loading > >> > ** help > >> > *** installing help indices > >> > ** building package indices > >> > ** installing vignettes > >> > ** testing if installed package can be loaded > >> > * DONE (MSPC) > >> > > >> > C:\Program Files\R\R-devel\bin\x64>R CMD check > >> > "C:\Users\jvrat\Documents\MSPC" > >> > Warning in dir.create(pkgoutdir, mode = "0755") : > >> > cannot create dir 'C:\Program Files\R\R-devel\bin\x64\MSPC.Rcheck', > >> reason > >> > 'Permission denied' > >> > ERROR: cannot create check dir 'C:/Program > >> > Files/R/R-devel/bin/x64/MSPC.Rcheck' > >> > >> You need to run R CMD check in a directory where you have write > >> permissions. > >> > >> > >> > > >> > C:\Program Files\R\R-devel\bin\x64>R CMD build > >> > "C:\Users\jvrat\Documents\MSPC" > >> > * checking for file 'C:\Users\jvrat\Documents\MSPC/DESCRIPTION' ... > OK > >> > * preparing 'MSPC': > >> > * checking DESCRIPTION meta-information ... OK > >> > * installing the package to build vignettes > >> > * creating vignettes ...Warning: running command > >> > '"C:/PROGRA~1/R/R-devel/bin/x64/Rscript" --vanilla > --default-packages= > >> -e > >> > "tools::buildVignettes(dir = '.', tangle = TRUE)"' had status 1 > >> > ERROR > >> > Warning in engine$weave(file, quiet = quiet, encoding = enc) : > >> > Pandoc (>= 1.12.3) and/or pandoc-citeproc not available. Falling > back to > >> > R Markdown v1. > >> > Quitting from lines 62-66 (vignette.Rmd) > >> > Error: processing vignette 'vignette.Rmd' failed with diagnostics: > >> > object 'inputData' not found > >> > Execution halted > >> > > >> > >> Line 61 of the vignette (as it is in Github; it's apparently different > on > >> yur machine based on the error message) is: > >> > >> total.ERs <- denoise_ERs(peakGRs = inputData, tau.w = 1.0E-04, > .fileName = > >> "noiseER", outDir = "", verbose = FALSE) > >> > >> As you can see, the peakGRs argument is set to inputData, but inputData > is > >> not defined anywhere. > >> > >> Dan > >> > >> > >> > >> > C:\Program Files\R\R-devel\bin\x64> > >> > > >> > > >> > How can I fix this R CMD check error ? Instead people in stackoverflow > >> > remind me that using devtools packages is not stable some times, so I > go > >> > for old fashion : use CMD. Plus, still my external data can't > available > >> for > >> > vignette data, and vignette compilation is failed again. I used > >> > system.file() to do this, but not working. Any idea please ? How can I > >> > overcome this problem? Thanks a lot to Bioconductor project team. > >> > > >> > Best regards : > >> > > >> > Jurat > >> > > >> > > >> > On Fri, Dec 2, 2016 at 5:20 PM, Dan Tenenbaum <dtene...@fredhutch.org > > > >> > wrote: > >> > > >> >> If your package is in github at https://github.com/julaiti/MSPC , it > >> >> looks like there is no inst or extdata folder in that repository. > >> >> > >> >> Maybe it has not yet been added/committed/pushed to git? > >> >> > >> >> Note that everything _under_ inst gets installed when you install the > >> >> package, but the inst directory itself goes away. > >> >> > >> >> If in your package source you have the following structure: > >> >> > >> >> inst/extdata/ > >> >> inst/foo.txt > >> >> > >> >> In the installed package you end up with: > >> >> > >> >> extdata/ > >> >> foo.txt > >> >> > >> >> HTH > >> >> Dan > >> >> > >> >> > >> >> ----- Original Message ----- > >> >> > From: "Jurat Shayidin" <juratb...@gmail.com> > >> >> > To: "Hervé Pagès" <hpa...@fredhutch.org>, "bioc-devel" < > >> >> bioc-devel@r-project.org> > >> >> > Sent: Friday, December 2, 2016 5:36:28 AM > >> >> > Subject: Re: [Bioc-devel] package vignette error : external data > can't > >> >> be captured when compiling package vignette > >> >> > >> >> > Dear Hervé : > >> >> > > >> >> > Thanks again for your response on my issue. I've read your message > >> very > >> >> > carefully and did all you suggested to me, still can't fix the > >> vignette > >> >> > compilation error. I have developed my package on windows machine > >> under > >> >> > devel version of R and Bioc, all unit test works fine to me. I > don't > >> >> > understand why inst/ directory was not created when I build and > >> install > >> >> my > >> >> > packages, external data can't be read during vignette compilation. > >> >> > However, my objective is, to build my package vignette with no > error > >> in > >> >> the > >> >> > first place, then continue to edit the context until getting final > >> >> version > >> >> > of vignette file. When I install packages using > devtools::install(), I > >> >> got > >> >> > this : > >> >> > > >> >> >> devtools::install() > >> >> > Installing MSPC > >> >> > "C:/PROGRA~1/R/R-devel/bin/x64/R" \ > >> >> > --no-site-file --no-environ --no-save \ > >> >> > --no-restore --quiet CMD INSTALL \ > >> >> > "C:/Users/jvrat/Documents/MSPC" \ > >> >> > --library="C:/Users/jvrat/Documents/R/win-library/3.4" \ > >> >> > --install-tests > >> >> > * installing *source* package 'MSPC' ... > >> >> > ** R > >> >> > ** tests > >> >> > ** preparing package for lazy loading > >> >> > ** help > >> >> > *** installing help indices > >> >> > ** building package indices > >> >> > ** installing vignettes > >> >> > ** testing if installed package can be loaded > >> >> > * DONE (MSPC) > >> >> > Reloading installed MSPC > >> >> > > >> >> > > >> >> > I believe doing this is right in vignette file after I follow your > >> >> advise : > >> >> > > >> >> > ```{r} > >> >> > library(MSPC) > >> >> > inputBed <- list.files(system.file("extdata", package = "MSPC"), > >> >> full.names > >> >> > = TRUE) > >> >> > inputData <- readPeakFile(peakFolder = inputBed) > >> >> > > >> >> > inputData > >> >> > ``` > >> >> > > >> >> > > >> >> > However, I should not add inst/extdata manually , without this I > can't > >> >> > allow to load external data for package use, and vignette > compilation > >> >> keep > >> >> > failed. To be honest, this is my very first time building R > packages, > >> I > >> >> > don't know how to fix this error. Just out of curiosity, during > >> package > >> >> > installation, everything is under the inst/ , but I don't have this > >> >> folder. > >> >> > Why is that ? Is that possible to get further help from > Bioconductor > >> >> > project team to review the package source in github ? > >> >> > > >> >> > I am stuck with this problem, I searched all possible answer from > all > >> >> over > >> >> > the place, cannot fix my issues. I am very sorry if my question is > >> naive > >> >> to > >> >> > ask here. Could you point me out how to possibly solve this > problem? > >> >> Thanks > >> >> > again for your great favor. > >> >> > > >> >> > Best regards : > >> >> > > >> >> > Jurat > >> >> > > >> >> > > >> >> > > >> >> > On Fri, Dec 2, 2016 at 2:04 AM, Hervé Pagès <hpa...@fredhutch.org> > >> >> wrote: > >> >> > > >> >> >> Hi, > >> >> >> > >> >> >> Make sure you understand the difference between the *package > source > >> >> >> tree*, which you control and where you must create the inst/ > folder, > >> >> >> and the *package installation folder*, which gets created and > >> >> >> populated by 'R CMD INSTALL'. The exact location of the *package > >> >> >> installation folder* doesn't really matter but if you are curious > >> >> >> you can use the .libPaths() command to see it. The *package > >> installation > >> >> >> folder* is the subfolder of .libPaths() that has the name of the > >> >> >> package. You can also see it with find.package("mypackage"). > >> >> >> > >> >> >> During installation, everything that is under the inst/ folder > will > >> >> >> get installed *directly* under the *package installation folder*. > >> >> >> So if you created the extdata/ folder under inst/ (as it should > be), > >> >> >> extdata/ will end up being installed at > >> .libPaths()/mypackage/extdata/ > >> >> >> The code in your examples can get the path to the *installed* > >> extdata/ > >> >> >> folder with > >> >> >> > >> >> >> system.file(package="mypackage", "extdata") > >> >> >> > >> >> >> or get the path to any file under extdata/ with e.g. > >> >> >> > >> >> >> system.file(package="mypackage", "extdata", "data1.bed") > >> >> >> > >> >> >> Don't do > >> >> >> > >> >> >> system.file(package="mypackage", "extdata/data1.bed") > >> >> >> > >> >> >> even if it works for you because it's not portable (the use of / > as > >> >> >> a separator is a platform-dependent thing). > >> >> >> > >> >> >> Finally note that you should never try to modify anything that is > >> under > >> >> >> .libPaths() by hand. Furthermore, and that's a mistake we see > >> sometimes > >> >> >> with contributed packages, the code in your package should always > >> >> >> treat the *package installation folder* as a read-only folder. > >> >> >> > >> >> >> Hope this helps, > >> >> >> > >> >> >> H. > >> >> >> > >> >> >> > >> >> >> On 12/01/2016 04:34 PM, Jurat Shayidin wrote: > >> >> >> > >> >> >>> Hi BiocDevel : > >> >> >>> > >> >> >>> I am getting vignette error when I building my packages, and > >> external > >> >> data > >> >> >>> can't be captured by system.file() . I did unit test all function > >> of my > >> >> >>> packages, it works fine. When I am going to compile package > >> vignette, > >> >> test > >> >> >>> input bed file can't be detected. However, I used > >> >> >>> devtools::install()command > >> >> >>> to install my packages, but installation directory inst/ was not > >> >> created > >> >> >>> automatically. By R package convention, all external data must be > >> >> located > >> >> >>> in inst/, so I manually created this folder inst/extdata and > paste > >> my > >> >> >>> data, but vignette compilation still failed. According to > convention > >> >> of R > >> >> >>> package, my package structure will be: > >> >> >>> > >> >> >>> myPackage > >> >> >>> `- inst > >> >> >>> `- extdata > >> >> >>> `- data1.bed > >> >> >>> `- data2.bed > >> >> >>> `- R > >> >> >>> `- ... > >> >> >>> `- NAMESPACE > >> >> >>> `- DESCRIPTION > >> >> >>> > >> >> >>> > >> >> >> -- > >> >> >> Hervé Pagès > >> >> >> > >> >> >> Program in Computational Biology > >> >> >> Division of Public Health Sciences > >> >> >> Fred Hutchinson Cancer Research Center > >> >> >> 1100 Fairview Ave. N, M1-B514 > >> >> >> P.O. Box 19024 > >> >> >> Seattle, WA 98109-1024 > >> >> >> > >> >> >> E-mail: hpa...@fredhutch.org > >> >> >> Phone: (206) 667-5791 > >> >> >> Fax: (206) 667-1319 > >> >> >> > >> >> > > >> >> > > >> >> > > >> >> > -- > >> >> > Jurat Shahidin > >> >> > > >> >> > Dipartimento di Elettronica, Informazione e Bioingegneria > >> >> > Politecnico di Milano > >> >> > Piazza Leonardo da Vinci 32 - 20133 Milano, Italy > >> >> > Mobile : +39 3279366608 > >> >> > > >> >> > [[alternative HTML version deleted]] > >> >> > > >> >> > _______________________________________________ > >> >> > Bioc-devel@r-project.org mailing list > >> >> > https://stat.ethz.ch/mailman/listinfo/bioc-devel > >> >> > >> > > >> > > >> > > >> > -- > >> > Jurat Shahidin > >> > > >> > Dipartimento di Elettronica, Informazione e Bioingegneria > >> > Politecnico di Milano > >> > Piazza Leonardo da Vinci 32 - 20133 Milano, Italy > >> > Mobile : +39 3279366608 > >> > > > > > > > > -- > > Jurat Shahidin > > > > Dipartimento di Elettronica, Informazione e Bioingegneria > > Politecnico di Milano > > Piazza Leonardo da Vinci 32 - 20133 Milano, Italy > > Mobile : +39 3279366608 > -- Jurat Shahidin Dipartimento di Elettronica, Informazione e Bioingegneria Politecnico di Milano Piazza Leonardo da Vinci 32 - 20133 Milano, Italy Mobile : +39 3279366608 [[alternative HTML version deleted]] _______________________________________________ Bioc-devel@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/bioc-devel