#
# patch "ChangeLog"
# from [ff8c5b74caec143b53b946742bcf9738c2c840c2]
# to [21a8e19ee3658d7856b3170f76c03790cb5a1aaa]
#
# patch "automate.cc"
# from [004901821667adc38fe25860366b855c46af630d]
# to [499b45688ed75fbfa45c9ab9d2551d48015ffdc6]
#
# patch "constants.cc"
# from [3fd062ad419efedd4ec4fd0cd5452fbdd94d54c6]
# to [6ea5ae0591af040ba8acbaf3cb826b8f2b5dac55]
#
# patch "constants.hh"
# from [45cfb66d005ea786cc1852aedbb16d51e7d82db7]
# to [4a4494bcaa97ec07c147fc066564519bb4d13481]
#
# patch "monotone.texi"
# from [960f09d94f2b0189794b11c523426f755ef48f1c]
# to [b06b56ffc15a3d9fcfd62aa90a6fc61ceab1beaa]
#
--- ChangeLog
+++ ChangeLog
@@ -1,3 +1,11 @@
+2005-05-23 Timothy Brownawell
+
+ Fix "automate stdio" input/output format according to ML discussion
+ * automate.cc: changed: automate_stdio
+ added: print_some_output, class my_stringbuf
+ * constants.{cc,hh}: add constant for automate stdio block size
+ * monotone.texi: update documentation
+
2005-05-14 Timothy Brownawell
* contrib/monoprof.sh: Clean up variable definitions some.
--- automate.cc
+++ automate.cc
@@ -9,10 +9,15 @@
#include
#include
#include
+#include
+#include
+#include
+
#include "app_state.hh"
#include "basic_io.hh"
#include "commands.hh"
+#include "constants.hh"
#include "restrictions.hh"
#include "revision.hh"
#include "transforms.hh"
@@ -800,51 +805,93 @@
// of monotone.
//
// Input format: The input is a series of lines of the form
-// "command [args...]", where "command" is a valid "monotone automate"
-// subcommand. Example:
-// leaves
-// parents 1f4ef73c3e056883c6a5ff66728dd764557db5e6
-// inventory
+// [ ...] newline, where is
+// colon .
+// Example:
+// 6:leaves
+// 7:parents40:0e3171212f34839c2e3263e7282cdeea22fc5378
//
-// Output format: The output consists of the output of each command given,
-// preceeded by the line "###BEGIN ###" and followed by the line
-// "###END ###", where is the command given. Example:
-// ###BEGIN leaves###
-// bdff75b3d1a58d5370d1b9aaeed1b5a4d0cba564
-// ed0306ed417d258d82716bee36841199d8bb7626
-// ee0f35591c79c9390baff5e0638b545963d1babf
-// ###END leaves###
-// ###BEGIN parents###
-// 094a5075b4bd7fe379f810edeb5f03283b50e13a
-// ###END parents###
-// ###BEGIN inventory###
-// "work.cc"
-// "work.hh"
-// "xdelta.cc"
-// "xdelta.hh"
-// ###END inventory###
-//
-// Error conditions: If an invalid command line is recieved, prints
-// "###ERR usage###" to standard output, where is the name
-// of the command that was given.
-// If some other error condition occurrs during execution of a command
-// received on input, prints "###ERR msg ###", where
-// is the name of the command, and is the
-// error message provided by that command, which would have been output on
-// standard error if the command was invoked directly.
-// This "###ERR ###" line replaces the "###END ###" line.
+// Output format: ::::