commit 736b5638827ea3e9a3736d2e4638494ae53cf84d Author: MSVSphere Packaging Team Date: Tue Nov 26 16:21:31 2024 +0300 import httpcomponents-client-4.5.14-8.el10 diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..13df5ed --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +SOURCES/httpcomponents-client-4.5.14-source-release.zip diff --git a/.httpcomponents-client.metadata b/.httpcomponents-client.metadata new file mode 100644 index 0000000..0187b2a --- /dev/null +++ b/.httpcomponents-client.metadata @@ -0,0 +1 @@ +13e3aded12730f659750acae2c24c1a1b49584eb SOURCES/httpcomponents-client-4.5.14-source-release.zip diff --git a/SOURCES/0001-Use-system-copy-of-effective_tld_names.dat.patch b/SOURCES/0001-Use-system-copy-of-effective_tld_names.dat.patch new file mode 100644 index 0000000..e4e0f7c --- /dev/null +++ b/SOURCES/0001-Use-system-copy-of-effective_tld_names.dat.patch @@ -0,0 +1,31 @@ +From d9f08c36a39b035ec70a37cb6aac5f980cc57054 Mon Sep 17 00:00:00 2001 +From: Mikolaj Izdebski +Date: Tue, 20 Jan 2015 16:04:31 +0100 +Subject: [PATCH 1/2] Use system copy of effective_tld_names.dat + +--- + .../apache/http/conn/util/PublicSuffixMatcherLoader.java | 7 +++---- + 1 file changed, 3 insertions(+), 4 deletions(-) + +diff --git a/httpclient/src/main/java/org/apache/http/conn/util/PublicSuffixMatcherLoader.java b/httpclient/src/main/java/org/apache/http/conn/util/PublicSuffixMatcherLoader.java +index 8783c5b..c858220 100644 +--- a/httpclient/src/main/java/org/apache/http/conn/util/PublicSuffixMatcherLoader.java ++++ b/httpclient/src/main/java/org/apache/http/conn/util/PublicSuffixMatcherLoader.java +@@ -82,11 +82,10 @@ public final class PublicSuffixMatcherLoader { + if (DEFAULT_INSTANCE == null) { + synchronized (PublicSuffixMatcherLoader.class) { + if (DEFAULT_INSTANCE == null){ +- final URL url = PublicSuffixMatcherLoader.class.getResource( +- "/mozilla/public-suffix-list.txt"); +- if (url != null) { ++ final File file = new File("/usr/share/publicsuffix/effective_tld_names.dat"); ++ if (file.exists()) { + try { +- DEFAULT_INSTANCE = load(url); ++ DEFAULT_INSTANCE = load(file); + } catch (final IOException ex) { + // Should never happen + final Log log = LogFactory.getLog(PublicSuffixMatcherLoader.class); +-- +2.19.1 + diff --git a/SOURCES/0002-Port-to-mockito-2.patch b/SOURCES/0002-Port-to-mockito-2.patch new file mode 100644 index 0000000..606c615 --- /dev/null +++ b/SOURCES/0002-Port-to-mockito-2.patch @@ -0,0 +1,104 @@ +From 852a31061e2d46cc4bc1b5cfa388ed023de5095d Mon Sep 17 00:00:00 2001 +From: Mat Booth +Date: Fri, 7 Dec 2018 18:01:27 +0000 +Subject: [PATCH 2/2] Port to mockito 2 + +Gets it building, but disables tests that are caused by change in +behaviour of mockito that I didn't know how to fix +--- + .../http/impl/client/integration/TestAbortHandling.java | 1 + + .../http/impl/client/integration/TestSPNegoScheme.java | 2 ++ + .../org/apache/http/impl/execchain/TestMainClientExec.java | 3 ++- + .../apache/http/impl/execchain/TestMinimalClientExec.java | 1 + + .../org/apache/http/impl/execchain/TestRedirectExec.java | 5 ++--- + 5 files changed, 8 insertions(+), 4 deletions(-) + +diff --git a/httpclient/src/test/java/org/apache/http/impl/client/integration/TestAbortHandling.java b/httpclient/src/test/java/org/apache/http/impl/client/integration/TestAbortHandling.java +index 282e11b..0411caf 100644 +--- a/httpclient/src/test/java/org/apache/http/impl/client/integration/TestAbortHandling.java ++++ b/httpclient/src/test/java/org/apache/http/impl/client/integration/TestAbortHandling.java +@@ -288,6 +288,7 @@ public class TestAbortHandling extends LocalServerTestBase { + * properly released back to the connection manager. + */ + @Test ++ @org.junit.Ignore + public void testSocketConnectFailureReleasesConnection() throws Exception { + final HttpClientConnection conn = Mockito.mock(HttpClientConnection.class); + final ConnectionRequest connrequest = Mockito.mock(ConnectionRequest.class); +diff --git a/httpclient/src/test/java/org/apache/http/impl/client/integration/TestSPNegoScheme.java b/httpclient/src/test/java/org/apache/http/impl/client/integration/TestSPNegoScheme.java +index f638031..31799cb 100644 +--- a/httpclient/src/test/java/org/apache/http/impl/client/integration/TestSPNegoScheme.java ++++ b/httpclient/src/test/java/org/apache/http/impl/client/integration/TestSPNegoScheme.java +@@ -150,6 +150,7 @@ public class TestSPNegoScheme extends LocalServerTestBase { + * the server still keep asking for a valid ticket. + */ + @Test ++ @org.junit.Ignore + public void testDontTryToAuthenticateEndlessly() throws Exception { + this.serverBootstrap.registerHandler("*", new PleaseNegotiateService()); + final HttpHost target = start(); +@@ -180,6 +181,7 @@ public class TestSPNegoScheme extends LocalServerTestBase { + * if no token is generated. Client should be able to deal with this response. + */ + @Test ++ @org.junit.Ignore + public void testNoTokenGeneratedError() throws Exception { + this.serverBootstrap.registerHandler("*", new PleaseNegotiateService()); + final HttpHost target = start(); +diff --git a/httpclient/src/test/java/org/apache/http/impl/execchain/TestMainClientExec.java b/httpclient/src/test/java/org/apache/http/impl/execchain/TestMainClientExec.java +index 2261da8..e922155 100644 +--- a/httpclient/src/test/java/org/apache/http/impl/execchain/TestMainClientExec.java ++++ b/httpclient/src/test/java/org/apache/http/impl/execchain/TestMainClientExec.java +@@ -402,6 +402,7 @@ public class TestMainClientExec { + } + + @Test(expected=RequestAbortedException.class) ++ @org.junit.Ignore + public void testExecConnectionRequestFailed() throws Exception { + final HttpRoute route = new HttpRoute(target); + final HttpClientContext context = new HttpClientContext(); +@@ -808,4 +809,4 @@ public class TestMainClientExec { + mainClientExec.establishRoute(authState, managedConn, route, request, context); + } + +-} +\ No newline at end of file ++} +diff --git a/httpclient/src/test/java/org/apache/http/impl/execchain/TestMinimalClientExec.java b/httpclient/src/test/java/org/apache/http/impl/execchain/TestMinimalClientExec.java +index 9a96ba6..41eb023 100644 +--- a/httpclient/src/test/java/org/apache/http/impl/execchain/TestMinimalClientExec.java ++++ b/httpclient/src/test/java/org/apache/http/impl/execchain/TestMinimalClientExec.java +@@ -256,6 +256,7 @@ public class TestMinimalClientExec { + } + + @Test(expected=RequestAbortedException.class) ++ @org.junit.Ignore + public void testExecConnectionRequestFailed() throws Exception { + final HttpRoute route = new HttpRoute(target); + final HttpClientContext context = new HttpClientContext(); +diff --git a/httpclient/src/test/java/org/apache/http/impl/execchain/TestRedirectExec.java b/httpclient/src/test/java/org/apache/http/impl/execchain/TestRedirectExec.java +index 5621a3f..23506dc 100644 +--- a/httpclient/src/test/java/org/apache/http/impl/execchain/TestRedirectExec.java ++++ b/httpclient/src/test/java/org/apache/http/impl/execchain/TestRedirectExec.java +@@ -349,7 +349,7 @@ public class TestRedirectExec { + } + } + +- static class HttpRequestWrapperMatcher extends ArgumentMatcher { ++ static class HttpRequestWrapperMatcher implements ArgumentMatcher { + + private final HttpRequest original; + +@@ -358,8 +358,7 @@ public class TestRedirectExec { + this.original = original; + } + @Override +- public boolean matches(final Object obj) { +- final HttpRequestWrapper wrapper = (HttpRequestWrapper) obj; ++ public boolean matches(final HttpRequestWrapper wrapper) { + return original == wrapper.getOriginal(); + } + +-- +2.19.1 + diff --git a/SOURCES/0003-Port-to-Mockito-5.patch b/SOURCES/0003-Port-to-Mockito-5.patch new file mode 100644 index 0000000..44c519d --- /dev/null +++ b/SOURCES/0003-Port-to-Mockito-5.patch @@ -0,0 +1,374 @@ +From 919dd0b1be2ff0bb9532131c18eafcd68d6196d6 Mon Sep 17 00:00:00 2001 +From: Marian Koncek +Date: Tue, 12 Dec 2023 12:13:58 +0100 +Subject: [PATCH] Port to Mockito 5 + +Generated by running: +find -name '*.java' -exec sed -i \ + -e 's/org\.mockito\.Matchers/org.mockito.ArgumentMatchers/g' \ + -e 's/\([^[:alnum:]]\)Matchers\([^[:alnum:]]\)/\1ArgumentMatchers\2/g' \ + -e 's/Mockito\.anyObject()/Mockito\.any()/g' \ +{} + +--- + .../client/cache/TestAsynchronousValidator.java | 2 +- + .../cache/TestCachedHttpResponseGenerator.java | 4 ++-- + .../client/cache/TestHttpCacheJiraNumber1147.java | 14 +++++++------- + .../cache/ehcache/TestEhcacheHttpCacheStorage.java | 4 ++-- + .../org/apache/http/client/entity/TestGZip.java | 4 ++-- + .../client/protocol/TestRequestAddCookies.java | 4 ++-- + .../impl/client/TestIdleConnectionEvictor.java | 4 ++-- + .../impl/client/integration/TestSPNegoScheme.java | 10 +++++----- + .../TestPoolingHttpClientConnectionManager.java | 2 +- + .../impl/conn/TestSystemDefaultRoutePlanner.java | 4 ++-- + .../http/impl/cookie/TestRFC6265CookieSpec.java | 14 +++++++------- + .../http/impl/execchain/TestConnectionHolder.java | 8 ++++---- + .../http/impl/execchain/TestRedirectExec.java | 4 ++-- + 13 files changed, 39 insertions(+), 39 deletions(-) + +diff --git a/httpclient-cache/src/test/java/org/apache/http/impl/client/cache/TestAsynchronousValidator.java b/httpclient-cache/src/test/java/org/apache/http/impl/client/cache/TestAsynchronousValidator.java +index 58ecef1..6932fc4 100644 +--- a/httpclient-cache/src/test/java/org/apache/http/impl/client/cache/TestAsynchronousValidator.java ++++ b/httpclient-cache/src/test/java/org/apache/http/impl/client/cache/TestAsynchronousValidator.java +@@ -26,7 +26,7 @@ + */ + package org.apache.http.impl.client.cache; + +-import static org.mockito.Matchers.isA; ++import static org.mockito.ArgumentMatchers.isA; + import static org.mockito.Mockito.doThrow; + import static org.mockito.Mockito.mock; + import static org.mockito.Mockito.times; +diff --git a/httpclient-cache/src/test/java/org/apache/http/impl/client/cache/TestCachedHttpResponseGenerator.java b/httpclient-cache/src/test/java/org/apache/http/impl/client/cache/TestCachedHttpResponseGenerator.java +index 3fc12f6..84bd347 100644 +--- a/httpclient-cache/src/test/java/org/apache/http/impl/client/cache/TestCachedHttpResponseGenerator.java ++++ b/httpclient-cache/src/test/java/org/apache/http/impl/client/cache/TestCachedHttpResponseGenerator.java +@@ -26,8 +26,8 @@ + */ + package org.apache.http.impl.client.cache; + +-import static org.mockito.Matchers.isA; +-import static org.mockito.Matchers.same; ++import static org.mockito.ArgumentMatchers.isA; ++import static org.mockito.ArgumentMatchers.same; + import static org.mockito.Mockito.mock; + import static org.mockito.Mockito.verify; + import static org.mockito.Mockito.when; +diff --git a/httpclient-cache/src/test/java/org/apache/http/impl/client/cache/TestHttpCacheJiraNumber1147.java b/httpclient-cache/src/test/java/org/apache/http/impl/client/cache/TestHttpCacheJiraNumber1147.java +index ceb8f71..674bccd 100644 +--- a/httpclient-cache/src/test/java/org/apache/http/impl/client/cache/TestHttpCacheJiraNumber1147.java ++++ b/httpclient-cache/src/test/java/org/apache/http/impl/client/cache/TestHttpCacheJiraNumber1147.java +@@ -26,8 +26,8 @@ + */ + package org.apache.http.impl.client.cache; + +-import static org.mockito.Matchers.eq; +-import static org.mockito.Matchers.isA; ++import static org.mockito.ArgumentMatchers.eq; ++import static org.mockito.ArgumentMatchers.isA; + import static org.mockito.Mockito.mock; + import static org.mockito.Mockito.reset; + import static org.mockito.Mockito.verify; +@@ -53,7 +53,7 @@ import org.junit.After; + import org.junit.Assert; + import org.junit.Before; + import org.junit.Test; +-import org.mockito.Matchers; ++import org.mockito.ArgumentMatchers; + + public class TestHttpCacheJiraNumber1147 { + +@@ -116,7 +116,7 @@ public class TestHttpCacheJiraNumber1147 { + eq(route), + isA(HttpRequestWrapper.class), + isA(HttpClientContext.class), +- (HttpExecutionAware) Matchers.isNull())).thenReturn(Proxies.enhanceResponse(response)); ++ (HttpExecutionAware) ArgumentMatchers.isNull())).thenReturn(Proxies.enhanceResponse(response)); + + final BasicHttpCache cache = new BasicHttpCache(resourceFactory, httpCacheStorage, cacheConfig); + final ClientExecChain t = createCachingExecChain(backend, cache, cacheConfig); +@@ -129,7 +129,7 @@ public class TestHttpCacheJiraNumber1147 { + eq(route), + isA(HttpRequestWrapper.class), + isA(HttpClientContext.class), +- (HttpExecutionAware) Matchers.isNull()); ++ (HttpExecutionAware) ArgumentMatchers.isNull()); + + removeCache(); + +@@ -138,7 +138,7 @@ public class TestHttpCacheJiraNumber1147 { + eq(route), + isA(HttpRequestWrapper.class), + isA(HttpClientContext.class), +- (HttpExecutionAware) Matchers.isNull())).thenReturn(Proxies.enhanceResponse(response)); ++ (HttpExecutionAware) ArgumentMatchers.isNull())).thenReturn(Proxies.enhanceResponse(response)); + + final HttpResponse response2 = t.execute(route, get, context, null); + Assert.assertEquals(200, response2.getStatusLine().getStatusCode()); +@@ -148,7 +148,7 @@ public class TestHttpCacheJiraNumber1147 { + eq(route), + isA(HttpRequestWrapper.class), + isA(HttpClientContext.class), +- (HttpExecutionAware) Matchers.isNull()); ++ (HttpExecutionAware) ArgumentMatchers.isNull()); + } + + protected ClientExecChain createCachingExecChain(final ClientExecChain backend, +diff --git a/httpclient-cache/src/test/java/org/apache/http/impl/client/cache/ehcache/TestEhcacheHttpCacheStorage.java b/httpclient-cache/src/test/java/org/apache/http/impl/client/cache/ehcache/TestEhcacheHttpCacheStorage.java +index a1366e8..30b40bf 100644 +--- a/httpclient-cache/src/test/java/org/apache/http/impl/client/cache/ehcache/TestEhcacheHttpCacheStorage.java ++++ b/httpclient-cache/src/test/java/org/apache/http/impl/client/cache/ehcache/TestEhcacheHttpCacheStorage.java +@@ -26,8 +26,8 @@ + */ + package org.apache.http.impl.client.cache.ehcache; + +-import static org.mockito.Matchers.isA; +-import static org.mockito.Matchers.same; ++import static org.mockito.ArgumentMatchers.isA; ++import static org.mockito.ArgumentMatchers.same; + import static org.mockito.Mockito.mock; + import static org.mockito.Mockito.times; + import static org.mockito.Mockito.verify; +diff --git a/httpclient/src/test/java/org/apache/http/client/entity/TestGZip.java b/httpclient/src/test/java/org/apache/http/client/entity/TestGZip.java +index 516299d..76472c6 100644 +--- a/httpclient/src/test/java/org/apache/http/client/entity/TestGZip.java ++++ b/httpclient/src/test/java/org/apache/http/client/entity/TestGZip.java +@@ -41,7 +41,7 @@ import org.apache.http.entity.StringEntity; + import org.apache.http.util.EntityUtils; + import org.junit.Assert; + import org.junit.Test; +-import org.mockito.Matchers; ++import org.mockito.ArgumentMatchers; + import org.mockito.Mockito; + + public class TestGZip { +@@ -72,7 +72,7 @@ public class TestGZip { + @Test + public void testCompressionIOExceptionLeavesOutputStreamOpen() throws Exception { + final HttpEntity in = Mockito.mock(HttpEntity.class); +- Mockito.doThrow(new IOException("Ooopsie")).when(in).writeTo(Matchers.any()); ++ Mockito.doThrow(new IOException("Ooopsie")).when(in).writeTo(ArgumentMatchers.any()); + final GzipCompressingEntity gzipe = new GzipCompressingEntity(in); + final OutputStream out = Mockito.mock(OutputStream.class); + try { +diff --git a/httpclient/src/test/java/org/apache/http/client/protocol/TestRequestAddCookies.java b/httpclient/src/test/java/org/apache/http/client/protocol/TestRequestAddCookies.java +index 4854f52..5968542 100644 +--- a/httpclient/src/test/java/org/apache/http/client/protocol/TestRequestAddCookies.java ++++ b/httpclient/src/test/java/org/apache/http/client/protocol/TestRequestAddCookies.java +@@ -57,7 +57,7 @@ import org.apache.http.protocol.HttpCoreContext; + import org.junit.Assert; + import org.junit.Before; + import org.junit.Test; +-import org.mockito.Matchers; ++import org.mockito.ArgumentMatchers; + import org.mockito.Mockito; + + public class TestRequestAddCookies { +@@ -403,7 +403,7 @@ public class TestRequestAddCookies { + Assert.assertNotNull(headers2); + Assert.assertEquals(0, headers2.length); + +- Mockito.verify(this.cookieStore, Mockito.times(1)).clearExpired(Matchers.any()); ++ Mockito.verify(this.cookieStore, Mockito.times(1)).clearExpired(ArgumentMatchers.any()); + } + + @Test +diff --git a/httpclient/src/test/java/org/apache/http/impl/client/TestIdleConnectionEvictor.java b/httpclient/src/test/java/org/apache/http/impl/client/TestIdleConnectionEvictor.java +index da0d9bd..07b34da 100644 +--- a/httpclient/src/test/java/org/apache/http/impl/client/TestIdleConnectionEvictor.java ++++ b/httpclient/src/test/java/org/apache/http/impl/client/TestIdleConnectionEvictor.java +@@ -32,7 +32,7 @@ import java.util.concurrent.TimeUnit; + import org.apache.http.conn.HttpClientConnectionManager; + import org.junit.Assert; + import org.junit.Test; +-import org.mockito.Matchers; ++import org.mockito.ArgumentMatchers; + import org.mockito.Mockito; + + /** +@@ -69,7 +69,7 @@ public class TestIdleConnectionEvictor { + Thread.sleep(1000); + + Mockito.verify(cm, Mockito.atLeast(1)).closeExpiredConnections(); +- Mockito.verify(cm, Mockito.never()).closeIdleConnections(Matchers.anyLong(), Matchers.any()); ++ Mockito.verify(cm, Mockito.never()).closeIdleConnections(ArgumentMatchers.anyLong(), ArgumentMatchers.any()); + + Assert.assertTrue(connectionEvictor.isRunning()); + +diff --git a/httpclient/src/test/java/org/apache/http/impl/client/integration/TestSPNegoScheme.java b/httpclient/src/test/java/org/apache/http/impl/client/integration/TestSPNegoScheme.java +index 31799cb..91806c4 100644 +--- a/httpclient/src/test/java/org/apache/http/impl/client/integration/TestSPNegoScheme.java ++++ b/httpclient/src/test/java/org/apache/http/impl/client/integration/TestSPNegoScheme.java +@@ -59,7 +59,7 @@ import org.ietf.jgss.GSSName; + import org.ietf.jgss.Oid; + import org.junit.Assert; + import org.junit.Test; +-import org.mockito.Matchers; ++import org.mockito.ArgumentMatchers; + import org.mockito.Mockito; + + /** +@@ -98,14 +98,14 @@ public class TestSPNegoScheme extends LocalServerTestBase { + NegotiateSchemeWithMockGssManager() throws Exception { + super(true); + Mockito.when(context.initSecContext( +- Matchers.any(byte[].class), Matchers.anyInt(), Matchers.anyInt())) ++ ArgumentMatchers.any(byte[].class), ArgumentMatchers.anyInt(), ArgumentMatchers.anyInt())) + .thenReturn("12345678".getBytes()); + Mockito.when(manager.createName( +- Matchers.any(String.class), Matchers.any(Oid.class))) ++ ArgumentMatchers.any(String.class), ArgumentMatchers.any(Oid.class))) + .thenReturn(name); + Mockito.when(manager.createContext( +- Matchers.any(GSSName.class), Matchers.any(Oid.class), +- Matchers.any(GSSCredential.class), Matchers.anyInt())) ++ ArgumentMatchers.any(GSSName.class), ArgumentMatchers.any(Oid.class), ++ ArgumentMatchers.any(GSSCredential.class), ArgumentMatchers.anyInt())) + .thenReturn(context); + } + +diff --git a/httpclient/src/test/java/org/apache/http/impl/conn/TestPoolingHttpClientConnectionManager.java b/httpclient/src/test/java/org/apache/http/impl/conn/TestPoolingHttpClientConnectionManager.java +index 51bc2ef..02c375b 100644 +--- a/httpclient/src/test/java/org/apache/http/impl/conn/TestPoolingHttpClientConnectionManager.java ++++ b/httpclient/src/test/java/org/apache/http/impl/conn/TestPoolingHttpClientConnectionManager.java +@@ -226,7 +226,7 @@ public class TestPoolingHttpClientConnectionManager { + mgr.releaseConnection(conn1, "some state", 0, TimeUnit.MILLISECONDS); + + Mockito.verify(pool).release(entry, false); +- Mockito.verify(entry, Mockito.never()).setState(Mockito.anyObject()); ++ Mockito.verify(entry, Mockito.never()).setState(Mockito.any()); + Mockito.verify(entry, Mockito.never()).updateExpiry(Mockito.anyLong(), Mockito.eq(TimeUnit.MILLISECONDS)); + } + +diff --git a/httpclient/src/test/java/org/apache/http/impl/conn/TestSystemDefaultRoutePlanner.java b/httpclient/src/test/java/org/apache/http/impl/conn/TestSystemDefaultRoutePlanner.java +index 38920ba..690f2b5 100644 +--- a/httpclient/src/test/java/org/apache/http/impl/conn/TestSystemDefaultRoutePlanner.java ++++ b/httpclient/src/test/java/org/apache/http/impl/conn/TestSystemDefaultRoutePlanner.java +@@ -46,7 +46,7 @@ import org.apache.http.protocol.HttpContext; + import org.junit.Assert; + import org.junit.Before; + import org.junit.Test; +-import org.mockito.Matchers; ++import org.mockito.ArgumentMatchers; + import org.mockito.Mockito; + + /** +@@ -77,7 +77,7 @@ public class TestSystemDefaultRoutePlanner { + Assert.assertEquals(target, route.getTargetHost()); + Assert.assertEquals(1, route.getHopCount()); + Assert.assertFalse(route.isSecure()); +- Mockito.verify(schemePortResolver, Mockito.never()).resolve(Matchers.any()); ++ Mockito.verify(schemePortResolver, Mockito.never()).resolve(ArgumentMatchers.any()); + } + + @Test +diff --git a/httpclient/src/test/java/org/apache/http/impl/cookie/TestRFC6265CookieSpec.java b/httpclient/src/test/java/org/apache/http/impl/cookie/TestRFC6265CookieSpec.java +index 35753fd..bdf4ecd 100644 +--- a/httpclient/src/test/java/org/apache/http/impl/cookie/TestRFC6265CookieSpec.java ++++ b/httpclient/src/test/java/org/apache/http/impl/cookie/TestRFC6265CookieSpec.java +@@ -40,7 +40,7 @@ import org.apache.http.cookie.SetCookie; + import org.apache.http.message.BasicHeader; + import org.junit.Assert; + import org.junit.Test; +-import org.mockito.Matchers; ++import org.mockito.ArgumentMatchers; + import org.mockito.Mockito; + + public class TestRFC6265CookieSpec { +@@ -69,8 +69,8 @@ public class TestRFC6265CookieSpec { + Assert.assertEquals("stuff", clientCookie.getAttribute("this")); + Assert.assertEquals(null, clientCookie.getAttribute("that")); + +- Mockito.verify(h1).parse(Matchers.any(), Matchers.eq("stuff")); +- Mockito.verify(h2, Mockito.never()).parse(Matchers.any(), Matchers.anyString()); ++ Mockito.verify(h1).parse(ArgumentMatchers.any(), ArgumentMatchers.eq("stuff")); ++ Mockito.verify(h2, Mockito.never()).parse(ArgumentMatchers.any(), ArgumentMatchers.anyString()); + } + + @Test +@@ -316,8 +316,8 @@ public class TestRFC6265CookieSpec { + final CookieOrigin origin = new CookieOrigin("host", 80, "/path/", true); + cookiespec.parse(header, origin); + +- Mockito.verify(h1).parse(Matchers.any(), Matchers.eq("morestuff")); +- Mockito.verify(h1, Mockito.times(1)).parse(Matchers.any(), Matchers.anyString()); ++ Mockito.verify(h1).parse(ArgumentMatchers.any(), ArgumentMatchers.eq("morestuff")); ++ Mockito.verify(h1, Mockito.times(1)).parse(ArgumentMatchers.any(), ArgumentMatchers.anyString()); + } + + @Test +@@ -333,8 +333,8 @@ public class TestRFC6265CookieSpec { + final CookieOrigin origin = new CookieOrigin("host", 80, "/path/", true); + cookiespec.parse(header, origin); + +- Mockito.verify(h1, Mockito.never()).parse(Matchers.any(), Matchers.anyString()); +- Mockito.verify(h2).parse(Matchers.any(), Matchers.eq("otherstuff")); ++ Mockito.verify(h1, Mockito.never()).parse(ArgumentMatchers.any(), ArgumentMatchers.anyString()); ++ Mockito.verify(h2).parse(ArgumentMatchers.any(), ArgumentMatchers.eq("otherstuff")); + } + + } +diff --git a/httpclient/src/test/java/org/apache/http/impl/execchain/TestConnectionHolder.java b/httpclient/src/test/java/org/apache/http/impl/execchain/TestConnectionHolder.java +index a908141..8f1c8f7 100644 +--- a/httpclient/src/test/java/org/apache/http/impl/execchain/TestConnectionHolder.java ++++ b/httpclient/src/test/java/org/apache/http/impl/execchain/TestConnectionHolder.java +@@ -67,7 +67,7 @@ public class TestConnectionHolder { + Mockito.verify(conn, Mockito.times(1)).shutdown(); + Mockito.verify(mgr, Mockito.times(1)).releaseConnection( + Mockito.any(), +- Mockito.anyObject(), ++ Mockito.any(), + Mockito.anyLong(), + Mockito.any()); + } +@@ -98,7 +98,7 @@ public class TestConnectionHolder { + Mockito.verify(conn, Mockito.times(1)).shutdown(); + Mockito.verify(mgr, Mockito.times(1)).releaseConnection( + Mockito.any(), +- Mockito.anyObject(), ++ Mockito.any(), + Mockito.anyLong(), + Mockito.any()); + } +@@ -120,7 +120,7 @@ public class TestConnectionHolder { + + Mockito.verify(mgr, Mockito.times(1)).releaseConnection( + Mockito.any(), +- Mockito.anyObject(), ++ Mockito.any(), + Mockito.anyLong(), + Mockito.any()); + } +@@ -142,7 +142,7 @@ public class TestConnectionHolder { + + Mockito.verify(mgr, Mockito.times(1)).releaseConnection( + Mockito.any(), +- Mockito.anyObject(), ++ Mockito.any(), + Mockito.anyLong(), + Mockito.any()); + } +diff --git a/httpclient/src/test/java/org/apache/http/impl/execchain/TestRedirectExec.java b/httpclient/src/test/java/org/apache/http/impl/execchain/TestRedirectExec.java +index 78b1af4..da34722 100644 +--- a/httpclient/src/test/java/org/apache/http/impl/execchain/TestRedirectExec.java ++++ b/httpclient/src/test/java/org/apache/http/impl/execchain/TestRedirectExec.java +@@ -55,7 +55,7 @@ import org.junit.Before; + import org.junit.Test; + import org.mockito.ArgumentCaptor; + import org.mockito.ArgumentMatcher; +-import org.mockito.Matchers; ++import org.mockito.ArgumentMatchers; + import org.mockito.Mock; + import org.mockito.Mockito; + import org.mockito.MockitoAnnotations; +@@ -363,7 +363,7 @@ public class TestRedirectExec { + } + + static HttpRequestWrapper same(final HttpRequest original) { +- return Matchers.argThat(new HttpRequestWrapperMatcher(original)); ++ return ArgumentMatchers.argThat(new HttpRequestWrapperMatcher(original)); + } + + } +-- +2.43.0 + diff --git a/SPECS/httpcomponents-client.spec b/SPECS/httpcomponents-client.spec new file mode 100644 index 0000000..aa5785d --- /dev/null +++ b/SPECS/httpcomponents-client.spec @@ -0,0 +1,448 @@ +%bcond_with bootstrap + +Name: httpcomponents-client +Summary: HTTP agent implementation based on httpcomponents HttpCore +Version: 4.5.14 +Release: 8%{?dist} +License: Apache-2.0 +URL: http://hc.apache.org/ +Source0: https://repo1.maven.org/maven2/org/apache/httpcomponents/httpcomponents-client/%{version}/httpcomponents-client-%{version}-source-release.zip +BuildArch: noarch +ExclusiveArch: %{java_arches} noarch + +Patch1: 0001-Use-system-copy-of-effective_tld_names.dat.patch +Patch2: 0002-Port-to-mockito-2.patch +Patch3: 0003-Port-to-Mockito-5.patch + +%if %{with bootstrap} +BuildRequires: javapackages-bootstrap +%else +BuildRequires: maven-local +BuildRequires: mvn(commons-codec:commons-codec) +BuildRequires: mvn(commons-logging:commons-logging) +BuildRequires: mvn(junit:junit) +BuildRequires: mvn(org.apache.felix:maven-bundle-plugin) +BuildRequires: mvn(org.apache.httpcomponents:httpcomponents-parent:pom:) +BuildRequires: mvn(org.apache.httpcomponents:httpcore) +BuildRequires: mvn(org.codehaus.mojo:build-helper-maven-plugin) +BuildRequires: mvn(org.mockito:mockito-core) +%endif + +%if %{without bootstrap} +BuildRequires: publicsuffix-list +%endif +Requires: publicsuffix-list + +%description +HttpClient is a HTTP/1.1 compliant HTTP agent implementation based on +httpcomponents HttpCore. It also provides reusable components for +client-side authentication, HTTP state management, and HTTP connection +management. HttpComponents Client is a successor of and replacement +for Commons HttpClient 3.x. Users of Commons HttpClient are strongly +encouraged to upgrade. + +%{?javadoc_package} + +%prep +%setup -q -n %{name}-%{version} +%patch 1 -p1 +%patch 2 -p1 +%patch 3 -p1 + +%mvn_package :::tests: __noinstall + +# Change scope of commons-logging to provided +%pom_change_dep :commons-logging :::provided httpclient + +# Remove optional build deps not available in Fedora +%pom_disable_module httpclient-osgi +%pom_disable_module httpclient-win +%pom_disable_module fluent-hc +%pom_disable_module httpmime +%pom_disable_module httpclient-cache +%pom_remove_plugin :docbkx-maven-plugin +%pom_remove_plugin :clirr-maven-plugin +%pom_remove_plugin :maven-checkstyle-plugin +%pom_remove_plugin :apache-rat-plugin +%pom_remove_plugin :maven-source-plugin +%pom_remove_plugin :maven-javadoc-plugin +%pom_remove_plugin :animal-sniffer-maven-plugin + +# Fails due to strict crypto policy - uses DSA in test data +rm httpclient/src/test/java/org/apache/http/conn/ssl/TestSSLSocketFactory.java + +%pom_remove_plugin :download-maven-plugin httpclient + +%pom_xpath_inject "pom:archive" " + \${project.build.outputDirectory}/META-INF/MANIFEST.MF" + +%pom_xpath_inject pom:build/pom:plugins " + + org.apache.felix + maven-bundle-plugin + + + bundle-manifest + process-classes + + manifest + + + + " + +%pom_xpath_inject pom:build " + + + + org.apache.felix + maven-bundle-plugin + + + org.apache.http.*,!org.apache.http.param + + <_nouses>true + !org.apache.avalon.framework.logger,!org.apache.log,!org.apache.log4j,* + + true + + + + +" httpclient + +# requires network +rm httpclient/src/test/java/org/apache/http/client/config/TestRequestConfig.java + +%build +%mvn_file ":{*}" httpcomponents/@1 + +%mvn_build -- -Dmaven.compiler.release=8 + +%install +%mvn_install + +%files -f .mfiles +%license LICENSE.txt NOTICE.txt +%doc README.txt RELEASE_NOTES.txt + +%changelog +* Thu Aug 01 2024 Troy Dawson - 4.5.14-8 +- Bump release for Aug 2024 java mass rebuild + +* Mon Jun 24 2024 Troy Dawson - 4.5.14-7 +- Bump release for June 2024 mass rebuild + +* Wed Jan 24 2024 Fedora Release Engineering - 4.5.14-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + +* Sat Jan 20 2024 Fedora Release Engineering - 4.5.14-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + +* Tue Dec 12 2023 Marian Koncek - 4.5.14-4 +- Port to Mockito 5 + +* Wed Sep 20 2023 Mikolaj Izdebski - 4.5.14-3 +- Rebuild to regenerate auto-Requires on java + +* Fri Sep 01 2023 Mikolaj Izdebski - 4.5.14-2 +- Convert License tag to SPDX format + +* Wed Aug 16 2023 Mikolaj Izdebski - 4.5.14-1 +- Update to upstream version 4.5.14 + +* Tue Aug 15 2023 Mikolaj Izdebski - 4.5.13-8 +- Build with default JDK 17 + +* Thu Jul 20 2023 Fedora Release Engineering - 4.5.13-7 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild + +* Thu Jan 19 2023 Fedora Release Engineering - 4.5.13-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild + +* Thu Jul 21 2022 Fedora Release Engineering - 4.5.13-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild + +* Sat Feb 05 2022 Jiri Vanek - 4.5.13-4 +- Rebuilt for java-17-openjdk as system jdk + +* Thu Jan 20 2022 Fedora Release Engineering - 4.5.13-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild + +* Thu Jul 22 2021 Fedora Release Engineering - 4.5.13-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild + +* Wed Jun 23 2021 Marian Koncek - 4.5.13-1 +- Update to upstream version 4.5.13 + +* Mon May 17 2021 Mikolaj Izdebski - 4.5.11-3 +- Bootstrap build +- Non-bootstrap build + +* Wed Feb 17 2021 Fabio Valentini - 4.5.10-6 +- Build with -release 8 for better OpenJDK 8 compatibility. + +* Tue Jan 26 2021 Fedora Release Engineering - 4.5.10-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + +* Tue Jul 28 2020 Fedora Release Engineering - 4.5.10-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + +* Fri Jul 10 2020 Jiri Vanek - 4.5.10-3 +- Rebuilt for JDK-11, see https://fedoraproject.org/wiki/Changes/Java11 + +* Wed Jan 29 2020 Fedora Release Engineering - 4.5.10-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild + +* Sat Jan 25 2020 Mikolaj Izdebski - 4.5.11-2 +- Build with OpenJDK 8 + +* Wed Jan 22 2020 Marian Koncek - 4.5.11-1 +- Update to upstream version 4.5.11 + +* Tue Nov 05 2019 Mikolaj Izdebski - 4.5.10-2 +- Mass rebuild for javapackages-tools 201902 + +* Mon Sep 16 2019 Marian Koncek - 4.5.10-1 +- Update to upstream version 4.5.10 + +* Mon Sep 16 2019 Marian Koncek - 4.5.10-1 +- Update to upstream version 4.5.10 + +* Thu Aug 29 2019 Fabio Valentini - 4.5.7-3 +- Disable memcached and ehcache support. + +* Mon Jul 29 2019 Marian Koncek - 4.5.9-1 +- Update to upstream version 4.5.9 + +* Thu Jul 25 2019 Fedora Release Engineering - 4.5.7-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild + +* Fri May 24 2019 Mikolaj Izdebski - 4.5.8-2 +- Mass rebuild for javapackages-tools 201901 + +* Mon May 13 2019 Mikolaj Izdebski - 4.5.8-1 +- Update to upstream version 4.5.8 + +* Mon Feb 04 2019 Marian Koncek - 4.5.7-1 +- Update to upstream version 4.5.7 +- Fixes: RHBZ #1669148 + +* Fri Feb 01 2019 Fedora Release Engineering - 4.5.6-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild + +* Fri Dec 07 2018 Mat Booth - 4.5.6-2 +- Add a patch to allow building with mockito 2 +- Don't package tests jars, the tests jars have the same OSGi metadata as the + main jars, which can cause tycho to resolve the wrong one when building + eclipse plugins + +* Mon Oct 8 2018 Mikolaj Izdebski - 4.5.6-1 +- Update to upstream version 4.5.6 + +* Fri Jul 13 2018 Fedora Release Engineering - 4.5.5-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild + +* Mon Mar 19 2018 Michael Simacek - 4.5.5-4 +- Fix FTBFS (weak crypto in test data) + +* Fri Feb 09 2018 Igor Gnatenko - 4.5.5-3 +- Escape macros in %%changelog + +* Wed Feb 07 2018 Fedora Release Engineering - 4.5.5-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild + +* Mon Jan 22 2018 Michael Simacek - 4.5.5-1 +- Update to upstream version 4.5.5 + +* Wed Jul 26 2017 Fedora Release Engineering - 4.5.3-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild + +* Fri Feb 10 2017 Fedora Release Engineering - 4.5.3-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild + +* Thu Feb 02 2017 Michael Simacek - 4.5.3-2 +- Add conditionals for memcached and ehcache + +* Thu Jan 26 2017 Michael Simacek - 4.5.3-1 +- Update to upstream version 4.5.3 + +* Fri Jun 24 2016 Michael Simacek - 4.5.2-4 +- Fix build with httpcomponents-core-4.4.5 + +* Wed Jun 15 2016 Mikolaj Izdebski - 4.5.2-3 +- Add missing build-requires + +* Wed Mar 16 2016 Sopot Cela - 4.5.2-2 +- Make the fluent API into a bundle + +* Mon Feb 29 2016 Mikolaj Izdebski - 4.5.2-1 +- Update to upstream version 4.5.2 + +* Wed Feb 10 2016 Mat Booth - 4.5.1-4 +- Enable the fluent API module + +* Wed Feb 03 2016 Fedora Release Engineering - 4.5.1-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild + +* Mon Jan 25 2016 Mat Booth - 4.5.1-2 +- Make client cache jar into a OSGi bundle + +* Wed Sep 16 2015 Mikolaj Izdebski - 4.5.1-1 +- Update to upstream version 4.5.1 + +* Wed Jun 17 2015 Fedora Release Engineering - 4.5-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild + +* Thu Jun 04 2015 Michael Simacek - 4.5-1 +- Update to upstream version 4.5 + +* Tue Mar 31 2015 Mikolaj Izdebski - 4.4.1-1 +- Update to upstream version 4.4.1 + +* Wed Feb 18 2015 Mikolaj Izdebski - 4.4-1 +- Update to upstream version 4.4 + +* Thu Jan 22 2015 Mikolaj Izdebski - 4.4-0.3.beta1 +- Split httpclient-cache into subpackage + +* Tue Jan 20 2015 Mikolaj Izdebski - 4.4-0.2.beta1 +- Unbundle publicsuffix-list +- Resolves: rhbz#1183782 + +* Mon Jan 19 2015 Mikolaj Izdebski - 4.4-0.1.beta1 +- Update to upstream version 4.4 beta1 +- Remove tests subpackage + +* Fri Jan 9 2015 Richard Fearn - 4.3.5-3 +- Also build HttpClient Cache (bug #1180696) + +* Tue Dec 02 2014 Michael Simacek - 4.3.5-2 +- Build and install tests artifact (needed by copr-java) + +* Tue Aug 5 2014 Mikolaj Izdebski - 4.3.5-1 +- Update to upstream version 4.3.5 + +* Mon Aug 4 2014 Mikolaj Izdebski - 4.3.4-2 +- Fix build-requires on httpcomponents-project + +* Fri Jun 6 2014 Mikolaj Izdebski - 4.3.4-1 +- Update to upstream version 4.3.4 + +* Fri Feb 28 2014 Michael Simacek - 4.3.3-1 +- Update to upstream version 4.3.3 + +* Mon Jan 20 2014 Mikolaj Izdebski - 4.3.2-1 +- Update to upstream version 4.3.2 + +* Mon Jan 06 2014 Michael Simacek - 4.3.1-1 +- Update to upstream version 4.3.1 +- Temporarily disable tests due to bug in mockito + +* Thu Oct 3 2013 Mikolaj Izdebski - 4.3-2 +- Don't try to remove maven-notice-plugin from POM + +* Fri Sep 13 2013 Michal Srb - 4.3-1 +- Update to upstream version 4.3 +- Drop group tag + +* Sat Aug 03 2013 Fedora Release Engineering - 4.2.5-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild + +* Mon Jun 10 2013 Michal Srb - 4.2.5-2 +- Enable tests on Fedora + +* Thu Apr 25 2013 Michal Srb - 4.2.5-1 +- Update to upstream version 4.2.5 + +* Thu Apr 11 2013 Michal Srb - 4.2.4-1 +- Update to upstream version 4.2.4 + +* Wed Feb 06 2013 Java SIG - 4.2.3-3 +- Update for https://fedoraproject.org/wiki/Fedora_19_Maven_Rebuild +- Replace maven BuildRequires with maven-local + +* Fri Jan 25 2013 Michal Srb - 4.2.3-2 +- Build with xmvn +- Disable fluent-hc module + +* Thu Jan 24 2013 Mikolaj Izdebski - 4.2.3-1 +- Update to upstream version 4.2.3 + +* Thu Oct 25 2012 Mikolaj Izdebski - 4.2.2-1 +- Update to upstream version 4.2.2 + +* Wed Aug 1 2012 Mikolaj Izdebski - 4.2.1-3 +- Fix OSGi manifest in httpmime + +* Fri Jul 27 2012 Mikolaj Izdebski - 4.2.1-2 +- Install NOTICE.txt file +- Fix javadir directory ownership +- Fix directory permissions +- Preserve timestamps +- Replace add_to_maven_depmap with add_maven_depmap + +* Fri Jul 27 2012 Mikolaj Izdebski - 4.2.1-1 +- Update to upstream version 4.2.1 +- Convert patches to POM macros + +* Thu Jul 19 2012 Fedora Release Engineering - 4.1.3-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild + +* Wed May 2 2012 Alexander Kurtakov 4.1.3-3 +- Do not export org.apache.http.param in osgi. + +* Mon Mar 26 2012 Alexander Kurtakov 4.1.3-2 +- Do not export * but only org.apache.http.* . +- Do not generate uses clauses in the manifest. + +* Thu Mar 1 2012 Stanislav Ochotnicky 4.1.3-1 +- Update to latest upstream bugfix + +* Fri Jan 13 2012 Fedora Release Engineering - 4.1.2-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild + +* Tue Aug 16 2011 Stanislav Ochotnicky - 4.1.2-1 +- Update to latest upstream (4.1.2) +- Minor tweaks according to guidelines + +* Fri Jul 15 2011 Severin Gehwolf 4.1.1-3 +- Fix for RH Bz#718830. Add instructions so as to not + Import-Package optional dependencies. + +* Thu Apr 7 2011 Severin Gehwolf 4.1.1-2 +- Add BR/R apache-commons-codec, since httpcomponents-client's + MANIFEST.MF has an Import-Package: org.apache.commons.codec + header. + +* Tue Mar 29 2011 Stanislav Ochotnicky - 4.1.1-1 +- New upstream bugfix version (4.1.1) + +* Tue Mar 15 2011 Severin Gehwolf 4.1-6 +- Explicitly set PrivatePackage to the empty set, so as to + export all packages. + +* Thu Mar 10 2011 Alexander Kurtakov 4.1-5 +- OSGi export more packages. + +* Fri Feb 25 2011 Alexander Kurtakov 4.1-4 +- Build httpmime module. + +* Fri Feb 18 2011 Alexander Kurtakov 4.1-3 +- Don't use basename as an identifier. + +* Fri Feb 18 2011 Alexander Kurtakov 4.1-2 +- OSGify properly. +- Install into %%{_javadir}/%%{basename}. + +* Thu Feb 17 2011 Alexander Kurtakov 4.1-1 +- Update to latest upstream version. + +* Wed Feb 09 2011 Fedora Release Engineering - 4.0.3-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild + +* Wed Dec 22 2010 Stanislav Ochotnicky - 4.0.3-2 +- Added license to javadoc subpackage + +* Mon Dec 20 2010 Stanislav Ochotnicky - 4.0.3-1 +- Initial version