I'm just coding up a new logger to make it easier to analyse big projects built with subant. From the patched listeners.html:


<h3><a name="BigProjectLogger">BigProjectLogger</a></h3>

<p>
  This logger is designed to make examining the logs of a big build easier,
  especially those run under continuous integration tools. It
</p>
<ol>
  <li>Includes the build finished timestamp of the TimeStamp logger</li>
<li>Omits logging the names of all targets that have no direct task output</li>
  <li>Includes the name of the project when printing a target</li>
</ol>
<p>
  This is useful when using &lt;subant&gt; to build a large project
  from many smaller projects -the output shows which particular
  project is building. Here is an example
</p>
<pre>
  kernel.init:
       [echo] building /home/ant/examples/kernel/lib/kernel-3.10.jar

  ... (many lines of log output omitted) ...

  kernel.all:
       [echo] completed kernel build

  tasks.init:
       [echo] building /home/ant/examples/tasks/lib/tasks-3.10.jar
       [echo] system.tests.enabled=true
</pre>

One question I have here, is : how should I present teh project name.

(a) with a .  for example:  kernel.init and kernel.common.init
  -good for simple things, but imports can confuse it
(b) a /         for example:  kernel/init and kernel/common.init
  -may cause confusion as project names != dir names
(c) colon    for example:  kernel:init and kernel:common.init

(d) brackets       [kernel]:init and [kernel]:common.init
  -makes targets look like task output
(e) XML Qualified names :) {kernel}#init and {somewith with spaces}#common.init
  -awful

I'd started off with the '.' symbol, but worry that overriden imported projects would introduce confusion... and you can have spaces in a project name (which could trigger us quoting them)

I suppose I could make the separator and such like configurable through project properties.

-steve

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to