I really like the MELPA model of packaging directly from git. It solves the problem of forgetting to release something -- just merge a PR and you're done.
It also makes version number bumps much less important.
You could go even further in a statically typed language and also figure out when breaking changes occur.
Related Posts
It's a small thing, but I'm much happier with the output of --version in the latest version of difftastic.
It shows the release version number, the commit hash, and the commit date. This gives you a sense of the age of release, but you still have a reproducible build (unlike build time).
It also shows OS, arch and compiler, because those are common requirements in bug reports.
Shower thought: using a tool like cargo-semver, could you build a package registry where the uploader never chooses the version number?
E.g. your last release was 5.2025-09-13 and you've just changed a type, so today's release is 6.2025-11-05.
New version of difftastic is out! In this release:
* Improved git integration
* Polished the side-by-side display, particularly on large screens
* Fixed a nasty crash
https://github.com/Wilfred/difftastic/releases/tag/0.61.0