Interesting discussion and I think each of you has a very valid point of view.
At the risk of just saying something thatās redundant to the ās that Iāve clicked on some posts let me provide what might be another perspective on the topic.
TL;DR: Having changelogs, even if empty at first may 1. help people decide to become involved at all in package use and/or development; and 2. have a positive feedback effect where helping maintain a CHANGELOG
helps make a NEWS
file (or blog post or whatever) easier to contribute to, which in turn helps with #1, etc.
Details if you care to spend the time below:
Where Iām coming from is someone who is, I think, a pretty capable user of, and sometimes developer in most languages Iāve encountered. Though unfortunately not yet much development thatās open source in general of Julia in particular. This is not for lack of desire or ability (well, that last is debatableā¦) but priorities have just dictated that most of my development work has been for my employers and it hasnāt been able to be open source for various reasons.
Anyhow, Iād like to point out that the changelog file serves not only to help those that are already users/developers of a particular package but also those that might like to become so, but only once they deem that to be appropriate for them. And this can be a bit of a chicken/egg scenario if making that determination requires a level of knowledge of the package that extends to being able to understand a set of commit messages.
So the changelog file, as I think itās been pointed out already (so sorry to perhaps simply be echoing), can serve to help in that determination and thus attract more usage of, and sometimes contribution to, a package/project.
Also, Iāll point out that there are probably many like myself who really would like to contribute to development, even if only in some small way. And initially a small way may be all we are capable of, or can justify to ourselves; in other words not significant core development, but perhaps documentation in some form. In such cases if the core developers donāt deem it to be worthwhile to maintain a changelog file themselves, perhaps it would be worthwhile to have the file in their repo (if only in a non-master branch) such that it could be contributed to by one of these what Iāll call ānon-technicalā contributors. In turn when there is a changelog it also is easier to contribute to a NEWS file if youāre not a core dev and that again can core devs up to keep their focus on where they alone can make the most useful progress. I think everyone may benefit thereby.
I wonāt try to tell the developers whether considering this perspective should make a difference to them in a way that should convince them to add and maintain a changelog file. I donāt pay for their time so itās not my call, at all. But to the extent that these points are something they perhaps havenāt given thought to, I hope the above might be helpful.
Finally let me add a +1 to simply including CHANGELOG
and NEWS
files in the skeleton packages generated by Pkg. Kahneman et. al. say this is a good idea.
Thoughts?
P.S. The next thing Iām going to do after hitting send is to go add (empty) CHANGELOG
and NEWS
files to my little repo
ā¦ Edit: Along the way I came across this wonderful resource: https://keepachangelog.com/