Skip to content
Prev 8037 / 21307 Next

[Bioc-devel] Shouldn't we distinguish between package-specific and dependency errors?

Dear Bioc-Team,

I would like to make this point brought up by Weijun more general.
He reported a considerable number of packages to be broken by
(recursively) depending on KEGGREST - which actually broke due to KEGG
itself (however, this seems to be resolved by the current build).

Nevertheless, given that a dependency can break your package at any time,
it is currently hard to device a robust and stable software product even
within the semi-annual release.
Thus, I wonder whether Bioc packages in release (at least those having
other packages depending on them) shouldn't always be rolled back to the
last version that passed build and check without error, in order to ensure
functioning of packages down the hierarchy.

Based on these considerations, I also wonder whether the shield on the
package landing page indicating the result of the package building
(ok/warning/error) shouldn't distinguish between errors caused by
dependencies and errors caused by the package itself.

Imagine the not too unrealistic case of a new Bioc package presented in a
Software article under review.
Without doubt, a reviewer will be negatively influenced by the 'error'
shield indicating that the package has not been properly worked out.
This is fair enough if the package's own code produces these bugs, but the
opposite it true if that is due to a broken dependency.

In the worst case, the package will run fine the whole time the article is
prepared, but breaks due to a broken dependency the day the reviewer
starts to evaluate the manuscript.

I know that this does not resolves problems of dependencies outside of
BioC such as for KEGGREST with KEGG.
But at least for dependencies within BioC, I wonder whether this is a
point worth considering.

Thanks & Best,
Ludwig