This is an automated email from the ASF dual-hosted git repository. slachiewicz pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/maven-remote-resources-plugin.git
commit 6c945b90d98a5498f3e21c2d04fc15b2df73a99c Author: Sylwester Lachiewicz <[email protected]> AuthorDate: Wed Oct 28 09:06:04 2026 +0000 Show SPDX license groups within each organization --- src/it/resources/spdx-license-id/a-name/pom.xml | 4 ++++ src/it/resources/spdx-license-id/c-expression/pom.xml | 4 ++++ .../project/src/main/resources/DEPENDENCIES.vm | 10 +++++++++- src/site/markdown/usage.md.vm | 17 +++++++++++++++++ .../plugin/resources/remote/it/ITSpdxLicenseId.java | 8 ++++++++ 5 files changed, 42 insertions(+), 1 deletion(-) diff --git a/src/it/resources/spdx-license-id/a-name/pom.xml b/src/it/resources/spdx-license-id/a-name/pom.xml index 61bfedf..a48ae21 100644 --- a/src/it/resources/spdx-license-id/a-name/pom.xml +++ b/src/it/resources/spdx-license-id/a-name/pom.xml @@ -26,6 +26,10 @@ under the License. <version>1.0</version> <packaging>pom</packaging> + <organization> + <name>Example Org</name> + </organization> + <licenses> <license> <name>The Apache Software License, Version 2.0</name> diff --git a/src/it/resources/spdx-license-id/c-expression/pom.xml b/src/it/resources/spdx-license-id/c-expression/pom.xml index 6b8ec0b..0d739f4 100644 --- a/src/it/resources/spdx-license-id/c-expression/pom.xml +++ b/src/it/resources/spdx-license-id/c-expression/pom.xml @@ -26,6 +26,10 @@ under the License. <version>1.0</version> <packaging>pom</packaging> + <organization> + <name>Example Org</name> + </organization> + <licenses> <license> <name>(Apache-2.0 OR EPL-2.0)</name> diff --git a/src/it/resources/spdx-license-id/project/src/main/resources/DEPENDENCIES.vm b/src/it/resources/spdx-license-id/project/src/main/resources/DEPENDENCIES.vm index 3d3323b..6ebd36b 100644 --- a/src/it/resources/spdx-license-id/project/src/main/resources/DEPENDENCIES.vm +++ b/src/it/resources/spdx-license-id/project/src/main/resources/DEPENDENCIES.vm @@ -24,7 +24,6 @@ $dependency.artifactId: #if( $id )$id#else$license.name#end #end #foreach( $entry in $spdx.group($projects).entrySet() ) Group $entry.key:#foreach( $dependency in $entry.value ) $dependency.artifactId#end - #end #foreach( $id in $spdx.ids($projects) ) License text: $id @@ -32,3 +31,12 @@ License text: $id #foreach( $dependency in $spdx.unresolved($projects) ) Unresolved: $dependency.artifactId #end +#foreach( $org in $projectsSortedByOrganization.entrySet() ) +Org $org.key.name: +#foreach( $group in $spdx.group($org.value).entrySet() ) + License $group.key:#foreach( $dependency in $group.value ) $dependency.artifactId#end +#end +#foreach( $dependency in $spdx.unresolved($org.value) ) + Unresolved $dependency.artifactId +#end +#end diff --git a/src/site/markdown/usage.md.vm b/src/site/markdown/usage.md.vm index 20315aa..c2d81ba 100644 --- a/src/site/markdown/usage.md.vm +++ b/src/site/markdown/usage.md.vm @@ -142,7 +142,24 @@ $group.key: #end #foreach( $dependency in $spdx.unresolved($projects) ) $dependency.name: #foreach( $license in $dependency.licenses )$license.name #end +#end]]# +``` + +`${esc.d}spdx.group` and `${esc.d}spdx.unresolved` take any list of dependencies, so they also work inside each organization of `${esc.d}projectsSortedByOrganization`: + +``` +#[[#foreach( $organization in $projectsSortedByOrganization.entrySet() ) +From: '$organization.key.name'#if( $organization.key.url ) ($organization.key.url)#end +#foreach( $group in $spdx.group($organization.value).entrySet() ) + $group.key: +#foreach( $dependency in $group.value ) + - $dependency.name ($dependency.groupId:$dependency.artifactId) +#end +#end +#foreach( $dependency in $spdx.unresolved($organization.value) ) + - $dependency.name: #foreach( $license in $dependency.licenses )$license.name #end +#end #end]]# ``` diff --git a/src/test/java/org/apache/maven/plugin/resources/remote/it/ITSpdxLicenseId.java b/src/test/java/org/apache/maven/plugin/resources/remote/it/ITSpdxLicenseId.java index 7b03e2c..c65ea2c 100644 --- a/src/test/java/org/apache/maven/plugin/resources/remote/it/ITSpdxLicenseId.java +++ b/src/test/java/org/apache/maven/plugin/resources/remote/it/ITSpdxLicenseId.java @@ -67,5 +67,13 @@ public class ITSpdxLicenseId extends AbstractIT { assertTrue(content.contains("Unresolved: d-unknown\n"), content); assertEquals(1, content.split("License text: Apache-2.0\n", -1).length - 1, content); assertTrue(content.contains("License text: Classpath-exception-2.0\n"), content); + + assertTrue( + content.contains("Org Example Org:\n" + + " License (Apache-2.0 OR EPL-2.0): c-expression\n" + + " License Apache-2.0: a-name\n"), + content); + assertTrue(content.contains("Org an unknown organization:\n License Apache-2.0: b-url\n"), content); + assertTrue(content.contains(" Unresolved d-unknown\n"), content); } }
