How do I add a Changelog or NEWS file to my R package?

你说的曾经没有我的故事 提交于 2019-12-21 06:49:03

问题


I have a package on CRAN that I would like to add a ChangeLog for, but I cannot find information anywhere on how to do this.

I looked on the "Writing R Extensions" document that CRAN provides, but it only mentions ChangeLogs and gives no direction (I could find) about how to create one.

I noticed from downloading tarballs from other packages on CRAN (e.g. seacarb) that their ChangeLogs are Unix Executable Files (I'm on a Mac) so that's not too helpful.

I imagine this is a common problem, but Googling "changelog R package" just brings up ChangeLogs for really popular packages...


回答1:


You can either provide a NEWS file or a ChangeLog file, or both, to describe changes in your package. You have to add these files in the top level folder of your project, i.e. in the same folder as your DESCRIPTION and NAMESPACE.

This is documented in the R package manual in paragraph 1.1 Package structure. In particular, this paragraph points to the GNU standard:

For the conventions for files NEWS and ChangeLog in the GNU project see http://www.gnu.org/prep/standards/standards.html#Documentation.


Hadley points out that "Generally you should use a NEWS file, and not ChangeLog. I think the purpose of ChangeLog (to list every change), has been subsumed by source code control".


To create a NEWS file, simply create a text file called NEWS in the top level folder of your package. You maintain this file by hand.

Here is an extract from the NEWS file from my package miniCRAN (CRAN link):

miniCRAN v0.0-21 (Release date: 2014-08-18)
==============

Changes:

* Changes to defaults in plot.pkgDepGraph() to move legend to left of plot area.

miniCRAN v0.0-20 (Release date: 2014-08-18)
==============

Changes:

* Modified examples to reduce running time, mostly using \dontrun{} sections



回答2:


NEWS.md files are now also supported by CRAN (Which renders them as html) and more recently by the news() function.

https://cran.r-project.org/doc/manuals/r-devel/NEWS.html




回答3:


If you are following this and opting for NEWS.md then make sure news() reads the same correctly (at the same time it looks great on GitHub).

You can do the same in your local builds of the packages.

It seems like it has a specific format you have to adhere with.

I tried like this (and it works) (check here)

# *News*

# tidycells 0.1.9 (2019-07-31)

## Initial Submission

* **CRAN** Initial Submission

# tidycells 0.1.5 (2019-07-30)

## Final Codebase Release in GitHub

* Final Release in GitHub for **CRAN** Submission
* Only Minor Documentation Change after this and before next **CRAN** Submission

# tidycells 0.1.0 (2019-07-25)

## Initial Release to GitHub

* Initial Release to GitHub
* Prior to this it was private package


来源:https://stackoverflow.com/questions/25605185/how-do-i-add-a-changelog-or-news-file-to-my-r-package

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!