Question: Develop an R package for CRAN vs BioConductor
9
gravatar for Helene
9 months ago by
Helene390
United States
Helene390 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 • 810 views
ADD COMMENTlink modified 9 months ago by ddiez1.6k • written 9 months ago by Helene390
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 9 months ago by Devon Ryan73k

Thanks. That is good to know.

ADD REPLYlink written 9 months ago by Helene390
2

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

ADD REPLYlink modified 9 months ago • written 9 months ago by WouterDeCoster23k

Thank you! Indeed I should have checked that out.

ADD REPLYlink written 9 months ago by Helene390
11
gravatar for Charles Plessy
9 months ago by
Charles Plessy2.3k
Japan
Charles Plessy2.3k 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 9 months ago by Charles Plessy2.3k

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 9 months ago by Helene390
10
gravatar for student-t
9 months ago by
student-t410
Australia
student-t410 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 9 months ago • written 9 months ago by student-t410

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 9 months ago by Helene390

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 9 months ago by student-t410

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 9 months ago • written 9 months ago by igor4.7k

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

ADD REPLYlink written 9 months ago by student-t410

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

ADD REPLYlink written 9 months ago by igor4.7k
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 9 months ago • written 9 months ago by student-t410
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 9 months ago by ddiez1.6k

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

ADD REPLYlink written 9 months ago by igor4.7k
4
gravatar for ddiez
9 months ago by
ddiez1.6k
Japan
ddiez1.6k 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 9 months ago by ddiez1.6k

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

ADD REPLYlink written 9 months ago by Helene390
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: 898 users visited in the last hour