[Debian-med-packaging] Bug#699260: Help (Was: Bug#699260: r-cran-genabel: FTBFS: error: subscript out of bounds)

Dirk Eddelbuettel edd at debian.org
Tue Jan 29 19:22:04 UTC 2013


On 29 January 2013 at 19:58, Andreas Tille wrote:
| Hi,
| 
| because I'm lacking the relevant R knowledge (and I also fail in finding
| some relevant R/CRAN packaging team inside Debian) I'm writing to Debian
| Mentors and main R packages maintainer.  I guess with some basic R knowledge
| the problem below is easy to solve.  I checked the source of r-cran-genabel
| package and found the problematic function only in one single file:
| 
| ../r-cran-genabel-1.7-0$ grep -Rl "stringSplit" 
| R/checkPackageVersionOnCRAN.R
| 
| When reading its only quite short function
| 
| checkPackageVersionOnCRAN <- function(packageName,baseUrlCRAN="http://cran.r-project.org/web/packages/", timeout = 10)
| {
|         # change default timout
|         svtmo <- options("timeout")
|         options("timeout"=timeout)
|         # page to check is
|         pageAddress <- paste(baseUrlCRAN,packageName,sep="/")
| ...
|         # parse the page and get string starting with "Package source:"
|         targetLine <- pageContent[grep("Package source:",pageContent)]
|         # split the string at "Package_" and ".tar.gz"; the element before the last will contain the version
|         splitPattern <- paste(packageName,"_|.tar.gz",sep="")
|         stringSplit <- strsplit(targetLine,splitPattern)
|         cranVersion <- stringSplit[[1]][length(stringSplit[[1]])-1]
|         # return version
|         return(cranVersion)
| }

That is so wrong on so many levels. There are much better ways to get version
information from CRAN.

That said, your diagnosis may be faulty.  All we see is  

> Error : .onLoad failed in loadNamespace() for 'GenABEL', details:
>   call: stringSplit[[1]]
>   error: subscript out of bounds

and loadNamespace() is an internal function. Very generally speaking, not all
package functions are being triggered on build/install -- in fact, very few are.

I suspect something else such as one of the package GenABEL depends upon. 
[ Goes checking ] Well those are standard.  Odd.

Dunno.  Not my package, I don't use it, and there are 4200 other ones on
CRAN.  If it refuses to build ... throw it out.

Dirk



| 
| this heavily smells like the attempt to verify a web page while beeing
| offline.  IMHO the proper fix for this would be to return for instance
| the version of the Debian package or some other reasonable thing - but
| in any case it should be avoided trying to split a non-existing string
| or so.
| 
| Any hint for a reasonable patch?
| 
| Thanks for any help
| 
|         Andreas.
| 
| 
| On Tue, Jan 29, 2013 at 04:16:45PM +0100, Lucas Nussbaum wrote:
| > Source: r-cran-genabel
| > Version: 1.7-0-1
| > Severity: serious
| > Tags: wheezy sid
| > User: debian-qa at lists.debian.org
| > Usertags: qa-ftbfs-20130129 qa-ftbfs
| > Justification: FTBFS in wheezy on amd64
| > 
| > Hi,
| > 
| > During a rebuild of all packages in *wheezy*, your package failed to
| > build on amd64.
| > 
| > Relevant part:
| > > make[1]: Entering directory `/«PKGBUILDDIR»/src'
| > > make[1]: Leaving directory `/«PKGBUILDDIR»/src'
| > > installing to /«PKGBUILDDIR»/debian/r-cran-genabel/usr/lib/R/site-library/GenABEL/libs
| > > ** R
| > > ** data
| > > ** demo
| > > ** inst
| > > ** preparing package for lazy loading
| > > ** help
| > > *** installing help indices
| > > ** building package indices
| > > ** installing vignettes
| > > ** testing if installed package can be loaded
| > > Error : .onLoad failed in loadNamespace() for 'GenABEL', details:
| > >   call: stringSplit[[1]]
| > >   error: subscript out of bounds
| > > Error: loading failed
| > > Execution halted
| > > ERROR: loading failed
| > > * removing '/«PKGBUILDDIR»/debian/r-cran-genabel/usr/lib/R/site-library/GenABEL'
| > > make: *** [R_any_arch] Error 1
| > 
| > The full build log is available from:
| >    http://people.debian.org/~lucas/logs/2013/01/29/r-cran-genabel_1.7-0-1_wheezy.log
| > 
| > A list of current common problems and possible solutions is available at 
| > http://wiki.debian.org/qa.debian.org/FTBFS . You're welcome to contribute!
| > 
| > About the archive rebuild: The rebuild was done on EC2 VM instances from
| > Amazon Web Services, using a clean, minimal and up-to-date chroot. Every
| > failed build was retried once to eliminate random failures.
| > 
| > _______________________________________________
| > Debian-med-packaging mailing list
| > Debian-med-packaging at lists.alioth.debian.org
| > http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/debian-med-packaging
| > 
| 
| -- 
| http://fam-tille.de

-- 
Dirk Eddelbuettel | edd at debian.org | http://dirk.eddelbuettel.com  



More information about the Debian-med-packaging mailing list