[R-pkg-devel] How do I know if/when my package is fit for CRAN?

Duncan Murdoch murdoch@dunc@n @ending from gm@il@com
Thu Jun 7 20:16:43 CEST 2018

On 07/06/2018 6:23 AM, Voeten, C.C. wrote:
> Dear list,
> I have been working on an R package for the past two years. It started as a programming exercise for me to get acquainted with R, and because I had some issues with lmerTest::step (the aim of my package was to automate the protocol I use for performing model comparisons using LRT, also when one of the models does not converge or is not an lme4 model; these three things of LRT, nonconvergence, and non-lme4 models are not handled by lmerTest::step). Over the past two years, I have completely refactored the package multiple times as I realized there were better/cleaner ways to do things, and it has now grown into something that I use in my day-to-day statistical life.
> Now, it occurs to me that my code may be of use to other people. However, at the same time, I also feel that the package is nowhere near 'done', in the sense of polished code that is free of my personal quirks; here I do not mean little things like coding style, but rather more generally my overall approach to things. (I also know of a few bugs that need fixing, but that is easy - just need to find the time to do it.)
> My question is: how do I know (1) if my package belongs on CRAN (it did start out as a personal project, after all); and (2) when the code is in good enough shape to be submitted without me wasting the time of the people reviewing the submissions?  The code is currently at [1], but my question is explicitly not for other people to review my code - instead, I am asking how I can do that myself!

As others have said, if it passes the CRAN checks, it will probably be 

But whether you should submit it requires some thought on your end.  Do 
you want people using it and sending you bug reports and requests for 
additional functionality?  I'll assume yes.  Then you need to get people 
using it, and that requires that they can find it and figure out how to 
use it.  Think carefully about putting together your DESCRIPTION file; 
that's what people will find first.  Write good documentation for each 
of the functions, including examples.  Write a vignette giving an overview.

And if you do submit it to CRAN, be prepared to support it for several 
years.  R changes over time, and you need to be ready to make the 
necessary changes to your package so that it still works.  If it breaks 
and you don't fix it, that will cause lots of extra work for others.

Duncan Murdoch

More information about the R-package-devel mailing list