# # # patch "NEWS" # from [da0c9df4af006c9ab730ce2021f5578078c72d4e] # to [bc9fc1bb0347b18206a18cea05637c8755fa5e47] # # patch "monotone.texi" # from [fa05313d055bf42970a6376fec4bdc5c5928200c] # to [4c337ddd6ff44615b2c46c6eae7364bc967d7b16] # ============================================================ --- NEWS da0c9df4af006c9ab730ce2021f5578078c72d4e +++ NEWS bc9fc1bb0347b18206a18cea05637c8755fa5e47 @@ -13,15 +13,20 @@ - "automate stdio" (and "automate remote_stdio", see below) use separate streams to encode out-of-band information like - informational messages, warnings or tickers. Please consult - the manual of "mtn automate stdio" for a detailed description - of the new format. - The error codes used in the output of both commands also - slightly changed: errors which are the result of a wrong - call (unknown command, invalid options, parsing errors, ...) - are returned with code 1, while errors which happened while - the actual command executed are returned with code 2. + informational messages, warnings or tickers. + A special "header" section has been added to the standard + output to be able to tell stdio version changes between + future versions easier apart. + The error codes used in the output of both, stdio and + remote_stdio, has also slightly changed: errors which are + the result of a wrong call (unknown command, invalid options, + parsing errors, ...) are returned with code 1, while errors + which happened while the actual command executed are returned + with code 2. + Please consult the manual of "mtn automate stdio" for a + detailed description of the new format. + New features - There's a new command "automate remote_stdio" that makes it ============================================================ --- monotone.texi fa05313d055bf42970a6376fec4bdc5c5928200c +++ monotone.texi 4c337ddd6ff44615b2c46c6eae7364bc967d7b16 @@ -7679,8 +7679,9 @@ @section Automation @item FIXME -- Introduced out of band streams ('e', 'p', 't', 'w'); the main output of a command now only happens in the 'm' stream; the 'l' stream now marks - the end of all streams of a command; specific error codes to distinguish - command from interface errors have been introduced. + the end of all streams of a command; introduced the concept of "headers" + which are outputted before the first command is issued; specific error codes + to distinguish command from interface errors have also been introduced. @item 3.1 -- Added the 'o' item to the recognized input. This change should not break anything. @@ -7721,6 +7722,8 @@ @section Automation @item Sample output: @verbatim +interface-version: 12.0 + 0:m:41:7706a422ccad41621c958affa999b1a1dd644e79 0:l:1:0 ... @@ -7745,7 +7748,15 @@ @section Automation @item Output format: -The output consists of one or more packets for each command. +Right after a stdio session has been set up, header information are issued; +to date the only header which is issued there is the @code{interface-version} +header though, which denotes the interface version of the running monotone +instance. + +Headers are separated from each other by single newline characters @code{'\n'} +and from the following output by another newline character. + +After a command has been issued, one or more packets are returned for it. A packet looks like: @verbatim