You CRAN Do It
Want to share your content on R-bloggers? click here if you have a blog, or here if you don't.
As the @WeAreRLadies curator, I asked the Twitterverse for advice when submitting to CRAN for the first time. Many people replied and offer their tips, experience, and well wishes. I have summarized everybody’s replies below. THANK YOU all for participating!
Here’s what to expect when succeeding to get your package on CRAN!
I don't know you, but I believe in you ????
— Travis Dawry (@tdawry) February 14, 2020
Read the Official CRAN Documentation
… which is Writing R Extensions! “Necessary and sufficient,” according to Avraham Adler.
You can get by with a little help from your friends
{usethis}, {devtools}, and {roxygen2}, although not necessary, are useful tools for creating CRAN-ready packages.
Documentation is key
- Have tests and coverage via {covr}, and making sure they run without issues on all platforms
- CRAN will ask that you add examples to your package, wrapped in
\dontrun{}
and\donttest{}
. - Have others read your stuff and provide feedback!
Let Reviewers Know Why This Should Be on CRAN
A quick note letting the reviewers know why your package should be on CRAN goes a long way.
This is how I responded when I submitted spongebob:
— Jay Qi (@jayyqi) February 13, 2020
“Thank you for reviewing my package. This is a lightweight package simply for fun — similar in spirit to other packages on CRAN like cowsay and happytime.” https://t.co/fWzVcNh5I7
Be Patient
The people at CRAN are busy! It might take a while for them to reply and accept your package. If you want to track where your package is at, you can take a look at the CRAN Incoming Dashboard.
Emails will be Terse
This is particularly difficult for me to hear, as someone who provides! ample! exclamation marks! in emails! in order to sound cheery and polite, but responses can be short and to-the-point. Breathe, and address everything mentioned. When you do reply, respond to the CRAN list.
Persist
The reviewers will let you know what you need to do for approval. Go through their list carefully and try again!
Don’t get discouraged if you don’t succeed on your first try. Everyone (including me, my team, and R core) gets rejected from time to time. It sucks, but don’t give up — just make the requested changes and resubmit.
— Hadley Wickham (@hadleywickham) February 13, 2020
Many thanks to the R Community for their words of advice and encouragement ❤
Guides
- Writing R Extensions (Official CRAN Documentation)
- Hadley Wickham and Jenny Bryan’s R Packages
- Julia Silge’s How I Learned to Stop Worrying and Love R CMD Check
- Maëlle Salmon’s Code Examples in R Package Manuals
- R-hub’s Prepare a CRAN submission
- R-hub’s CRAN submission preparation with rhub
- Karl Broman’s Getting Your R Package on CRAN
- Colin Fay’s Preparing your package for a CRAN submission
- Jp Marín Díaz’s How to publish a package to CRAN and From 0 to CRAN in 1 day
- Jim Hester’s Submitting vroom to CRAN, LIVE!
- Ryo Nakagawara’s CRAN Trial(s) and Error(s) and Future Releases
R-bloggers.com offers daily e-mail updates about R news and tutorials about learning R and many other topics. Click here if you're looking to post or find an R/data-science job.
Want to share your content on R-bloggers? click here if you have a blog, or here if you don't.