commit 68b8bf19ec1ff1b10debe0b46fc878c1c44d81740c584b3fa01032f642853806 Author: Fridrich Strba Date: Wed Mar 20 10:52:06 2019 +0000 OBS-URL: https://build.opensuse.org/package/show/Java:packages/maven-resolver?expand=0&rev=1 diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..9b03811 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,23 @@ +## Default LFS +*.7z filter=lfs diff=lfs merge=lfs -text +*.bsp filter=lfs diff=lfs merge=lfs -text +*.bz2 filter=lfs diff=lfs merge=lfs -text +*.gem filter=lfs diff=lfs merge=lfs -text +*.gz filter=lfs diff=lfs merge=lfs -text +*.jar filter=lfs diff=lfs merge=lfs -text +*.lz filter=lfs diff=lfs merge=lfs -text +*.lzma filter=lfs diff=lfs merge=lfs -text +*.obscpio filter=lfs diff=lfs merge=lfs -text +*.oxt filter=lfs diff=lfs merge=lfs -text +*.pdf filter=lfs diff=lfs merge=lfs -text +*.png filter=lfs diff=lfs merge=lfs -text +*.rpm filter=lfs diff=lfs merge=lfs -text +*.tbz filter=lfs diff=lfs merge=lfs -text +*.tbz2 filter=lfs diff=lfs merge=lfs -text +*.tgz filter=lfs diff=lfs merge=lfs -text +*.ttf filter=lfs diff=lfs merge=lfs -text +*.txz filter=lfs diff=lfs merge=lfs -text +*.whl filter=lfs diff=lfs merge=lfs -text +*.xz filter=lfs diff=lfs merge=lfs -text +*.zip filter=lfs diff=lfs merge=lfs -text +*.zst filter=lfs diff=lfs merge=lfs -text diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..57affb6 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +.osc diff --git a/maven-resolver-1.3.1-java8compat.patch b/maven-resolver-1.3.1-java8compat.patch new file mode 100644 index 0000000..be53a6b --- /dev/null +++ b/maven-resolver-1.3.1-java8compat.patch @@ -0,0 +1,96 @@ +--- maven-resolver-1.3.1/maven-resolver-connector-basic/src/main/java/org/eclipse/aether/connector/basic/ChecksumCalculator.java 2018-11-01 17:20:57.663142972 +0100 ++++ maven-resolver-1.3.1/maven-resolver-connector-basic/src/main/java/org/eclipse/aether/connector/basic/ChecksumCalculator.java 2018-11-16 12:47:37.324328358 +0100 +@@ -23,6 +23,7 @@ + import java.io.FileInputStream; + import java.io.IOException; + import java.io.InputStream; ++import java.nio.Buffer; + import java.nio.ByteBuffer; + import java.security.MessageDigest; + import java.security.NoSuchAlgorithmException; +@@ -164,8 +165,8 @@ + { + read -= total - dataOffset; + } +- buffer.rewind(); +- buffer.limit( read ); ++ ((Buffer)buffer).rewind(); ++ ((Buffer)buffer).limit( read ); + update( buffer ); + } + +@@ -199,9 +200,9 @@ + { + for ( Checksum checksum : checksums ) + { +- data.mark(); ++ ((Buffer)data).mark(); + checksum.update( data ); +- data.reset(); ++ ((Buffer)data).reset(); + } + } + +--- maven-resolver-1.3.1/maven-resolver-impl/src/main/java/org/eclipse/aether/internal/impl/DefaultFileProcessor.java 2018-11-01 17:20:57.667142992 +0100 ++++ maven-resolver-1.3.1/maven-resolver-impl/src/main/java/org/eclipse/aether/internal/impl/DefaultFileProcessor.java 2018-11-16 12:53:34.318211356 +0100 +@@ -25,6 +25,7 @@ + import java.io.IOException; + import java.io.InputStream; + import java.io.OutputStream; ++import java.nio.Buffer; + import java.nio.ByteBuffer; + import java.nio.charset.StandardCharsets; + +@@ -229,8 +230,8 @@ + { + try + { +- buffer.rewind(); +- buffer.limit( bytes ); ++ ((Buffer)buffer).rewind(); ++ ((Buffer)buffer).limit( bytes ); + listener.progressed( buffer ); + } + catch ( Exception e ) +--- maven-resolver-1.3.1/maven-resolver-spi/src/main/java/org/eclipse/aether/spi/connector/transport/AbstractTransporter.java 2018-11-01 17:20:57.691143110 +0100 ++++ maven-resolver-1.3.1/maven-resolver-spi/src/main/java/org/eclipse/aether/spi/connector/transport/AbstractTransporter.java 2018-11-16 12:51:22.725517276 +0100 +@@ -22,6 +22,7 @@ + import java.io.IOException; + import java.io.InputStream; + import java.io.OutputStream; ++import java.nio.Buffer; + import java.nio.ByteBuffer; + import java.util.concurrent.atomic.AtomicBoolean; + +@@ -251,8 +252,8 @@ + for ( int read = is.read( array ); read >= 0; read = is.read( array ) ) + { + os.write( array, 0, read ); +- buffer.rewind(); +- buffer.limit( read ); ++ ((Buffer)buffer).rewind(); ++ ((Buffer)buffer).limit( read ); + listener.transportProgressed( buffer ); + } + } +--- maven-resolver-1.3.1/maven-resolver-test-util/src/main/java/org/eclipse/aether/internal/test/util/TestFileProcessor.java 2018-11-01 17:20:57.695143130 +0100 ++++ maven-resolver-1.3.1/maven-resolver-test-util/src/main/java/org/eclipse/aether/internal/test/util/TestFileProcessor.java 2018-11-16 12:50:32.565252686 +0100 +@@ -26,6 +26,7 @@ + import java.io.IOException; + import java.io.InputStream; + import java.io.OutputStream; ++import java.nio.Buffer; + import java.nio.ByteBuffer; + import java.nio.charset.StandardCharsets; + +@@ -218,8 +219,8 @@ + { + try + { +- buffer.rewind(); +- buffer.limit( bytes ); ++ ((Buffer)buffer).rewind(); ++ ((Buffer)buffer).limit( bytes ); + listener.progressed( buffer ); + } + catch ( Exception e ) diff --git a/maven-resolver-1.3.1-source-release.zip b/maven-resolver-1.3.1-source-release.zip new file mode 100644 index 0000000..e2f2fb0 --- /dev/null +++ b/maven-resolver-1.3.1-source-release.zip @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e05de9f5539f18967464210fdc2142df7d7f0f2d7a86849c3800130054dafae5 +size 1333887 diff --git a/maven-resolver-build.tar.xz b/maven-resolver-build.tar.xz new file mode 100644 index 0000000..548809d --- /dev/null +++ b/maven-resolver-build.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f36478a0f1f937760ece7b0cb4adffd16f3c359f1e2e7cd0698729c8aaa62796 +size 5304 diff --git a/maven-resolver.changes b/maven-resolver.changes new file mode 100644 index 0000000..9454fc0 --- /dev/null +++ b/maven-resolver.changes @@ -0,0 +1,8 @@ +------------------------------------------------------------------- +Wed Mar 20 10:26:50 UTC 2019 - Fridrich Strba + +- Initial packaging of maven-resolver 1.3.1 +- Generate and customize the ant build files +- Added patch: + * maven-resolver-1.3.1-java8compat.patch + + avoid calling APIs added in Java 9 diff --git a/maven-resolver.spec b/maven-resolver.spec new file mode 100644 index 0000000..ccfe75b --- /dev/null +++ b/maven-resolver.spec @@ -0,0 +1,255 @@ +# +# spec file for package maven-resolver +# +# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany. +# +# 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/ +# + + +%bcond_with tests +Name: maven-resolver +Version: 1.3.1 +Release: 0 +Summary: Apache Maven Artifact Resolver library +License: Apache-2.0 +Group: Development/Libraries/Java +URL: http://maven.apache.org/resolver/ +Source0: http://archive.apache.org/dist/maven/resolver/%{name}-%{version}-source-release.zip +Source1: %{name}-build.tar.xz +Patch0: maven-resolver-1.3.1-java8compat.patch +BuildRequires: ant +BuildRequires: atinject +BuildRequires: fdupes +BuildRequires: google-guice +BuildRequires: httpcomponents-client +BuildRequires: httpcomponents-core +BuildRequires: javapackages-local +BuildRequires: jcl-over-slf4j +BuildRequires: maven-wagon-provider-api +BuildRequires: plexus-classworlds +BuildRequires: plexus-utils +BuildRequires: sisu-inject +BuildRequires: sisu-plexus +BuildRequires: slf4j +BuildRequires: unzip +BuildRequires: xmvn-install +BuildRequires: xmvn-resolve +BuildArch: noarch +%if %{with tests} +BuildRequires: ant-junit +BuildRequires: cglib +BuildRequires: guava20 +BuildRequires: mockito +BuildRequires: objectweb-asm +BuildRequires: objenesis +BuildRequires: plexus-containers-component-annotations +BuildRequires: sisu-plexus +%endif + +%description +Apache Maven Artifact Resolver is a library for working with artifact +repositories and dependency resolution. Maven Artifact Resolver deals with the +specification of local repository, remote repository, developer workspaces, +artifact transports and artifact resolution. + +%package api +Summary: Maven Artifact Resolver API +Group: Development/Libraries/Java + +%description api +The application programming interface for the repository system. + +%package spi +Summary: Maven Artifact Resolver SPI +Group: Development/Libraries/Java + +%description spi +The service provider interface for repository system implementations and +repository connectors. + +%package util +Summary: Maven Artifact Resolver Utilities +Group: Development/Libraries/Java + +%description util +A collection of utility classes to ease usage of the repository system. + +%package impl +Summary: Maven Artifact Resolver Implementation +Group: Development/Libraries/Java + +%description impl +An implementation of the repository system. + +%package test-util +Summary: Maven Artifact Resolver Test Utilities +Group: Development/Libraries/Java + +%description test-util +A collection of utility classes to ease testing of the repository system. + +%package connector-basic +Summary: Maven Artifact Resolver Connector Basic +Group: Development/Libraries/Java + +%description connector-basic +A repository connector implementation for repositories using URI-based layouts. + +%package transport-classpath +Summary: Maven Artifact Resolver Transport Classpath +Group: Development/Libraries/Java + +%description transport-classpath +A transport implementation for repositories using classpath:// URLs. + +%package transport-file +Summary: Maven Artifact Resolver Transport File +Group: Development/Libraries/Java + +%description transport-file +A transport implementation for repositories using file:// URLs. + +%package transport-http +Summary: Maven Artifact Resolver Transport HTTP +Group: Development/Libraries/Java + +%description transport-http +A transport implementation for repositories using http:// and https:// URLs. + +%package transport-wagon +Summary: Maven Artifact Resolver Transport Wagon +Group: Development/Libraries/Java + +%description transport-wagon +A transport implementation based on Maven Wagon. + +%package javadoc +Summary: API documentation for %{name} +Group: Documentation/HTML + +%description javadoc +This package provides %{summary}. + +%prep +%setup -q -a1 +%patch0 -p1 + +# tests require jetty 7 +%pom_remove_dep :::test maven-resolver-transport-http +rm -r maven-resolver-transport-http/src/test + +%pom_disable_module maven-resolver-demos + +# generate OSGi manifests +for pom in $(find -mindepth 2 -name pom.xml) ; do + %pom_add_plugin "org.apache.felix:maven-bundle-plugin" $pom \ + " + + \${project.groupId}$(sed 's:./maven-resolver::;s:/pom.xml::;s:-:.:g' <<< $pom) + !org.eclipse.aether.internal*,org.eclipse.aether* + <_nouses>true + + + + + create-manifest + process-classes + manifest + + " +done +%pom_add_plugin "org.apache.maven.plugins:maven-jar-plugin" pom.xml \ +" + + \${project.build.outputDirectory}/META-INF/MANIFEST.MF + +" + +%{mvn_package} :maven-resolver +%{mvn_package} :maven-resolver-{*} @1 +%{mvn_alias} 'org.apache.maven.resolver:maven-resolver{*}' 'org.eclipse.aether:aether@1' +%{mvn_file} ':maven-resolver{*}' %{name}/maven-resolver@1 aether/aether@1 + +# Try to avoid sucking in dependencies on packages that are not built at this moment +%pom_remove_parent . +%pom_remove_plugin :maven-jar-plugin . + +%build +mkdir -p lib +build-jar-repository -s lib \ + atinject \ + guice/google-guice-no_aop \ + httpcomponents/httpclient \ + httpcomponents/httpcore \ + maven-wagon/provider-api \ + org.eclipse.sisu.inject \ + org.eclipse.sisu.plexus \ + plexus-classworlds \ + plexus/utils \ + slf4j/api +%if %{with tests} +build-jar-repository -s lib \ + cglib/cglib \ + guava20/guava-20.0 \ + mockito/mockito-core \ + objectweb-asm/asm \ + objenesis/objenesis \ + plexus-containers/plexus-component-annotations \ + slf4j/simple +%endif +%{ant} \ +%if %{without tests} + -Dtest.skip=true \ +%endif + package javadoc + +%mvn_artifact pom.xml + +mkdir -p target/site/apidocs +for i in api spi test-util util impl connector-basic transport-classpath transport-file transport-http transport-wagon; do + ln -s $(pwd)/%{name}-${i}/target/site/apidocs target/site/apidocs/%{name}-${i} + %{mvn_artifact} %{name}-${i}/pom.xml %{name}-${i}/target/%{name}-${i}-%{version}.jar +done + +%install +%mvn_install +%fdupes -s %{buildroot}%{_javadocdir} + +%files -f .mfiles +%license LICENSE NOTICE + +%files api -f .mfiles-api +%license LICENSE NOTICE + +%files spi -f .mfiles-spi + +%files util -f .mfiles-util + +%files impl -f .mfiles-impl + +%files test-util -f .mfiles-test-util + +%files connector-basic -f .mfiles-connector-basic + +%files transport-classpath -f .mfiles-transport-classpath + +%files transport-file -f .mfiles-transport-file + +%files transport-http -f .mfiles-transport-http + +%files transport-wagon -f .mfiles-transport-wagon + +%files javadoc -f .mfiles-javadoc +%license LICENSE NOTICE + +%changelog