From 38272361e991906d0b705f0e7e6c9aa27c1a44ee2bd2711f53277ce83db9fd03 Mon Sep 17 00:00:00 2001 From: Fridrich Strba Date: Mon, 9 May 2022 17:01:34 +0000 Subject: [PATCH] OBS-URL: https://build.opensuse.org/package/show/Java:packages/xmvn?expand=0&rev=48 --- ...avadoc-plugin-for-source-and-release.patch | 44 +- ...d-metadata-when-duplicates-are-found.patch | 59 --- ...ore-possibility-to-build-with-Java-8.patch | 85 +++ ...ation-of-toolchains-https-github.com.patch | 56 ++ ...ving-plugins-during-model-validation.patch | 500 ------------------ ...ate-compiler-source-target-to-JDK-11.patch | 370 +++++++++++++ ...dule-path-not-allowed-with-release-8.patch | 91 ++++ ...honor-settings-for-ignoring-duplicat.patch | 81 --- ...w-Collection-methods-added-in-Java-9.patch | 109 ++++ ...le-to-assure-that-we-are-jdk8-compat.patch | 44 ++ ...neration-for-self-depending-packages.patch | 115 ---- ...f-aliases-registered-by-add_maven_de.patch | 27 - 0006-Revert-port-to-gradle-4.5.1.patch | 96 ---- ...our-source-parameter-in-javadoc-mojo.patch | 40 -- xmvn-3.1.0.tar.xz | 3 - xmvn-4.0.0.tar.xz | 3 + xmvn-build.tar.xz | 4 +- xmvn-connector-gradle.changes | 27 - xmvn-connector-gradle.spec | 117 ---- xmvn-connector-ivy.changes | 20 - xmvn-connector-ivy.spec | 125 ----- ...r-aether.changes => xmvn-connector.changes | 0 ...nnector-aether.spec => xmvn-connector.spec | 25 +- xmvn-mojo.spec | 24 +- xmvn-parent.spec | 19 +- xmvn-tools.spec | 48 +- xmvn.spec | 8 +- 27 files changed, 834 insertions(+), 1306 deletions(-) rename 0008-Mimic-maven-javadoc-plugin-for-source-and-release.patch => 0001-Mimic-maven-javadoc-plugin-for-source-and-release.patch (62%) delete mode 100644 0001-Prefer-namespaced-metadata-when-duplicates-are-found.patch create mode 100644 0001-Restore-possibility-to-build-with-Java-8.patch create mode 100644 0001-Simple-implementation-of-toolchains-https-github.com.patch delete mode 100644 0002-Allow-removing-plugins-during-model-validation.patch create mode 100644 0002-Revert-Update-compiler-source-target-to-JDK-11.patch create mode 100644 0002-module-path-not-allowed-with-release-8.patch delete mode 100644 0003-Make-xmvn-subst-honor-settings-for-ignoring-duplicat.patch create mode 100644 0003-Revert-Use-new-Collection-methods-added-in-Java-9.patch create mode 100644 0004-Add-a-jdk9-profile-to-assure-that-we-are-jdk8-compat.patch delete mode 100644 0004-Fix-requires-generation-for-self-depending-packages.patch delete mode 100644 0005-Fix-resolution-of-aliases-registered-by-add_maven_de.patch delete mode 100644 0006-Revert-port-to-gradle-4.5.1.patch delete mode 100644 0007-Fixes-56-Honour-source-parameter-in-javadoc-mojo.patch delete mode 100644 xmvn-3.1.0.tar.xz create mode 100644 xmvn-4.0.0.tar.xz delete mode 100644 xmvn-connector-gradle.changes delete mode 100644 xmvn-connector-gradle.spec delete mode 100644 xmvn-connector-ivy.changes delete mode 100644 xmvn-connector-ivy.spec rename xmvn-connector-aether.changes => xmvn-connector.changes (100%) rename xmvn-connector-aether.spec => xmvn-connector.spec (82%) diff --git a/0008-Mimic-maven-javadoc-plugin-for-source-and-release.patch b/0001-Mimic-maven-javadoc-plugin-for-source-and-release.patch similarity index 62% rename from 0008-Mimic-maven-javadoc-plugin-for-source-and-release.patch rename to 0001-Mimic-maven-javadoc-plugin-for-source-and-release.patch index 9a36548..d320a42 100644 --- a/0008-Mimic-maven-javadoc-plugin-for-source-and-release.patch +++ b/0001-Mimic-maven-javadoc-plugin-for-source-and-release.patch @@ -1,17 +1,17 @@ -From ebba7d4d4534d8e1d8c0d8e31b92269e62adea8e Mon Sep 17 00:00:00 2001 +From c2f74691a71509c3671d3bc612be285a511c53f1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fridrich=20=C5=A0trba?= Date: Wed, 4 May 2022 13:26:00 +0200 -Subject: [PATCH 8/8] Mimic maven-javadoc-plugin for -source and --release +Subject: [PATCH 1/2] Mimic maven-javadoc-plugin for -source and --release -Consider the maven.compiler.sourceand maven.compiler.release +Consider the maven.compiler.source and maven.compiler.release properties. Skip module-info.java if source level is specified -and it is < 9. +and it is < 9 or if non-modular Java is used --- - .../fedoraproject/xmvn/mojo/JavadocMojo.java | 37 +++++++++++++++++-- - 1 file changed, 34 insertions(+), 3 deletions(-) + .../fedoraproject/xmvn/mojo/JavadocMojo.java | 38 +++++++++++++++++-- + 1 file changed, 34 insertions(+), 4 deletions(-) diff --git a/xmvn-mojo/src/main/java/org/fedoraproject/xmvn/mojo/JavadocMojo.java b/xmvn-mojo/src/main/java/org/fedoraproject/xmvn/mojo/JavadocMojo.java -index c1e61617..a2582057 100644 +index b2cd41fd..68d097f5 100644 --- a/xmvn-mojo/src/main/java/org/fedoraproject/xmvn/mojo/JavadocMojo.java +++ b/xmvn-mojo/src/main/java/org/fedoraproject/xmvn/mojo/JavadocMojo.java @@ -84,9 +84,12 @@ public class JavadocMojo @@ -28,14 +28,25 @@ index c1e61617..a2582057 100644 private static String quoted( Object obj ) { String arg = obj.toString(); -@@ -229,14 +232,42 @@ public class JavadocMojo +@@ -222,8 +225,9 @@ public class JavadocMojo + List reactorClassPath = new ArrayList<>(); + List fullClassPath = new ArrayList<>(); + populateClasspath( reactorClassPath, fullClassPath ); ++ boolean isModular = !findFiles( reactorClassPath, "module-info\\.class" ).isEmpty(); + +- if ( findFiles( reactorClassPath, "module-info\\.class" ).isEmpty() ) ++ if ( !isModular ) + { + opts.add( "-classpath" ); + } +@@ -244,15 +248,41 @@ public class JavadocMojo opts.add( quoted( docencoding ) ); opts.add( "-doctitle" ); opts.add( quoted( "Javadoc for package XXX" ) ); - if ( source != null ) + + String sourceLevel = null; -+ if ( release != null ) ++ if ( release != null && isModular ) + { + opts.add( "--release" ); + opts.add( quoted( release ) ); @@ -49,13 +60,13 @@ index c1e61617..a2582057 100644 + sourceLevel = source; + } + -+ boolean skipModuleInfo = false; -+ if ( sourceLevel != null ) ++ boolean skipModuleInfo = !isModular; ++ if ( sourceLevel != null && !skipModuleInfo ) + { + try + { -+ float f = Float.parseFloat(sourceLevel); -+ if (f < 9) ++ float f = Float.parseFloat( sourceLevel ); ++ if ( f < 9 ) + skipModuleInfo = true; + } + catch ( Exception e ) @@ -64,15 +75,14 @@ index c1e61617..a2582057 100644 + } } - for ( Path file : files ) + for ( Path file : sourceFiles ) + { - opts.add( quoted( file ) ); -+ { + if ( !skipModuleInfo || !file.endsWith( "module-info.java" ) ) + opts.add( quoted( file ) ); -+ } + } Files.write( outputDir.resolve( "args" ), opts, StandardOpenOption.CREATE ); - -- 2.36.0 diff --git a/0001-Prefer-namespaced-metadata-when-duplicates-are-found.patch b/0001-Prefer-namespaced-metadata-when-duplicates-are-found.patch deleted file mode 100644 index b921f93..0000000 --- a/0001-Prefer-namespaced-metadata-when-duplicates-are-found.patch +++ /dev/null @@ -1,59 +0,0 @@ -From ae0780c88f5bb3dbf833a662de1bcc5f37246b48 Mon Sep 17 00:00:00 2001 -From: Mikolaj Izdebski -Date: Fri, 28 Jun 2019 12:15:23 +0200 -Subject: [PATCH 1/7] Prefer namespaced metadata when duplicates are found - ---- - .../metadata/impl/DefaultMetadataResult.java | 33 +++++++++++-------- - 1 file changed, 19 insertions(+), 14 deletions(-) - -diff --git a/xmvn-core/src/main/java/org/fedoraproject/xmvn/metadata/impl/DefaultMetadataResult.java b/xmvn-core/src/main/java/org/fedoraproject/xmvn/metadata/impl/DefaultMetadataResult.java -index c8b63214..67bafef5 100644 ---- a/xmvn-core/src/main/java/org/fedoraproject/xmvn/metadata/impl/DefaultMetadataResult.java -+++ b/xmvn-core/src/main/java/org/fedoraproject/xmvn/metadata/impl/DefaultMetadataResult.java -@@ -94,23 +94,28 @@ class DefaultMetadataResult - } - - ArtifactMetadata otherMetadata = artifactMap.get( artifact ); -- if ( otherMetadata != null ) -+ -+ if ( otherMetadata == null ) -+ { -+ artifactMap.put( artifact, metadata ); -+ continue; -+ } -+ -+ duplicateArtifacts.add( artifact ); -+ -+ if ( ignoreDuplicates ) - { -- duplicateArtifacts.add( artifact ); -- -- if ( ignoreDuplicates ) -- { -- artifactMap.remove( artifact ); -- logger.warn( "Ignoring metadata for artifact {} as it has duplicate metadata", artifact ); -- continue; -- } -- else -- { -- logger.warn( "Duplicate metadata for artifact {}", artifact ); -- } -+ artifactMap.remove( artifact ); -+ logger.warn( "Ignoring metadata for artifact {} as it has duplicate metadata", artifact ); -+ continue; - } - -- artifactMap.put( artifact, metadata ); -+ logger.warn( "Duplicate metadata for artifact {}", artifact ); -+ -+ if ( otherMetadata.getNamespace().isEmpty() || !metadata.getNamespace().isEmpty() ) -+ { -+ artifactMap.put( artifact, metadata ); -+ } - } - } - --- -2.36.0 - diff --git a/0001-Restore-possibility-to-build-with-Java-8.patch b/0001-Restore-possibility-to-build-with-Java-8.patch new file mode 100644 index 0000000..9200cce --- /dev/null +++ b/0001-Restore-possibility-to-build-with-Java-8.patch @@ -0,0 +1,85 @@ +From 25029d2fc4db56e9f9a451505c8c76aaf0e8be9a Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Fridrich=20=C5=A0trba?= +Date: Fri, 6 May 2022 18:40:49 +0200 +Subject: [PATCH 1/4] Restore possibility to build with Java 8 + +--- + .../xmvn/connector/maven/XMvnToolchainManager.java | 5 +++-- + .../org/fedoraproject/xmvn/deployer/BasicDeployerTest.java | 3 ++- + .../org/fedoraproject/xmvn/tools/install/JarUtilsTest.java | 6 +++--- + 3 files changed, 8 insertions(+), 6 deletions(-) + +diff --git a/xmvn-connector/src/main/java/org/fedoraproject/xmvn/connector/maven/XMvnToolchainManager.java b/xmvn-connector/src/main/java/org/fedoraproject/xmvn/connector/maven/XMvnToolchainManager.java +index 53f1020d..1fb59cb3 100644 +--- a/xmvn-connector/src/main/java/org/fedoraproject/xmvn/connector/maven/XMvnToolchainManager.java ++++ b/xmvn-connector/src/main/java/org/fedoraproject/xmvn/connector/maven/XMvnToolchainManager.java +@@ -22,6 +22,7 @@ import org.apache.maven.execution.MavenSession; + import org.apache.maven.project.MavenProject; + import org.apache.maven.toolchain.DefaultToolchainManagerPrivate; + import org.apache.maven.toolchain.MisconfiguredToolchainException; ++import org.apache.maven.toolchain.ToolchainPrivate; + import org.codehaus.plexus.component.annotations.Component; + + /** +@@ -38,11 +39,11 @@ public class XMvnToolchainManager + + try + { +- for ( var toolchain : getToolchainsForType( "jdk", session ) ) ++ for ( ToolchainPrivate toolchain : getToolchainsForType( "jdk", session ) ) + { + if ( toolchain.matchesRequirements( Collections.singletonMap( "xmvn", "xmvn" ) ) ) + { +- for ( var project : session.getAllProjects() ) ++ for ( MavenProject project : session.getAllProjects() ) + { + session.setCurrentProject( project ); + storeToolchainToBuildContext( toolchain, session ); +diff --git a/xmvn-core/src/test/java/org/fedoraproject/xmvn/deployer/BasicDeployerTest.java b/xmvn-core/src/test/java/org/fedoraproject/xmvn/deployer/BasicDeployerTest.java +index f79e5b64..0028f4f1 100644 +--- a/xmvn-core/src/test/java/org/fedoraproject/xmvn/deployer/BasicDeployerTest.java ++++ b/xmvn-core/src/test/java/org/fedoraproject/xmvn/deployer/BasicDeployerTest.java +@@ -28,6 +28,7 @@ import java.nio.file.Paths; + import java.nio.file.attribute.PosixFilePermission; + import java.util.Arrays; + import java.util.Collections; ++import java.util.regex.Matcher; + import java.util.regex.Pattern; + + import org.junit.jupiter.api.Test; +@@ -149,7 +150,7 @@ public class BasicDeployerTest + { + return Files.lines( Paths.get( "/proc/self/status" ) ).map( s -> + { +- var matcher = PROCESS_UID_PATTERN.matcher( s ); ++ Matcher matcher = PROCESS_UID_PATTERN.matcher( s ); + + if ( matcher.matches() ) + { +diff --git a/xmvn-tools/xmvn-install/src/test/java/org/fedoraproject/xmvn/tools/install/JarUtilsTest.java b/xmvn-tools/xmvn-install/src/test/java/org/fedoraproject/xmvn/tools/install/JarUtilsTest.java +index 8866752d..d2ef084e 100644 +--- a/xmvn-tools/xmvn-install/src/test/java/org/fedoraproject/xmvn/tools/install/JarUtilsTest.java ++++ b/xmvn-tools/xmvn-install/src/test/java/org/fedoraproject/xmvn/tools/install/JarUtilsTest.java +@@ -411,8 +411,8 @@ public class JarUtilsTest + + byte[] content = Files.readAllBytes( testJar ); + +- var previousSecurity = System.getSecurityManager(); +- var fobiddingSecurity = new ForbiddingSecurityManager( testJar.toString() ); ++ SecurityManager previousSecurity = System.getSecurityManager(); ++ SecurityManager fobiddingSecurity = new ForbiddingSecurityManager( testJar.toString() ); + + System.setSecurityManager( fobiddingSecurity ); + +@@ -430,7 +430,7 @@ public class JarUtilsTest + "Content of the backup file is different from the content of the original file" ); + + System.setSecurityManager( previousSecurity ); +- try ( var os = new FileOutputStream( testJar.toFile(), true ) ) ++ try ( FileOutputStream os = new FileOutputStream( testJar.toFile(), true ) ) + { + /// Append garbage to the original file to check if the content of the backup will be retained + os.write( 0 ); +-- +2.36.0 + diff --git a/0001-Simple-implementation-of-toolchains-https-github.com.patch b/0001-Simple-implementation-of-toolchains-https-github.com.patch new file mode 100644 index 0000000..c8eaeca --- /dev/null +++ b/0001-Simple-implementation-of-toolchains-https-github.com.patch @@ -0,0 +1,56 @@ +From acb236f878b020722512b1ce0ba20329500083c2 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Fridrich=20=C5=A0trba?= +Date: Sat, 7 May 2022 18:13:02 +0200 +Subject: [PATCH 1/2] Simple implementation of toolchains + https://github.com/fedora-java/xmvn/issues/142 + +--- + .../fedoraproject/xmvn/mojo/JavadocMojo.java | 17 ++++++++++++++++- + 1 file changed, 16 insertions(+), 1 deletion(-) + +diff --git a/xmvn-mojo/src/main/java/org/fedoraproject/xmvn/mojo/JavadocMojo.java b/xmvn-mojo/src/main/java/org/fedoraproject/xmvn/mojo/JavadocMojo.java +index b2cd41fd..2b06e702 100644 +--- a/xmvn-mojo/src/main/java/org/fedoraproject/xmvn/mojo/JavadocMojo.java ++++ b/xmvn-mojo/src/main/java/org/fedoraproject/xmvn/mojo/JavadocMojo.java +@@ -45,6 +45,8 @@ import org.apache.maven.project.DependencyResolutionRequest; + import org.apache.maven.project.DependencyResolutionResult; + import org.apache.maven.project.MavenProject; + import org.apache.maven.project.ProjectDependenciesResolver; ++import org.apache.maven.toolchain.Toolchain; ++import org.apache.maven.toolchain.ToolchainManager; + import org.codehaus.plexus.logging.Logger; + import org.codehaus.plexus.util.StringUtils; + import org.eclipse.aether.util.filter.AndDependencyFilter; +@@ -69,6 +71,9 @@ public class JavadocMojo + @Component + private Configurator confugurator; + ++ @Component ++ private ToolchainManager toolchainManager; ++ + @Parameter( defaultValue = "${session}", readonly = true ) + private MavenSession session; + +@@ -161,8 +166,18 @@ public class JavadocMojo + public void execute() + throws MojoExecutionException, MojoFailureException + { ++ String javadocTool = null; ++ Toolchain tc = toolchainManager.getToolchainFromBuildContext( "jdk", session ); ++ if ( tc != null ) ++ { ++ javadocTool = tc.findTool( "javadoc" ); ++ } + Path javadocExecutable; +- if ( System.getenv().containsKey( "JAVA_HOME" ) ) ++ if ( javadocTool != null && !javadocTool.isEmpty() ) ++ { ++ javadocExecutable = Paths.get( javadocTool ); ++ } ++ else if ( System.getenv().containsKey( "JAVA_HOME" ) ) + { + javadocExecutable = Paths.get( System.getenv( "JAVA_HOME" ) ) // + .resolve( "bin" ) // +-- +2.36.0 + diff --git a/0002-Allow-removing-plugins-during-model-validation.patch b/0002-Allow-removing-plugins-during-model-validation.patch deleted file mode 100644 index 29d4cb6..0000000 --- a/0002-Allow-removing-plugins-during-model-validation.patch +++ /dev/null @@ -1,500 +0,0 @@ -From e29ca4ddf36c1c9d7ebae6fb39a3ab57abaac864 Mon Sep 17 00:00:00 2001 -From: Mikolaj Izdebski -Date: Sat, 29 Jun 2019 11:43:26 +0200 -Subject: [PATCH 2/7] Allow removing plugins during model validation - ---- - xmvn-api/pom.xml | 6 ++-- - xmvn-api/src/main/mdo/config.mdo | 9 ++++++ - .../connector/aether/XMvnModelValidator.java | 25 ++++++++++++++--- - .../connector/aether/ModelValidatorTest.java | 28 +++++++++++++++++++ - .../xmvn/deployer/BasicDeployerTest.java | 2 +- - .../xmvn-install/src/test/resources/alias.xml | 2 +- - .../src/test/resources/compat.xml | 2 +- - .../src/test/resources/metadata-uuid.xml | 2 +- - .../src/test/resources/namespace-dep.xml | 2 +- - .../src/test/resources/namespace.xml | 2 +- - .../src/test/resources/no-aid-dep.xml | 2 +- - .../src/test/resources/no-aid-excl.xml | 2 +- - .../src/test/resources/no-aid.xml | 2 +- - .../src/test/resources/no-file.xml | 2 +- - .../src/test/resources/no-gid-dep.xml | 2 +- - .../src/test/resources/no-gid-excl.xml | 2 +- - .../src/test/resources/no-gid.xml | 2 +- - .../src/test/resources/no-version-dep.xml | 2 +- - .../src/test/resources/no-version.xml | 2 +- - .../src/test/resources/nonexistent-file.xml | 2 +- - .../src/test/resources/nonreadable-file.xml | 2 +- - .../src/test/resources/nonregular-file.xml | 2 +- - .../src/test/resources/ns-bar.xml | 2 +- - .../src/test/resources/ns-foo.xml | 2 +- - .../src/test/resources/resolved-version.xml | 2 +- - .../src/test/resources/skipped.xml | 2 +- - .../src/test/resources/test-pkg-main.xml | 2 +- - .../src/test/resources/test-pkg-resolved.xml | 2 +- - .../src/test/resources/test-pkg-sub.xml | 2 +- - .../src/test/resources/test-pkg.xml | 2 +- - .../xmvn-install/src/test/resources/uuid.xml | 2 +- - .../xmvn-install/src/test/resources/valid.xml | 2 +- - 32 files changed, 89 insertions(+), 35 deletions(-) - -diff --git a/xmvn-api/pom.xml b/xmvn-api/pom.xml -index 348100d5..85d1be6a 100644 ---- a/xmvn-api/pom.xml -+++ b/xmvn-api/pom.xml -@@ -37,7 +37,7 @@ - org.codehaus.modello - modello-maven-plugin - -- 3.0.0 -+ 3.2.0 - true - false - -@@ -87,12 +87,12 @@ - metadata - - -- ${project.build.directory}/generated-site/resources/xsd/config-3.0.0.xsd -+ ${project.build.directory}/generated-site/resources/xsd/config-3.2.0.xsd - xsd - config - - -- ${project.build.directory}/generated-site/resources/xsd/metadata-3.0.0.xsd -+ ${project.build.directory}/generated-site/resources/xsd/metadata-3.2.0.xsd - xsd - metadata - -diff --git a/xmvn-api/src/main/mdo/config.mdo b/xmvn-api/src/main/mdo/config.mdo -index 199ad649..74d82c0e 100644 ---- a/xmvn-api/src/main/mdo/config.mdo -+++ b/xmvn-api/src/main/mdo/config.mdo -@@ -49,6 +49,15 @@ - Whether compilation and execution of unit and integration tests should be skipped. - Boolean - -+ -+ skippedPlugins -+ 3.2.0+ -+ List of plugins which will not be executed during build. -+ -+ Artifact -+ * -+ -+ - - - -diff --git a/xmvn-connector-aether/src/main/java/org/fedoraproject/xmvn/connector/aether/XMvnModelValidator.java b/xmvn-connector-aether/src/main/java/org/fedoraproject/xmvn/connector/aether/XMvnModelValidator.java -index 90908df2..79ceecaf 100644 ---- a/xmvn-connector-aether/src/main/java/org/fedoraproject/xmvn/connector/aether/XMvnModelValidator.java -+++ b/xmvn-connector-aether/src/main/java/org/fedoraproject/xmvn/connector/aether/XMvnModelValidator.java -@@ -34,7 +34,6 @@ import org.codehaus.plexus.logging.Logger; - import org.codehaus.plexus.util.StringUtils; - - import org.fedoraproject.xmvn.artifact.Artifact; --import org.fedoraproject.xmvn.config.BuildSettings; - import org.fedoraproject.xmvn.config.Configurator; - - /** -@@ -61,14 +60,13 @@ public class XMvnModelValidator - - void customizeModel( Model model ) - { -- BuildSettings settings = configurator.getConfiguration().getBuildSettings(); - Build build = model.getBuild() != null ? model.getBuild() : new Build(); - List dependencies = model.getDependencies(); - List extensions = build.getExtensions(); - List plugins = build.getPlugins(); - -- if ( settings.isSkipTests() ) -- dependencies.removeIf( d -> StringUtils.equals( d.getScope(), "test" ) ); -+ dependencies.removeIf( this::isSkippedDependency ); -+ plugins.removeIf( this::isSkippedPlugin ); - - dependencies.forEach( d -> d.setVersion( replaceVersion( d.getGroupId(), d.getArtifactId(), - d.getVersion() ) ) ); -@@ -76,6 +74,25 @@ public class XMvnModelValidator - plugins.forEach( p -> p.setVersion( replaceVersion( p.getGroupId(), p.getArtifactId(), p.getVersion() ) ) ); - } - -+ private boolean matches( String field, String pattern ) -+ { -+ return StringUtils.isEmpty( pattern ) || StringUtils.equals( field, pattern ); -+ } -+ -+ private boolean isSkippedDependency( Dependency d ) -+ { -+ return matches( d.getScope(), "test" ) && configurator.getConfiguration().getBuildSettings().isSkipTests(); -+ } -+ -+ private boolean isSkippedPlugin( Plugin p ) -+ { -+ return configurator.getConfiguration().getBuildSettings().getSkippedPlugins().stream() // -+ .anyMatch( sp -> matches( p.getGroupId(), sp.getGroupId() ) -+ && matches( p.getArtifactId(), sp.getArtifactId() ) -+ && StringUtils.isEmpty( sp.getExtension() ) && StringUtils.isEmpty( sp.getClassifier() ) -+ && matches( p.getVersion(), sp.getVersion() ) ); -+ } -+ - private String replaceVersion( String groupId, String artifactId, String version ) - { - String id = groupId + ":" + artifactId; -diff --git a/xmvn-connector-aether/src/test/java/org/fedoraproject/xmvn/connector/aether/ModelValidatorTest.java b/xmvn-connector-aether/src/test/java/org/fedoraproject/xmvn/connector/aether/ModelValidatorTest.java -index ccc789f7..f1b299ac 100644 ---- a/xmvn-connector-aether/src/test/java/org/fedoraproject/xmvn/connector/aether/ModelValidatorTest.java -+++ b/xmvn-connector-aether/src/test/java/org/fedoraproject/xmvn/connector/aether/ModelValidatorTest.java -@@ -40,6 +40,7 @@ import org.junit.Before; - import org.junit.Test; - import org.junit.runner.RunWith; - -+import org.fedoraproject.xmvn.config.Artifact; - import org.fedoraproject.xmvn.config.Configurator; - - /** -@@ -216,4 +217,31 @@ public class ModelValidatorTest - - assertEquals( 0, dl.size() ); - } -+ -+ @Test -+ public void testSkippedPlugins() -+ throws Exception -+ { -+ Artifact sp1 = new Artifact(); -+ sp1.setArtifactId( "maven-compiler-plugin" ); -+ configurator.getConfiguration().getBuildSettings().getSkippedPlugins().add( sp1 ); -+ Artifact sp2 = new Artifact(); -+ sp2.setGroupId( "org.apache.maven.plugins" ); -+ sp2.setVersion( "starter edition" ); -+ configurator.getConfiguration().getBuildSettings().getSkippedPlugins().add( sp2 ); -+ -+ EasyMock.expect( build.getExtensions() ).andReturn( new ArrayList<>() ).atLeastOnce(); -+ EasyMock.expect( build.getPlugins() ).andReturn( pl ).atLeastOnce(); -+ EasyMock.expect( model.getBuild() ).andReturn( build ).atLeastOnce(); -+ EasyMock.expect( model.getDependencies() ).andReturn( new ArrayList<>() ).atLeastOnce(); -+ EasyMock.replay( build, model ); -+ -+ ( (XMvnModelValidator) validator ).customizeModel( model ); -+ EasyMock.verify( model ); -+ -+ assertEquals( 1, pl.size() ); -+ Plugin plugin = pl.iterator().next(); -+ assertEquals( "foobar", plugin.getGroupId() ); -+ assertEquals( "bar", plugin.getArtifactId() ); -+ } - } -diff --git a/xmvn-core/src/test/java/org/fedoraproject/xmvn/deployer/BasicDeployerTest.java b/xmvn-core/src/test/java/org/fedoraproject/xmvn/deployer/BasicDeployerTest.java -index dfb6c171..92c79c98 100644 ---- a/xmvn-core/src/test/java/org/fedoraproject/xmvn/deployer/BasicDeployerTest.java -+++ b/xmvn-core/src/test/java/org/fedoraproject/xmvn/deployer/BasicDeployerTest.java -@@ -74,7 +74,7 @@ public class BasicDeployerTest - deployer.deploy( req2 ); - - XmlAssert.assertThat( "\n" + // -- "\n" + // -+ "\n" + // - " \n" + // - " \n" + // - " g\n" + // -diff --git a/xmvn-tools/xmvn-install/src/test/resources/alias.xml b/xmvn-tools/xmvn-install/src/test/resources/alias.xml -index a86d73e9..9f957f02 100644 ---- a/xmvn-tools/xmvn-install/src/test/resources/alias.xml -+++ b/xmvn-tools/xmvn-install/src/test/resources/alias.xml -@@ -1,5 +1,5 @@ - -- -+ - - - com.example -diff --git a/xmvn-tools/xmvn-install/src/test/resources/compat.xml b/xmvn-tools/xmvn-install/src/test/resources/compat.xml -index 428177cb..4bbe8a4c 100644 ---- a/xmvn-tools/xmvn-install/src/test/resources/compat.xml -+++ b/xmvn-tools/xmvn-install/src/test/resources/compat.xml -@@ -1,5 +1,5 @@ - -- -+ - - - com.example -diff --git a/xmvn-tools/xmvn-install/src/test/resources/metadata-uuid.xml b/xmvn-tools/xmvn-install/src/test/resources/metadata-uuid.xml -index 8f0898c6..8e9c3532 100644 ---- a/xmvn-tools/xmvn-install/src/test/resources/metadata-uuid.xml -+++ b/xmvn-tools/xmvn-install/src/test/resources/metadata-uuid.xml -@@ -1,5 +1,5 @@ - -- -+ - test-uuid - - -diff --git a/xmvn-tools/xmvn-install/src/test/resources/namespace-dep.xml b/xmvn-tools/xmvn-install/src/test/resources/namespace-dep.xml -index 59e6767b..61ec57d7 100644 ---- a/xmvn-tools/xmvn-install/src/test/resources/namespace-dep.xml -+++ b/xmvn-tools/xmvn-install/src/test/resources/namespace-dep.xml -@@ -1,5 +1,5 @@ - -- -+ - - - com.example -diff --git a/xmvn-tools/xmvn-install/src/test/resources/namespace.xml b/xmvn-tools/xmvn-install/src/test/resources/namespace.xml -index d4a62f68..2c74347f 100644 ---- a/xmvn-tools/xmvn-install/src/test/resources/namespace.xml -+++ b/xmvn-tools/xmvn-install/src/test/resources/namespace.xml -@@ -1,5 +1,5 @@ - -- -+ - - - com.example -diff --git a/xmvn-tools/xmvn-install/src/test/resources/no-aid-dep.xml b/xmvn-tools/xmvn-install/src/test/resources/no-aid-dep.xml -index 44ec6a89..0bee4351 100644 ---- a/xmvn-tools/xmvn-install/src/test/resources/no-aid-dep.xml -+++ b/xmvn-tools/xmvn-install/src/test/resources/no-aid-dep.xml -@@ -1,5 +1,5 @@ - -- -+ - - - com.example -diff --git a/xmvn-tools/xmvn-install/src/test/resources/no-aid-excl.xml b/xmvn-tools/xmvn-install/src/test/resources/no-aid-excl.xml -index 9aec70fb..c3c3d6e4 100644 ---- a/xmvn-tools/xmvn-install/src/test/resources/no-aid-excl.xml -+++ b/xmvn-tools/xmvn-install/src/test/resources/no-aid-excl.xml -@@ -1,5 +1,5 @@ - -- -+ - - - com.example -diff --git a/xmvn-tools/xmvn-install/src/test/resources/no-aid.xml b/xmvn-tools/xmvn-install/src/test/resources/no-aid.xml -index 9dd5b97f..df9f2f61 100644 ---- a/xmvn-tools/xmvn-install/src/test/resources/no-aid.xml -+++ b/xmvn-tools/xmvn-install/src/test/resources/no-aid.xml -@@ -1,5 +1,5 @@ - -- -+ - - - com.example -diff --git a/xmvn-tools/xmvn-install/src/test/resources/no-file.xml b/xmvn-tools/xmvn-install/src/test/resources/no-file.xml -index a77dd6cc..e6915005 100644 ---- a/xmvn-tools/xmvn-install/src/test/resources/no-file.xml -+++ b/xmvn-tools/xmvn-install/src/test/resources/no-file.xml -@@ -1,5 +1,5 @@ - -- -+ - - - com.example -diff --git a/xmvn-tools/xmvn-install/src/test/resources/no-gid-dep.xml b/xmvn-tools/xmvn-install/src/test/resources/no-gid-dep.xml -index 53b829ad..cb9a8859 100644 ---- a/xmvn-tools/xmvn-install/src/test/resources/no-gid-dep.xml -+++ b/xmvn-tools/xmvn-install/src/test/resources/no-gid-dep.xml -@@ -1,5 +1,5 @@ - -- -+ - - - com.example -diff --git a/xmvn-tools/xmvn-install/src/test/resources/no-gid-excl.xml b/xmvn-tools/xmvn-install/src/test/resources/no-gid-excl.xml -index c8e3e6c8..22961523 100644 ---- a/xmvn-tools/xmvn-install/src/test/resources/no-gid-excl.xml -+++ b/xmvn-tools/xmvn-install/src/test/resources/no-gid-excl.xml -@@ -1,5 +1,5 @@ - -- -+ - - - com.example -diff --git a/xmvn-tools/xmvn-install/src/test/resources/no-gid.xml b/xmvn-tools/xmvn-install/src/test/resources/no-gid.xml -index ba36e50e..4a53cd70 100644 ---- a/xmvn-tools/xmvn-install/src/test/resources/no-gid.xml -+++ b/xmvn-tools/xmvn-install/src/test/resources/no-gid.xml -@@ -1,5 +1,5 @@ - -- -+ - - - com.example -diff --git a/xmvn-tools/xmvn-install/src/test/resources/no-version-dep.xml b/xmvn-tools/xmvn-install/src/test/resources/no-version-dep.xml -index 49fe2922..9dc686c1 100644 ---- a/xmvn-tools/xmvn-install/src/test/resources/no-version-dep.xml -+++ b/xmvn-tools/xmvn-install/src/test/resources/no-version-dep.xml -@@ -1,5 +1,5 @@ - -- -+ - - - com.example -diff --git a/xmvn-tools/xmvn-install/src/test/resources/no-version.xml b/xmvn-tools/xmvn-install/src/test/resources/no-version.xml -index 2a8322ab..73db2c58 100644 ---- a/xmvn-tools/xmvn-install/src/test/resources/no-version.xml -+++ b/xmvn-tools/xmvn-install/src/test/resources/no-version.xml -@@ -1,5 +1,5 @@ - -- -+ - - - com.example -diff --git a/xmvn-tools/xmvn-install/src/test/resources/nonexistent-file.xml b/xmvn-tools/xmvn-install/src/test/resources/nonexistent-file.xml -index 400bf234..0ea8c3fa 100644 ---- a/xmvn-tools/xmvn-install/src/test/resources/nonexistent-file.xml -+++ b/xmvn-tools/xmvn-install/src/test/resources/nonexistent-file.xml -@@ -1,5 +1,5 @@ - -- -+ - - - com.example -diff --git a/xmvn-tools/xmvn-install/src/test/resources/nonreadable-file.xml b/xmvn-tools/xmvn-install/src/test/resources/nonreadable-file.xml -index cff22643..f40da52d 100644 ---- a/xmvn-tools/xmvn-install/src/test/resources/nonreadable-file.xml -+++ b/xmvn-tools/xmvn-install/src/test/resources/nonreadable-file.xml -@@ -1,5 +1,5 @@ - -- -+ - - - com.example -diff --git a/xmvn-tools/xmvn-install/src/test/resources/nonregular-file.xml b/xmvn-tools/xmvn-install/src/test/resources/nonregular-file.xml -index 76c34bc9..e440b059 100644 ---- a/xmvn-tools/xmvn-install/src/test/resources/nonregular-file.xml -+++ b/xmvn-tools/xmvn-install/src/test/resources/nonregular-file.xml -@@ -1,5 +1,5 @@ - -- -+ - - - com.example -diff --git a/xmvn-tools/xmvn-install/src/test/resources/ns-bar.xml b/xmvn-tools/xmvn-install/src/test/resources/ns-bar.xml -index 833e44f5..5bfedd69 100644 ---- a/xmvn-tools/xmvn-install/src/test/resources/ns-bar.xml -+++ b/xmvn-tools/xmvn-install/src/test/resources/ns-bar.xml -@@ -1,5 +1,5 @@ - -- -+ - 1e5b4990-c4e3-42b4-9145-5b7783ab91a2 - - -diff --git a/xmvn-tools/xmvn-install/src/test/resources/ns-foo.xml b/xmvn-tools/xmvn-install/src/test/resources/ns-foo.xml -index 71e4b168..f97fbdf8 100644 ---- a/xmvn-tools/xmvn-install/src/test/resources/ns-foo.xml -+++ b/xmvn-tools/xmvn-install/src/test/resources/ns-foo.xml -@@ -1,5 +1,5 @@ - -- -+ - 1e5b4990-c4e3-42b4-9145-5b7783ab91a2 - - -diff --git a/xmvn-tools/xmvn-install/src/test/resources/resolved-version.xml b/xmvn-tools/xmvn-install/src/test/resources/resolved-version.xml -index 9279d896..2b824426 100644 ---- a/xmvn-tools/xmvn-install/src/test/resources/resolved-version.xml -+++ b/xmvn-tools/xmvn-install/src/test/resources/resolved-version.xml -@@ -1,5 +1,5 @@ - -- -+ - - - com.example -diff --git a/xmvn-tools/xmvn-install/src/test/resources/skipped.xml b/xmvn-tools/xmvn-install/src/test/resources/skipped.xml -index b08836a1..c4a42c05 100644 ---- a/xmvn-tools/xmvn-install/src/test/resources/skipped.xml -+++ b/xmvn-tools/xmvn-install/src/test/resources/skipped.xml -@@ -1,5 +1,5 @@ - -- -+ - - - com.example -diff --git a/xmvn-tools/xmvn-install/src/test/resources/test-pkg-main.xml b/xmvn-tools/xmvn-install/src/test/resources/test-pkg-main.xml -index 0bd964fc..fc38c9ac 100644 ---- a/xmvn-tools/xmvn-install/src/test/resources/test-pkg-main.xml -+++ b/xmvn-tools/xmvn-install/src/test/resources/test-pkg-main.xml -@@ -1,5 +1,5 @@ - -- -+ - 1e5b4990-c4e3-42b4-9145-5b7783ab91a2 - - -diff --git a/xmvn-tools/xmvn-install/src/test/resources/test-pkg-resolved.xml b/xmvn-tools/xmvn-install/src/test/resources/test-pkg-resolved.xml -index 9d3bbb67..55270861 100644 ---- a/xmvn-tools/xmvn-install/src/test/resources/test-pkg-resolved.xml -+++ b/xmvn-tools/xmvn-install/src/test/resources/test-pkg-resolved.xml -@@ -1,5 +1,5 @@ - -- -+ - 1e5b4990-c4e3-42b4-9145-5b7783ab91a2 - - -diff --git a/xmvn-tools/xmvn-install/src/test/resources/test-pkg-sub.xml b/xmvn-tools/xmvn-install/src/test/resources/test-pkg-sub.xml -index 068f17f6..f6da1e41 100644 ---- a/xmvn-tools/xmvn-install/src/test/resources/test-pkg-sub.xml -+++ b/xmvn-tools/xmvn-install/src/test/resources/test-pkg-sub.xml -@@ -1,5 +1,5 @@ - -- -+ - 1e5b4990-c4e3-42b4-9145-5b7783ab91a2 - - -diff --git a/xmvn-tools/xmvn-install/src/test/resources/test-pkg.xml b/xmvn-tools/xmvn-install/src/test/resources/test-pkg.xml -index 8b0d6223..4345c778 100644 ---- a/xmvn-tools/xmvn-install/src/test/resources/test-pkg.xml -+++ b/xmvn-tools/xmvn-install/src/test/resources/test-pkg.xml -@@ -1,5 +1,5 @@ - -- -+ - 1e5b4990-c4e3-42b4-9145-5b7783ab91a2 - - -diff --git a/xmvn-tools/xmvn-install/src/test/resources/uuid.xml b/xmvn-tools/xmvn-install/src/test/resources/uuid.xml -index b57b9584..005b8f5c 100644 ---- a/xmvn-tools/xmvn-install/src/test/resources/uuid.xml -+++ b/xmvn-tools/xmvn-install/src/test/resources/uuid.xml -@@ -1,5 +1,5 @@ - -- -+ - - - com.example -diff --git a/xmvn-tools/xmvn-install/src/test/resources/valid.xml b/xmvn-tools/xmvn-install/src/test/resources/valid.xml -index f2fa0c24..5ed82dfe 100644 ---- a/xmvn-tools/xmvn-install/src/test/resources/valid.xml -+++ b/xmvn-tools/xmvn-install/src/test/resources/valid.xml -@@ -1,5 +1,5 @@ - -- -+ - - - com.example --- -2.36.0 - diff --git a/0002-Revert-Update-compiler-source-target-to-JDK-11.patch b/0002-Revert-Update-compiler-source-target-to-JDK-11.patch new file mode 100644 index 0000000..e3e024a --- /dev/null +++ b/0002-Revert-Update-compiler-source-target-to-JDK-11.patch @@ -0,0 +1,370 @@ +From cd83d67f9138ef1cada913b539c0eb90c35de585 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Fridrich=20=C5=A0trba?= +Date: Sat, 7 May 2022 09:01:27 +0200 +Subject: [PATCH 2/4] Revert "Update compiler source/target to JDK 11" + +This reverts commit 5ac46f5864c5a7c7d16c51405aa572b6dc5bd6f5. +--- + xmvn-api/.classpath | 2 +- + xmvn-api/.settings/org.eclipse.jdt.core.prefs | 8 ++++---- + xmvn-connector/.classpath | 2 +- + xmvn-connector/.settings/org.eclipse.jdt.core.prefs | 8 ++++---- + xmvn-core/.classpath | 2 +- + xmvn-core/.settings/org.eclipse.jdt.core.prefs | 8 ++++---- + xmvn-it/.classpath | 2 +- + xmvn-it/.settings/org.eclipse.jdt.core.prefs | 8 ++++---- + xmvn-it/src/test/resources/testJavadocJPMS/pom.xml | 3 ++- + xmvn-mojo/.classpath | 2 +- + xmvn-mojo/.settings/org.eclipse.jdt.core.prefs | 8 ++++---- + xmvn-parent/pom.xml | 3 ++- + xmvn-tools/xmvn-install/.classpath | 2 +- + .../xmvn-install/.settings/org.eclipse.jdt.core.prefs | 8 ++++---- + xmvn-tools/xmvn-resolve/.classpath | 2 +- + .../xmvn-resolve/.settings/org.eclipse.jdt.core.prefs | 8 ++++---- + xmvn-tools/xmvn-subst/.classpath | 2 +- + .../xmvn-subst/.settings/org.eclipse.jdt.core.prefs | 8 ++++---- + 18 files changed, 44 insertions(+), 42 deletions(-) + +diff --git a/xmvn-api/.classpath b/xmvn-api/.classpath +index 6c61e620..12aa8aee 100644 +--- a/xmvn-api/.classpath ++++ b/xmvn-api/.classpath +@@ -13,7 +13,7 @@ + + + +- ++ + + + +diff --git a/xmvn-api/.settings/org.eclipse.jdt.core.prefs b/xmvn-api/.settings/org.eclipse.jdt.core.prefs +index 2d67d3f3..2f39a66b 100644 +--- a/xmvn-api/.settings/org.eclipse.jdt.core.prefs ++++ b/xmvn-api/.settings/org.eclipse.jdt.core.prefs +@@ -8,8 +8,8 @@ org.eclipse.jdt.core.compiler.annotation.nonnullbydefault.secondary= + org.eclipse.jdt.core.compiler.annotation.nullable=org.eclipse.jdt.annotation.Nullable + org.eclipse.jdt.core.compiler.annotation.nullable.secondary= + org.eclipse.jdt.core.compiler.annotation.nullanalysis=disabled +-org.eclipse.jdt.core.compiler.codegen.targetPlatform=11 +-org.eclipse.jdt.core.compiler.compliance=11 ++org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 ++org.eclipse.jdt.core.compiler.compliance=1.8 + org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=warning + org.eclipse.jdt.core.compiler.problem.autoboxing=ignore + org.eclipse.jdt.core.compiler.problem.comparingIdentical=warning +@@ -97,8 +97,8 @@ org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=warning + org.eclipse.jdt.core.compiler.problem.unusedTypeParameter=warning + org.eclipse.jdt.core.compiler.problem.unusedWarningToken=warning + org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning +-org.eclipse.jdt.core.compiler.release=enabled +-org.eclipse.jdt.core.compiler.source=11 ++org.eclipse.jdt.core.compiler.release=disabled ++org.eclipse.jdt.core.compiler.source=1.8 + org.eclipse.jdt.core.formatter.align_assignment_statements_on_columns=false + org.eclipse.jdt.core.formatter.align_fields_grouping_blank_lines=2147483647 + org.eclipse.jdt.core.formatter.align_type_members_on_columns=false +diff --git a/xmvn-connector/.classpath b/xmvn-connector/.classpath +index 97c81cef..4f8e155a 100644 +--- a/xmvn-connector/.classpath ++++ b/xmvn-connector/.classpath +@@ -13,7 +13,7 @@ + + + +- ++ + + + +diff --git a/xmvn-connector/.settings/org.eclipse.jdt.core.prefs b/xmvn-connector/.settings/org.eclipse.jdt.core.prefs +index 2d67d3f3..2f39a66b 100644 +--- a/xmvn-connector/.settings/org.eclipse.jdt.core.prefs ++++ b/xmvn-connector/.settings/org.eclipse.jdt.core.prefs +@@ -8,8 +8,8 @@ org.eclipse.jdt.core.compiler.annotation.nonnullbydefault.secondary= + org.eclipse.jdt.core.compiler.annotation.nullable=org.eclipse.jdt.annotation.Nullable + org.eclipse.jdt.core.compiler.annotation.nullable.secondary= + org.eclipse.jdt.core.compiler.annotation.nullanalysis=disabled +-org.eclipse.jdt.core.compiler.codegen.targetPlatform=11 +-org.eclipse.jdt.core.compiler.compliance=11 ++org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 ++org.eclipse.jdt.core.compiler.compliance=1.8 + org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=warning + org.eclipse.jdt.core.compiler.problem.autoboxing=ignore + org.eclipse.jdt.core.compiler.problem.comparingIdentical=warning +@@ -97,8 +97,8 @@ org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=warning + org.eclipse.jdt.core.compiler.problem.unusedTypeParameter=warning + org.eclipse.jdt.core.compiler.problem.unusedWarningToken=warning + org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning +-org.eclipse.jdt.core.compiler.release=enabled +-org.eclipse.jdt.core.compiler.source=11 ++org.eclipse.jdt.core.compiler.release=disabled ++org.eclipse.jdt.core.compiler.source=1.8 + org.eclipse.jdt.core.formatter.align_assignment_statements_on_columns=false + org.eclipse.jdt.core.formatter.align_fields_grouping_blank_lines=2147483647 + org.eclipse.jdt.core.formatter.align_type_members_on_columns=false +diff --git a/xmvn-core/.classpath b/xmvn-core/.classpath +index 0fb79cfe..002ad570 100644 +--- a/xmvn-core/.classpath ++++ b/xmvn-core/.classpath +@@ -24,7 +24,7 @@ + + + +- ++ + + + +diff --git a/xmvn-core/.settings/org.eclipse.jdt.core.prefs b/xmvn-core/.settings/org.eclipse.jdt.core.prefs +index 2d67d3f3..2f39a66b 100644 +--- a/xmvn-core/.settings/org.eclipse.jdt.core.prefs ++++ b/xmvn-core/.settings/org.eclipse.jdt.core.prefs +@@ -8,8 +8,8 @@ org.eclipse.jdt.core.compiler.annotation.nonnullbydefault.secondary= + org.eclipse.jdt.core.compiler.annotation.nullable=org.eclipse.jdt.annotation.Nullable + org.eclipse.jdt.core.compiler.annotation.nullable.secondary= + org.eclipse.jdt.core.compiler.annotation.nullanalysis=disabled +-org.eclipse.jdt.core.compiler.codegen.targetPlatform=11 +-org.eclipse.jdt.core.compiler.compliance=11 ++org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 ++org.eclipse.jdt.core.compiler.compliance=1.8 + org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=warning + org.eclipse.jdt.core.compiler.problem.autoboxing=ignore + org.eclipse.jdt.core.compiler.problem.comparingIdentical=warning +@@ -97,8 +97,8 @@ org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=warning + org.eclipse.jdt.core.compiler.problem.unusedTypeParameter=warning + org.eclipse.jdt.core.compiler.problem.unusedWarningToken=warning + org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning +-org.eclipse.jdt.core.compiler.release=enabled +-org.eclipse.jdt.core.compiler.source=11 ++org.eclipse.jdt.core.compiler.release=disabled ++org.eclipse.jdt.core.compiler.source=1.8 + org.eclipse.jdt.core.formatter.align_assignment_statements_on_columns=false + org.eclipse.jdt.core.formatter.align_fields_grouping_blank_lines=2147483647 + org.eclipse.jdt.core.formatter.align_type_members_on_columns=false +diff --git a/xmvn-it/.classpath b/xmvn-it/.classpath +index 2fcc9100..8131be0e 100644 +--- a/xmvn-it/.classpath ++++ b/xmvn-it/.classpath +@@ -19,7 +19,7 @@ + + + +- ++ + + + +diff --git a/xmvn-it/.settings/org.eclipse.jdt.core.prefs b/xmvn-it/.settings/org.eclipse.jdt.core.prefs +index 2d67d3f3..2f39a66b 100644 +--- a/xmvn-it/.settings/org.eclipse.jdt.core.prefs ++++ b/xmvn-it/.settings/org.eclipse.jdt.core.prefs +@@ -8,8 +8,8 @@ org.eclipse.jdt.core.compiler.annotation.nonnullbydefault.secondary= + org.eclipse.jdt.core.compiler.annotation.nullable=org.eclipse.jdt.annotation.Nullable + org.eclipse.jdt.core.compiler.annotation.nullable.secondary= + org.eclipse.jdt.core.compiler.annotation.nullanalysis=disabled +-org.eclipse.jdt.core.compiler.codegen.targetPlatform=11 +-org.eclipse.jdt.core.compiler.compliance=11 ++org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 ++org.eclipse.jdt.core.compiler.compliance=1.8 + org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=warning + org.eclipse.jdt.core.compiler.problem.autoboxing=ignore + org.eclipse.jdt.core.compiler.problem.comparingIdentical=warning +@@ -97,8 +97,8 @@ org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=warning + org.eclipse.jdt.core.compiler.problem.unusedTypeParameter=warning + org.eclipse.jdt.core.compiler.problem.unusedWarningToken=warning + org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning +-org.eclipse.jdt.core.compiler.release=enabled +-org.eclipse.jdt.core.compiler.source=11 ++org.eclipse.jdt.core.compiler.release=disabled ++org.eclipse.jdt.core.compiler.source=1.8 + org.eclipse.jdt.core.formatter.align_assignment_statements_on_columns=false + org.eclipse.jdt.core.formatter.align_fields_grouping_blank_lines=2147483647 + org.eclipse.jdt.core.formatter.align_type_members_on_columns=false +diff --git a/xmvn-it/src/test/resources/testJavadocJPMS/pom.xml b/xmvn-it/src/test/resources/testJavadocJPMS/pom.xml +index 6bb860ef..46926484 100644 +--- a/xmvn-it/src/test/resources/testJavadocJPMS/pom.xml ++++ b/xmvn-it/src/test/resources/testJavadocJPMS/pom.xml +@@ -16,7 +16,8 @@ + maven-compiler-plugin + 3.8.1 + +- 11 ++ 1.8 ++ 1.8 + + + +diff --git a/xmvn-mojo/.classpath b/xmvn-mojo/.classpath +index 4d004b9e..1a0c5608 100644 +--- a/xmvn-mojo/.classpath ++++ b/xmvn-mojo/.classpath +@@ -18,7 +18,7 @@ + + + +- ++ + + + +diff --git a/xmvn-mojo/.settings/org.eclipse.jdt.core.prefs b/xmvn-mojo/.settings/org.eclipse.jdt.core.prefs +index 2d67d3f3..2f39a66b 100644 +--- a/xmvn-mojo/.settings/org.eclipse.jdt.core.prefs ++++ b/xmvn-mojo/.settings/org.eclipse.jdt.core.prefs +@@ -8,8 +8,8 @@ org.eclipse.jdt.core.compiler.annotation.nonnullbydefault.secondary= + org.eclipse.jdt.core.compiler.annotation.nullable=org.eclipse.jdt.annotation.Nullable + org.eclipse.jdt.core.compiler.annotation.nullable.secondary= + org.eclipse.jdt.core.compiler.annotation.nullanalysis=disabled +-org.eclipse.jdt.core.compiler.codegen.targetPlatform=11 +-org.eclipse.jdt.core.compiler.compliance=11 ++org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 ++org.eclipse.jdt.core.compiler.compliance=1.8 + org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=warning + org.eclipse.jdt.core.compiler.problem.autoboxing=ignore + org.eclipse.jdt.core.compiler.problem.comparingIdentical=warning +@@ -97,8 +97,8 @@ org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=warning + org.eclipse.jdt.core.compiler.problem.unusedTypeParameter=warning + org.eclipse.jdt.core.compiler.problem.unusedWarningToken=warning + org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning +-org.eclipse.jdt.core.compiler.release=enabled +-org.eclipse.jdt.core.compiler.source=11 ++org.eclipse.jdt.core.compiler.release=disabled ++org.eclipse.jdt.core.compiler.source=1.8 + org.eclipse.jdt.core.formatter.align_assignment_statements_on_columns=false + org.eclipse.jdt.core.formatter.align_fields_grouping_blank_lines=2147483647 + org.eclipse.jdt.core.formatter.align_type_members_on_columns=false +diff --git a/xmvn-parent/pom.xml b/xmvn-parent/pom.xml +index fd5289c3..383f320c 100644 +--- a/xmvn-parent/pom.xml ++++ b/xmvn-parent/pom.xml +@@ -298,7 +298,8 @@ + maven-compiler-plugin + ${compilerPluginVersion} + +- 11 ++ 1.8 ++ 1.8 + + + +diff --git a/xmvn-tools/xmvn-install/.classpath b/xmvn-tools/xmvn-install/.classpath +index 0fb79cfe..002ad570 100644 +--- a/xmvn-tools/xmvn-install/.classpath ++++ b/xmvn-tools/xmvn-install/.classpath +@@ -24,7 +24,7 @@ + + + +- ++ + + + +diff --git a/xmvn-tools/xmvn-install/.settings/org.eclipse.jdt.core.prefs b/xmvn-tools/xmvn-install/.settings/org.eclipse.jdt.core.prefs +index 2d67d3f3..2f39a66b 100644 +--- a/xmvn-tools/xmvn-install/.settings/org.eclipse.jdt.core.prefs ++++ b/xmvn-tools/xmvn-install/.settings/org.eclipse.jdt.core.prefs +@@ -8,8 +8,8 @@ org.eclipse.jdt.core.compiler.annotation.nonnullbydefault.secondary= + org.eclipse.jdt.core.compiler.annotation.nullable=org.eclipse.jdt.annotation.Nullable + org.eclipse.jdt.core.compiler.annotation.nullable.secondary= + org.eclipse.jdt.core.compiler.annotation.nullanalysis=disabled +-org.eclipse.jdt.core.compiler.codegen.targetPlatform=11 +-org.eclipse.jdt.core.compiler.compliance=11 ++org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 ++org.eclipse.jdt.core.compiler.compliance=1.8 + org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=warning + org.eclipse.jdt.core.compiler.problem.autoboxing=ignore + org.eclipse.jdt.core.compiler.problem.comparingIdentical=warning +@@ -97,8 +97,8 @@ org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=warning + org.eclipse.jdt.core.compiler.problem.unusedTypeParameter=warning + org.eclipse.jdt.core.compiler.problem.unusedWarningToken=warning + org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning +-org.eclipse.jdt.core.compiler.release=enabled +-org.eclipse.jdt.core.compiler.source=11 ++org.eclipse.jdt.core.compiler.release=disabled ++org.eclipse.jdt.core.compiler.source=1.8 + org.eclipse.jdt.core.formatter.align_assignment_statements_on_columns=false + org.eclipse.jdt.core.formatter.align_fields_grouping_blank_lines=2147483647 + org.eclipse.jdt.core.formatter.align_type_members_on_columns=false +diff --git a/xmvn-tools/xmvn-resolve/.classpath b/xmvn-tools/xmvn-resolve/.classpath +index 97c81cef..4f8e155a 100644 +--- a/xmvn-tools/xmvn-resolve/.classpath ++++ b/xmvn-tools/xmvn-resolve/.classpath +@@ -13,7 +13,7 @@ + + + +- ++ + + + +diff --git a/xmvn-tools/xmvn-resolve/.settings/org.eclipse.jdt.core.prefs b/xmvn-tools/xmvn-resolve/.settings/org.eclipse.jdt.core.prefs +index 2d67d3f3..2f39a66b 100644 +--- a/xmvn-tools/xmvn-resolve/.settings/org.eclipse.jdt.core.prefs ++++ b/xmvn-tools/xmvn-resolve/.settings/org.eclipse.jdt.core.prefs +@@ -8,8 +8,8 @@ org.eclipse.jdt.core.compiler.annotation.nonnullbydefault.secondary= + org.eclipse.jdt.core.compiler.annotation.nullable=org.eclipse.jdt.annotation.Nullable + org.eclipse.jdt.core.compiler.annotation.nullable.secondary= + org.eclipse.jdt.core.compiler.annotation.nullanalysis=disabled +-org.eclipse.jdt.core.compiler.codegen.targetPlatform=11 +-org.eclipse.jdt.core.compiler.compliance=11 ++org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 ++org.eclipse.jdt.core.compiler.compliance=1.8 + org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=warning + org.eclipse.jdt.core.compiler.problem.autoboxing=ignore + org.eclipse.jdt.core.compiler.problem.comparingIdentical=warning +@@ -97,8 +97,8 @@ org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=warning + org.eclipse.jdt.core.compiler.problem.unusedTypeParameter=warning + org.eclipse.jdt.core.compiler.problem.unusedWarningToken=warning + org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning +-org.eclipse.jdt.core.compiler.release=enabled +-org.eclipse.jdt.core.compiler.source=11 ++org.eclipse.jdt.core.compiler.release=disabled ++org.eclipse.jdt.core.compiler.source=1.8 + org.eclipse.jdt.core.formatter.align_assignment_statements_on_columns=false + org.eclipse.jdt.core.formatter.align_fields_grouping_blank_lines=2147483647 + org.eclipse.jdt.core.formatter.align_type_members_on_columns=false +diff --git a/xmvn-tools/xmvn-subst/.classpath b/xmvn-tools/xmvn-subst/.classpath +index 4559ca0b..5e8a55fe 100644 +--- a/xmvn-tools/xmvn-subst/.classpath ++++ b/xmvn-tools/xmvn-subst/.classpath +@@ -13,7 +13,7 @@ + + + +- ++ + + + +diff --git a/xmvn-tools/xmvn-subst/.settings/org.eclipse.jdt.core.prefs b/xmvn-tools/xmvn-subst/.settings/org.eclipse.jdt.core.prefs +index 2d67d3f3..2f39a66b 100644 +--- a/xmvn-tools/xmvn-subst/.settings/org.eclipse.jdt.core.prefs ++++ b/xmvn-tools/xmvn-subst/.settings/org.eclipse.jdt.core.prefs +@@ -8,8 +8,8 @@ org.eclipse.jdt.core.compiler.annotation.nonnullbydefault.secondary= + org.eclipse.jdt.core.compiler.annotation.nullable=org.eclipse.jdt.annotation.Nullable + org.eclipse.jdt.core.compiler.annotation.nullable.secondary= + org.eclipse.jdt.core.compiler.annotation.nullanalysis=disabled +-org.eclipse.jdt.core.compiler.codegen.targetPlatform=11 +-org.eclipse.jdt.core.compiler.compliance=11 ++org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 ++org.eclipse.jdt.core.compiler.compliance=1.8 + org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=warning + org.eclipse.jdt.core.compiler.problem.autoboxing=ignore + org.eclipse.jdt.core.compiler.problem.comparingIdentical=warning +@@ -97,8 +97,8 @@ org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=warning + org.eclipse.jdt.core.compiler.problem.unusedTypeParameter=warning + org.eclipse.jdt.core.compiler.problem.unusedWarningToken=warning + org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning +-org.eclipse.jdt.core.compiler.release=enabled +-org.eclipse.jdt.core.compiler.source=11 ++org.eclipse.jdt.core.compiler.release=disabled ++org.eclipse.jdt.core.compiler.source=1.8 + org.eclipse.jdt.core.formatter.align_assignment_statements_on_columns=false + org.eclipse.jdt.core.formatter.align_fields_grouping_blank_lines=2147483647 + org.eclipse.jdt.core.formatter.align_type_members_on_columns=false +-- +2.36.0 + diff --git a/0002-module-path-not-allowed-with-release-8.patch b/0002-module-path-not-allowed-with-release-8.patch new file mode 100644 index 0000000..ada8af1 --- /dev/null +++ b/0002-module-path-not-allowed-with-release-8.patch @@ -0,0 +1,91 @@ +From 34ee4dad896f9f82131a090293c3a9ccaa77b729 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Fridrich=20=C5=A0trba?= +Date: Sun, 8 May 2022 15:19:45 +0200 +Subject: [PATCH 2/2] --module-path not allowed with release=8 + +--- + .../fedoraproject/xmvn/mojo/JavadocMojo.java | 49 +++++++++---------- + 1 file changed, 24 insertions(+), 25 deletions(-) + +diff --git a/xmvn-mojo/src/main/java/org/fedoraproject/xmvn/mojo/JavadocMojo.java b/xmvn-mojo/src/main/java/org/fedoraproject/xmvn/mojo/JavadocMojo.java +index 68d097f5..480b0f0a 100644 +--- a/xmvn-mojo/src/main/java/org/fedoraproject/xmvn/mojo/JavadocMojo.java ++++ b/xmvn-mojo/src/main/java/org/fedoraproject/xmvn/mojo/JavadocMojo.java +@@ -227,35 +227,12 @@ public class JavadocMojo + populateClasspath( reactorClassPath, fullClassPath ); + boolean isModular = !findFiles( reactorClassPath, "module-info\\.class" ).isEmpty(); + +- if ( !isModular ) +- { +- opts.add( "-classpath" ); +- } +- else +- { +- opts.add( "--module-path" ); +- } +- opts.add( quoted( StringUtils.join( fullClassPath.iterator(), ":" ) ) ); +- opts.add( "-encoding" ); +- opts.add( quoted( encoding ) ); +- opts.add( "-sourcepath" ); +- opts.add( quoted( StringUtils.join( sourcePaths.iterator(), ":" ) ) ); +- opts.add( "-charset" ); +- opts.add( quoted( docencoding ) ); +- opts.add( "-d" ); +- opts.add( quoted( outputDir ) ); +- opts.add( "-docencoding" ); +- opts.add( quoted( docencoding ) ); +- opts.add( "-doctitle" ); +- opts.add( quoted( "Javadoc for package XXX" ) ); +- + String sourceLevel = null; +- if ( release != null && isModular ) ++ if ( release != null ) + { + opts.add( "--release" ); + opts.add( quoted( release ) ); + sourceLevel = release; +- + } + else if ( source != null ) + { +@@ -265,7 +242,7 @@ public class JavadocMojo + } + + boolean skipModuleInfo = !isModular; +- if ( sourceLevel != null && !skipModuleInfo ) ++ if ( sourceLevel != null ) + { + try + { +@@ -279,6 +256,28 @@ public class JavadocMojo + } + } + ++ if ( !isModular || skipModuleInfo ) ++ { ++ opts.add( "-classpath" ); ++ } ++ else ++ { ++ opts.add( "--module-path" ); ++ } ++ opts.add( quoted( StringUtils.join( fullClassPath.iterator(), ":" ) ) ); ++ opts.add( "-encoding" ); ++ opts.add( quoted( encoding ) ); ++ opts.add( "-sourcepath" ); ++ opts.add( quoted( StringUtils.join( sourcePaths.iterator(), ":" ) ) ); ++ opts.add( "-charset" ); ++ opts.add( quoted( docencoding ) ); ++ opts.add( "-d" ); ++ opts.add( quoted( outputDir ) ); ++ opts.add( "-docencoding" ); ++ opts.add( quoted( docencoding ) ); ++ opts.add( "-doctitle" ); ++ opts.add( quoted( "Javadoc for package XXX" ) ); ++ + for ( Path file : sourceFiles ) + { + if ( !skipModuleInfo || !file.endsWith( "module-info.java" ) ) +-- +2.36.0 + diff --git a/0003-Make-xmvn-subst-honor-settings-for-ignoring-duplicat.patch b/0003-Make-xmvn-subst-honor-settings-for-ignoring-duplicat.patch deleted file mode 100644 index 9244647..0000000 --- a/0003-Make-xmvn-subst-honor-settings-for-ignoring-duplicat.patch +++ /dev/null @@ -1,81 +0,0 @@ -From b6c776590067fcef584097ac6e984b6380d0421a Mon Sep 17 00:00:00 2001 -From: Mikolaj Izdebski -Date: Sat, 29 Jun 2019 14:00:13 +0200 -Subject: [PATCH 3/7] Make xmvn-subst honor settings for ignoring duplicate - metadata - ---- - .../xmvn/tools/subst/SubstCli.java | 25 +++++++++++++------ - 1 file changed, 17 insertions(+), 8 deletions(-) - -diff --git a/xmvn-tools/xmvn-subst/src/main/java/org/fedoraproject/xmvn/tools/subst/SubstCli.java b/xmvn-tools/xmvn-subst/src/main/java/org/fedoraproject/xmvn/tools/subst/SubstCli.java -index 423b5e61..30b1ac63 100644 ---- a/xmvn-tools/xmvn-subst/src/main/java/org/fedoraproject/xmvn/tools/subst/SubstCli.java -+++ b/xmvn-tools/xmvn-subst/src/main/java/org/fedoraproject/xmvn/tools/subst/SubstCli.java -@@ -23,6 +23,7 @@ import java.util.ArrayList; - import java.util.List; - - import org.fedoraproject.xmvn.config.Configurator; -+import org.fedoraproject.xmvn.config.ResolverSettings; - import org.fedoraproject.xmvn.locator.ServiceLocator; - import org.fedoraproject.xmvn.locator.ServiceLocatorFactory; - import org.fedoraproject.xmvn.metadata.MetadataRequest; -@@ -34,26 +35,34 @@ import org.fedoraproject.xmvn.metadata.MetadataResult; - */ - public class SubstCli - { -- private final List configuredMetadataRepos; -- - private MetadataResolver metadataResolver; - -+ private ResolverSettings resolverSettings; -+ - public SubstCli( Configurator configurator, MetadataResolver metadataResolver ) - { - this.metadataResolver = metadataResolver; -- configuredMetadataRepos = configurator.getConfiguration().getResolverSettings().getMetadataRepositories(); -+ resolverSettings = configurator.getConfiguration().getResolverSettings(); -+ } -+ -+ private MetadataResult resolveMetadata( List repos ) -+ { -+ MetadataRequest request = new MetadataRequest( repos ); -+ request.setIgnoreDuplicates( resolverSettings.isIgnoreDuplicateMetadata() ); -+ MetadataResult result = metadataResolver.resolveMetadata( request ); -+ return result; - } - - private void run( SubstCliRequest cliRequest ) - { -- List metadataResolvers = new ArrayList<>(); -+ List metadataResults = new ArrayList<>(); - - if ( cliRequest.getRoot() != null ) - { - List metadataRepos = new ArrayList<>(); - Path root = Paths.get( cliRequest.getRoot() ); - -- for ( String configuredRepo : configuredMetadataRepos ) -+ for ( String configuredRepo : resolverSettings.getMetadataRepositories() ) - { - Path repoPath = Paths.get( configuredRepo ); - if ( repoPath.isAbsolute() ) -@@ -62,12 +71,12 @@ public class SubstCli - } - } - -- metadataResolvers.add( metadataResolver.resolveMetadata( new MetadataRequest( metadataRepos ) ) ); -+ metadataResults.add( resolveMetadata( metadataRepos ) ); - } - -- metadataResolvers.add( metadataResolver.resolveMetadata( new MetadataRequest( configuredMetadataRepos ) ) ); -+ metadataResults.add( resolveMetadata( resolverSettings.getMetadataRepositories() ) ); - -- ArtifactVisitor visitor = new ArtifactVisitor( cliRequest.isDebug(), metadataResolvers ); -+ ArtifactVisitor visitor = new ArtifactVisitor( cliRequest.isDebug(), metadataResults ); - - visitor.setTypes( cliRequest.getTypes() ); - visitor.setFollowSymlinks( cliRequest.isFollowSymlinks() ); --- -2.36.0 - diff --git a/0003-Revert-Use-new-Collection-methods-added-in-Java-9.patch b/0003-Revert-Use-new-Collection-methods-added-in-Java-9.patch new file mode 100644 index 0000000..0db2166 --- /dev/null +++ b/0003-Revert-Use-new-Collection-methods-added-in-Java-9.patch @@ -0,0 +1,109 @@ +From 67ad1e7228166863edc81fe56b74abad443251df Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Fridrich=20=C5=A0trba?= +Date: Sun, 8 May 2022 19:28:37 +0200 +Subject: [PATCH 3/4] Revert "Use new Collection methods added in Java 9" + +This reverts commit 1acda1ff8bb2a58c458395d61c0aaeae3d425e53. +--- + .../fedoraproject/xmvn/deployer/DependencyDescriptor.java | 3 ++- + .../org/fedoraproject/xmvn/deployer/DeploymentRequest.java | 5 +++-- + .../xmvn/connector/maven/XMvnMojoExecutionListener.java | 3 ++- + .../org/fedoraproject/xmvn/mojo/BuildDependencyVisitor.java | 3 ++- + 4 files changed, 9 insertions(+), 5 deletions(-) + +diff --git a/xmvn-api/src/main/java/org/fedoraproject/xmvn/deployer/DependencyDescriptor.java b/xmvn-api/src/main/java/org/fedoraproject/xmvn/deployer/DependencyDescriptor.java +index 9918affe..1af7d2fb 100644 +--- a/xmvn-api/src/main/java/org/fedoraproject/xmvn/deployer/DependencyDescriptor.java ++++ b/xmvn-api/src/main/java/org/fedoraproject/xmvn/deployer/DependencyDescriptor.java +@@ -15,6 +15,7 @@ + */ + package org.fedoraproject.xmvn.deployer; + ++import java.util.Collections; + import java.util.List; + + import org.fedoraproject.xmvn.artifact.Artifact; +@@ -34,7 +35,7 @@ public class DependencyDescriptor + { + this.dependencyArtifact = dependencyArtifact; + this.optional = optional; +- this.exclusions = List.copyOf( exclusions ); ++ this.exclusions = Collections.unmodifiableList( exclusions ); + } + + public Artifact getDependencyArtifact() +diff --git a/xmvn-api/src/main/java/org/fedoraproject/xmvn/deployer/DeploymentRequest.java b/xmvn-api/src/main/java/org/fedoraproject/xmvn/deployer/DeploymentRequest.java +index 6c67d2c7..16e48471 100644 +--- a/xmvn-api/src/main/java/org/fedoraproject/xmvn/deployer/DeploymentRequest.java ++++ b/xmvn-api/src/main/java/org/fedoraproject/xmvn/deployer/DeploymentRequest.java +@@ -19,6 +19,7 @@ import java.nio.file.Path; + import java.nio.file.Paths; + import java.util.ArrayList; + import java.util.Arrays; ++import java.util.Collections; + import java.util.Iterator; + import java.util.LinkedHashMap; + import java.util.List; +@@ -53,7 +54,7 @@ public class DeploymentRequest + + public List getDependencies() + { +- return List.copyOf( dependencies ); ++ return Collections.unmodifiableList( dependencies ); + } + + public void addDependency( Artifact dependencyArtifact, Artifact... exclusions ) +@@ -85,7 +86,7 @@ public class DeploymentRequest + + public Map getProperties() + { +- return Map.copyOf( properties ); ++ return Collections.unmodifiableMap( properties ); + } + + public String getProperty( String key ) +diff --git a/xmvn-connector/src/main/java/org/fedoraproject/xmvn/connector/maven/XMvnMojoExecutionListener.java b/xmvn-connector/src/main/java/org/fedoraproject/xmvn/connector/maven/XMvnMojoExecutionListener.java +index dc312edf..812ecd83 100644 +--- a/xmvn-connector/src/main/java/org/fedoraproject/xmvn/connector/maven/XMvnMojoExecutionListener.java ++++ b/xmvn-connector/src/main/java/org/fedoraproject/xmvn/connector/maven/XMvnMojoExecutionListener.java +@@ -25,6 +25,7 @@ import java.nio.file.Files; + import java.nio.file.Path; + import java.nio.file.Paths; + import java.util.ArrayList; ++import java.util.Collections; + import java.util.List; + import java.util.Properties; + +@@ -276,7 +277,7 @@ public class XMvnMojoExecutionListener + } + else if ( XMVN_BUILDDEP.equals( execution ) ) + { +- trySetBeanProperty( mojo, "resolutions", List.copyOf( resolutions ) ); ++ trySetBeanProperty( mojo, "resolutions", Collections.unmodifiableList( new ArrayList<>( resolutions ) ) ); + } + } + +diff --git a/xmvn-mojo/src/main/java/org/fedoraproject/xmvn/mojo/BuildDependencyVisitor.java b/xmvn-mojo/src/main/java/org/fedoraproject/xmvn/mojo/BuildDependencyVisitor.java +index e77ca530..75cc4922 100644 +--- a/xmvn-mojo/src/main/java/org/fedoraproject/xmvn/mojo/BuildDependencyVisitor.java ++++ b/xmvn-mojo/src/main/java/org/fedoraproject/xmvn/mojo/BuildDependencyVisitor.java +@@ -16,6 +16,7 @@ + package org.fedoraproject.xmvn.mojo; + + import java.util.Arrays; ++import java.util.Collections; + import java.util.LinkedHashSet; + import java.util.List; + import java.util.Set; +@@ -53,7 +54,7 @@ class BuildDependencyVisitor + + public Set getArtifacts() + { +- return Set.copyOf( artifacts ); ++ return Collections.unmodifiableSet( artifacts ); + } + + private boolean isExternal( InputLocation location ) +-- +2.36.0 + diff --git a/0004-Add-a-jdk9-profile-to-assure-that-we-are-jdk8-compat.patch b/0004-Add-a-jdk9-profile-to-assure-that-we-are-jdk8-compat.patch new file mode 100644 index 0000000..c341a73 --- /dev/null +++ b/0004-Add-a-jdk9-profile-to-assure-that-we-are-jdk8-compat.patch @@ -0,0 +1,44 @@ +From 4dc70921e93fdf1f34e9c02b7a9bd8890bb4ac4f Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Fridrich=20=C5=A0trba?= +Date: Sun, 8 May 2022 19:56:30 +0200 +Subject: [PATCH 4/4] Add a jdk9+ profile to assure that we are jdk8 compatible + +--- + xmvn-parent/pom.xml | 22 ++++++++++++++++++++++ + 1 file changed, 22 insertions(+) + +diff --git a/xmvn-parent/pom.xml b/xmvn-parent/pom.xml +index 383f320c..e1ed807f 100644 +--- a/xmvn-parent/pom.xml ++++ b/xmvn-parent/pom.xml +@@ -565,5 +565,27 @@ + + + ++ ++ jdk9+ ++ ++ [9,) ++ ++ ++ ++ ++ maven-compiler-plugin ++ ++ 8 ++ ++ ++ ++ maven-surefire-plugin ++ ++ --add-opens java.base/java.lang=ALL-UNNAMED ++ ++ ++ ++ ++ + + +-- +2.36.0 + diff --git a/0004-Fix-requires-generation-for-self-depending-packages.patch b/0004-Fix-requires-generation-for-self-depending-packages.patch deleted file mode 100644 index 8536a9d..0000000 --- a/0004-Fix-requires-generation-for-self-depending-packages.patch +++ /dev/null @@ -1,115 +0,0 @@ -From e32481606ae9ac683cea6e9e9cd4a19cd8a3a54e Mon Sep 17 00:00:00 2001 -From: Mikolaj Izdebski -Date: Mon, 1 Jul 2019 12:22:04 +0200 -Subject: [PATCH 4/7] Fix requires generation for self-depending packages - ---- - .../tools/install/impl/DefaultInstaller.java | 5 ++++ - .../tools/install/impl/InstallerTest.java | 9 +++++++ - .../test/resources/self-requires-resolved.xml | 25 +++++++++++++++++++ - .../src/test/resources/self-requires.xml | 24 ++++++++++++++++++ - 4 files changed, 63 insertions(+) - create mode 100644 xmvn-tools/xmvn-install/src/test/resources/self-requires-resolved.xml - create mode 100644 xmvn-tools/xmvn-install/src/test/resources/self-requires.xml - -diff --git a/xmvn-tools/xmvn-install/src/main/java/org/fedoraproject/xmvn/tools/install/impl/DefaultInstaller.java b/xmvn-tools/xmvn-install/src/main/java/org/fedoraproject/xmvn/tools/install/impl/DefaultInstaller.java -index e051e823..671d79d3 100644 ---- a/xmvn-tools/xmvn-install/src/main/java/org/fedoraproject/xmvn/tools/install/impl/DefaultInstaller.java -+++ b/xmvn-tools/xmvn-install/src/main/java/org/fedoraproject/xmvn/tools/install/impl/DefaultInstaller.java -@@ -275,6 +275,11 @@ public class DefaultInstaller - dependency.setNamespace( resolvedMetadata.getNamespace() ); - return; - } -+ } -+ -+ for ( String version : Arrays.asList( dependency.getRequestedVersion(), Artifact.DEFAULT_VERSION ) ) -+ { -+ Artifact dependencyArtifact = dependency.toArtifact().setVersion( version ); - - // Next try system artifact resolver - ResolutionRequest request = new ResolutionRequest( dependencyArtifact ); -diff --git a/xmvn-tools/xmvn-install/src/test/java/org/fedoraproject/xmvn/tools/install/impl/InstallerTest.java b/xmvn-tools/xmvn-install/src/test/java/org/fedoraproject/xmvn/tools/install/impl/InstallerTest.java -index 48db907d..ccbbf63d 100644 ---- a/xmvn-tools/xmvn-install/src/test/java/org/fedoraproject/xmvn/tools/install/impl/InstallerTest.java -+++ b/xmvn-tools/xmvn-install/src/test/java/org/fedoraproject/xmvn/tools/install/impl/InstallerTest.java -@@ -204,6 +204,15 @@ public class InstallerTest - installRoot.resolve( "usr/share/maven-metadata/test-pkg.xml" ) ); - } - -+ @Test -+ public void testSelfRequires() -+ throws Exception -+ { -+ install( "self-requires.xml" ); -+ assertMetadataEqual( getResource( "self-requires-resolved.xml" ), -+ installRoot.resolve( "usr/share/maven-metadata/test-pkg.xml" ) ); -+ } -+ - @Test - public void testSubpackage() - throws Exception -diff --git a/xmvn-tools/xmvn-install/src/test/resources/self-requires-resolved.xml b/xmvn-tools/xmvn-install/src/test/resources/self-requires-resolved.xml -new file mode 100644 -index 00000000..c800b8d7 ---- /dev/null -+++ b/xmvn-tools/xmvn-install/src/test/resources/self-requires-resolved.xml -@@ -0,0 +1,25 @@ -+ -+ -+ bfb4d47f-4bf2-49bc-bd85-1d3528e97746 -+ -+ -+ org.apache.maven.wagon -+ wagon-provider-api -+ 3.3.2 -+ ???example.jar -+ -+ -+ org.apache.maven.wagon -+ wagon-file -+ 3.3.2 -+ ???example.jar -+ -+ -+ org.apache.maven.wagon -+ wagon-provider-api -+ 3.3.2 -+ -+ -+ -+ -+ -diff --git a/xmvn-tools/xmvn-install/src/test/resources/self-requires.xml b/xmvn-tools/xmvn-install/src/test/resources/self-requires.xml -new file mode 100644 -index 00000000..16a78328 ---- /dev/null -+++ b/xmvn-tools/xmvn-install/src/test/resources/self-requires.xml -@@ -0,0 +1,24 @@ -+ -+ -+ -+ -+ org.apache.maven.wagon -+ wagon-provider-api -+ 3.3.2 -+ src/test/resources/example.jar -+ -+ -+ org.apache.maven.wagon -+ wagon-file -+ 3.3.2 -+ src/test/resources/example.jar -+ -+ -+ org.apache.maven.wagon -+ wagon-provider-api -+ 3.3.2 -+ -+ -+ -+ -+ -\ No newline at end of file --- -2.36.0 - diff --git a/0005-Fix-resolution-of-aliases-registered-by-add_maven_de.patch b/0005-Fix-resolution-of-aliases-registered-by-add_maven_de.patch deleted file mode 100644 index cf356be..0000000 --- a/0005-Fix-resolution-of-aliases-registered-by-add_maven_de.patch +++ /dev/null @@ -1,27 +0,0 @@ -From 357fc767ff395226f5ca758761aaef9feb90ebe9 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Fridrich=20=C5=A0trba?= -Date: Sun, 6 Oct 2019 16:31:51 +0200 -Subject: [PATCH 5/7] Fix resolution of aliases registered by %add_maven_depmap - ---- - .../fedoraproject/xmvn/connector/gradle/GradleResolver.java | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/xmvn-connector-gradle/src/main/java/org/fedoraproject/xmvn/connector/gradle/GradleResolver.java b/xmvn-connector-gradle/src/main/java/org/fedoraproject/xmvn/connector/gradle/GradleResolver.java -index 90b07eb1..7f292e00 100644 ---- a/xmvn-connector-gradle/src/main/java/org/fedoraproject/xmvn/connector/gradle/GradleResolver.java -+++ b/xmvn-connector-gradle/src/main/java/org/fedoraproject/xmvn/connector/gradle/GradleResolver.java -@@ -175,8 +175,8 @@ public class GradleResolver - { - ModuleVersionIdentifier moduleId = - ( (DefaultModuleComponentArtifactMetadata) artifact ).toArtifactIdentifier().getModuleVersionIdentifier(); -- String groupId = moduleId.getGroup(); -- String artifactId = artifact.getName().getName(); -+ String groupId = ( (DefaultModuleComponentArtifactMetadata) artifact ).getId().getComponentIdentifier().getGroup(); -+ String artifactId =( (DefaultModuleComponentArtifactMetadata) artifact ).getId().getComponentIdentifier().getModule(); - String extension = artifact.getName().getExtension(); - String classifier = artifact.getName().getClassifier(); - String version = moduleId.getVersion(); --- -2.36.0 - diff --git a/0006-Revert-port-to-gradle-4.5.1.patch b/0006-Revert-port-to-gradle-4.5.1.patch deleted file mode 100644 index 6bd80c0..0000000 --- a/0006-Revert-port-to-gradle-4.5.1.patch +++ /dev/null @@ -1,96 +0,0 @@ -From e580ac067b147c56e4d330915ff52429bc4ab4c3 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Fridrich=20=C5=A0trba?= -Date: Tue, 3 May 2022 16:38:31 +0200 -Subject: [PATCH 6/7] Revert "port to gradle 4.5.1" - -This reverts commit be50418df8808e46ee2695da281f95497f5cf179. ---- - .../xmvn/connector/gradle/GradleResolver.java | 23 +++---------------- - xmvn-parent/pom.xml | 2 +- - 2 files changed, 4 insertions(+), 21 deletions(-) - -diff --git a/xmvn-connector-gradle/src/main/java/org/fedoraproject/xmvn/connector/gradle/GradleResolver.java b/xmvn-connector-gradle/src/main/java/org/fedoraproject/xmvn/connector/gradle/GradleResolver.java -index 7f292e00..ac6a7883 100644 ---- a/xmvn-connector-gradle/src/main/java/org/fedoraproject/xmvn/connector/gradle/GradleResolver.java -+++ b/xmvn-connector-gradle/src/main/java/org/fedoraproject/xmvn/connector/gradle/GradleResolver.java -@@ -25,7 +25,6 @@ import org.gradle.api.artifacts.ComponentMetadataSupplier; - import org.gradle.api.artifacts.ModuleVersionIdentifier; - import org.gradle.api.artifacts.component.ComponentArtifactIdentifier; - import org.gradle.api.artifacts.component.ModuleComponentIdentifier; --import org.gradle.api.internal.ExperimentalFeatures; - import org.gradle.api.internal.artifacts.ImmutableModuleIdentifierFactory; - import org.gradle.api.internal.artifacts.ivyservice.ivyresolve.ConfiguredModuleComponentRepository; - import org.gradle.api.internal.artifacts.ivyservice.ivyresolve.ModuleComponentRepositoryAccess; -@@ -35,13 +34,10 @@ import org.gradle.api.internal.artifacts.ivyservice.resolveengine.artifact.Resol - import org.gradle.api.internal.artifacts.repositories.AbstractArtifactRepository; - import org.gradle.api.internal.artifacts.repositories.ResolutionAwareRepository; - import org.gradle.api.internal.artifacts.repositories.resolver.MetadataFetchingCost; --import org.gradle.api.internal.attributes.ImmutableAttributesFactory; - import org.gradle.api.internal.component.ArtifactType; --import org.gradle.api.internal.model.NamedObjectInstantiator; - import org.gradle.internal.component.external.model.DefaultModuleComponentArtifactMetadata; - import org.gradle.internal.component.external.model.DefaultMutableMavenModuleResolveMetadata; - import org.gradle.internal.component.external.model.FixedComponentArtifacts; --import org.gradle.internal.component.external.model.MavenDependencyDescriptor; - import org.gradle.internal.component.external.model.ModuleComponentArtifactMetadata; - import org.gradle.internal.component.external.model.ModuleComponentResolveMetadata; - import org.gradle.internal.component.external.model.ModuleDependencyMetadata; -@@ -84,27 +80,17 @@ public class GradleResolver - { - public GradleResolver( MetaDataParser pomParser, - ImmutableModuleIdentifierFactory moduleIdentifierFactory, -- FileResourceRepository fileRepository, ImmutableAttributesFactory immutableAttributesFactory, -- NamedObjectInstantiator objectInstantiator, ExperimentalFeatures experimentalFeatures ) -+ FileResourceRepository fileRepository ) - { - this.pomParser = pomParser; - this.moduleIdentifierFactory = moduleIdentifierFactory; - this.fileRepository = fileRepository; -- this.immutableAttributesFactory = immutableAttributesFactory; -- this.experimentalFeatures = experimentalFeatures; -- this.objectInstantiator = objectInstantiator; - } - - private MetaDataParser pomParser; - - private ImmutableModuleIdentifierFactory moduleIdentifierFactory; - -- private ImmutableAttributesFactory immutableAttributesFactory; -- -- private ExperimentalFeatures experimentalFeatures; -- -- private NamedObjectInstantiator objectInstantiator; -- - private FileResourceRepository fileRepository; - - private final Logger logger = LoggerFactory.getLogger( GradleResolver.class ); -@@ -233,11 +219,8 @@ public class GradleResolver - logger.debug( "Artifact {} found, returning minimal model", artifact3 ); - ModuleVersionIdentifier mvi = - moduleIdentifierFactory.moduleWithVersion( id.getGroup(), id.getModule(), id.getVersion() ); -- DefaultMutableMavenModuleResolveMetadata metaData = -- new DefaultMutableMavenModuleResolveMetadata( mvi, id, -- Collections.emptyList(), -- immutableAttributesFactory, objectInstantiator, -- experimentalFeatures ); -+ MutableModuleComponentResolveMetadata metaData = -+ DefaultMutableMavenModuleResolveMetadata.missing( mvi, id ); - result.resolved( metaData.asImmutable() ); - return; - } -diff --git a/xmvn-parent/pom.xml b/xmvn-parent/pom.xml -index 7ea1d9b1..67b25fbc 100644 ---- a/xmvn-parent/pom.xml -+++ b/xmvn-parent/pom.xml -@@ -84,7 +84,7 @@ - 1 - 2.5.0-rc1 - 1.72 -- 4.5.1 -+ 4.4.1 - 2.4.12 - 3.0.1 - 1.3.1 --- -2.36.0 - diff --git a/0007-Fixes-56-Honour-source-parameter-in-javadoc-mojo.patch b/0007-Fixes-56-Honour-source-parameter-in-javadoc-mojo.patch deleted file mode 100644 index 935d8f5..0000000 --- a/0007-Fixes-56-Honour-source-parameter-in-javadoc-mojo.patch +++ /dev/null @@ -1,40 +0,0 @@ -From 626864e576ef1466cd84a044fddd1881770a3160 Mon Sep 17 00:00:00 2001 -From: Mat Booth -Date: Thu, 9 Jul 2020 17:52:47 +0100 -Subject: [PATCH 7/7] Fixes #56 - Honour source parameter in javadoc mojo - -This parameter is used by maven-javadoc-plugin to handle assert -and enum keywords that are used as identifiers in old code. ---- - .../java/org/fedoraproject/xmvn/mojo/JavadocMojo.java | 8 ++++++++ - 1 file changed, 8 insertions(+) - -diff --git a/xmvn-mojo/src/main/java/org/fedoraproject/xmvn/mojo/JavadocMojo.java b/xmvn-mojo/src/main/java/org/fedoraproject/xmvn/mojo/JavadocMojo.java -index 3d6ef5ef..c1e61617 100644 ---- a/xmvn-mojo/src/main/java/org/fedoraproject/xmvn/mojo/JavadocMojo.java -+++ b/xmvn-mojo/src/main/java/org/fedoraproject/xmvn/mojo/JavadocMojo.java -@@ -84,6 +84,9 @@ public class JavadocMojo - @Parameter( defaultValue = "${project.build.directory}", required = true ) - private File buildDirectory; - -+ @Parameter( property = "source" ) -+ private String source; -+ - private static String quoted( Object obj ) - { - String arg = obj.toString(); -@@ -226,6 +229,11 @@ public class JavadocMojo - opts.add( quoted( docencoding ) ); - opts.add( "-doctitle" ); - opts.add( quoted( "Javadoc for package XXX" ) ); -+ if ( source != null ) -+ { -+ opts.add( "-source" ); -+ opts.add( quoted( source ) ); -+ } - - for ( Path file : files ) - opts.add( quoted( file ) ); --- -2.36.0 - diff --git a/xmvn-3.1.0.tar.xz b/xmvn-3.1.0.tar.xz deleted file mode 100644 index 9db33b2..0000000 --- a/xmvn-3.1.0.tar.xz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:1f0575f5bd74af4ca23b27f7da97367ee56e2891245c6fd4c66c33a74ffd0a7c -size 181604 diff --git a/xmvn-4.0.0.tar.xz b/xmvn-4.0.0.tar.xz new file mode 100644 index 0000000..da32c53 --- /dev/null +++ b/xmvn-4.0.0.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b0d5bb4fe3e66d84695abd5347b570bb1135bab21125d55ab9a07fbacfa5bb3c +size 140696 diff --git a/xmvn-build.tar.xz b/xmvn-build.tar.xz index edd6320..f4b7dd6 100644 --- a/xmvn-build.tar.xz +++ b/xmvn-build.tar.xz @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:4775d0b1cd320c0d7d589ecffee54845603589e64058370d8b50cad2cde0c9a6 -size 4700 +oid sha256:3cfe7eae867e19082770770bb45b1da5dd46dbc28a2e2c737e304205feeef1ec +size 4388 diff --git a/xmvn-connector-gradle.changes b/xmvn-connector-gradle.changes deleted file mode 100644 index ff7d2aa..0000000 --- a/xmvn-connector-gradle.changes +++ /dev/null @@ -1,27 +0,0 @@ -------------------------------------------------------------------- -Thu Nov 21 14:25:58 UTC 2019 - Fridrich Strba - -- Upgrade to upstream version 3.1.0 -- Removed patches: - * 0001-Fix-installer-plugin-loading.patch - * 0001-Port-to-Gradle-4.2.patch - * 0001-Port-to-Gradle-4.3.1.patch - * 0001-Support-setting-Xdoclint-none-in-m-javadoc-p-3.0.0.patch - * 0001-Fix-configuration-of-aliased-plugins.patch - * 0001-Don-t-use-JAXB-for-converting-bytes-to-hex-string.patch - * 0001-Use-apache-commons-compress-for-manifest-injection-a.patch - * 0001-port-to-gradle-4.4.1.patch - * 0001-Replace-JAXB-parser.patch - + Integrated in this version -- Added patch: - * xmvn-gradle_4_4_1.patch - + backport this version to use gradle 4.4.1 instead of 4.5.1 - -------------------------------------------------------------------- -Wed Mar 27 06:28:06 UTC 2019 - Fridrich Strba - -- Initial packaging of xmvn-connector-gradle 3.0.0 -- Added patch: - * 0001-Fix-resolution-of-aliases-registered-by-add_maven_de.patch - + fix resolution of aliases that are registered by the - %%add_maven_depmap macro diff --git a/xmvn-connector-gradle.spec b/xmvn-connector-gradle.spec deleted file mode 100644 index 509b6c8..0000000 --- a/xmvn-connector-gradle.spec +++ /dev/null @@ -1,117 +0,0 @@ -# -# spec file -# -# Copyright (c) 2022 SUSE LLC -# -# All modifications and additions to the file contributed by third parties -# remain the property of their copyright owners, unless otherwise agreed -# upon. The license for this file, and modifications and additions to the -# file, is the same license as for the pristine package itself (unless the -# license for the pristine package is not an Open Source License, in which -# case the license is the MIT License). An "Open Source License" is a -# license that conforms to the Open Source Definition (Version 1.9) -# published by the Open Source Initiative. - -# Please submit bugfixes or comments via https://bugs.opensuse.org/ -# - - -%global parent xmvn -%global subname connector-gradle -Name: %{parent}-%{subname} -Version: 3.1.0 -Release: 0 -Summary: XMvn Connector for Gradle -License: Apache-2.0 -Group: Development/Tools/Building -URL: https://fedora-java.github.io/xmvn/ -Source0: https://github.com/fedora-java/%{parent}/releases/download/%{version}/%{parent}-%{version}.tar.xz -Patch1: 0001-Prefer-namespaced-metadata-when-duplicates-are-found.patch -Patch2: 0002-Allow-removing-plugins-during-model-validation.patch -Patch3: 0003-Make-xmvn-subst-honor-settings-for-ignoring-duplicat.patch -Patch4: 0004-Fix-requires-generation-for-self-depending-packages.patch -Patch5: 0005-Fix-resolution-of-aliases-registered-by-add_maven_de.patch -Patch6: 0006-Revert-port-to-gradle-4.5.1.patch -Patch7: 0007-Fixes-56-Honour-source-parameter-in-javadoc-mojo.patch -Patch8: 0008-Mimic-maven-javadoc-plugin-for-source-and-release.patch -BuildRequires: fdupes -# Build this one with the bootstrap package in order to avoid build cycles -BuildRequires: maven-local -BuildRequires: mvn(javax.inject:javax.inject) -BuildRequires: mvn(org.apache.ivy:ivy) -BuildRequires: mvn(org.codehaus.groovy:groovy-all) -BuildRequires: mvn(org.fedoraproject.xmvn:xmvn-api) -BuildRequires: mvn(org.gradle:gradle-base-services) >= 4.4.1 -BuildRequires: mvn(org.gradle:gradle-base-services-groovy) >= 4.4.1 -BuildRequires: mvn(org.gradle:gradle-core) >= 4.4.1 -BuildRequires: mvn(org.gradle:gradle-dependency-management) >= 4.4.1 -BuildRequires: mvn(org.gradle:gradle-resources) >= 4.4.1 -BuildRequires: mvn(org.slf4j:slf4j-api) -#!BuildRequires: gradle-bootstrap groovy-bootstrap gpars-bootstrap -BuildArch: noarch - -%description -This package provides XMvn Connector for Gradle, which provides -integration of Gradle with XMvn. It provides an adapter which allows -XMvn resolver to be used as Gradle resolver. - -%package javadoc -Summary: API documentation for %{name} -Group: Documentation/HTML - -%description javadoc -This package provides %{summary}. - -%prep -%setup -q -n %{parent}-%{version} -%autopatch -p1 - -# Bisect IT has no chances of working in local, offline mode, without -# network access - it needs to access remote repositories. -find -name BisectIntegrationTest.java -delete - -# Resolver IT won't work either - it tries to execute JAR file, which -# relies on Class-Path in manifest, which is forbidden in Fedora... -find -name ResolverIntegrationTest.java -delete - -%pom_remove_plugin -r :maven-site-plugin - -%{mvn_package} ":xmvn{,-it}" __noinstall - -# Upstream code quality checks, not relevant when building RPMs -%pom_remove_plugin -r :apache-rat-plugin -%pom_remove_plugin -r :maven-checkstyle-plugin -%pom_remove_plugin -r :jacoco-maven-plugin -# FIXME pom macros don't seem to support submodules in profile -%pom_remove_plugin :jacoco-maven-plugin xmvn-it - -# remove dependency plugin maven-binaries execution -# we provide apache-maven by symlink -%pom_xpath_remove "pom:executions/pom:execution[pom:id[text()='maven-binaries']]" - -# Don't put Class-Path attributes in manifests -%pom_remove_plugin :maven-jar-plugin xmvn-tools - -pushd %{name} - %{mvn_file} :{*} %{parent}/@1 -popd - -%build -pushd %{name} - %{mvn_build} -f -- -Dsource=8 -popd - -%install -pushd %{name} -%mvn_install -%fdupes -s %{buildroot}%{_javadocdir} -popd - -%files -f %{name}/.mfiles -%license LICENSE NOTICE -%doc AUTHORS README.md - -%files javadoc -f %{name}/.mfiles-javadoc -%license LICENSE NOTICE - -%changelog diff --git a/xmvn-connector-ivy.changes b/xmvn-connector-ivy.changes deleted file mode 100644 index 14c54fa..0000000 --- a/xmvn-connector-ivy.changes +++ /dev/null @@ -1,20 +0,0 @@ -------------------------------------------------------------------- -Thu Nov 21 14:24:55 UTC 2019 - Fridrich Strba - -- Upgrade to upstream version 3.1.0 -- Removed patches: - * 0001-Fix-installer-plugin-loading.patch - * 0001-Port-to-Gradle-4.2.patch - * 0001-Port-to-Gradle-4.3.1.patch - * 0001-Support-setting-Xdoclint-none-in-m-javadoc-p-3.0.0.patch - * 0001-Fix-configuration-of-aliased-plugins.patch - * 0001-Don-t-use-JAXB-for-converting-bytes-to-hex-string.patch - * 0001-Use-apache-commons-compress-for-manifest-injection-a.patch - * 0001-port-to-gradle-4.4.1.patch - * 0001-Replace-JAXB-parser.patch - + Integrated in this version - -------------------------------------------------------------------- -Wed Mar 27 06:25:55 UTC 2019 - Fridrich Strba - -- Initial packaging of xmvn-connector-ivy 3.0.0 diff --git a/xmvn-connector-ivy.spec b/xmvn-connector-ivy.spec deleted file mode 100644 index ac84399..0000000 --- a/xmvn-connector-ivy.spec +++ /dev/null @@ -1,125 +0,0 @@ -# -# spec file -# -# Copyright (c) 2022 SUSE LLC -# -# All modifications and additions to the file contributed by third parties -# remain the property of their copyright owners, unless otherwise agreed -# upon. The license for this file, and modifications and additions to the -# file, is the same license as for the pristine package itself (unless the -# license for the pristine package is not an Open Source License, in which -# case the license is the MIT License). An "Open Source License" is a -# license that conforms to the Open Source Definition (Version 1.9) -# published by the Open Source Initiative. - -# Please submit bugfixes or comments via https://bugs.opensuse.org/ -# - - -%global parent xmvn -%global subname connector-ivy -%bcond_with tests -Name: %{parent}-%{subname} -Version: 3.1.0 -Release: 0 -Summary: XMvn Connector for Apache Ivy -License: Apache-2.0 -Group: Development/Tools/Building -URL: https://fedora-java.github.io/xmvn/ -Source0: https://github.com/fedora-java/%{parent}/releases/download/%{version}/%{parent}-%{version}.tar.xz -Source1: %{parent}-build.tar.xz -Patch1: 0001-Prefer-namespaced-metadata-when-duplicates-are-found.patch -Patch2: 0002-Allow-removing-plugins-during-model-validation.patch -Patch3: 0003-Make-xmvn-subst-honor-settings-for-ignoring-duplicat.patch -Patch4: 0004-Fix-requires-generation-for-self-depending-packages.patch -Patch5: 0005-Fix-resolution-of-aliases-registered-by-add_maven_de.patch -Patch6: 0006-Revert-port-to-gradle-4.5.1.patch -Patch7: 0007-Fixes-56-Honour-source-parameter-in-javadoc-mojo.patch -Patch8: 0008-Mimic-maven-javadoc-plugin-for-source-and-release.patch -BuildRequires: %{parent}-api = %{version} -BuildRequires: ant -BuildRequires: apache-ivy -BuildRequires: fdupes -BuildRequires: javapackages-local -BuildRequires: slf4j -BuildRequires: xmvn-install -BuildRequires: xmvn-resolve -BuildArch: noarch - -%description -This package provides XMvn MOJO, which is a Maven plugin that consists -of several MOJOs. Some goals of these MOJOs are intended to be -attached to default Maven lifecycle when building packages, others can -be called directly from Maven command line. - -%package javadoc -Summary: API documentation for %{name} -Group: Documentation/HTML - -%description javadoc -This package provides %{summary}. - -%prep -%setup -q -n %{parent}-%{version} -a1 - -%autopatch -p1 - -# Bisect IT has no chances of working in local, offline mode, without -# network access - it needs to access remote repositories. -find -name BisectIntegrationTest.java -delete - -# Resolver IT won't work either - it tries to execute JAR file, which -# relies on Class-Path in manifest, which is forbidden in Fedora... -find -name ResolverIntegrationTest.java -delete - -%pom_remove_plugin -r :maven-site-plugin - -%{mvn_package} ":xmvn{,-it}" __noinstall - -# Upstream code quality checks, not relevant when building RPMs -%pom_remove_plugin -r :apache-rat-plugin -%pom_remove_plugin -r :maven-checkstyle-plugin -%pom_remove_plugin -r :jacoco-maven-plugin -# FIXME pom macros don't seem to support submodules in profile -%pom_remove_plugin :jacoco-maven-plugin xmvn-it - -# remove dependency plugin maven-binaries execution -# we provide apache-maven by symlink -%pom_xpath_remove "pom:executions/pom:execution[pom:id[text()='maven-binaries']]" - -# Don't put Class-Path attributes in manifests -%pom_remove_plugin :maven-jar-plugin xmvn-tools - -pushd %{name} - %{mvn_file} :{*} %{parent}/@1 -popd - -%build -mkdir -p lib -build-jar-repository -s lib \ - ivy slf4j/api %{parent}/%{parent}-api -pushd %{name} - %{ant} \ -%if %{without tests} - -Dtest.skip=true \ -%endif - package javadoc - -%{mvn_artifact} pom.xml target/%{name}-%{version}.jar - -popd - -%install -pushd %{name} -%mvn_install -%fdupes -s %{buildroot}%{_javadocdir} -popd - -%files -f %{name}/.mfiles -%license LICENSE NOTICE -%doc AUTHORS README.md - -%files javadoc -f %{name}/.mfiles-javadoc -%license LICENSE NOTICE - -%changelog diff --git a/xmvn-connector-aether.changes b/xmvn-connector.changes similarity index 100% rename from xmvn-connector-aether.changes rename to xmvn-connector.changes diff --git a/xmvn-connector-aether.spec b/xmvn-connector.spec similarity index 82% rename from xmvn-connector-aether.spec rename to xmvn-connector.spec index 4da65ce..aec4dd9 100644 --- a/xmvn-connector-aether.spec +++ b/xmvn-connector.spec @@ -17,10 +17,10 @@ %global parent xmvn -%global subname connector-aether +%global subname connector %bcond_with tests Name: %{parent}-%{subname} -Version: 3.1.0 +Version: 4.0.0 Release: 0 Summary: XMvn Connector for Maven Resolver License: Apache-2.0 @@ -28,14 +28,13 @@ Group: Development/Tools/Building URL: https://fedora-java.github.io/xmvn/ Source0: https://github.com/fedora-java/%{parent}/releases/download/%{version}/%{parent}-%{version}.tar.xz Source1: %{parent}-build.tar.xz -Patch1: 0001-Prefer-namespaced-metadata-when-duplicates-are-found.patch -Patch2: 0002-Allow-removing-plugins-during-model-validation.patch -Patch3: 0003-Make-xmvn-subst-honor-settings-for-ignoring-duplicat.patch -Patch4: 0004-Fix-requires-generation-for-self-depending-packages.patch -Patch5: 0005-Fix-resolution-of-aliases-registered-by-add_maven_de.patch -Patch6: 0006-Revert-port-to-gradle-4.5.1.patch -Patch7: 0007-Fixes-56-Honour-source-parameter-in-javadoc-mojo.patch -Patch8: 0008-Mimic-maven-javadoc-plugin-for-source-and-release.patch +Patch1: 0001-Mimic-maven-javadoc-plugin-for-source-and-release.patch +Patch2: 0002-module-path-not-allowed-with-release-8.patch +Patch3: 0001-Simple-implementation-of-toolchains-https-github.com.patch +Patch4: 0001-Restore-possibility-to-build-with-Java-8.patch +Patch5: 0002-Revert-Update-compiler-source-target-to-JDK-11.patch +Patch6: 0003-Revert-Use-new-Collection-methods-added-in-Java-9.patch +Patch7: 0004-Add-a-jdk9-profile-to-assure-that-we-are-jdk8-compat.patch BuildRequires: %{parent}-api = %{version} BuildRequires: %{parent}-core = %{version} BuildRequires: ant @@ -51,6 +50,8 @@ BuildRequires: sisu-inject BuildRequires: sisu-plexus BuildRequires: xmvn-install BuildRequires: xmvn-resolve +Provides: %{name}-aether = %{version} +Obsoletes: %{name}-aether < %{version} BuildArch: noarch %description @@ -71,10 +72,6 @@ This package provides %{summary}. %autopatch -p1 -# Bisect IT has no chances of working in local, offline mode, without -# network access - it needs to access remote repositories. -find -name BisectIntegrationTest.java -delete - # Resolver IT won't work either - it tries to execute JAR file, which # relies on Class-Path in manifest, which is forbidden in Fedora... find -name ResolverIntegrationTest.java -delete diff --git a/xmvn-mojo.spec b/xmvn-mojo.spec index 61136e6..f18c08b 100644 --- a/xmvn-mojo.spec +++ b/xmvn-mojo.spec @@ -19,21 +19,20 @@ %global parent xmvn %global subname mojo Name: %{parent}-%{subname} -Version: 3.1.0 +Version: 4.0.0 Release: 0 Summary: XMvn MOJO License: Apache-2.0 Group: Development/Tools/Building URL: https://fedora-java.github.io/xmvn/ Source0: https://github.com/fedora-java/%{parent}/releases/download/%{version}/%{parent}-%{version}.tar.xz -Patch1: 0001-Prefer-namespaced-metadata-when-duplicates-are-found.patch -Patch2: 0002-Allow-removing-plugins-during-model-validation.patch -Patch3: 0003-Make-xmvn-subst-honor-settings-for-ignoring-duplicat.patch -Patch4: 0004-Fix-requires-generation-for-self-depending-packages.patch -Patch5: 0005-Fix-resolution-of-aliases-registered-by-add_maven_de.patch -Patch6: 0006-Revert-port-to-gradle-4.5.1.patch -Patch7: 0007-Fixes-56-Honour-source-parameter-in-javadoc-mojo.patch -Patch8: 0008-Mimic-maven-javadoc-plugin-for-source-and-release.patch +Patch1: 0001-Mimic-maven-javadoc-plugin-for-source-and-release.patch +Patch2: 0002-module-path-not-allowed-with-release-8.patch +Patch3: 0001-Simple-implementation-of-toolchains-https-github.com.patch +Patch4: 0001-Restore-possibility-to-build-with-Java-8.patch +Patch5: 0002-Revert-Update-compiler-source-target-to-JDK-11.patch +Patch6: 0003-Revert-Use-new-Collection-methods-added-in-Java-9.patch +Patch7: 0004-Add-a-jdk9-profile-to-assure-that-we-are-jdk8-compat.patch BuildRequires: %{parent}-api = %{version} BuildRequires: %{parent}-core = %{version} BuildRequires: fdupes @@ -82,10 +81,6 @@ This package provides %{summary}. %autopatch -p1 -# Bisect IT has no chances of working in local, offline mode, without -# network access - it needs to access remote repositories. -find -name BisectIntegrationTest.java -delete - # Resolver IT won't work either - it tries to execute JAR file, which # relies on Class-Path in manifest, which is forbidden in Fedora... find -name ResolverIntegrationTest.java -delete @@ -108,7 +103,8 @@ find -name ResolverIntegrationTest.java -delete # Don't put Class-Path attributes in manifests %pom_remove_plugin :maven-jar-plugin xmvn-tools -%pom_remove_dep -r :xmlunit-assertj +# Remove all dependencies with scope test, since a raw xmvn does not hide them +%pom_remove_dep -r :::test: pushd %{name} %{mvn_file} :{*} %{parent}/@1 diff --git a/xmvn-parent.spec b/xmvn-parent.spec index b88c5ce..ae80dfb 100644 --- a/xmvn-parent.spec +++ b/xmvn-parent.spec @@ -19,22 +19,21 @@ %global parent xmvn %global subname parent Name: %{parent}-%{subname} -Version: 3.1.0 +Version: 4.0.0 Release: 0 Summary: XMvn Parent POM License: Apache-2.0 Group: Development/Tools/Building URL: https://fedora-java.github.io/xmvn/ Source0: https://github.com/fedora-java/%{parent}/releases/download/%{version}/%{parent}-%{version}.tar.xz -Patch1: 0001-Prefer-namespaced-metadata-when-duplicates-are-found.patch -Patch2: 0002-Allow-removing-plugins-during-model-validation.patch -Patch3: 0003-Make-xmvn-subst-honor-settings-for-ignoring-duplicat.patch -Patch4: 0004-Fix-requires-generation-for-self-depending-packages.patch -Patch5: 0005-Fix-resolution-of-aliases-registered-by-add_maven_de.patch -Patch6: 0006-Revert-port-to-gradle-4.5.1.patch -Patch7: 0007-Fixes-56-Honour-source-parameter-in-javadoc-mojo.patch -Patch8: 0008-Mimic-maven-javadoc-plugin-for-source-and-release.patch -BuildRequires: javapackages-local +Patch1: 0001-Mimic-maven-javadoc-plugin-for-source-and-release.patch +Patch2: 0002-module-path-not-allowed-with-release-8.patch +Patch3: 0001-Simple-implementation-of-toolchains-https-github.com.patch +Patch4: 0001-Restore-possibility-to-build-with-Java-8.patch +Patch5: 0002-Revert-Update-compiler-source-target-to-JDK-11.patch +Patch6: 0003-Revert-Use-new-Collection-methods-added-in-Java-9.patch +Patch7: 0004-Add-a-jdk9-profile-to-assure-that-we-are-jdk8-compat.patch +BuildRequires: javapackages-local >= 6 BuildRequires: xmvn-resolve BuildRequires: mvn(org.apache.maven.plugins:maven-compiler-plugin) BuildRequires: mvn(org.apache.maven.plugins:maven-jar-plugin) diff --git a/xmvn-tools.spec b/xmvn-tools.spec index 6383851..5391c1f 100644 --- a/xmvn-tools.spec +++ b/xmvn-tools.spec @@ -19,7 +19,7 @@ %global parent xmvn %global subname tools Name: %{parent}-%{subname} -Version: 3.1.0 +Version: 4.0.0 Release: 0 Summary: Local Extensions for Apache Maven License: Apache-2.0 @@ -27,20 +27,19 @@ Group: Development/Tools/Building URL: https://fedora-java.github.io/xmvn/ Source0: https://github.com/fedora-java/xmvn/releases/download/%{version}/%{parent}-%{version}.tar.xz Source1: %{parent}-build.tar.xz -Patch1: 0001-Prefer-namespaced-metadata-when-duplicates-are-found.patch -Patch2: 0002-Allow-removing-plugins-during-model-validation.patch -Patch3: 0003-Make-xmvn-subst-honor-settings-for-ignoring-duplicat.patch -Patch4: 0004-Fix-requires-generation-for-self-depending-packages.patch -Patch5: 0005-Fix-resolution-of-aliases-registered-by-add_maven_de.patch -Patch6: 0006-Revert-port-to-gradle-4.5.1.patch -Patch7: 0007-Fixes-56-Honour-source-parameter-in-javadoc-mojo.patch -Patch8: 0008-Mimic-maven-javadoc-plugin-for-source-and-release.patch +Patch1: 0001-Mimic-maven-javadoc-plugin-for-source-and-release.patch +Patch2: 0002-module-path-not-allowed-with-release-8.patch +Patch3: 0001-Simple-implementation-of-toolchains-https-github.com.patch +Patch4: 0001-Restore-possibility-to-build-with-Java-8.patch +Patch5: 0002-Revert-Update-compiler-source-target-to-JDK-11.patch +Patch6: 0003-Revert-Use-new-Collection-methods-added-in-Java-9.patch +Patch7: 0004-Add-a-jdk9-profile-to-assure-that-we-are-jdk8-compat.patch BuildRequires: ant BuildRequires: apache-commons-compress BuildRequires: beust-jcommander BuildRequires: fdupes BuildRequires: java-devel >= 1.8 -BuildRequires: javapackages-local +BuildRequires: javapackages-local >= 6 BuildRequires: maven-invoker >= 3.0 BuildRequires: modello BuildRequires: objectweb-asm @@ -91,19 +90,6 @@ Basically it's just an interface to artifact resolution mechanism implemented by XMvn Core. The primary intended use case of XMvn Resolver is debugging local artifact repositories. -%package -n %{parent}-bisect -Summary: XMvn Bisect -# Explicit javapackages-tools requires since scripts use -# /usr/share/java-utils/java-functions -Group: Development/Tools/Building -Requires: beust-jcommander -Requires: javapackages-tools -Requires: maven-invoker - -%description -n %{parent}-bisect -This package provides XMvn Bisect, which is a debugging tool that can -diagnose build failures by using bisection method. - %package -n %{parent}-subst Summary: XMvn Subst # Explicit javapackages-tools requires since scripts use @@ -150,10 +136,6 @@ This package provides %{summary}. %autopatch -p1 -# Bisect IT has no chances of working in local, offline mode, without -# network access - it needs to access remote repositories. -find -name BisectIntegrationTest.java -delete - # Resolver IT won't work either - it tries to execute JAR file, which # relies on Class-Path in manifest, which is forbidden in Fedora... find -name ResolverIntegrationTest.java -delete @@ -185,7 +167,7 @@ for i in api core; do %{version}" %{parent}-${i} %pom_remove_parent %{parent}-${i} done -for i in bisect install resolve subst; do +for i in install resolve subst; do %pom_xpath_inject "pom:project" " org.fedoraproject.xmvn %{version}" %{parent}-tools/%{parent}-${i} @@ -207,7 +189,7 @@ install -dm 0755 %{buildroot}%{_javadir}/%{parent} for i in api core; do install -pm 0644 %{parent}-${i}/target/%{parent}-${i}-%{version}.jar %{buildroot}%{_javadir}/%{parent}/%{parent}-${i}.jar done -for i in bisect install resolve subst; do +for i in install resolve subst; do install -pm 0644 %{parent}-tools/%{parent}-${i}/target/%{parent}-${i}-%{version}.jar %{buildroot}%{_javadir}/%{parent}/%{parent}-${i}.jar done @@ -217,7 +199,7 @@ for i in api core; do install -pm 0644 %{parent}-${i}/pom.xml %{buildroot}%{_mavenpomdir}/%{parent}/%{parent}-${i}.pom %add_maven_depmap %{parent}/%{parent}-${i}.pom %{parent}/%{parent}-${i}.jar -f ${i} done -for i in bisect install resolve subst; do +for i in install resolve subst; do install -pm 0644 %{parent}-tools/%{parent}-${i}/pom.xml %{buildroot}%{_mavenpomdir}/%{parent}/%{parent}-${i}.pom %add_maven_depmap %{parent}/%{parent}-${i}.pom %{parent}/%{parent}-${i}.jar -f ${i} done @@ -228,14 +210,13 @@ for i in api core; do install -dm 0755 %{buildroot}%{_javadocdir}/%{parent}/${i} cp -pr %{parent}-${i}/target/site/apidocs/* %{buildroot}%{_javadocdir}/%{parent}/${i}/ done -for i in bisect install resolve subst; do +for i in install resolve subst; do install -dm 0755 %{buildroot}%{_javadocdir}/%{parent}/${i} cp -pr %{parent}-tools/%{parent}-${i}/target/site/apidocs/* %{buildroot}%{_javadocdir}/%{parent}/${i}/ done %fdupes -s %{buildroot}%{_javadocdir} # helper scripts -%jpackage_script org.fedoraproject.xmvn.tools.bisect.BisectCli "" "-Dxmvn.home=%{_datadir}/%{name}" %{parent}/%{parent}-bisect:beust-jcommander:maven-invoker:plexus/utils %{parent}-bisect %jpackage_script org.fedoraproject.xmvn.tools.install.cli.InstallerCli "" "" %{parent}/%{parent}-install:%{parent}/%{parent}-api:%{parent}/%{parent}-core:beust-jcommander:slf4j/api:slf4j/simple:objectweb-asm/asm:commons-compress %{parent}-install %jpackage_script org.fedoraproject.xmvn.tools.resolve.ResolverCli "" "" %{parent}/%{parent}-resolve:%{parent}/%{parent}-api:%{parent}/%{parent}-core:beust-jcommander %{parent}-resolve %jpackage_script org.fedoraproject.xmvn.tools.subst.SubstCli "" "" %{parent}/%{parent}-subst:%{parent}/%{parent}-api:%{parent}/%{parent}-core:beust-jcommander %{parent}-subst @@ -249,9 +230,6 @@ done %files -n %{parent}-resolve -f .mfiles-resolve %{_bindir}/%{parent}-resolve -%files -n %{parent}-bisect -f .mfiles-bisect -%{_bindir}/%{parent}-bisect - %files -n %{parent}-subst -f .mfiles-subst %{_bindir}/%{parent}-subst diff --git a/xmvn.spec b/xmvn.spec index e884e7c..7033d12 100644 --- a/xmvn.spec +++ b/xmvn.spec @@ -17,14 +17,14 @@ Name: xmvn -Version: 3.1.0 +Version: 4.0.0 Release: 0 Summary: Local Extensions for Apache Maven License: Apache-2.0 Group: Development/Tools/Building URL: https://fedora-java.github.io/xmvn/ BuildRequires: %{name}-api = %{version} -BuildRequires: %{name}-connector-aether = %{version} +BuildRequires: %{name}-connector = %{version} BuildRequires: %{name}-core = %{version} BuildRequires: %{name}-subst BuildRequires: javapackages-tools @@ -42,7 +42,7 @@ creating RPM packages containing Maven artifacts. Summary: Dependency-reduced version of XMvn Group: Development/Tools/Building Requires: %{name}-api = %{version} -Requires: %{name}-connector-aether = %{version} +Requires: %{name}-connector = %{version} Requires: %{name}-core = %{version} %requires_eq maven-lib @@ -63,7 +63,7 @@ maven_home=%{_datadir}/maven install -d -m 755 %{buildroot}%{_datadir}/%{name} cp -aL ${maven_home}/* %{buildroot}%{_datadir}/%{name}/ -for i in api core connector-aether; do +for i in api core connector; do ln -s $(build-classpath %{name}/%{name}-${i}) %{buildroot}%{_datadir}/%{name}/lib/ext/ done