I fully agree… Unfortunately sometimes it is not possible to have commandline merges, because that would mean that someone has push access… But for some projects that’s not possible, especially if two parties work on the same Project and some form of automation is in place (for example Bors/ a merge bot).
I think, and this is by no means intended to be disrespectful, golang attracts a lot of programmers that do not want to learn a lot of things. They just want to write something down and it be fast, they don’t mind edgecases, security bugs, performance bottlenecks and all that stuff. A JS dev that was called “scriptkiddie” some years ago might now be a go developer.
And there’s nothing wrong with that, IMO… What bugs me all the time though is that they claim that golang is the superior language and should be used for allthethings^tm. It should definitively not.
On the other hand, I don’t claim that Rust should be used for all the things (I sometimes claim for the memes, to be honest, but that’s not too serious). It definitively has a learning curve and sometimes writing down your 50 LOC of Ruby/Python/Bash might be a better choice. But (as the tagline once was), Rust is good when it matters. And it matters often (IMO).
Four of these are not unique to zsh, actually three of them are not even unique to shells, but are simply packages you install on your box. So… Meh!