Skip to content

[Bioc-devel] external dependencies

6 messages · Anna Gogleva, Shepherd, Lori, Martin Morgan +1 more

#
Dear Bioconductor Team,

I have written a package and was planning to submit it to Bioconductor one
day. The package provides a set of wrapper functions around several
existing command line tools to construct scalable and reproducible
pipelines for secretome prediction.

The package requires several external system dependencies to be installed
in order to work (listed in the SystemRequirements filed). I have a
top-level README describing in detail how to install the required
dependencies and a shell script to automate this process. The thing is,
some of the external dependencies were not designed to work on Windows -
causing certain unit tests and examples to fail during the automatic R CMD
check on Windows.

I have run R CMD check on Mac and Linux and the package passes without
errors, warnings or notes. It also satisfies the remaining requirements
from the recommended package checklist.

What would be the best way to proceed? Would it be still ok to submit the
package though it is not fully functional on Windows due to unavailability
of certain external dependencies?

Thank you for your advice,

Anna Gogleva
#
You can still submit to bioconductor despite this limitation.  You could also do a os check in the examples and tests that fail on windows and make a comment that this is the case.  If the program is not meant to run in windows there is options to handle that as well and the review assigned to you can assist you with this.  If you feel the package is otherwise ready to submit to Bioconductor for review I would proceed.


https://github.com/Bioconductor/Contributions



Lori Shepherd

Bioconductor Core Team

Roswell Park Cancer Institute

Department of Biostatistics & Bioinformatics

Elm & Carlton Streets

Buffalo, New York 14263
#
Dear Lori,

Thanks a lot for the clarification.
I will incorporate os checks in my unit tests and examples.

Thanks,
Anna

On 2 October 2017 at 12:30, Shepherd, Lori <Lori.Shepherd at roswellpark.org>
wrote:

  
  
#
I want to add, though, that OS-specific functionality and system 
requirements greatly limit the utility of your package and, like the 
OS-specific dependencies your package depends on, serves as a kind of 
virus that makes any other package that uses yours also not operable on 
the unsupported OS. You're also introducing complexity into the build 
system and for potential users, and especially to your own package where 
you need to effectively navigate around idiosyncrasies of the 
third-party software.

So while technically possible, I'd take a deep dark look at the soul of 
your package and ask whether it is really necessary to do this. Maybe 
the functionality offered by the system dependency is not core to what 
your package offers, or an alternative cross-platform solution provides 
something that is 'good enough', or the author of the upstream 
dependency can be convinced to make their package more user friendly, or 
the specific functionality provided by the OS-specific software can be 
spun off to an independent R package.

I know that many Bioc developers are on linux or mac, but more than 1/2 
of our web and support site visitors are on Windows, so you're losing 
1/2 your audience and impact.
Martin
On 10/02/2017 08:40 AM, Anna Gogleva wrote:
This email message may contain legally privileged and/or...{{dropped:2}}
#
I'd also comment that if you make the package visible I would be willing to
have a look at the issues involved in porting to windows.  No guarantees
but at least get some sense of context.

On Mon, Oct 2, 2017 at 9:04 AM, Martin Morgan <martin.morgan at roswellpark.org

  
  
#
Dear Martin and Vincent,

Thanks for your feedback. Here is the current package repository:
https://github.com/gogleva/SecretSanta

I still need to run more tests on mac and clean the code a bit.
But probably this would be sufficient to say whether the package is
compatible with Bioconductor in principle or not.

Thanks,
Anna

On 2 October 2017 at 14:11, Vincent Carey <stvjc at channing.harvard.edu>
wrote: