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
NEWS files in the skeleton packages generated by Pkg. Kahneman et. al. say this is a good idea.
P.S. The next thing I’m going to do after hitting send is to go add (empty)
NEWS files to my little repo
… Edit: Along the way I came across this wonderful resource: https://keepachangelog.com/