Honestly though, who would build a tool which depends on the (presumably undocumented) text output of another application, and then expect it not to break?
Honestly though, who would build a tool which depends on the (presumably undocumented) text output of another application, and then expect it not to break?
That makes them even more stable than flavors of the decade like xml or json.
In fact, the : delimited compiler error format is so well established that it will probably outlive the json schema the article presents, and maybe even json-as-defacto-standard.
I’m not saying the json thing is bad (it provides rich information that will be useful to some tools), but it’s shelf life will probably be much less than 25 years.
your comment reminds of of a hilarious but very true ringing anecdote here¹ about json and 'The Sins of the Father' :-)
Not expecting it not to break, but building tools that depend on the undocumented text output of other tools that.
Hypothetical example: can I read only the man pages of GNU’s and all BSD’s `ls`es and from that write a cross-platform tool that parses the output of all of them?
Text output, particularly warnings and notes, isn't usually intentioned to be machine parseable and consistent in the first place, but rather is meant for humans to read and may be changed to be better read by humans at will.
https://gcc.gnu.org/onlinedocs/gnat_ugn/Output-and-Error-Mes...