# HG changeset patch # User wenzelm # Date 1604764191 -3600 # Node ID 6345cce0e576f215867fc00f2132ca6f25593e82 # Parent 7abd365058e9f47cd9250555cd6fec54df9260e8 clarified output of "isabelle process"; diff -r 7abd365058e9 -r 6345cce0e576 NEWS --- a/NEWS Sat Nov 07 16:36:50 2020 +0100 +++ b/NEWS Sat Nov 07 16:49:51 2020 +0100 @@ -224,6 +224,10 @@ ISABELLE_TOOL_JAVA_OPTIONS="$ISABELLE_TOOL_JAVA_OPTIONS -Xmx8g" +* The command-line tool "isabelle process" now prints output to +stdout/stderr separately and incrementally, instead of just one bulk to +stdout after termination. Potential INCOMPATIBILITY for external tools. + * The command-line tool "isabelle console" now supports interrupts properly (on Linux and macOS). diff -r 7abd365058e9 -r 6345cce0e576 src/Pure/ML/ml_process.scala --- a/src/Pure/ML/ml_process.scala Sat Nov 07 16:36:50 2020 +0100 +++ b/src/Pure/ML/ml_process.scala Sat Nov 07 16:49:51 2020 +0100 @@ -188,9 +188,12 @@ val sessions_structure = Sessions.load_structure(options, dirs = dirs) val store = Sessions.store(options) - val rc = + val result = ML_Process(options, sessions_structure, store, logic = logic, args = eval_args, modes = modes) - .result().print_stdout.rc - sys.exit(rc) + .result( + progress_stdout = Output.writeln(_, stdout = true), + progress_stderr = Output.writeln(_)) + + sys.exit(result.rc) }) }