back to the original point for a moment: big tech's abuse of the commons.
as established, i can (and sometimes do) say no to these companies when they request improvements.
but the risk of saying no is that big tech decides to just write their own version and try to trample you.
which brings us back to pkgconf for a minute, because i have another example!
in the past year or so, the CMake people created a new thing called the "common package specification," which they refer to as CPS (this is a very bad name).
but pkgconf's maintainer (me) is entirely disinterested in windows, and i find windows-specific bugs uninteresting to work on.
another cost of my apathy toward windows? bloomberg contributed heavily to a tool called cps-config, which is a pkgconf clone which supports querying both pkg-config data and CPS data. this is after bloomberg also contributed patches to the original freedesktop pkg-config to improve its performance to be competitive to pkgconf.
why did bloomberg do these things? because they are a windows shop and historically my answer to the windows question was "i'm not interested in supporting windows."
so now i get questions like "why bother improving pkg-config, when we should standardize on CPS instead"?
and don't get me wrong -- CPS is a major improvement over what CMake used to do, and also a major improvement over the pkg-config format for a number of reasons.
however, since it is based on JSON, it takes away from one of the main advantages of pkg-config: the fact that pkg-config files are simple text documents.
our plan to deal with the CPS question is to support CPS, thus making the need for cps-config obsolete.
i could go on and on, but the point is that when presented with "fuck you, pay me" these companies are likely to take actions that are detrimental to your goals, because the reality is that they don't care about you or your project or your goals. they just want things for free.