Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions .github/workflows/maven-verify.yml
Original file line number Diff line number Diff line change
Expand Up @@ -25,3 +25,5 @@ jobs:
build:
name: Verify
uses: apache/maven-gh-actions-shared/.github/workflows/maven-verify.yml@v4
with:
maven4-enabled: true
2 changes: 1 addition & 1 deletion pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@
<parent>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-plugins</artifactId>
<!-- also update in ITs: check-buildplan-info // compare-mono-->
<!-- also update in ITs: check-buildplan-info // compare-mono // buildinfo-multi -->
<version>48</version>
<relativePath />
</parent>
Expand Down
24 changes: 17 additions & 7 deletions src/it/buildinfo-mono/verify.groovy
Original file line number Diff line number Diff line change
Expand Up @@ -25,8 +25,17 @@ assert buildinfoFile.isFile()
// check generated buildinfo content
String buildinfo = buildinfoFile.text

assert buildinfo.contains( "outputs.0.filename=mono-1.0-SNAPSHOT.pom" )
assert buildinfo.contains( "outputs.1.filename=mono-1.0-SNAPSHOT.jar" )

// In Maven 4 we build and consumer POM
if (mavenVersion.startsWith('4.')) {
assert buildinfo.contains( "outputs.0.filename=mono-1.0-SNAPSHOT.pom" )
assert buildinfo.contains( "outputs.1.filename=mono-1.0-SNAPSHOT-build.pom" )
assert buildinfo.contains( "outputs.2.filename=mono-1.0-SNAPSHOT.jar" )
} else {
assert buildinfo.contains( "outputs.0.filename=mono-1.0-SNAPSHOT.pom" )
assert buildinfo.contains( "outputs.1.filename=mono-1.0-SNAPSHOT.jar" )
}

assert buildinfo.contains( "mvn.minimum.version=3.0.5" )
assert buildinfo.contains( "mvn.rebuild-args=-Dmaven.session.versionFilter=e(org.slf4j:slf4j-api:(1.7.36,))" )

Expand All @@ -36,12 +45,13 @@ assert local.isFile()

// check existence of buildinfo in remote repository
File remoteDir = new File( basedir, "target/remote-repo/org/apache/maven/plugins/it/mono/1.0-SNAPSHOT")
assert remoteDir.isDirectory()
assert remoteDir.isDirectory()

int count = 0;
for ( File f : remoteDir.listFiles() )
{
if ( f.getName().endsWith( ".pom" ) )
{
for ( File f : remoteDir.listFiles() ) {
// In Maven 4 there is the build-POM and also the new (but with old name) consumer-POM
// The expected ".buildinfo" file is named as the consumer-POM
if ( f.getName().endsWith( ".pom" ) && !f.getName().endsWith( "build.pom" )) {
File b = new File( remoteDir, f.getName().replace( ".pom", ".buildinfo" ) )
println b
assert b.isFile()
Expand Down
20 changes: 19 additions & 1 deletion src/it/buildinfo-multi/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@
<parent>
<groupId>org.apache.maven</groupId>
<artifactId>maven-parent</artifactId>
<version>39</version>
<version>48</version>
</parent>

<groupId>org.apache.maven.plugins.it</groupId>
Expand Down Expand Up @@ -91,6 +91,24 @@
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.rat</groupId>
<artifactId>apache-rat-plugin</artifactId>
<version>@version.apache-rat-plugin@</version>
<configuration>
<excludes>
<exclude>**/build.log.1</exclude>
</excludes>
</configuration>
<executions>
<execution>
<goals>
<goal>check</goal>
</goals>
<phase>verify</phase>
</execution>
</executions>
</plugin>
</plugins>
</build>
</project>
115 changes: 81 additions & 34 deletions src/it/buildinfo-multi/verify.groovy
Original file line number Diff line number Diff line change
Expand Up @@ -39,39 +39,79 @@ assert buildinfoFile.text.equals( ignoreJar.text )

// check generated aggregate buildinfo content
String buildinfo = ignoreJar.text

assert buildinfo.contains( "group-id=org.apache.maven.plugins.it" )
assert buildinfo.contains( "artifact-id=multi" )
assert buildinfo.contains( "version=1.0-SNAPSHOT" )

assert buildinfo.contains( "outputs.1.coordinates=org.apache.maven.plugins.it:multi-modA" )
assert buildinfo.contains( "outputs.1.0.filename=multi-modA-1.0-SNAPSHOT.pom" )
assert buildinfo.contains( "outputs.1.1.filename=multi-modA-1.0-SNAPSHOT.jar" )
assert !buildinfo.contains( "outputs.1.2.filename=" )
assert buildinfo.contains( "# ignored multi-modA-1.0-SNAPSHOT.spdx.json" )

assert buildinfo.contains( "outputs.2.coordinates=org.apache.maven.plugins.it:multi-modB" )
assert buildinfo.contains( "outputs.2.0.filename=multi-modB-1.0-SNAPSHOT.pom" )
assert buildinfo.contains( "outputs.2.1.filename=multi-modB-1.0-SNAPSHOT.jar" )
assert !buildinfo.contains( "outputs.2.2.filename=" )
assert buildinfo.contains( "# ignored multi-modB-1.0-SNAPSHOT.spdx.json" )

assert buildinfo.contains( "outputs.3.coordinates=org.apache.maven.plugins.it:ignore-all" )
assert buildinfo.contains( "# ignored ignore-all-1.0-SNAPSHOT.pom" )
assert buildinfo.contains( "# ignored ignore-all-1.0-SNAPSHOT.jar" )
assert !buildinfo.contains( "outputs.3.0.filename=" )
assert buildinfo.contains( "# ignored ignore-pom-1.0-SNAPSHOT.spdx.json" )

assert buildinfo.contains( "outputs.4.coordinates=org.apache.maven.plugins.it:ignore-pom" )
assert buildinfo.contains( "# ignored ignore-pom-1.0-SNAPSHOT.pom" )
assert buildinfo.contains( "outputs.4.0.filename=ignore-pom-1.0-SNAPSHOT.jar" )
assert !buildinfo.contains( "outputs.4.1.filename=" )
assert buildinfo.contains( "# ignored ignore-pom-1.0-SNAPSHOT.spdx.json" )

assert buildinfo.contains( "outputs.5.coordinates=org.apache.maven.plugins.it:ignore-jar" )
assert buildinfo.contains( "outputs.5.0.filename=ignore-jar-1.0-SNAPSHOT.pom" )
assert buildinfo.contains( "# ignored ignore-jar-1.0-SNAPSHOT.jar" )
assert !buildinfo.contains( "outputs.5.1.filename=" )
assert buildinfo.contains( "# ignored ignore-jar-1.0-SNAPSHOT.spdx.json" )
// In Maven 4 we build and consumer POM
if (mavenVersion.startsWith('4.')) {
assert buildinfo.contains( "outputs.1.coordinates=org.apache.maven.plugins.it:multi-modA" )
assert buildinfo.contains( "outputs.1.0.filename=multi-modA-1.0-SNAPSHOT.pom" )
assert buildinfo.contains( "outputs.1.1.filename=multi-modA-1.0-SNAPSHOT-build.pom" )
assert buildinfo.contains( "outputs.1.2.filename=multi-modA-1.0-SNAPSHOT.jar" )
assert !buildinfo.contains( "outputs.1.3.filename=" )
assert buildinfo.contains( "# ignored multi-modA-1.0-SNAPSHOT.spdx.json" )

assert buildinfo.contains( "outputs.2.coordinates=org.apache.maven.plugins.it:multi-modB" )
assert buildinfo.contains( "outputs.2.0.filename=multi-modB-1.0-SNAPSHOT.pom" )
assert buildinfo.contains( "outputs.2.1.filename=multi-modB-1.0-SNAPSHOT-build.pom" )
assert buildinfo.contains( "outputs.2.2.filename=multi-modB-1.0-SNAPSHOT.jar" )
assert !buildinfo.contains( "outputs.2.3.filename=" )
assert buildinfo.contains( "# ignored multi-modB-1.0-SNAPSHOT.spdx.json" )

assert buildinfo.contains( "outputs.3.coordinates=org.apache.maven.plugins.it:ignore-all" )
assert buildinfo.contains( "# ignored ignore-all-1.0-SNAPSHOT.pom" )
assert buildinfo.contains( "# ignored ignore-all-1.0-SNAPSHOT-build.pom" )
assert buildinfo.contains( "# ignored ignore-all-1.0-SNAPSHOT.jar" )
assert !buildinfo.contains( "outputs.3.0.filename=" )
assert buildinfo.contains( "# ignored ignore-pom-1.0-SNAPSHOT.spdx.json" )

assert buildinfo.contains( "outputs.4.coordinates=org.apache.maven.plugins.it:ignore-pom" )
assert buildinfo.contains( "# ignored ignore-pom-1.0-SNAPSHOT.pom" )
assert buildinfo.contains( "# ignored ignore-pom-1.0-SNAPSHOT-build.pom" )
assert buildinfo.contains( "outputs.4.0.filename=ignore-pom-1.0-SNAPSHOT.jar" )
assert !buildinfo.contains( "outputs.4.1.filename=" )
assert buildinfo.contains( "# ignored ignore-pom-1.0-SNAPSHOT.spdx.json" )

assert buildinfo.contains( "outputs.5.coordinates=org.apache.maven.plugins.it:ignore-jar" )
assert buildinfo.contains( "outputs.5.0.filename=ignore-jar-1.0-SNAPSHOT.pom" )
assert buildinfo.contains( "outputs.5.1.filename=ignore-jar-1.0-SNAPSHOT-build.pom" )
assert buildinfo.contains( "# ignored ignore-jar-1.0-SNAPSHOT.jar" )
assert !buildinfo.contains( "outputs.5.2.filename=" )
assert buildinfo.contains( "# ignored ignore-jar-1.0-SNAPSHOT.spdx.json" )
} else {

assert buildinfo.contains( "outputs.1.coordinates=org.apache.maven.plugins.it:multi-modA" )
assert buildinfo.contains( "outputs.1.0.filename=multi-modA-1.0-SNAPSHOT.pom" )
assert buildinfo.contains( "outputs.1.1.filename=multi-modA-1.0-SNAPSHOT.jar" )
assert !buildinfo.contains( "outputs.1.2.filename=" )
assert buildinfo.contains( "# ignored multi-modA-1.0-SNAPSHOT.spdx.json" )

assert buildinfo.contains( "outputs.2.coordinates=org.apache.maven.plugins.it:multi-modB" )
assert buildinfo.contains( "outputs.2.0.filename=multi-modB-1.0-SNAPSHOT.pom" )
assert buildinfo.contains( "outputs.2.1.filename=multi-modB-1.0-SNAPSHOT.jar" )
assert !buildinfo.contains( "outputs.2.2.filename=" )
assert buildinfo.contains( "# ignored multi-modB-1.0-SNAPSHOT.spdx.json" )

assert buildinfo.contains( "outputs.3.coordinates=org.apache.maven.plugins.it:ignore-all" )
assert buildinfo.contains( "# ignored ignore-all-1.0-SNAPSHOT.pom" )
assert buildinfo.contains( "# ignored ignore-all-1.0-SNAPSHOT.jar" )
assert !buildinfo.contains( "outputs.3.0.filename=" )
assert buildinfo.contains( "# ignored ignore-pom-1.0-SNAPSHOT.spdx.json" )

assert buildinfo.contains( "outputs.4.coordinates=org.apache.maven.plugins.it:ignore-pom" )
assert buildinfo.contains( "# ignored ignore-pom-1.0-SNAPSHOT.pom" )
assert buildinfo.contains( "outputs.4.0.filename=ignore-pom-1.0-SNAPSHOT.jar" )
assert !buildinfo.contains( "outputs.4.1.filename=" )
assert buildinfo.contains( "# ignored ignore-pom-1.0-SNAPSHOT.spdx.json" )

assert buildinfo.contains( "outputs.5.coordinates=org.apache.maven.plugins.it:ignore-jar" )
assert buildinfo.contains( "outputs.5.0.filename=ignore-jar-1.0-SNAPSHOT.pom" )
assert buildinfo.contains( "# ignored ignore-jar-1.0-SNAPSHOT.jar" )
assert !buildinfo.contains( "outputs.5.1.filename=" )
assert buildinfo.contains( "# ignored ignore-jar-1.0-SNAPSHOT.spdx.json" )
}

assert !buildinfo.contains( ".buildinfo" )
assert buildinfo.contains( "mvn.aggregate.artifact-id=ignore-jar" )
Expand All @@ -81,12 +121,19 @@ File localIgnoreJar = new File( basedir, "../../local-repo/org/apache/maven/plug
assert localIgnoreJar.isFile()

// check existence of buildinfo in remote repository
File remoteDir = new File( basedir, "ignore-jar/target/remote-repo/org/apache/maven/plugins/it/ignore-jar/1.0-SNAPSHOT" )
File remoteDir = null
if (mavenVersion.startsWith('4.')) {
remoteDir = new File( basedir, "target/remote-repo/org/apache/maven/plugins/it/ignore-jar/1.0-SNAPSHOT" )
} else {
remoteDir = new File( basedir, "ignore-jar/target/remote-repo/org/apache/maven/plugins/it/ignore-jar/1.0-SNAPSHOT" )
}

assert remoteDir.isDirectory()
for ( File f : remoteDir.listFiles() )
{
if ( f.getName().endsWith( ".pom" ) )
{

for ( File f : remoteDir.listFiles() ) {
// In Maven 4 there is the build-POM and also the new (but with old name) consumer-POM
// The expected ".buildinfo" file is named as the consumer-POM
if ( f.getName().endsWith( ".pom" ) && !f.getName().endsWith( "build.pom" )) {
File b = new File( remoteDir, f.getName().replace( ".pom", ".buildinfo" ) )
println b
assert b.isFile()
Expand Down
14 changes: 14 additions & 0 deletions src/it/buildinfo-skip-install-deploy/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -57,6 +57,20 @@
</modules>

<build>
<pluginManagement>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-install-plugin</artifactId>
<version>@version.maven-install-plugin@</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-deploy-plugin</artifactId>
<version>@version.maven-deploy-plugin@</version>
</plugin>
</plugins>
</pluginManagement>
<plugins>
<plugin>
<groupId>@project.groupId@</groupId>
Expand Down
35 changes: 28 additions & 7 deletions src/it/buildinfo-skip-install-deploy/verify.groovy
Original file line number Diff line number Diff line change
Expand Up @@ -35,10 +35,23 @@ assert buildinfo.contains( "artifact-id=multi" )
assert buildinfo.contains( "version=1.0-SNAPSHOT" )
assert buildinfo.contains( "outputs.1.coordinates=org.apache.maven.plugins.it:multi-modA" )
assert buildinfo.contains( "outputs.1.0.filename=multi-modA-1.0-SNAPSHOT.pom" )
assert buildinfo.contains( "outputs.1.1.filename=multi-modA-1.0-SNAPSHOT.jar" )

if (mavenVersion.startsWith('4.')) {
assert buildinfo.contains( "outputs.1.2.filename=multi-modA-1.0-SNAPSHOT.jar" )
} else {
assert buildinfo.contains( "outputs.1.1.filename=multi-modA-1.0-SNAPSHOT.jar" )
}

assert buildinfo.contains( "outputs.2.coordinates=org.apache.maven.plugins.it:multi-modB" )
assert buildinfo.contains( "outputs.2.0.filename=multi-modB-1.0-SNAPSHOT.pom" )
assert buildinfo.contains( "outputs.2.1.filename=multi-modB-1.0-SNAPSHOT.jar" )

if (mavenVersion.startsWith('4.')) {
assert buildinfo.contains( "outputs.2.2.filename=multi-modB-1.0-SNAPSHOT.jar" )
} else {
assert buildinfo.contains( "outputs.2.1.filename=multi-modB-1.0-SNAPSHOT.jar" )
}


assert !buildinfo.contains( ".buildinfo" )
assert !buildinfo.contains( "outputs.3" )

Expand All @@ -47,12 +60,20 @@ File localModB = new File( basedir, "../../local-repo/org/apache/maven/plugins/i
assert localModB.isFile()

// check existence of buildinfo in remote repository
File remoteDir = new File( basedir, "modB/target/remote-repo/org/apache/maven/plugins/it/multi-modB/1.0-SNAPSHOT" )
File remoteDir = null
if (mavenVersion.startsWith('4.')) {
remoteDir = new File( basedir, "target/remote-repo/org/apache/maven/plugins/it/multi-modB/1.0-SNAPSHOT" )
} else {
remoteDir = new File( basedir, "modB/target/remote-repo/org/apache/maven/plugins/it/multi-modB/1.0-SNAPSHOT" )
}

assert remoteDir.isDirectory()
for ( File f : remoteDir.listFiles() )
{
if ( f.getName().endsWith( ".pom" ) )
{

// check if there is a .buildinfo for the first .pom file
for ( File f : remoteDir.listFiles() ) {
// In Maven 4 there is the build-POM and also the new (but with old name) consumer-POM
// The expected ".buildinfo" file is named as the consumer-POM
if ( f.getName().endsWith( ".pom" ) && !f.getName().endsWith( "build.pom" )) {
File b = new File( remoteDir, f.getName().replace( ".pom", ".buildinfo" ) )
println b
assert b.isFile()
Expand Down
14 changes: 14 additions & 0 deletions src/it/compare-flatten/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -53,6 +53,20 @@
</modules>

<build>
<pluginManagement>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-install-plugin</artifactId>
<version>@version.maven-install-plugin@</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-deploy-plugin</artifactId>
<version>@version.maven-deploy-plugin@</version>
</plugin>
</plugins>
</pluginManagement>
<plugins>
<plugin>
<groupId>@project.groupId@</groupId>
Expand Down
31 changes: 23 additions & 8 deletions src/it/compare-flatten/verify.groovy
Original file line number Diff line number Diff line change
Expand Up @@ -19,13 +19,28 @@
*/

String compare = new File( basedir, 'target/flatten-1.0-SNAPSHOT.buildcompare' ).text
assert compare.contains( 'okFiles="flatten-1.0-SNAPSHOT.pom flatten-modB-1.0-SNAPSHOT.pom flatten-modA-1.0-SNAPSHOT.pom"' )

assert new File( basedir, 'flattened-pom.xml' ).text == new File( basedir, 'target/reference/org.apache.maven.plugins.it/flatten-1.0-SNAPSHOT.pom' ).text
assert new File( basedir, 'modA/flattened-pom.xml' ).text == new File( basedir, 'target/reference/org.apache.maven.plugins.it/flatten-modA-1.0-SNAPSHOT.pom' ).text
assert new File( basedir, 'modB/pom.xml' ).text == new File( basedir, 'target/reference/org.apache.maven.plugins.it/flatten-modB-1.0-SNAPSHOT.pom' ).text
// In Maven 4 the build-bom gets flatten. Its existence also changes the index in buildinfo
if (mavenVersion.startsWith('4.')) {
assert compare.contains( 'okFiles="flatten-1.0-SNAPSHOT.pom flatten-1.0-SNAPSHOT-build.pom flatten-modB-1.0-SNAPSHOT.pom flatten-modB-1.0-SNAPSHOT-build.pom flatten-modA-1.0-SNAPSHOT.pom flatten-modA-1.0-SNAPSHOT-build.pom"' )

String buildinfo = new File( basedir, 'target/flatten-1.0-SNAPSHOT.buildinfo' ).text
assert buildinfo.contains( "outputs.0.0.length=" + new File( basedir, 'flattened-pom.xml' ).size() )
assert buildinfo.contains( "outputs.1.0.length=" + new File( basedir, 'modB/pom.xml' ).size() )
assert buildinfo.contains( "outputs.2.0.length=" + new File( basedir, 'modA/flattened-pom.xml' ).size() )
assert new File( basedir, 'flattened-pom.xml' ).text == new File( basedir, 'target/reference/org.apache.maven.plugins.it/flatten-1.0-SNAPSHOT-build.pom' ).text
assert new File( basedir, 'modA/flattened-pom.xml' ).text == new File( basedir, 'target/reference/org.apache.maven.plugins.it/flatten-modA-1.0-SNAPSHOT-build.pom' ).text
assert new File( basedir, 'modB/pom.xml' ).text == new File( basedir, 'target/reference/org.apache.maven.plugins.it/flatten-modB-1.0-SNAPSHOT-build.pom' ).text

String buildinfo = new File( basedir, 'target/flatten-1.0-SNAPSHOT.buildinfo' ).text
assert buildinfo.contains( "outputs.0.1.length=" + new File( basedir, 'flattened-pom.xml' ).size() )
assert buildinfo.contains( "outputs.1.1.length=" + new File( basedir, 'modB/pom.xml' ).size() )
assert buildinfo.contains( "outputs.2.1.length=" + new File( basedir, 'modA/flattened-pom.xml' ).size() )
} else {
assert compare.contains( 'okFiles="flatten-1.0-SNAPSHOT.pom flatten-modB-1.0-SNAPSHOT.pom flatten-modA-1.0-SNAPSHOT.pom"' )

assert new File( basedir, 'flattened-pom.xml' ).text == new File( basedir, 'target/reference/org.apache.maven.plugins.it/flatten-1.0-SNAPSHOT.pom' ).text
assert new File( basedir, 'modA/flattened-pom.xml' ).text == new File( basedir, 'target/reference/org.apache.maven.plugins.it/flatten-modA-1.0-SNAPSHOT.pom' ).text
assert new File( basedir, 'modB/pom.xml' ).text == new File( basedir, 'target/reference/org.apache.maven.plugins.it/flatten-modB-1.0-SNAPSHOT.pom' ).text

String buildinfo = new File( basedir, 'target/flatten-1.0-SNAPSHOT.buildinfo' ).text
assert buildinfo.contains( "outputs.0.0.length=" + new File( basedir, 'flattened-pom.xml' ).size() )
assert buildinfo.contains( "outputs.1.0.length=" + new File( basedir, 'modB/pom.xml' ).size() )
assert buildinfo.contains( "outputs.2.0.length=" + new File( basedir, 'modA/flattened-pom.xml' ).size() )
}
18 changes: 18 additions & 0 deletions src/it/compare-mono/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -91,6 +91,24 @@
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.rat</groupId>
<artifactId>apache-rat-plugin</artifactId>
<version>@version.apache-rat-plugin@</version>
<configuration>
<excludes>
<exclude>**/build.log.1</exclude>
</excludes>
</configuration>
<executions>
<execution>
<goals>
<goal>check</goal>
</goals>
<phase>verify</phase>
</execution>
</executions>
</plugin>
</plugins>
</build>
</project>
12 changes: 10 additions & 2 deletions src/it/compare-mono/verify.groovy
Original file line number Diff line number Diff line change
Expand Up @@ -26,10 +26,18 @@ assert compareFile.isFile()
String compare = compareFile.text

assert compare.contains( "version=1.0-SNAPSHOT" )
assert compare.contains( "ok=1" )

// In Maven 4 we build and consumer POM
if (mavenVersion.startsWith('4.')) {
assert compare.contains( "ok=2" )
assert compare.contains( 'okFiles="mono-1.0-SNAPSHOT.pom mono-1.0-SNAPSHOT-build.pom"' )
} else {
assert compare.contains( "ok=1" )
assert compare.contains( 'okFiles="mono-1.0-SNAPSHOT.pom"' )
}

assert compare.contains( "ko=1" )
assert compare.contains( "ignored=1" )
assert compare.contains( 'okFiles="mono-1.0-SNAPSHOT.pom"' )
assert compare.contains( 'koFiles="mono-1.0-SNAPSHOT.jar"' )
assert compare.contains( 'ignoredFiles="mono-1.0-SNAPSHOT.spdx.json"' )
if( File.separator == '/' ) {
Expand Down
Loading
Loading