RobinHankin / disordR

https://robinhankin.github.io/disordR/
1 stars 0 forks source link

Matrix dependency issue #38

Closed RobinHankin closed 1 year ago

RobinHankin commented 1 year ago

Hello,

You are receiving this e-mail because you are listed as the maintainer of a CRAN/Bioc package with 'Matrix' in its Depends or Imports.

We, the authors of 'Matrix', have detected that your dependency is not strict enough, because you either (a) depend on a minimum version of 'Matrix' that is too old, or (b) do not specify a minimum even though one is needed. We recommend that you use at least the following:

     Package            Depends/Imports
 [1,] BASiCS             Matrix (>= 1.5-0)
...[snip]...
[21,] disordR            Matrix (>= 1.3-3)
...[snip]...
[50,] variancePartition  Matrix (>= 1.3-0)

Unfortunately, the need for such a change is somewhat subtle and not detected in CRAN's checks. The main issues are as follows.

Due to the details of your NAMESPACE, your package binaries cache S4 class definitions and/or methods from 'Matrix'. You can find these cached objects "hidden" in your package namespace, in lists named .C and .T:, e.g.,

grep("^[.][CT]", names(asNamespace("")), value = TRUE)

If your binary was built against an old version of 'Matrix', then it is possible for cached classes and methods to differ from the corresponding ones defined in the latest 'Matrix'.

In the worst case, behaviour seen by two users with identical versions of your package and identical versions of 'Matrix' can differ depending on the version of 'Matrix' available when your binary was built.

A sufficiently strict 'Matrix' version requirement avoids these issues. Hence, going forward, we will notify package maintainers as we update 'Matrix' of potentially "stale" dependencies.

Please let us know if you have further questions, maybe after browsing the recent R-devel thread on this topic, here:

https://stat.ethz.ch/pipermail/r-devel/2022-September/081971.html

Thank you, Mikael, Martin, and Doug