Hi guys,
I updated the build system to generate a ChangeLog from Git's log upon dist. I mostly used the suggestion at https://live.gnome.org/Git/ChangeLog and it works fine. The format is a bit weird for a ChangeLog, but it's complete and quite clear. And output a ChangeLog-style format is way harder, and seem to somewhat require an extra script parsing stuff, which is IMO quite overkill.
So, the ChangeLog is ok. However, Matthew and I discussed a bit some time ago about generating AUTHORS and COMMITTERS alike, see https://github.com/geany/geany/pull/10
Although this seems to be a quite good idea, there may be a few problems. Generating AUTHORS is quite easy. It of course wouldn't keep the "developers" vs. "contributers" distinction, but the list could e.g. be sorted by amount of commits, so somewhat by importance.
The problem comes with COMMITTERS. Although it's quite easy to list all the people having committed a commit that's in geany.git's master, this list will also include the people having committed something that later got merged. And then COMMITTERS becomes quite useless since it doesn't reflect the reality.
So, is there a way to only list people having committed directly to master, e.g. not in a branch first? If yes, it could be a solution. I would possibly remove quite a bit of actually relevant commits, but it's also likely that if a committer was legitimate it would also have committed something straight to master (even a merge of his branch).
And if the answer to the above question is "no", what do you think is the best? Just keep the hand-made AUTHORS and COMMITTERS? Auto-generate AUTHORS and keep the hand-made COMMITTERS? Something else?
If we have a solution before tomorrow evening we could have it in 1.22, otherwise it'll be as it is now in that release (not a big deal IMO).
Regards, Colomban