a while ago i wrote an automated changelog manager - generator.

github.com/masukomi/changelog_

It's the only one i'm aware of that manages changelogs at the "right" level of abstraction.

Anyway. I've had ideas for a v2 bubbling in my head for a while & some of them just coalesced.

If i use the data storage model from Private Comments github.com/masukomi/private_co

then multiple cool things happen:

1/?

1. you can associate a changelog comment with a commit after the fact (without a rebase)

2. you can edit comments without requiring a new commit to the codebase you're commenting on. there would be one to the parallel comments repo

3. I may be able to reuse major chunks of the private-comments codebase to do it

4. you could have a local web page that showed you the current changelog for any branch of the codebase. 🤔 Possible, but maybe not useful.

2/

You'd still be better off if the developer was using a tool to generate better commit messages and that tool could be aware of changelog_manager usage and interactively ask you if you wanted to add a changelog to this commit.

...
Downsides:
1. would require a separate parallel repo. This would be managed by automated scripts so it wouldn't be a big deal.

2. writing a github action to check for the existence of a changelog entry would be more complicated

3/

Follow

3. Squash & Merge PR strategy (ARRGH JUST HAVE GOOD COMMIT HYGIENE PEOPLE!) would completely screw with things and require a new commit to be auto-generated in the parallel changelog repo (because it makes the commit treeishes involved irrelevant)

· · Web · 1 · 0 · 0

Now that I think about it, I'm honestly surprised that Fossil doesn't do this already. It's the Distributed Version Control System written for and by the SQLite folks.

Very cool. Also very much a tool for them that may or may not be good for other teams.

fossil-scm.org/

side note: guess who's just nerd-sniped themself and a has a 🧠 that's whirring with ideas and totally wants to run off and implement that but is 100% not being paid for anything even remotely, tangentially, related to that...

Nope. Today I'll be working on Invoicing code! 🎉

Sign in to participate in the conversation
Connectified

Friendly geekery and random thoughts. Not open to the general public.