>Date: Fri, 19 Sep 2008 17:03:37 -0700 >From: John Plocher <John.Plocher at sun.com> > >Garrett D'Amore wrote: >> Don Cragun wrote: >>>> Date: Fri, 19 Sep 2008 14:01:25 -0700 >>>> From: "Garrett D'Amore" <gdamore at sun.com> >>>> >>>> Shouldn't the Human Readable Output really be Not-An-Interface? > ... ... ... > >When talking about a filter like awk or tr or even cat, the spec >for that program is pretty clear about the transform applied >by the program. Input + program = output, and that output is >governed by the filter's spec. In this case, with gawk, that >transform is probably about as "Committed" as one can get.
John & Garrett, Given that most GNU utilties are neither codeset independent (CSI) nor do they correctly handle internationlaized regular expressions (IREs), and that POSIX conformance is a stated goal for the GNU utilities, I agree with the project team that the "filter's spec" is not as stable as you seem to think. > >On the other hand, there are error messages, help screens and >the like that are intended to be human readable. Are those things >interfaces? If not, then they are "Not An Interface". If so, >(e.g., we expect people to parse the output of gawk --help) then >they are no longer simply "human readable output", but are >instead programming interfaces that may or may not be useful >in a localized world. TANSTAAFL. > >(I am recalling a packaging/installer conversation where someone >is parsing the output of "foo --help" to check for the presence >or absence of a particular command line flag because the consumer >needs to run with both old and new versions...) The project team agrees that all diagnostic output (including output from --help) is Not An Interface. In fact, the project team believes (and I agree) that diagnostic output of all utilities is "Not An Interface" unless there are explicit statements to the contrary in the man pages for that utility. There are no such statements in the man pages nor in the other case materials associated with this case. > >So, project team, what things are you trying to identify under >the heading of "Human Readable Output", how do you expect that >output to be used, and what is the proper interface stability >for it? Carol copied the "Human Readable Output" and "Invocation" from a ``similar'' case. I should have changed both of them before I submitted the case. After the discussion dies down, I will update the spec to include all of the changes and clarifications that have been agreed to in this case's discussion. The uses of "Human Readable Output" are about the stability of normal output produced by gawk scripts (and by uses of the ancillary files when used in scripts). It does NOT include diagnostic output. Since CSI and IREs in scriptsa affect the output produced by scripts, the project team believes that Volatile is the correct commitment level. The intent of "Invocation" is "Command line options and gawk command language". Since there is a good chance that a future update to gawk may implement CSI and full IRE support and since these will affect actions chosen to be executed and the output produced, the project team believes that Volatile is the correct commitment level. - Don > > -John
