Maintenance.
When unused and unmaintained projects and formulae pile up in Homebrew, we end up spending a tremendous amount of time and effort patching mostly unused software for a very small part of the userbase. That dis-proportionality hurts the 95% of users who expect timely and well-tested updates to major packages.
We used to provide a "boneyard" tap for unused/unmaintained formulae, but even that led to a lot of requests for support that we simply can't provide. If something is being removed from the core tap, our current recommendation is to put it a personal tap[1].
> The culture of deletion surrounding the long tail of digital artifacts just doesn't make any sense.
Keep in mind that the "artifacts" in question are still available, since Homebrew and all Homebrew taps are just Git underneath. You might not be able to build an old formula for compatibility reasons, but all prior work is available for reference.
[1]: https://github.com/Homebrew/brew/blob/master/docs/How-to-Cre...
IOW, HomeBrew seems to be big enough that it needs to start engaging in some PR.
(It's pretty easy to contribute your own formulas, too! The checklist is pretty small.)
That said, I've occasionally run into a broken `brew cask install X`, so I get that maintenance is a thing. But in that situation it seems best to let someone else notice that and contribute a patch rather than remove it entirely. I understand that might eventually lead to a large percentage of broken casks though.
In the best case, the community does pick up the work of patching and maintaining formulae (and casks). However, that's the best case, and low-volume formulae rarely fall into it.
In my experience, formulae tend to get abandoned by the upstream that originally submitted them, causing them to eventually break when the system or surrounding dependencies change. One potential solution is to have a chain of custody for formula maintenance, but that hasn't worked so well for MacPorts.
IMO that's self-inflicted by homebrew's policies. from https://docs.brew.sh/Acceptable-Formulae.html :
> We frown on authors submitting their own work unless it is very popular.
I'd expect "very popular" software to have relatively large populations of users capable of maintaining the formulae (and authors less likely to bother with packaging), while in lesser-known software, the respective authors are most likely to maintain long-time interest.
You don't see that text but instead text indicating the formula has been deleted.
> The culture of deletion surrounding the long tail of digital artifacts just doesn't make any sense.
They will be preserved in the Git history for as long as we continue to use Git.
Both the above comments make it seem like you've not really done any research into your own objections, here.
Anyways. Having done my research:
> You don't see that text but instead text indicating the formula has been deleted.
If, and only if, you know the exact name of the package. If you do a search, you get the "no formula found". If you attempt to use the braumeister.org web site, it also will not show up unless you explicitly craft the recipe URL.
> They will be preserved in the Git history for as long as we continue to use Git.
How does one go back into git history and revive deleted formula, given how automated the entire process is around ensuring the most recent version of brew is always in use? By your "deleted" help docs, I infer that it comes down to creating your own cask?
The one example I came across quickly is "abi_compliance_checker'. It was deleted because it requires GCC 4.7. Yet Homebrew is still quite capable of installing and using [email protected]. Not that it was broken in a recent build. Not that it was a major maintenance burden - the updates for years consisted of version updates.
This isn't something I need, but it's a great (and quickly found) example of seemingly arbitrary deletion of an otherwise active project.
This does not, in my mind, help the case at all. This culture of deletion makes no real sense to me; something not being used for a month or a year doesn't mean it's not being used at all. What's the real cost of just leaving those formula around? A slight problem with it not working immediately when it is used? At least then it can be fixed, instead of seeing the "No formula found" text.
The culture of deletion surrounding the long tail of digital artifacts just doesn't make any sense. Yeah, yeah. Get off my lawn, too.