Hi Mark,

Mark Hobson wrote on Wednesday, January 17, 2007 9:56 PM:

> On 17/01/07, Jörg Schaible <[EMAIL PROTECTED]> wrote:

[snip]

>> I'll post tomorrow an output from the command line to demonstrate
>> how it looks like. If your reactor build counts ~100 modules, the
>> filter is quite helpful detecting single artifacts in the dep tree
>> or the SNAPSHOTs you have to release (in which sequence).
> 
> Thanks, that'd be good.

Here's the output of the dep tree of a single artifact:

========= %< =============

$ mvn info:deps-runtime
[INFO] Scanning for projects...
[INFO] Searching repository for plugin with prefix: 'info'.
[INFO] 
----------------------------------------------------------------------------
[INFO] Building eIP EventMonitor CM Provider
[INFO]    task-segment: [info:deps-runtime]
[INFO] 
----------------------------------------------------------------------------
[INFO] snapshot 
com.elsagsolutions.commons:es-commons-configuration:2.0.2-SNAPSHOT: checking 
for updates from elsag-repo-snapshot
[INFO] [info:deps-runtime]
[INFO] ip.evtmon:ip-evtmon-cm:jar:2.2.1-SNAPSHOT
[INFO]     javax.xml:jaxp-api:jar:1.3.2
[INFO]     ip.commons:ip-commons:jar:2.2.1
[INFO]     :   commons-beanutils:commons-beanutils:jar:1.7.0
[INFO]     :   com.elsagsolutions.commons:es-commons-lang:jar:2.0.5
[INFO]     :   commons-lang:commons-lang:jar:2.1
[INFO]     :   commons-id:commons-id:jar:20060125.092202
[INFO]     ip.extensions.filenet:ip-filenet-cm-commons:jar:2.2.1
[INFO]     :   ip.security:ip-security-commons:jar:2.2.1
[INFO]     ip.evtmon:ip-evtmon-commons:jar:2.2.0
[INFO]     javax.xml:jaxrpc-api:jar:1.1
[INFO]     
com.elsagsolutions.commons:es-commons-configuration:jar:2.0.2-SNAPSHOT
[INFO]     :   commons-configuration:commons-configuration:jar:1.2
[INFO]     :       commons-collections:commons-collections:jar:3.2
[INFO]     :       xalan:xalan:jar:2.7.0
[INFO]     log4j:log4j:jar:1.2.8
[INFO]     commons-logging:commons-logging:jar:1.1
[INFO]     com.thoughtworks.xstream:xstream:jar:1.2.1
[INFO]         xpp3:xpp3_min:jar:1.1.3.4.O
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESSFUL
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 3 seconds
[INFO] Finished at: Thu Jan 18 08:56:09 CET 2007
[INFO] Final Memory: 4M/9M
[INFO] ------------------------------------------------------------------------

========= %< =============

now the same as test tree:

========= %< =============

$ mvn info:deps-test   
[INFO] Scanning for projects...
[INFO] Searching repository for plugin with prefix: 'info'.
[INFO] 
----------------------------------------------------------------------------
[INFO] Building eIP EventMonitor CM Provider
[INFO]    task-segment: [info:deps-test]
[INFO] 
----------------------------------------------------------------------------
[INFO] snapshot 
com.elsagsolutions.commons:es-commons-configuration:2.0.2-SNAPSHOT: checking 
for updates from elsag-repo-snapshot
[INFO] [info:deps-test]
[INFO] ip.evtmon:ip-evtmon-cm:jar:2.2.1-SNAPSHOT
[INFO]     javax.xml:jaxp-api:jar:1.3.2
[INFO]     ip.commons:ip-commons:jar:2.2.1
[INFO]     :   commons-beanutils:commons-beanutils:jar:1.7.0
[INFO]     :   com.elsagsolutions.commons:es-commons-lang:jar:2.0.5
[INFO]     :   commons-lang:commons-lang:jar:2.1
[INFO]     :   commons-id:commons-id:jar:20060125.092202
[INFO]     ip.extensions.filenet:ip-filenet-cm-commons:jar:2.2.1
[INFO]     :   ip.security:ip-security-commons:jar:2.2.1
[INFO]     ip.evtmon:ip-evtmon-commons:jar:2.2.0
[INFO]     javax.xml:jaxrpc-api:jar:1.1
[INFO]     
com.elsagsolutions.commons:es-commons-configuration:jar:2.0.2-SNAPSHOT
[INFO]     :   commons-configuration:commons-configuration:jar:1.2
[INFO]     :       commons-collections:commons-collections:jar:3.2
[INFO]     :       xalan:xalan:jar:2.7.0
[INFO]     log4j:log4j:jar:1.2.8
[INFO]     com.elsagsolutions.commons:es-commons-test:jar:2.0.9
[INFO]     :   commons-io:commons-io:jar:1.3-RC1-20070102
[INFO]     :   cglib:cglib-nodep:jar:2.1_3
[INFO]     :   jmock:jmock:jar:1.1.0
[INFO]     :       junit:junit:jar:3.8.1
[INFO]     commons-logging:commons-logging:jar:1.1
[INFO]     com.thoughtworks.xstream:xstream:jar:1.2.1
[INFO]         xpp3:xpp3_min:jar:1.1.3.4.O
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESSFUL
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 3 seconds
[INFO] Finished at: Thu Jan 18 09:00:06 CET 2007
[INFO] Final Memory: 4M/9M
[INFO] ------------------------------------------------------------------------

========= %< =============

or from one above with a SNAPSHOT filter:

========= %< =============

$ mvn info:deps-runtime -Dfilter=SNAPSHOT
[INFO] Scanning for projects...
[INFO] Reactor build order: 
[INFO]   eIP EventMonitor CM Provider Parent Project
[INFO]   eIP EventMonitor CM Provider
[INFO]   eIP EventMonitor CM Provider EJB
[INFO]   eIP EventMonitor CM Provider EAR
[INFO] Searching repository for plugin with prefix: 'info'.
[INFO] 
----------------------------------------------------------------------------
[INFO] Building eIP EventMonitor CM Provider Parent Project
[INFO]    task-segment: [info:deps-runtime]
[INFO] 
----------------------------------------------------------------------------
[INFO] [info:deps-runtime]
[INFO] 
----------------------------------------------------------------------------
[INFO] Building eIP EventMonitor CM Provider
[INFO]    task-segment: [info:deps-runtime]
[INFO] 
----------------------------------------------------------------------------
[INFO] snapshot 
com.elsagsolutions.commons:es-commons-configuration:2.0.2-SNAPSHOT: checking 
for updates from elsag-repo-snapshot
[INFO] [info:deps-runtime]
[INFO] filtering for 'SNAPSHOT'
[INFO]  ignoring root node filter matches (use filterIgnoreRoot=[true|false] to 
change this)
[INFO]  not displaying children of a filter match (use 
filterDisplayMatchChildren=[true|false] to change this)
[INFO] ip.evtmon:ip-evtmon-cm:jar:2.2.1-SNAPSHOT
[INFO]     
com.elsagsolutions.commons:es-commons-configuration:jar:2.0.2-SNAPSHOT
[INFO]     :   [...]
[INFO]     [...]
[INFO] 
----------------------------------------------------------------------------
[INFO] Building eIP EventMonitor CM Provider EJB
[INFO]    task-segment: [info:deps-runtime]
[INFO] 
----------------------------------------------------------------------------
[INFO] snapshot ip.evtmon:ip-evtmon-commons:2.2.1-SNAPSHOT: checking for 
updates from elsag-repo-snapshot
[INFO] snapshot ip.evtmon:ip-evtmon-ejb:2.2.1-SNAPSHOT: checking for updates 
from elsag-repo-snapshot
[INFO] snapshot ip.evtmon:ip-evtmon-filenet-cm:2.2.1-SNAPSHOT: checking for 
updates from elsag-repo-snapshot
[INFO] [info:deps-runtime]
[INFO] filtering for 'SNAPSHOT'
[INFO]  ignoring root node filter matches (use filterIgnoreRoot=[true|false] to 
change this)
[INFO]  not displaying children of a filter match (use 
filterDisplayMatchChildren=[true|false] to change this)
[INFO] ip.evtmon:ip-evtmon-cm-ejb:ejb:2.2.1-SNAPSHOT
[INFO]     ip.evtmon:ip-evtmon-commons:jar:2.2.1-SNAPSHOT
[INFO]     ip.evtmon:ip-evtmon-cm:jar:2.2.1-SNAPSHOT
[INFO]     :   
com.elsagsolutions.commons:es-commons-configuration:jar:2.0.2-SNAPSHOT
[INFO]     :   :   [...]
[INFO]     :   [...]
[INFO]     ip.evtmon:ip-evtmon-ejb:jar:2.2.1-SNAPSHOT
[INFO] 
----------------------------------------------------------------------------
[INFO] Building eIP EventMonitor CM Provider EAR
[INFO]    task-segment: [info:deps-runtime]
[INFO] 
----------------------------------------------------------------------------
[INFO] snapshot ip.evtmon:ip-evtmon-cm-ejb:2.2.1-SNAPSHOT: checking for updates 
from elsag-repo-snapshot
[INFO] [info:deps-runtime]
[INFO] filtering for 'SNAPSHOT'
[INFO]  ignoring root node filter matches (use filterIgnoreRoot=[true|false] to 
change this)
[INFO]  not displaying children of a filter match (use 
filterDisplayMatchChildren=[true|false] to change this)
[INFO] ip.evtmon:ip-evtmon-cm-ear:ear:2.2.1-SNAPSHOT
[INFO]     ip.evtmon:ip-evtmon-cm-ejb:ejb:2.2.1-SNAPSHOT
[INFO]         ip.evtmon:ip-evtmon-commons:jar:2.2.1-SNAPSHOT
[INFO]         ip.evtmon:ip-evtmon-cm:jar:2.2.1-SNAPSHOT
[INFO]         :   
com.elsagsolutions.commons:es-commons-configuration:jar:2.0.2-SNAPSHOT
[INFO]         :   :   [...]
[INFO]         :   [...]
[INFO]         ip.evtmon:ip-evtmon-ejb:jar:2.2.1-SNAPSHOT
[INFO] 
[INFO] 
[INFO] ------------------------------------------------------------------------
[INFO] Reactor Summary:
[INFO] ------------------------------------------------------------------------
[INFO] eIP EventMonitor CM Provider Parent Project ... SUCCESS [0.381s]
[INFO] eIP EventMonitor CM Provider .................. SUCCESS [1.282s]
[INFO] eIP EventMonitor CM Provider EJB .............. SUCCESS [0.781s]
[INFO] eIP EventMonitor CM Provider EAR .............. SUCCESS [0.150s]
[INFO] ------------------------------------------------------------------------
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESSFUL
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 6 seconds
[INFO] Finished at: Thu Jan 18 09:02:14 CET 2007
[INFO] Final Memory: 6M/12M
[INFO] ------------------------------------------------------------------------

========= %< =============

As you may have recognized, there are additional parameters to tweak the output

- filterIgnoreRoot (true/false): To ignore the root artifact of the dependency 
tree looking for a filter match
- filterDisplayMatchChildren: To print the children of an artifact matchichg 
the filter, see below

========= %< =============

$ mvn info:deps-test -Dfilter=mock -DfilterDisplayMatchChildren=true
[INFO] Scanning for projects...
[INFO] Searching repository for plugin with prefix: 'info'.
[INFO] 
----------------------------------------------------------------------------
[INFO] Building eIP EventMonitor CM Provider
[INFO]    task-segment: [info:deps-test]
[INFO] 
----------------------------------------------------------------------------
[INFO] snapshot 
com.elsagsolutions.commons:es-commons-configuration:2.0.2-SNAPSHOT: checking 
for updates from elsag-repo-snapshot
[INFO] [info:deps-test]
[INFO] filtering for 'mock'
[INFO]  ignoring root node filter matches (use filterIgnoreRoot=[true|false] to 
change this)
[INFO]  displaying children of a filter match (use 
filterDisplayMatchChildren=[true|false] to change this)
[INFO] ip.evtmon:ip-evtmon-cm:jar:2.2.1-SNAPSHOT
[INFO]     com.elsagsolutions.commons:es-commons-test:jar:2.0.9
[INFO]     :   jmock:jmock:jar:1.1.0
[INFO]     :   :   junit:junit:jar:3.8.1
[INFO]     :   [...]
[INFO]     [...]
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESSFUL
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 3 seconds
[INFO] Finished at: Thu Jan 18 09:15:01 CET 2007
[INFO] Final Memory: 4M/9M
[INFO] ------------------------------------------------------------------------

========= %< =============

We cannot live without this anymore ... it made our release process quite easy 
and we can detect unwanted deps very early.

- Jörg

BTW: Did I mension, that there's another option to support colouring on ANSI 
terminals and the matching artifacts are highlighted visually? ;-)

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

Reply via email to