Bioconductor / BiocGenerics

Defines many S4 generic functions used in Bioconductor
https://bioconductor.org/packages/BiocGenerics
11 stars 7 forks source link

Long-term recommendations for Matrix generics #2

Closed LTLA closed 5 years ago

LTLA commented 5 years ago

Just noticed 0527f88abc438b4293a58b8b4e7ac2eff625eccd. Is the long-term recommendation to switch to importing these generics from Matrix rather than BiocGenerics? It wouldn't make a difference to me as a developer, but I could imagine that you might want to get rid of the redundant definitions in BiocGenerics at some point.

hpages commented 5 years ago

Hi Aaron,

I guess there is not much difference for now. Maybe it feels a little bit more natural for most BioC developers to import these things from a central place like BiocGenerics. In the case of rowSums, colSums, rowMeans, colMeans, mean, and t, they can be imported from Matrix but other matrix operations like the matrix summarization operations defined in matrixStats need to be imported from somewhere else. So until we have a satisfying long term solution for centralizing matrix generics in general (including all matrix summarization operations), I don't really have a long-term recommendation.

H.

LTLA commented 5 years ago

Okay. I've switched all my packages over to import these generics from Matrix, before I noticed that they had been restored in BiocGenerics, so I didn't know what the situation was like. Oh well, at least you won't have to worry about me complaining if you decide to delete them for real from BiocGenerics.

hpages commented 5 years ago

Sorry for that. I reverted this on Saturday after I started to investigate the new failures that showed up on the build report and realized that removing these generics from BiocGenerics broke many packages, including yours.

LTLA commented 5 years ago

No worries. I can hardly complain given that I was the one who asked for the change in the first place!