This is an automated email from the ASF dual-hosted git repository.

alien11689 pushed a commit to branch visualize-dependencies
in repository https://gitbox.apache.org/repos/asf/aries.git

commit c4f23e6ecba2c71fda034fb3f2cfae15dd9ce6ea
Author: Dominik Przybysz <[email protected]>
AuthorDate: Sun Feb 9 19:46:11 2025 +0100

    [MAINTENANCE] Visualize dependencies in submodules
---
 README.md                | 25 ++++++++++++++++---------
 blueprint/pom.xml        |  3 +--
 createDependencyGraph.sh | 17 +++++++++++++++++
 ejb/pom.xml              |  2 +-
 jmx/pom.xml              |  8 ++++----
 jndi/pom.xml             |  2 +-
 parent/pom.xml           | 17 +++++++++++++++++
 proxy/pom.xml            |  2 +-
 subsystem/pom.xml        |  2 +-
 transaction/pom.xml      |  2 +-
 web/pom.xml              |  2 +-
 11 files changed, 61 insertions(+), 21 deletions(-)

diff --git a/README.md b/README.md
index b58344f0a..8f0474949 100644
--- a/README.md
+++ b/README.md
@@ -32,15 +32,16 @@ The sources are now directly availble in [aries 
github](https://github.com/apach
 
 Some of the subprojects have their own git repos:
 
-| Subproject |
-| ---------- |
-| [Aries CDI](https://github.com/apache/aries-cdi) |
-| [Aries Component DSL](https://github.com/apache/aries-component-dsl) |
-| [Aries Containers](https://github.com/apache/aries-containers) |
+| Subproject                                                                  |
+|-----------------------------------------------------------------------------|
+| [Aries CDI](https://github.com/apache/aries-cdi)                            |
+| [Aries Component DSL](https://github.com/apache/aries-component-dsl)        |
+| [Aries Containers](https://github.com/apache/aries-containers)              |
 | [Aries JAX-RS whiteboard](https://github.com/apache/aries-jax-rs-whiteboard) 
|
-| [Aries JPA](https://github.com/apache/aries-jpa) |
-| [Aries RSA](https://github.com/apache/aries-rsa) |
-| [Aries Transaction Control](https://github.com/apache/aries-tx-control) |
+| [Aries JPA](https://github.com/apache/aries-jpa)                            |
+| [Aries RSA](https://github.com/apache/aries-rsa)                            |
+| [Aries Transaction Control](https://github.com/apache/aries-tx-control)     |
+| [Aries Typed Event](https://github.com/apache/aries-typedevent)           |
 
 ## Build
 
@@ -48,5 +49,11 @@ Most projects can be built using
 
     mvn clean install
 
-As the Aries svn hosts a lot of different subprojects it makes sense to only
+As the Aries main repository hosts a lot of different subprojects it makes 
sense to only
 build the specific subproject.
+
+## Submodule dependencies visualization
+
+1. Install graphviz (`dot` program is necessary)
+2. Run script `./createDependencyGraph.sh SUBMODULE`
+3. Graph of dependencies will be generated in `target` directory
diff --git a/blueprint/pom.xml b/blueprint/pom.xml
index 52e073101..330b9b948 100644
--- a/blueprint/pom.xml
+++ b/blueprint/pom.xml
@@ -24,7 +24,7 @@
     <parent>
         <groupId>org.apache.aries</groupId>
         <artifactId>parent</artifactId>
-        <version>2.0.1</version>
+        <version>2.1.2-SNAPSHOT</version>
         <relativePath>../parent/pom.xml</relativePath>
     </parent>
 
@@ -59,6 +59,5 @@
         <module>examples</module>
         <module>itests</module>
     </modules>
-
 </project>
 
diff --git a/createDependencyGraph.sh b/createDependencyGraph.sh
new file mode 100755
index 000000000..3734ab780
--- /dev/null
+++ b/createDependencyGraph.sh
@@ -0,0 +1,17 @@
+#!/bin/bash
+module=$1
+result_file=${module//\//_}
+
+mvn com.github.ferstl:depgraph-maven-plugin:aggregate -DDshowGroupIds -f 
$module
+
+input_file=$module/target/dependency-graph.dot
+
+# do some cleanup
+mkdir -p target
+cleared_file=target/${result_file}.dot
+cat $input_file | sed "s/:jar:bundle:/:/g" | sed "s/:bundle:/:/g" | sed 
"s/:jar:/:/g" | sed "s/:provided\"/\"/g" | sed "s/:compile\"/\"/g" | sed 
"s/:test\"/\"/g" > $cleared_file
+
+dest_file=target/${result_file}.png
+dot -Tpng $cleared_file -o $dest_file
+
+echo "Image generated in $dest_file"
diff --git a/ejb/pom.xml b/ejb/pom.xml
index 6e0c4fdac..78605c1d7 100644
--- a/ejb/pom.xml
+++ b/ejb/pom.xml
@@ -24,7 +24,7 @@
     <parent>
         <groupId>org.apache.aries</groupId>
         <artifactId>parent</artifactId>
-        <version>2.0.0</version>
+        <version>2.1.2-SNAPSHOT</version>
         <relativePath>../parent/pom.xml</relativePath>
     </parent>
 
diff --git a/jmx/pom.xml b/jmx/pom.xml
index 2a3def46a..bb2b84e91 100644
--- a/jmx/pom.xml
+++ b/jmx/pom.xml
@@ -22,10 +22,10 @@
     <modelVersion>4.0.0</modelVersion>
 
     <parent>
-        <groupId>org.apache.aries.jmx</groupId>
-        <artifactId>org.apache.aries.jmx.parent</artifactId>
-        <version>1.1.6-SNAPSHOT</version>
-        <relativePath>jmx-parent</relativePath>
+        <groupId>org.apache.aries</groupId>
+        <artifactId>parent</artifactId>
+        <version>2.1.2-SNAPSHOT</version>
+        <relativePath>../parent/pom.xml</relativePath>
     </parent>
 
     <groupId>org.apache.aries.jmx</groupId>
diff --git a/jndi/pom.xml b/jndi/pom.xml
index 9fed27dd4..fea26e843 100644
--- a/jndi/pom.xml
+++ b/jndi/pom.xml
@@ -24,7 +24,7 @@
     <parent>
         <groupId>org.apache.aries</groupId>
         <artifactId>parent</artifactId>
-        <version>2.0.1</version>
+        <version>2.1.2-SNAPSHOT</version>
         <relativePath>../parent/pom.xml</relativePath>
     </parent>
 
diff --git a/parent/pom.xml b/parent/pom.xml
index 0ecabbec0..9ce72f697 100644
--- a/parent/pom.xml
+++ b/parent/pom.xml
@@ -211,6 +211,7 @@
         <maven-paxexam-plugin.version>1.2.4</maven-paxexam-plugin.version>
         
<org.apache.aries.versioning.plugin.version>0.3.0</org.apache.aries.versioning.plugin.version>
         
<animal-sniffer-enforcer-rule.version>1.6</animal-sniffer-enforcer-rule.version>
+        <depgraph-maven-plugin.version>4.0.3</depgraph-maven-plugin.version>
 
         <!--Other-->
         <java.source.version>8</java.source.version>
@@ -432,6 +433,22 @@
                         
<oldArtifact>${project.groupId}:${project.artifactId}:${lastReleaseVersion}</oldArtifact>
                     </configuration>
                 </plugin>
+                <plugin>
+                    <groupId>com.github.ferstl</groupId>
+                    <artifactId>depgraph-maven-plugin</artifactId>
+                    <version>${depgraph-maven-plugin.version}</version>
+                    <configuration>
+                        <excludes>
+                            <exclude>*:*test*</exclude>
+                        </excludes>
+                        <showGroupIds>true</showGroupIds>
+                        <scopes>
+                            <scope>compile</scope>
+                            <scope>provided</scope>
+                            <scope>sources</scope>
+                        </scopes>
+                    </configuration>
+                </plugin>
             </plugins>
         </pluginManagement>
         <plugins>
diff --git a/proxy/pom.xml b/proxy/pom.xml
index 3ab923801..2cb5acee3 100644
--- a/proxy/pom.xml
+++ b/proxy/pom.xml
@@ -24,7 +24,7 @@
     <parent>
         <groupId>org.apache.aries</groupId>
         <artifactId>parent</artifactId>
-        <version>2.0.0</version>
+        <version>2.1.2-SNAPSHOT</version>
         <relativePath>../parent/pom.xml</relativePath>
     </parent>
 
diff --git a/subsystem/pom.xml b/subsystem/pom.xml
index 1205763a0..b0439a9e8 100644
--- a/subsystem/pom.xml
+++ b/subsystem/pom.xml
@@ -24,7 +24,7 @@
     <parent>
         <groupId>org.apache.aries</groupId>
         <artifactId>parent</artifactId>
-        <version>2.0.0</version>
+        <version>2.1.2-SNAPSHOT</version>
         <relativePath>../parent/pom.xml</relativePath>
     </parent>
 
diff --git a/transaction/pom.xml b/transaction/pom.xml
index b3a1865ee..14909d2d1 100644
--- a/transaction/pom.xml
+++ b/transaction/pom.xml
@@ -24,7 +24,7 @@
     <parent>
         <groupId>org.apache.aries</groupId>
         <artifactId>parent</artifactId>
-        <version>2.0.0</version>
+        <version>2.1.2-SNAPSHOT</version>
         <relativePath>../parent/pom.xml</relativePath>
     </parent>
 
diff --git a/web/pom.xml b/web/pom.xml
index 15a53de64..6a3d16d15 100644
--- a/web/pom.xml
+++ b/web/pom.xml
@@ -24,7 +24,7 @@
     <parent>
         <groupId>org.apache.aries</groupId>
         <artifactId>parent</artifactId>
-        <version>2.0.0</version>
+        <version>2.1.2-SNAPSHOT</version>
         <relativePath>../parent/pom.xml</relativePath>
     </parent>
 

Reply via email to