"Master" and "Main" Branch Not Just About Words Anymore
The story of emacs (Emacs)
THE following story is likely to stay "offbeat" and not covered by any press or "tech" sites. It impacts a project with millions of users. It's one of the first projects under the GNU umbrella, going back more than 40 years (the version number, Emacs 30, is quite telling of the age).
"The Emacs master branch is broken—for good," says this new post. It goes on, explaining that "Emacs maintainers accepted a heavy-handed, harmful change, disregarding concerns voiced by multiple users and developers. I’ve created a fixed, and improved, Emacs fork. I’ll be using and developing this fork, and you’re welcome to join."
So maybe all the CoCs which have been poked into projects are leaving traces, an associate has argued, for the gestation period has been long enough.
So there may be a split coming up:
I crafted and posted a couple of patches that add some bells and whistles from Thierry’s patch in an optional and compatible manner. It’s really not that hard to make no harm in this case. But my work was disregarded just as well, sadly. Thierry didn’t like how I reverted his change to use the minibuffer for reading a single key, which is exactly the root cause of the problems I tried to fix—and in fact I did fix it, just not in Emacs master, but in my new fork.Since then, another bug report came in from an Emacs master branch user that suffered from one of the consequences of this change (a specific regression that I spelled out days before, but was ignored, for some reason), and several users reached out to the Emacs development in request to restore the previous behavior in an ongoing thread titled “Please, Restore Previous Behavior for jump-to-register”. Astonishingly, the maintainers seem insistent not to budge, and Emacs 30 will thus likely suck.
I find the willingness of the Emacs maintainers to entertain this bad behavior at the expense of user experience unacceptable. To me, this demonstrates disrespect for Emacs user preferences, and indeed their freedom.
Personally, this freedom is the number one reason for using Emacs, so I obviously won’t use an Emacs that forces on me weird breaking changes. For that reason I’ve created a new Emacs branch, the “main” branch, which was born from the master branch before this registers fiasco.
If these changes will be reverted before Emacs 30, I’ll surely consider switching back to building Emacs from the upstream master branch. But in the meantime, and for the foreseeable future, I’ll be keeping my main branch up to date by cherry picking (only) good changes from the master branch. And of course, I also improve it with developments of my own.
Notice the part about "the “main” branch". It is not merely a name change. █