Hello community, here is the log from the commit of package xmvn for openSUSE:Factory checked in at 2019-11-26 17:03:05 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/xmvn (Old) and /work/SRC/openSUSE:Factory/.xmvn.new.26869 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "xmvn" Tue Nov 26 17:03:05 2019 rev:4 rq:750911 version:3.1.0 Changes: -------- --- /work/SRC/openSUSE:Factory/xmvn/xmvn-connector-aether.changes 2019-04-03 10:50:36.105918716 +0200 +++ /work/SRC/openSUSE:Factory/.xmvn.new.26869/xmvn-connector-aether.changes 2019-11-26 17:04:47.151998339 +0100 @@ -1,0 +2,16 @@ +Thu Nov 21 14:23:27 UTC 2019 - Fridrich Strba <[email protected]> + +- 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 + +------------------------------------------------------------------- --- /work/SRC/openSUSE:Factory/xmvn/xmvn-connector-gradle.changes 2019-11-19 13:44:56.500397640 +0100 +++ /work/SRC/openSUSE:Factory/.xmvn.new.26869/xmvn-connector-gradle.changes 2019-11-26 17:04:48.751997787 +0100 @@ -1,0 +2,19 @@ +Thu Nov 21 14:25:58 UTC 2019 - Fridrich Strba <[email protected]> + +- 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 + +------------------------------------------------------------------- --- /work/SRC/openSUSE:Factory/xmvn/xmvn-connector-ivy.changes 2019-04-03 10:50:36.257918757 +0200 +++ /work/SRC/openSUSE:Factory/.xmvn.new.26869/xmvn-connector-ivy.changes 2019-11-26 17:04:50.199997287 +0100 @@ -1,0 +2,16 @@ +Thu Nov 21 14:24:55 UTC 2019 - Fridrich Strba <[email protected]> + +- 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 + +------------------------------------------------------------------- --- /work/SRC/openSUSE:Factory/xmvn/xmvn-mojo.changes 2019-04-05 12:06:04.470572537 +0200 +++ /work/SRC/openSUSE:Factory/.xmvn.new.26869/xmvn-mojo.changes 2019-11-26 17:04:51.103996974 +0100 @@ -1,0 +2,16 @@ +Thu Nov 21 14:21:16 UTC 2019 - Fridrich Strba <[email protected]> + +- 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 + +------------------------------------------------------------------- --- /work/SRC/openSUSE:Factory/xmvn/xmvn-parent.changes 2019-04-05 12:06:04.570572498 +0200 +++ /work/SRC/openSUSE:Factory/.xmvn.new.26869/xmvn-parent.changes 2019-11-26 17:04:53.075996293 +0100 @@ -1,0 +2,5 @@ +Thu Nov 21 14:19:39 UTC 2019 - Fridrich Strba <[email protected]> + +- Upgrade to upstream version 3.1.0 + +------------------------------------------------------------------- --- /work/SRC/openSUSE:Factory/xmvn/xmvn-tools.changes 2019-04-03 10:50:36.297918768 +0200 +++ /work/SRC/openSUSE:Factory/.xmvn.new.26869/xmvn-tools.changes 2019-11-26 17:04:54.403995835 +0100 @@ -1,0 +2,24 @@ +Thu Nov 21 14:13:46 UTC 2019 - Fridrich Strba <[email protected]> + +- Upgrade to upstream version 3.1.0 + * Requires maven-invoker >= 3.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 patches: + * 0001-Prefer-namespaced-metadata-when-duplicates-are-found.patch + * 0002-Make-xmvn-subst-honor-settings-for-ignoring-duplicat.patch + + upstream fixes to ignore duplicate metadata + * 0003-Fix-requires-generation-for-self-depending-packages.patch + + Downstream bug-fix with generation of metadata for + self-depending packages + +------------------------------------------------------------------- --- /work/SRC/openSUSE:Factory/xmvn/xmvn.changes 2019-04-03 10:50:36.377918789 +0200 +++ /work/SRC/openSUSE:Factory/.xmvn.new.26869/xmvn.changes 2019-11-26 17:04:54.955995644 +0100 @@ -1,0 +2,5 @@ +Thu Nov 21 14:12:45 UTC 2019 - Fridrich Strba <[email protected]> + +- Upgrade to upstream version 3.1.0 + +------------------------------------------------------------------- Old: ---- 0001-Don-t-use-JAXB-for-converting-bytes-to-hex-string.patch 0001-Fix-configuration-of-aliased-plugins.patch 0001-Fix-installer-plugin-loading.patch 0001-Port-to-Gradle-4.2.patch 0001-Port-to-Gradle-4.3.1.patch 0001-Replace-JAXB-parser.patch 0001-Support-setting-Xdoclint-none-in-m-javadoc-p-3.0.0.patch 0001-Use-apache-commons-compress-for-manifest-injection-a.patch 0001-port-to-gradle-4.4.1.patch xmvn-3.0.0.tar.xz New: ---- 0001-Prefer-namespaced-metadata-when-duplicates-are-found.patch 0002-Make-xmvn-subst-honor-settings-for-ignoring-duplicat.patch 0003-Fix-requires-generation-for-self-depending-packages.patch xmvn-3.1.0.tar.xz xmvn-gradle_4_4_1.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ xmvn-connector-aether.spec ++++++ --- /var/tmp/diff_new_pack.HvwOgp/_old 2019-11-26 17:04:55.839995338 +0100 +++ /var/tmp/diff_new_pack.HvwOgp/_new 2019-11-26 17:04:55.843995337 +0100 @@ -1,7 +1,7 @@ # # spec file for package xmvn-connector-aether # -# Copyright (c) 2019 SUSE LLC. +# Copyright (c) 2019 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -20,7 +20,7 @@ %global subname connector-aether %bcond_with tests Name: %{parent}-%{subname} -Version: 3.0.0 +Version: 3.1.0 Release: 0 Summary: XMvn Connector for Maven Resolver License: Apache-2.0 @@ -28,19 +28,11 @@ 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 -Patch0: 0001-Fix-installer-plugin-loading.patch -Patch1: 0001-Port-to-Gradle-4.2.patch -Patch2: 0001-Port-to-Gradle-4.3.1.patch -Patch3: 0001-Support-setting-Xdoclint-none-in-m-javadoc-p-3.0.0.patch -Patch4: 0001-Fix-configuration-of-aliased-plugins.patch -Patch5: 0001-Don-t-use-JAXB-for-converting-bytes-to-hex-string.patch -Patch6: 0001-Use-apache-commons-compress-for-manifest-injection-a.patch -Patch7: 0001-port-to-gradle-4.4.1.patch -Patch8: 0001-Replace-JAXB-parser.patch BuildRequires: %{parent}-api = %{version} BuildRequires: %{parent}-core = %{version} BuildRequires: ant BuildRequires: fdupes +BuildRequires: guava BuildRequires: javapackages-local BuildRequires: maven-lib BuildRequires: maven-resolver-api @@ -68,15 +60,6 @@ %prep %setup -q -n %{parent}-%{version} -a1 -%patch0 -p1 -%patch1 -p1 -%patch2 -p1 -%patch3 -p1 -%patch4 -p1 -%patch5 -p1 -%patch6 -p1 -%patch7 -p1 -%patch8 -p1 # Bisect IT has no chances of working in local, offline mode, without # network access - it needs to access remote repositories. @@ -113,7 +96,7 @@ build-jar-repository -s lib \ atinject \ commons-cli \ - guava20/guava-20.0 \ + guava/guava \ guice/google-guice-no_aop \ jdom2/jdom2 \ maven/maven-artifact \ ++++++ xmvn-connector-gradle.spec ++++++ --- /var/tmp/diff_new_pack.HvwOgp/_old 2019-11-26 17:04:55.859995331 +0100 +++ /var/tmp/diff_new_pack.HvwOgp/_new 2019-11-26 17:04:55.863995330 +0100 @@ -1,7 +1,7 @@ # # spec file for package xmvn-connector-gradle # -# Copyright (c) 2019 SUSE LLC. +# Copyright (c) 2019 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -19,23 +19,16 @@ %global parent xmvn %global subname connector-gradle Name: %{parent}-%{subname} -Version: 3.0.0 +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 -Patch0: 0001-Fix-installer-plugin-loading.patch -Patch1: 0001-Port-to-Gradle-4.2.patch -Patch2: 0001-Port-to-Gradle-4.3.1.patch -Patch3: 0001-Support-setting-Xdoclint-none-in-m-javadoc-p-3.0.0.patch -Patch4: 0001-Fix-configuration-of-aliased-plugins.patch -Patch5: 0001-Don-t-use-JAXB-for-converting-bytes-to-hex-string.patch -Patch6: 0001-Use-apache-commons-compress-for-manifest-injection-a.patch -Patch7: 0001-port-to-gradle-4.4.1.patch -Patch8: 0001-Replace-JAXB-parser.patch -Patch9: 0001-Fix-resolution-of-aliases-registered-by-add_maven_de.patch +Patch0: 0001-Fix-resolution-of-aliases-registered-by-add_maven_de.patch +# Backport to gradle 4.4.1 +Patch1: xmvn-gradle_4_4_1.patch BuildRequires: fdupes # Build this one with the bootstrap package in order to avoid build cycles BuildRequires: maven-local @@ -68,14 +61,6 @@ %setup -q -n %{parent}-%{version} %patch0 -p1 %patch1 -p1 -%patch2 -p1 -%patch3 -p1 -%patch4 -p1 -%patch5 -p1 -%patch6 -p1 -%patch7 -p1 -%patch8 -p1 -%patch9 -p1 # Bisect IT has no chances of working in local, offline mode, without # network access - it needs to access remote repositories. ++++++ xmvn-connector-ivy.spec ++++++ --- /var/tmp/diff_new_pack.HvwOgp/_old 2019-11-26 17:04:55.879995324 +0100 +++ /var/tmp/diff_new_pack.HvwOgp/_new 2019-11-26 17:04:55.883995323 +0100 @@ -1,7 +1,7 @@ # # spec file for package xmvn-connector-ivy # -# Copyright (c) 2019 SUSE LLC. +# Copyright (c) 2019 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -20,7 +20,7 @@ %global subname connector-ivy %bcond_with tests Name: %{parent}-%{subname} -Version: 3.0.0 +Version: 3.1.0 Release: 0 Summary: XMvn Connector for Apache Ivy License: Apache-2.0 @@ -28,15 +28,6 @@ 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 -Patch0: 0001-Fix-installer-plugin-loading.patch -Patch1: 0001-Port-to-Gradle-4.2.patch -Patch2: 0001-Port-to-Gradle-4.3.1.patch -Patch3: 0001-Support-setting-Xdoclint-none-in-m-javadoc-p-3.0.0.patch -Patch4: 0001-Fix-configuration-of-aliased-plugins.patch -Patch5: 0001-Don-t-use-JAXB-for-converting-bytes-to-hex-string.patch -Patch6: 0001-Use-apache-commons-compress-for-manifest-injection-a.patch -Patch7: 0001-port-to-gradle-4.4.1.patch -Patch8: 0001-Replace-JAXB-parser.patch BuildRequires: %{parent}-api = %{version} BuildRequires: ant BuildRequires: apache-ivy @@ -62,15 +53,6 @@ %prep %setup -q -n %{parent}-%{version} -a1 -%patch0 -p1 -%patch1 -p1 -%patch2 -p1 -%patch3 -p1 -%patch4 -p1 -%patch5 -p1 -%patch6 -p1 -%patch7 -p1 -%patch8 -p1 # Bisect IT has no chances of working in local, offline mode, without # network access - it needs to access remote repositories. ++++++ xmvn-mojo.spec ++++++ --- /var/tmp/diff_new_pack.HvwOgp/_old 2019-11-26 17:04:55.899995318 +0100 +++ /var/tmp/diff_new_pack.HvwOgp/_new 2019-11-26 17:04:55.903995316 +0100 @@ -1,7 +1,7 @@ # # spec file for package xmvn-mojo # -# Copyright (c) 2019 SUSE LLC. +# Copyright (c) 2019 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -19,22 +19,13 @@ %global parent xmvn %global subname mojo Name: %{parent}-%{subname} -Version: 3.0.0 +Version: 3.1.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 -Patch0: 0001-Fix-installer-plugin-loading.patch -Patch1: 0001-Port-to-Gradle-4.2.patch -Patch2: 0001-Port-to-Gradle-4.3.1.patch -Patch3: 0001-Support-setting-Xdoclint-none-in-m-javadoc-p-3.0.0.patch -Patch4: 0001-Fix-configuration-of-aliased-plugins.patch -Patch5: 0001-Don-t-use-JAXB-for-converting-bytes-to-hex-string.patch -Patch6: 0001-Use-apache-commons-compress-for-manifest-injection-a.patch -Patch7: 0001-port-to-gradle-4.4.1.patch -Patch8: 0001-Replace-JAXB-parser.patch BuildRequires: %{parent}-api = %{version} BuildRequires: %{parent}-core = %{version} BuildRequires: fdupes @@ -80,15 +71,6 @@ %prep %setup -q -n %{parent}-%{version} -%patch0 -p1 -%patch1 -p1 -%patch2 -p1 -%patch3 -p1 -%patch4 -p1 -%patch5 -p1 -%patch6 -p1 -%patch7 -p1 -%patch8 -p1 # Bisect IT has no chances of working in local, offline mode, without # network access - it needs to access remote repositories. @@ -116,6 +98,8 @@ # Don't put Class-Path attributes in manifests %pom_remove_plugin :maven-jar-plugin xmvn-tools +%pom_remove_dep -r :xmlunit-assertj + pushd %{name} %{mvn_file} :{*} %{parent}/@1 popd ++++++ xmvn-parent.spec ++++++ --- /var/tmp/diff_new_pack.HvwOgp/_old 2019-11-26 17:04:55.923995309 +0100 +++ /var/tmp/diff_new_pack.HvwOgp/_new 2019-11-26 17:04:55.923995309 +0100 @@ -1,7 +1,7 @@ # # spec file for package xmvn-parent # -# Copyright (c) 2019 SUSE LLC. +# Copyright (c) 2019 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -19,7 +19,7 @@ %global parent xmvn %global subname parent Name: %{parent}-%{subname} -Version: 3.0.0 +Version: 3.1.0 Release: 0 Summary: XMvn Parent POM License: Apache-2.0 ++++++ xmvn-tools.spec ++++++ --- /var/tmp/diff_new_pack.HvwOgp/_old 2019-11-26 17:04:55.947995301 +0100 +++ /var/tmp/diff_new_pack.HvwOgp/_new 2019-11-26 17:04:55.947995301 +0100 @@ -1,7 +1,7 @@ # # spec file for package xmvn-tools # -# Copyright (c) 2019 SUSE LLC. +# Copyright (c) 2019 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -19,7 +19,7 @@ %global parent xmvn %global subname tools Name: %{parent}-%{subname} -Version: 3.0.0 +Version: 3.1.0 Release: 0 Summary: Local Extensions for Apache Maven License: Apache-2.0 @@ -27,22 +27,16 @@ 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 -Patch0: 0001-Fix-installer-plugin-loading.patch -Patch1: 0001-Port-to-Gradle-4.2.patch -Patch2: 0001-Port-to-Gradle-4.3.1.patch -Patch3: 0001-Support-setting-Xdoclint-none-in-m-javadoc-p-3.0.0.patch -Patch4: 0001-Fix-configuration-of-aliased-plugins.patch -Patch5: 0001-Don-t-use-JAXB-for-converting-bytes-to-hex-string.patch -Patch6: 0001-Use-apache-commons-compress-for-manifest-injection-a.patch -Patch7: 0001-port-to-gradle-4.4.1.patch -Patch8: 0001-Replace-JAXB-parser.patch +Patch1: 0001-Prefer-namespaced-metadata-when-duplicates-are-found.patch +Patch2: 0002-Make-xmvn-subst-honor-settings-for-ignoring-duplicat.patch +Patch3: 0003-Fix-requires-generation-for-self-depending-packages.patch BuildRequires: ant BuildRequires: apache-commons-compress BuildRequires: beust-jcommander BuildRequires: fdupes BuildRequires: java-devel >= 1.8 BuildRequires: javapackages-local -BuildRequires: maven-invoker +BuildRequires: maven-invoker >= 3.0 BuildRequires: modello BuildRequires: objectweb-asm BuildRequires: plexus-containers-component-annotations @@ -138,24 +132,20 @@ to XMvn installer. The installer reads reactor metadata and performs artifact installation according to specified configuration. -%package -n javadoc +%package javadoc Summary: API documentation for %{name} Group: Documentation/HTML +Obsoletes: javadoc -%description -n javadoc +%description javadoc This package provides %{summary}. %prep %setup -q -n %{parent}-%{version} -a1 -%patch0 -p1 + %patch1 -p1 %patch2 -p1 %patch3 -p1 -%patch4 -p1 -%patch5 -p1 -%patch6 -p1 -%patch7 -p1 -%patch8 -p1 # Bisect IT has no chances of working in local, offline mode, without # network access - it needs to access remote repositories. @@ -204,7 +194,8 @@ build-jar-repository -s lib \ beust-jcommander commons-compress maven-invoker/maven-invoker \ objectweb-asm/asm plexus-containers/plexus-component-annotations \ - plexus-containers/plexus-container-default plexus/utils slf4j/api + plexus-containers/plexus-container-default plexus/utils slf4j/api \ + maven-shared-utils/maven-shared-utils %{ant} -Dtest.skip=true package javadoc %install @@ -264,7 +255,7 @@ %files -n %{parent}-install -f .mfiles-install %{_bindir}/%{parent}-install -%files -n javadoc +%files javadoc %license LICENSE NOTICE %{_javadocdir}/%{parent} ++++++ xmvn.spec ++++++ --- /var/tmp/diff_new_pack.HvwOgp/_old 2019-11-26 17:04:55.975995291 +0100 +++ /var/tmp/diff_new_pack.HvwOgp/_new 2019-11-26 17:04:55.979995290 +0100 @@ -1,7 +1,7 @@ # # spec file for package xmvn # -# Copyright (c) 2019 SUSE LLC. +# Copyright (c) 2019 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -17,7 +17,7 @@ Name: xmvn -Version: 3.0.0 +Version: 3.1.0 Release: 0 Summary: Local Extensions for Apache Maven License: Apache-2.0 ++++++ 0001-Prefer-namespaced-metadata-when-duplicates-are-found.patch ++++++ >From 1474fd57e606bdb00417524a7b648f7841b014c8 Mon Sep 17 00:00:00 2001 From: Mikolaj Izdebski <[email protected]> Date: Fri, 28 Jun 2019 12:15:23 +0200 Subject: [PATCH 1/3] 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.21.0 ++++++ 0002-Make-xmvn-subst-honor-settings-for-ignoring-duplicat.patch ++++++ >From 4957492864d6a88a814bfd6f21798b52a4e70515 Mon Sep 17 00:00:00 2001 From: Mikolaj Izdebski <[email protected]> Date: Sat, 29 Jun 2019 14:00:13 +0200 Subject: [PATCH 2/3] 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<String> 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<String> repos ) + { + MetadataRequest request = new MetadataRequest( repos ); + request.setIgnoreDuplicates( resolverSettings.isIgnoreDuplicateMetadata() ); + MetadataResult result = metadataResolver.resolveMetadata( request ); + return result; } private void run( SubstCliRequest cliRequest ) { - List<MetadataResult> metadataResolvers = new ArrayList<>(); + List<MetadataResult> metadataResults = new ArrayList<>(); if ( cliRequest.getRoot() != null ) { List<String> 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.21.0 ++++++ 0003-Fix-requires-generation-for-self-depending-packages.patch ++++++ >From a07c7079d6e7ed3f799454a827836b3ca3033e45 Mon Sep 17 00:00:00 2001 From: Mikolaj Izdebski <[email protected]> Date: Mon, 1 Jul 2019 12:22:04 +0200 Subject: [PATCH 3/3] 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..59e8ad61 --- /dev/null +++ b/xmvn-tools/xmvn-install/src/test/resources/self-requires-resolved.xml @@ -0,0 +1,25 @@ +<?xml version="1.0" encoding="UTF-8"?> +<metadata xmlns="http://fedorahosted.org/xmvn/METADATA/3.0.0"> + <uuid>bfb4d47f-4bf2-49bc-bd85-1d3528e97746</uuid> + <artifacts> + <artifact> + <groupId>org.apache.maven.wagon</groupId> + <artifactId>wagon-provider-api</artifactId> + <version>3.3.2</version> + <path>???example.jar</path> + </artifact> + <artifact> + <groupId>org.apache.maven.wagon</groupId> + <artifactId>wagon-file</artifactId> + <version>3.3.2</version> + <path>???example.jar</path> + <dependencies> + <dependency> + <groupId>org.apache.maven.wagon</groupId> + <artifactId>wagon-provider-api</artifactId> + <requestedVersion>3.3.2</requestedVersion> + </dependency> + </dependencies> + </artifact> + </artifacts> +</metadata> 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 @@ +<?xml version="1.0" encoding="UTF-8"?> +<metadata xmlns="http://fedorahosted.org/xmvn/METADATA/3.2.0"> + <artifacts> + <artifact> + <groupId>org.apache.maven.wagon</groupId> + <artifactId>wagon-provider-api</artifactId> + <version>3.3.2</version> + <path>src/test/resources/example.jar</path> + </artifact> + <artifact> + <groupId>org.apache.maven.wagon</groupId> + <artifactId>wagon-file</artifactId> + <version>3.3.2</version> + <path>src/test/resources/example.jar</path> + <dependencies> + <dependency> + <groupId>org.apache.maven.wagon</groupId> + <artifactId>wagon-provider-api</artifactId> + <requestedVersion>3.3.2</requestedVersion> + </dependency> + </dependencies> + </artifact> + </artifacts> +</metadata> \ No newline at end of file -- 2.21.0 ++++++ xmvn-3.0.0.tar.xz -> xmvn-3.1.0.tar.xz ++++++ ++++ 13102 lines of diff (skipped) ++++++ xmvn-build.tar.xz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/common.xml new/common.xml --- old/common.xml 2019-03-22 06:33:33.743502056 +0100 +++ new/common.xml 2019-11-21 14:02:20.080555084 +0100 @@ -3,7 +3,7 @@ <project name="common" basedir="."> <property file="build.properties"/> - <property name="project.version" value="3.0.0"/> + <property name="project.version" value="3.1.0"/> <property name="project.groupId" value="org.fedoraproject.xmvn"/> <property name="compiler.source" value="1.8"/> ++++++ xmvn-gradle_4_4_1.patch ++++++ --- xmvn-3.1.0/xmvn-connector-gradle/src/main/java/org/fedoraproject/xmvn/connector/gradle/GradleResolver.java 2019-06-14 13:04:11.000000000 +0200 +++ xmvn-3.1.0/xmvn-connector-gradle/src/main/java/org/fedoraproject/xmvn/connector/gradle/GradleResolver.java 2019-11-21 14:38:15.619695681 +0100 @@ -25,7 +25,6 @@ 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.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 GradleResolver( MetaDataParser<MutableMavenModuleResolveMetadata> 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<MutableMavenModuleResolveMetadata> 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 @@ 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.<MavenDependencyDescriptor>emptyList(), - immutableAttributesFactory, objectInstantiator, - experimentalFeatures ); + MutableModuleComponentResolveMetadata metaData = + DefaultMutableMavenModuleResolveMetadata.missing( mvi, id ); result.resolved( metaData.asImmutable() ); return; } --- xmvn-3.1.0/xmvn-parent/pom.xml 2019-06-14 13:04:11.000000000 +0200 +++ xmvn-3.1.0/xmvn-parent/pom.xml 2019-11-21 14:36:19.831099473 +0100 @@ -84,7 +84,7 @@ <atinjectVersion>1</atinjectVersion> <ivyVersion>2.5.0-rc1</ivyVersion> <jcommanderVersion>1.72</jcommanderVersion> - <gradleVersion>4.5.1</gradleVersion> + <gradleVersion>4.4.1</gradleVersion> <groovyVersion>2.4.12</groovyVersion> <mavenInvokerVersion>3.0.1</mavenInvokerVersion> <mavenResolverVersion>1.3.1</mavenResolverVersion>
