[BioC] Error : package slot missing from signature for generic
Martin Morgan
mtmorgan at fhcrc.org
Sat Aug 4 22:15:02 CEST 2012
Hi Mark --
On 08/03/2012 12:14 AM, Mark Cowley wrote:
> any ideas fellow bioconductors?
> cheers, Mark
> On 01/08/2012, at 9:41 AM, Mark Cowley wrote:
>
>> Dear guRu's,
>> please help me escape dependency hell...
>> in my package foo, i'm trying to replace the 'sampleNames<-' method from package lumi. This works well, ie I can install foo, and execute the updated code.
>>
>> However, if my package foo imports oligoClasses, (or as it turns out, a chain of dependencies which lead to oligoClasses), I get this error during INSTALL
>> * installing to library Œ/Library/Frameworks/R.framework/Versions/2.15/Resources/library‚
>> * installing *source* package Œfoo‚ ...
>> ** R
>> ** preparing package for lazy loading
>> Warning: replacing previous import Œimage‚ when loading Œgraphics‚
>> Warning: replacing previous import Œdensity‚ when loading Œstats‚
>> Warning: replacing previous import Œresiduals‚ when loading Œstats‚
>> ** help
>> *** installing help indices
>> ** building package indices
>> ** testing if installed package can be loaded
>> *** arch - i386
>> Warning: replacing previous import Œimage‚ when loading Œgraphics‚
>> Warning: replacing previous import Œdensity‚ when loading Œstats‚
>> Warning: replacing previous import Œresiduals‚ when loading Œstats‚
>> Error : package slot missing from signature for generic ŒsampleNames<-‚
>> and classes LumiBatch, ANY
>> cannot use with duplicate class names (the package may need to be re-installed)
>> Error: loading failed
>> Execution halted
>> *** arch - x86_64
>> Warning: replacing previous import Œimage‚ when loading Œgraphics‚
>> Warning: replacing previous import Œdensity‚ when loading Œstats‚
>> Warning: replacing previous import Œresiduals‚ when loading Œstats‚
>> Error : package slot missing from signature for generic ŒsampleNames<-‚
>> and classes LumiBatch, ANY
>> cannot use with duplicate class names (the package may need to be re-installed)
>> Error: loading failed
>> Execution halted
>> ERROR: loading failed for Œi386‚, Œx86_64‚
>> * removing Œ/Library/Frameworks/R.framework/Versions/2.15/Resources/library/foo‚
>> * restoring previous Œ/Library/Frameworks/R.framework/Versions/2.15/Resources/library/foo‚
>>
>> The message tells me its a problem with my 'sampleNames<-' method, however it looks fine to me:
>> 1) foo installs just fine when I don't import oligoClasses
>> 2) My sampleNames<- code can be pasted into an R session just fine
This strongly suggests that it is an imports issue. I'd guess that you
need to importFrom(Biobase, "sampleNames<-") or importMethodFrom(oligo,
"sampleNames<-")
I think this is likely an error in the methods package, and will try to
generate a reproducible example.
Martin
>> 3) the error appears as soon as I add a import(oligoClasses) or importFrom(oligoClasses,'sampleNames<-') to foo's NAMESPACE
>>
>> I've had a look at oligoClasses, and it seems to be playing by the rules: it importMethodsFrom(Biobase, "sampleNames<-") and exportMethods("sampleNames<-") for a 'RangedDataCNV' class. It doesn't import lumi, nor does it know about sampleNames<-,LumiBatch,ANY-method
>>
>> i've spent a few days trying to work this one out, so can anyone point me in the right direction?
>>
>> cheers,
>> Mark
>>
>> foo/R/LumiBatch-methods.R:
>> #' @name LumiBatch-methods
>> #' @title a collection of LumiBatch manipulators
>> #' @description \code{sampleNames<-}: set sampleNames in LumiBatch objects,
>> #' including the QC, vstParameter, transformFun and controlData slots
>> #'
>> #' @note code came from lumi_2.8.0 & modified by MJC to set the controlData slot
>> #' properly
>> #'
>> #' @param object an \code{LumiBatch} object
>> #' @param value a character vector of column names
>> #' @return a \code{LumiBatch} object
>> #' @rdname LumiBatch-methods
>> #' @aliases sampleNames<-,LumiBatch,ANY-method
>> #' @export
>> #' @importMethodsFrom Biobase "sampleNames<-"
>> #' @importMethodsFrom lumi "sampleNames<-"
>> #' @import oligoClasses
>> setMethod("sampleNames<-",
>> signature=signature("LumiBatch", "ANY"),
>> function(object, value) {
>> object <- callNextMethod()
>> ddim <- dim(object)
>> if (!is.null(object at QC)) {
>> QC <- object at QC
>> if (!is.null(QC$sampleSummary))
>> if (ncol(QC$sampleSummary) == ddim[2])
>> colnames(QC$sampleSummary) <- value
>> if (!is.null(QC$BeadStudioSummary))
>> if (nrow(QC$BeadStudioSummary) == ddim[2])
>> rownames(QC$BeadStudioSummary) <- value
>> object at QC <- QC
>> }
>> if (!is.null(attr(object, "vstParameter"))) {
>> vstParameter <- attr(object, "vstParameter")
>> if (!is.null(nrow(vstParameter))) {
>> if (nrow(vstParameter) == ddim[2]) {
>> rownames(vstParameter) <- value
>> transformFun <- attr(object, "transformFun")
>> names(transformFun) <- value
>> attr(object, "vstParameter") <- vstParameter
>> attr(object, "transformFun") <- transformFun
>> }
>> }
>> }
>> if (nrow(object at controlData) > 0) {
>> # modified by MJC
>> colnames(controlData(object)) <- c("controlType", "ProbeID", value)
>> }
>> return(object)
>> }
>> )
>>
>>
>> foo/NAMESPACE:
>> exportMethods("sampleNames<-")
>> import(oligoClasses)
>> importMethodsFrom(Biobase,"sampleNames<-")
>> importMethodsFrom(lumi,"sampleNames<-")
>>
>>
>> foo/DESCRIPTION:
>> Package: foo
>> Maintainer: Mark Cowley <m.cowley at garvan.org.au>
>> License: GPL-2
>> Title: Quicktest package for rapid development with testthat facilities
>> Author: Mark Cowley <m.cowley at garvan.org.au>
>> Description: A lightweight library for rapid iterative development of new
>> code and test suites. Once code is confirmed to work, you should move it out
>> to a dedicated package.
>> Version: 0.1
>> Date: 2012-08-01
>> Depends:
>> R (>= 2.0),
>> methods,
>> Biobase,
>> lumi
>> Suggests:
>> roxygen2,
>> testthat,
>> Imports:
>> Biobase,
>> lumi,
>> oligoClasses
>> Collate:
>> 'LumiBatch-methods.R'
>>
>>
>>> sessionInfo()
>> R version 2.15.1 (2012-06-22)
>> Platform: x86_64-apple-darwin9.8.0/x86_64 (64-bit)
>>
>> locale:
>> [1] en_AU.UTF-8/en_AU.UTF-8/en_AU.UTF-8/C/en_AU.UTF-8/en_AU.UTF-8
>>
>> attached base packages:
>> [1] stats graphics grDevices utils datasets methods base
>>
>> other attached packages:
>> [1] lumi_2.8.0 nleqslv_1.9.3 methylumi_2.2.0 ggplot2_0.9.1
>> [5] reshape2_1.2.1 scales_0.2.1 Biobase_2.16.0 BiocGenerics_0.2.0
>>
>> loaded via a namespace (and not attached):
>> [1] affy_1.34.0 affyio_1.24.0 annotate_1.34.1
>> [4] AnnotationDbi_1.18.1 bigmemory_4.2.11 BiocInstaller_1.4.7
>> [7] Biostrings_2.24.1 bitops_1.0-4.1 BSgenome_1.24.0
>> [10] colorspace_1.1-1 DBI_0.2-5 dichromat_1.2-4
>> [13] digest_0.5.2 DNAcopy_1.30.0 GenomicRanges_1.8.9
>> [16] genoset_1.6.0 grid_2.15.1 hdrcde_2.16
>> [19] IRanges_1.14.4 KernSmooth_2.23-8 labeling_0.1
>> [22] lattice_0.20-6 MASS_7.3-19 Matrix_1.0-6
>> [25] memoise_0.1 mgcv_1.7-19 munsell_0.3
>> [28] nlme_3.1-104 plyr_1.7.1 preprocessCore_1.18.0
>> [31] proto_0.3-9.2 RColorBrewer_1.0-5 RCurl_1.91-1
>> [34] Rsamtools_1.8.5 RSQLite_0.11.1 rtracklayer_1.16.3
>> [37] stats4_2.15.1 stringr_0.6.1 tools_2.15.1
>> [40] XML_3.9-4 xtable_1.7-0 zlibbioc_1.2.0
>>
>>
>>
>> [[alternative HTML version deleted]]
>>
>> _______________________________________________
>> Bioconductor mailing list
>> Bioconductor at r-project.org
>> https://stat.ethz.ch/mailman/listinfo/bioconductor
>> Search the archives: http://news.gmane.org/gmane.science.biology.informatics.conductor
>
> _______________________________________________
> Bioconductor mailing list
> Bioconductor at r-project.org
> https://stat.ethz.ch/mailman/listinfo/bioconductor
> Search the archives: http://news.gmane.org/gmane.science.biology.informatics.conductor
>
--
Computational Biology / Fred Hutchinson Cancer Research Center
1100 Fairview Ave. N.
PO Box 19024 Seattle, WA 98109
Location: Arnold Building M1 B861
Phone: (206) 667-2793
More information about the Bioconductor
mailing list