From 6cdcba63315dbbbb1b9761caf821def17ec4df61 Mon Sep 17 00:00:00 2001 From: Jean Privat Date: Thu, 26 Feb 2015 20:43:55 +0700 Subject: [PATCH] toolcontext: log all verbose infos in the log directory Signed-off-by: Jean Privat --- src/toolcontext.nit | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/src/toolcontext.nit b/src/toolcontext.nit index a5b7ceb..62c184a 100644 --- a/src/toolcontext.nit +++ b/src/toolcontext.nit @@ -102,6 +102,9 @@ class ToolContext # Directory where to generate log files var log_directory: String = "logs" + # Stream in `log_directory` where all info messages are written + var log_info: nullable Writer = null + # Messages private var messages = new Array[Message] private var message_sorter: Comparator = default_comparator @@ -236,6 +239,10 @@ class ToolContext if level <= verbose_level then print "{s}" end + if log_info != null then + log_info.write s + log_info.write "\n" + end end # Executes a program while checking if it's available and if the execution ended correctly @@ -429,8 +436,10 @@ The Nit language documentation and the source code of its tools and libraries ma if opt_log.value then # Make sure the output directory exists log_directory.mkdir - end + # Redirect the verbose messages + log_info = (log_directory/"info.txt").to_path.open_wo + end end # Get the current `nit_version` or "DUMMY_VERSION" if `--set-dummy-tool` is set. -- 1.7.9.5