[Bioc-devel] Error : object 'lengths' is not exported by 'namespace:BiocGenerics'

Pages, Herve hp@ge@ @ending from fredhutch@org
Fri Nov 2 23:08:13 CET 2018


Hi developers,

Starting with R 3.6, base::lengths() can now be treated as an S4 generic 
function (like base::length() or base::names()) so there is no need for 
us to define our own lengths() generic function in BiocGenerics. 
Therefore we've removed the lengths() generic from BiocGenerics (in 
version 0.29.1). Note that you can see the S4 generic associated with 
base::lengths() by calling getGeneric("lengths") in a fresh R session:

   > getGeneric("lengths")
   standardGeneric for "lengths" defined from package "base"

   function (x, use.names = TRUE)
   standardGeneric("lengths")
   <bytecode: 0x3548c90>
   <environment: 0x3540928>
   Methods may be defined for arguments: x
   Use  showMethods("lengths")  for currently available ones.

This used to return NULL in R < 3.6.

Because of these changes, packages that currently explicitly import 
lengths or a lengths method in their NAMESPACE are failing to install 
with an error that looks like this:

   ** byte-compile and prepare package for lazy loading
   Error : object 'lengths' is not exported by 'namespace:BiocGenerics'
   ERROR: lazy loading failed for package 'BubbleTree'

The packages currently affected by this are: BubbleTree, csaw, 
GA4GHclient, matter, NADfinder, and SomaticSignatures. The fix is to 
simply remove any explicit import of lengths from the NAMESPACE.

Note that many other software packages currently fail to install in BioC 
3.9 because they depend on one of the above packages.

Please let us know if you have questions or need assistance with this.

H.

-- 
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: hpages using fredhutch.org
Phone:  (206) 667-5791
Fax:    (206) 667-1319



More information about the Bioc-devel mailing list