Question: Develop an R package for CRAN vs BioConductor
10
gravatar for DVA
18 months ago by
DVA460
United States
DVA460 wrote:

I am developing an R package and I plan to eventually upload it to BioConductor. However, after I went over the guidelines, I realized that it seems to be more restricted comparing with the requirement from CRAN. I followed the book: "R Package" by Hadley Wickham, but I believe this book is designed to help people submit CRAN packages, not too specifically for BioConductor.

Therefore I wonder if there is any special issue I should pay additional attention here. Especially formats I guess.

Thank you.

packages cran bioconductor R • 1.4k views
ADD COMMENTlink modified 17 months ago by ddiez1.7k • written 18 months ago by DVA460
3

For what it's worth, there's kind of a hierarchy of package quality, with bioconductor packages on the top and CRAN below it (random github packages are at the bottom).

ADD REPLYlink written 18 months ago by Devon Ryan81k

Thanks. That is good to know.

ADD REPLYlink written 18 months ago by DVA460
2

A more appropriate place for this thread would probably be Bioconductor Support.
Good luck with your package!

ADD REPLYlink modified 18 months ago • written 18 months ago by WouterDeCoster30k

Thank you! Indeed I should have checked that out.

ADD REPLYlink written 18 months ago by DVA460
12
gravatar for Charles Plessy
18 months ago by
Charles Plessy2.5k
Japan
Charles Plessy2.5k wrote:

I have a package at Bioconductor and I really appreciated the support during the initial review, where I was asked some improvements of quality that were not too demanding, but still made me learn more about S4 classes. I find the 6-month release schedule to be a good regular reminder, and in the worst case there is now a procedure to retire packages. New packages can be submitted through GitHub, and it is possible to push updates via a nice Git-Svn bridge. Lastly, the use of Bioconductor's base S4 classes is not mandatory (but of course comes naturally once one gets more experienced). Altogether, Bioconductor is a brilliant platform and it is worth the effort aiming for it.

ADD COMMENTlink written 18 months ago by Charles Plessy2.5k

Thank you very much. I do realize that S4 is popular on BioC and seems like I need to modify part of my package. Always good to learn new things:)

ADD REPLYlink written 18 months ago by DVA460
11
gravatar for SmallChess
18 months ago by
SmallChess460
Australia
SmallChess460 wrote:

I have a package at Bioconductor. As a developer you should know:

  • Make sure your code is 80 characters wide
  • Don't use S3. Bioconductor reviewers will look at your source code.
  • Go through much tougher review process than CRAN (but nothing compares to submitting a paper)
  • You must have a vignette. This is not the case for CRAN.

Bioconductor packages are usually better than CRAN packages on average, and more user-friendly. As a user, a vignette really helps.

Advantages of Bioconductor:

  • Your package will be announced on Twitter by core Bioconductor members. This is a __big-plus__ because they have huge number of followers interested in Bioinformatics.
  • Your package will be listed on Bioconductor website. This is useful because that's where Bioinformaticians go.
  • You have professional community support
  • My paper on my package was submitted and accepted by a respectful journal. The reviewers wrote they trusted the software because it was in Bioconductor.

Disadvantages of Bioconductor:

  • Release schedule is 6-months, this is very annoying. Although you can modify the release branch.
ADD COMMENTlink modified 18 months ago • written 18 months ago by SmallChess460

Thank you so much for the thorough information, especially that you pointed out a few differences. Any guidelines besides the ones available on BioC you would recommend please?

ADD REPLYlink written 18 months ago by DVA460

I can't think of any. If you are aiming for bioinformatics, I see no reason why you wouldn't try Bioconductor.

ADD REPLYlink written 18 months ago by SmallChess460

Since you mention release schedule is a problem, how much work do you have to do for that? As long as the package still works with the new BioC, it should be fine, right?

ADD REPLYlink modified 18 months ago • written 18 months ago by igor6.3k

I would like to release anytime I am ready for the next release. Unfortunately this doesn't work for Bioconductor.

ADD REPLYlink written 18 months ago by SmallChess460

Really? I've seen BioC packages updated every few days.

ADD REPLYlink written 18 months ago by igor6.3k
4

I'm pretty sure Bioconductor has 6-months release cycle. Are you talking about devel branch? The devel branch can be updated anytime, but it's not what a user would access.

ADD REPLYlink modified 18 months ago • written 18 months ago by SmallChess460
3

Release cycles are every 6 months. Only bug fixes are accepted for the current release, new features have to go for the devel branch (next release). This is to ensure a stable environment and promote reproducible research. Might have some disadvantages but it certainly has benefits IMO. Disclaimer: I have some BioC packages and use BioC regularly.

ADD REPLYlink written 18 months ago by ddiez1.7k

Thanks for clarifying. The updates I saw may have been only bug fixes.

ADD REPLYlink written 17 months ago by igor6.3k
5
gravatar for ddiez
17 months ago by
ddiez1.7k
Japan
ddiez1.7k wrote:

In addition to all the good reasons and other issues mentioned in the other answers, I would point out to two resources that have not been explicitly mentioned so far. One is the developers corner in the bioconductor site, and inside it, the package guidelines.

The developers site centralizes all the information regarding package development and includes the release schedule, access to build reports, the new package primer and much more.

In the guidelines many issues regarding the development of Bioconductor packages are discussed in detail. There is special mention about the issue of having packages both in CRAN and in Bioconductor (something not recommended). Also, it is advised that authors having questions about Bioconductor package development ask them in the Bioconductor development list (bioc-devel).

ADD COMMENTlink written 17 months ago by ddiez1.7k

Thank you! I have been learning a lot from this website. Glad you pointed it out:)

ADD REPLYlink written 17 months ago by DVA460
Please log in to add an answer.

Help
Access

Use of this site constitutes acceptance of our User Agreement and Privacy Policy.
Powered by Biostar version 2.3.0
Traffic: 1508 users visited in the last hour