public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] repo/gentoo:master commit in: dev-java/commons-beanutils/files/, dev-java/commons-beanutils/
@ 2024-03-31  8:32 Miroslav Šulc
  0 siblings, 0 replies; 2+ messages in thread
From: Miroslav Šulc @ 2024-03-31  8:32 UTC (permalink / raw
  To: gentoo-commits

commit:     5c7991bdf575a7d7abc8436593f4787eaa6ff42d
Author:     Volkmar W. Pogatzki <gentoo <AT> pogatzki <DOT> net>
AuthorDate: Thu Mar 28 12:18:09 2024 +0000
Commit:     Miroslav Šulc <fordfrog <AT> gentoo <DOT> org>
CommitDate: Sun Mar 31 08:31:09 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5c7991bd

dev-java/commons-beanutils: fix test failures

Test sources of commons-collections-3.2.2 are needed for compiling the
test cases but are not part of the commons-collections.jar file.

Adds verify-sig

Closes: https://bugs.gentoo.org/923600
Signed-off-by: Volkmar W. Pogatzki <gentoo <AT> pogatzki.net>
Closes: https://github.com/gentoo/gentoo/pull/35952
Signed-off-by: Miroslav Šulc <fordfrog <AT> gentoo.org>

 dev-java/commons-beanutils/Manifest                |   2 +
 .../commons-beanutils-1.9.4-r1.ebuild              | 101 -----------
 .../commons-beanutils-1.9.4-r2.ebuild              |  84 +++++++++
 .../files/commons-collections-3.2.2-fixes.patch    | 187 +++++++++++++++++++++
 4 files changed, 273 insertions(+), 101 deletions(-)

diff --git a/dev-java/commons-beanutils/Manifest b/dev-java/commons-beanutils/Manifest
index fe0438633a4b..3d0920954f02 100644
--- a/dev-java/commons-beanutils/Manifest
+++ b/dev-java/commons-beanutils/Manifest
@@ -1 +1,3 @@
 DIST commons-beanutils-1.9.4-src.tar.gz 412606 BLAKE2B 213a2ad4d976ed4c55c9a73c0970a656e2f03efcba886369c8be164e04618937ad636ce7ffa6aa7b981e9595b24e4cbacc2bc632268bbfede8172091ef6eb4ff SHA512 6f3d30d02b9a66cf20509bd868c6e2dadb44bb27da1e6b9af7275675e0f3826845a5d4005509dd1eb77a5b2937820c4770a3753daaab072785dcdab0caa69e73
+DIST commons-beanutils-1.9.4-src.tar.gz.asc 833 BLAKE2B c971231cfb034bd9bbbd6e7801a4fcb54853c0d18872cfae81ce761fc8f71ebb70955456827ad33b4abd4df8c9820031fd49f28c50eddef5251b2a0d1b01cff9 SHA512 2a966959b2c94bf013df71885c2906a092b43a0ac6d63963f1462e7c09376964bb948c0681278a58fffae6716d042dc846b1649e1f4b0816e2adb3733bf14451
+DIST commons-collections-3.2.2-src.tar.gz 630693 BLAKE2B a70cebe9526291d5207db7edd7c9b50060413880d41dcb28c01cf05f7e00a9f5e1560012c3c3c763162412282db9512bc2b64a5788f210c5c8866943d912dafb SHA512 2e8ef638f07515b028a3e7e97851fcf1d9023a2c188e211bd1e936f35d3d91c2885adf3b1103ad17dfb7aeea6e7a67ce7826ee346a8a29c1aa7c6b0cf14e9230

diff --git a/dev-java/commons-beanutils/commons-beanutils-1.9.4-r1.ebuild b/dev-java/commons-beanutils/commons-beanutils-1.9.4-r1.ebuild
deleted file mode 100644
index a4b3175fa186..000000000000
--- a/dev-java/commons-beanutils/commons-beanutils-1.9.4-r1.ebuild
+++ /dev/null
@@ -1,101 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-# Skeleton command:
-# java-ebuilder --generate-ebuild --workdir . --pom pom.xml --download-uri mirror://apache/commons/beanutils/source/1.9.4-src.tar.gz --slot 1.7 --keywords "~amd64 ~x86 ~ppc64 ~amd64-linux ~x86-linux ~x64-macos" --ebuild commons-beanutils-1.9.4.ebuild
-
-EAPI=8
-
-JAVA_PKG_IUSE="doc source test"
-MAVEN_ID="commons-beanutils:commons-beanutils:1.9.4"
-JAVA_TESTING_FRAMEWORKS="junit-4"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Provides easy-to-use wrappers around Reflection and Introspection APIs"
-HOMEPAGE="https://commons.apache.org/proper/commons-beanutils/"
-SRC_URI="mirror://apache/commons/beanutils/source/${P}-src.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="1.7"
-KEYWORDS="amd64 ~arm arm64 ppc64 x86 ~amd64-linux ~x86-linux ~x64-macos"
-
-# Common dependencies
-# POM: pom.xml
-# commons-collections:commons-collections:3.2.2 -> >=dev-java/commons-collections-3.2.2:0
-# commons-logging:commons-logging:1.2 -> >=dev-java/commons-logging-1.2:0
-
-CP_DEPEND="
-	dev-java/commons-collections:0
-	dev-java/commons-logging:0
-"
-
-# Compile dependencies
-# POM: pom.xml
-# test? commons-collections:commons-collections-testframework:3.2.1 -> !!!artifactId-not-found!!!
-# test? junit:junit:4.12 -> >=dev-java/junit-4.12:4
-
-DEPEND="${CP_DEPEND}
-	>=virtual/jdk-1.8:*
-	test? (
-		dev-java/commons-collections:0[test]
-	)"
-
-RDEPEND="${CP_DEPEND}
-	>=virtual/jre-1.8:*"
-
-DOCS=( {CONTRIBUTING,README}.md {LICENSE,NOTICE,RELEASE-NOTES}.txt )
-
-S="${WORKDIR}/${P}-src"
-
-JAVA_ENCODING="iso-8859-1"
-
-JAVA_SRC_DIR="src/main/java"
-
-JAVA_TEST_GENTOO_CLASSPATH="commons-collections,junit-4"
-JAVA_TEST_SRC_DIR="src/test/java"
-
-JAVA_TEST_EXCLUDES=(
-	# Upstream: Tests run: 1293, Failures: 0, Errors: 0, Skipped: 3
-	"org.apache.commons.beanutils.TestBeanPublicSubclass"	# Invalid test class
-	"org.apache.commons.beanutils.TestBeanPackageSubclass"	# Invalid test class
-	"org.apache.commons.beanutils.TestResultSetMetaData"	# Invalid test class
-	"org.apache.commons.beanutils.TestResultSet"	# Test class can only have one constructor
-	"org.apache.commons.beanutils.TestBean"	# Test class can only have one constructor
-	# https://github.com/apache/commons-beanutils/blob/32ceb2c92512d44f97638805e2f3fd9d70dfcfc6/pom.xml#L378-L383
-	#                 <!-- This test case is known to fail, and there isn't any proposed fix
-	#                   -  so we will just exclude it until someone comes up with a solution.
-	#                 -->
-	"org.apache.commons.beanutils.converters.MemoryTestCase"
-)
-
-src_test() {
-	# There were 8 failures:
-	# 1) testPropertyUtilsBean_descriptorsCache_memoryLeak(org.apache.commons.beanutils.memoryleaktests.MemoryLeakTestCase)
-	# java.lang.OutOfMemoryError: Java heap space: failed reallocation of scalar replaced objects
-	# 2) testPropertyUtilsBean_mappedDescriptorsCache_memoryLeak(org.apache.commons.beanutils.memoryleaktests.MemoryLeakTestCase)
-	# java.lang.OutOfMemoryError: Java heap space: failed reallocation of scalar replaced objects
-	# 3) testMappedPropertyDescriptor_MappedMethodReference1(org.apache.commons.beanutils.memoryleaktests.MemoryLeakTestCase)
-	# java.lang.OutOfMemoryError: Java heap space: failed reallocation of scalar replaced objects
-	# 4) testMappedPropertyDescriptor_MappedMethodReference2(org.apache.commons.beanutils.memoryleaktests.MemoryLeakTestCase)
-	# java.lang.OutOfMemoryError: Java heap space: failed reallocation of scalar replaced objects
-	# 5) testLocaleConvertUtilsBean_converters_memoryLeak(org.apache.commons.beanutils.memoryleaktests.MemoryLeakTestCase)
-	# java.lang.OutOfMemoryError: Java heap space: failed reallocation of scalar replaced objects
-	# 6) testWrapDynaClass_dynaClasses_memoryLeak(org.apache.commons.beanutils.memoryleaktests.MemoryLeakTestCase)
-	# java.lang.OutOfMemoryError: Java heap space: failed reallocation of scalar replaced objects
-	# 7) testMethodUtils_cache_memoryLeak(org.apache.commons.beanutils.memoryleaktests.MemoryLeakTestCase)
-	# java.lang.OutOfMemoryError: Java heap space: failed reallocation of scalar replaced objects
-	# 8) testConvertUtilsBean_converters_memoryLeak(org.apache.commons.beanutils.memoryleaktests.MemoryLeakTestCase)
-	# java.lang.OutOfMemoryError: Java heap space: failed reallocation of scalar replaced objects
-	local vm_version="$(java-config -g PROVIDES_VERSION)"
-	if [[ "${vm_version}" == "11" ]] ; then
-		JAVA_TEST_EXCLUDES+=( "org.apache.commons.beanutils.memoryleaktests.MemoryLeakTestCase" )
-	fi
-
-	java-pkg-simple_src_test
-}
-
-src_install() {
-	default # https://bugs.gentoo.org/789582
-	java-pkg-simple_src_install
-}

diff --git a/dev-java/commons-beanutils/commons-beanutils-1.9.4-r2.ebuild b/dev-java/commons-beanutils/commons-beanutils-1.9.4-r2.ebuild
new file mode 100644
index 000000000000..ba6bfd171173
--- /dev/null
+++ b/dev-java/commons-beanutils/commons-beanutils-1.9.4-r2.ebuild
@@ -0,0 +1,84 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_ID="commons-beanutils:commons-beanutils:1.9.4"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple verify-sig
+
+DESCRIPTION="Provides easy-to-use wrappers around Reflection and Introspection APIs"
+HOMEPAGE="https://commons.apache.org/proper/commons-beanutils/"
+# We need some test classes of commons-collections which are not part of the jar file.
+ACC="commons-collections-3.2.2"
+SRC_URI="mirror://apache/commons/beanutils/source/${P}-src.tar.gz
+	test? ( https://archive.apache.org/dist/commons/collections/source/${ACC}-src.tar.gz )
+	verify-sig? ( https://downloads.apache.org/commons/beanutils/source/${P}-src.tar.gz.asc )"
+S="${WORKDIR}/${P}-src"
+
+LICENSE="Apache-2.0"
+SLOT="1.7"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86 ~amd64-linux ~x86-linux ~x64-macos"
+
+VERIFY_SIG_OPENPGP_KEY_PATH="/usr/share/openpgp-keys/commons.apache.org.asc"
+BDEPEND="verify-sig? ( sec-keys/openpgp-keys-apache-commons )"
+CP_DEPEND="
+	dev-java/commons-collections:0
+	dev-java/commons-logging:0
+"
+DEPEND="${CP_DEPEND}
+	>=virtual/jdk-1.8:*"
+RDEPEND="${CP_DEPEND}
+	>=virtual/jre-1.8:*"
+
+DOCS=( {CONTRIBUTING,README}.md {NOTICE,RELEASE-NOTES}.txt )
+
+JAVA_ENCODING="iso-8859-1"
+JAVA_SRC_DIR="src/main/java"
+
+JAVA_TEST_GENTOO_CLASSPATH="junit-4 "
+JAVA_TEST_SRC_DIR=(
+	src/test/java
+	../"${ACC}"-src/src/test
+)
+
+src_unpack() {
+	if use verify-sig; then
+		verify-sig_verify_detached "${DISTDIR}"/${P}-src.tar.gz{,.asc}
+	fi
+	default
+}
+
+src_test() {
+	export LC_ALL="en_US.UTF-8"
+	# Apply patch to unpacked commons-collections
+	pushd "../${ACC}-src" >> /dev/null || die
+		eapply "${FILESDIR}/${ACC}-fixes.patch"
+	popd
+
+	pushd src/test/java || die
+		# Selection according to lines 375-383 pom.xml
+		local JAVA_TEST_RUN_ONLY=$(find * \
+			-path "**/*TestCase.java" \
+			! -path "**/*MemoryTestCase.java" \
+			! -path "**/*MemoryLeakTestCase.java" \
+			! -path "**/*LocaleBeanificationTestCase.java" \
+			! -path "**/Jira347TestCase.java" \
+			)
+	popd
+	JAVA_TEST_RUN_ONLY="${JAVA_TEST_RUN_ONLY//.java}"
+	JAVA_TEST_RUN_ONLY="${JAVA_TEST_RUN_ONLY//\//.}"
+
+	# We skip 2 more test classes conditionally which have failures with Java 21
+	# Error converting 'String' to 'java.sql.Time' using pattern 'h:mm a'
+	# Error converting 'String' to 'java.sql.Timestamp' using pattern 'M/d/yy, h:mm a'
+	local vm_version="$(java-config -g PROVIDES_VERSION)"
+	if ver_test "${vm_version}" -ge "21"; then
+		JAVA_TEST_RUN_ONLY=${JAVA_TEST_RUN_ONLY//org.apache.commons.beanutils.converters.SqlTimeConverterTestCase}
+		JAVA_TEST_RUN_ONLY=${JAVA_TEST_RUN_ONLY//org.apache.commons.beanutils.converters.SqlTimestampConverterTestCase}
+	fi
+
+	java-pkg-simple_src_test
+}

diff --git a/dev-java/commons-beanutils/files/commons-collections-3.2.2-fixes.patch b/dev-java/commons-beanutils/files/commons-collections-3.2.2-fixes.patch
new file mode 100644
index 000000000000..2f1380a06ffc
--- /dev/null
+++ b/dev-java/commons-beanutils/files/commons-collections-3.2.2-fixes.patch
@@ -0,0 +1,187 @@
+Patch stolen from:
+From e90a6173247f06514731825677f3fc67c62bdc52 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Miroslav=20=C5=A0ulc?= <fordfrog@gentoo.org>
+Date: Wed, 21 Apr 2021 11:31:11 +0200
+--- a/build.xml
++++ b/build.xml
+@@ -154,8 +154,7 @@
+              
+     <!-- NOTE: A jar built using JDK1.4 is incompatible with JDK1.2 -->
+     <jar    jarfile="${build.jar.name}"
+-            basedir="${build.classes}"
+-           manifest="${build.conf}/MANIFEST.MF"/>
++            basedir="${build.classes}"/>
+   </target>
+ 
+ <!-- ====================================================================== -->
+--- a/src/java/org/apache/commons/collections/MultiHashMap.java
++++ b/src/java/org/apache/commons/collections/MultiHashMap.java
+@@ -331,7 +331,7 @@ public class MultiHashMap extends HashMap implements MultiMap {
+      * @param item  the value to remove
+      * @return the value removed (which was passed in), null if nothing removed
+      */
+-    public Object remove(Object key, Object item) {
++    public Object removeMapping(Object key, Object item) {
+         Collection valuesForKey = getCollection(key);
+         if (valuesForKey == null) {
+             return null;
+--- a/src/java/org/apache/commons/collections/MultiMap.java
++++ b/src/java/org/apache/commons/collections/MultiMap.java
+@@ -66,7 +66,7 @@ public interface MultiMap extends Map {
+      * @throws ClassCastException if the key or value is of an invalid type
+      * @throws NullPointerException if the key or value is null and null is invalid
+      */
+-    public Object remove(Object key, Object item);
++    public Object removeMapping(Object key, Object item);
+ 
+     //-----------------------------------------------------------------------
+     /**
+--- a/src/java/org/apache/commons/collections/map/MultiKeyMap.java
++++ b/src/java/org/apache/commons/collections/map/MultiKeyMap.java
+@@ -197,7 +197,7 @@ public class MultiKeyMap
+      * @param key2  the second key
+      * @return the value mapped to the removed key, null if key not in map
+      */
+-    public Object remove(Object key1, Object key2) {
++    public Object removeMultiKey(Object key1, Object key2) {
+         int hashCode = hash(key1, key2);
+         int index = map.hashIndex(hashCode, map.data.length);
+         AbstractHashedMap.HashEntry entry = map.data[index];
+--- a/src/java/org/apache/commons/collections/map/MultiValueMap.java
++++ b/src/java/org/apache/commons/collections/map/MultiValueMap.java
+@@ -153,7 +153,7 @@ public class MultiValueMap extends AbstractMapDecorator implements MultiMap {
+      * @param value the value to remove
+      * @return the value removed (which was passed in), null if nothing removed
+      */
+-    public Object remove(Object key, Object value) {
++    public Object removeMapping(Object key, Object value) {
+         Collection valuesForKey = getCollection(key);
+         if (valuesForKey == null) {
+             return null;
+--- a/src/test/org/apache/commons/collections/TestMultiHashMap.java
++++ b/src/test/org/apache/commons/collections/TestMultiHashMap.java
+@@ -217,7 +217,7 @@ public class TestMultiHashMap extends AbstractTestMap {
+         MultiHashMap one = new MultiHashMap();
+         Integer value = new Integer(1);
+         one.put("One", value);
+-        one.remove("One", value);
++        one.removeMapping("One", value);
+         
+         MultiHashMap two = new MultiHashMap();
+         assertEquals(two, one);
+@@ -269,7 +269,7 @@ public class TestMultiHashMap extends AbstractTestMap {
+         assertEquals(4, map.totalSize());
+         map.remove("A");
+         assertEquals(3, map.totalSize());
+-        map.remove("B", "BC");
++        map.removeMapping("B", "BC");
+         assertEquals(2, map.totalSize());
+     }
+     
+@@ -292,7 +292,7 @@ public class TestMultiHashMap extends AbstractTestMap {
+         map.remove("A");
+         assertEquals(0, map.size("A"));
+         assertEquals(3, map.size("B"));
+-        map.remove("B", "BC");
++        map.removeMapping("B", "BC");
+         assertEquals(0, map.size("A"));
+         assertEquals(2, map.size("B"));
+     }
+@@ -464,11 +464,11 @@ public class TestMultiHashMap extends AbstractTestMap {
+         map.put("A", "AA");
+         map.put("A", "AB");
+         map.put("A", "AC");
+-        assertEquals(null, map.remove("C", "CA"));
+-        assertEquals(null, map.remove("A", "AD"));
+-        assertEquals("AC", map.remove("A", "AC"));
+-        assertEquals("AB", map.remove("A", "AB"));
+-        assertEquals("AA", map.remove("A", "AA"));
++        assertEquals(null, map.removeMapping("C", "CA"));
++        assertEquals(null, map.removeMapping("A", "AD"));
++        assertEquals("AC", map.removeMapping("A", "AC"));
++        assertEquals("AB", map.removeMapping("A", "AB"));
++        assertEquals("AA", map.removeMapping("A", "AA"));
+         assertEquals(new MultiHashMap(), map);
+     }
+ 
+--- a/src/test/org/apache/commons/collections/collection/AbstractTestCollection.java
++++ b/src/test/org/apache/commons/collections/collection/AbstractTestCollection.java
+@@ -1116,7 +1116,7 @@ public abstract class AbstractTestCollection extends AbstractTestObject {
+         verify();
+ 
+         try {
+-            array = collection.toArray(null);
++            array = collection.toArray((Object[]) null);
+             fail("toArray(null) should raise NPE");
+         } catch (NullPointerException e) {
+             // expected
+--- a/src/test/org/apache/commons/collections/map/TestMultiKeyMap.java
++++ b/src/test/org/apache/commons/collections/map/TestMultiKeyMap.java
+@@ -315,10 +315,10 @@ public class TestMultiKeyMap extends AbstractTestIterableMap {
+             switch (key.size()) {
+                 case 2:
+                 assertEquals(true, multimap.containsKey(key.getKey(0), key.getKey(1)));
+-                assertEquals(value, multimap.remove(key.getKey(0), key.getKey(1)));
++                assertEquals(value, multimap.removeMultiKey(key.getKey(0), key.getKey(1)));
+                 assertEquals(false, multimap.containsKey(key.getKey(0), key.getKey(1)));
+                 assertEquals(size - 1, multimap.size());
+-                assertEquals(null, multimap.remove(key.getKey(0), key.getKey(1)));
++                assertEquals(null, multimap.removeMultiKey(key.getKey(0), key.getKey(1)));
+                 assertEquals(false, multimap.containsKey(key.getKey(0), key.getKey(1)));
+                 break;
+                 case 3:
+--- a/src/test/org/apache/commons/collections/map/TestMultiValueMap.java
++++ b/src/test/org/apache/commons/collections/map/TestMultiValueMap.java
+@@ -161,7 +161,7 @@ public class TestMultiValueMap extends TestCase {
+         MultiValueMap one = new MultiValueMap();
+         Integer value = new Integer(1);
+         one.put("One", value);
+-        one.remove("One", value);
++        one.removeMapping("One", value);
+         
+         MultiValueMap two = new MultiValueMap();
+         assertEquals(two, one);
+@@ -187,7 +187,7 @@ public class TestMultiValueMap extends TestCase {
+         assertEquals(4, map.totalSize());
+         map.remove("A");
+         assertEquals(3, map.totalSize());
+-        map.remove("B", "BC");
++        map.removeMapping("B", "BC");
+         assertEquals(2, map.totalSize());
+     }
+     
+@@ -204,7 +204,7 @@ public class TestMultiValueMap extends TestCase {
+         assertEquals(2, map.size());
+         map.remove("A");
+         assertEquals(2, map.size());
+-        map.remove("B", "BC");
++        map.removeMapping("B", "BC");
+         assertEquals(2, map.size());
+     }
+     
+@@ -227,7 +227,7 @@ public class TestMultiValueMap extends TestCase {
+         map.remove("A");
+         assertEquals(0, map.size("A"));
+         assertEquals(3, map.size("B"));
+-        map.remove("B", "BC");
++        map.removeMapping("B", "BC");
+         assertEquals(0, map.size("A"));
+         assertEquals(2, map.size("B"));
+     }
+@@ -338,11 +338,11 @@ public class TestMultiValueMap extends TestCase {
+         map.put("A", "AA");
+         map.put("A", "AB");
+         map.put("A", "AC");
+-        assertEquals(null, map.remove("C", "CA"));
+-        assertEquals(null, map.remove("A", "AD"));
+-        assertEquals("AC", map.remove("A", "AC"));
+-        assertEquals("AB", map.remove("A", "AB"));
+-        assertEquals("AA", map.remove("A", "AA"));
++        assertEquals(null, map.removeMapping("C", "CA"));
++        assertEquals(null, map.removeMapping("A", "AD"));
++        assertEquals("AC", map.removeMapping("A", "AC"));
++        assertEquals("AB", map.removeMapping("A", "AB"));
++        assertEquals("AA", map.removeMapping("A", "AA"));
+         assertEquals(new MultiValueMap(), map);
+     }
+ 


^ permalink raw reply related	[flat|nested] 2+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-java/commons-beanutils/files/, dev-java/commons-beanutils/
@ 2025-10-03  5:11 Sam James
  0 siblings, 0 replies; 2+ messages in thread
From: Sam James @ 2025-10-03  5:11 UTC (permalink / raw
  To: gentoo-commits

commit:     a94596311b980d38f010a3ad730728a706a918ec
Author:     Volkmar W. Pogatzki <gentoo <AT> pogatzki <DOT> net>
AuthorDate: Tue Jul 29 06:20:40 2025 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Oct  3 05:08:36 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a9459631

dev-java/commons-beanutils: add 1.11.0

Bug: https://bugs.gentoo.org/960929
Signed-off-by: Volkmar W. Pogatzki <gentoo <AT> pogatzki.net>
Part-of: https://github.com/gentoo/gentoo/pull/42983
Signed-off-by: Sam James <sam <AT> gentoo.org>

 dev-java/commons-beanutils/Manifest                |  2 +
 .../commons-beanutils-1.11.0.ebuild                | 97 ++++++++++++++++++++++
 .../commons-beanutils-1.11.0-skipFailingTest.patch | 31 +++++++
 3 files changed, 130 insertions(+)

diff --git a/dev-java/commons-beanutils/Manifest b/dev-java/commons-beanutils/Manifest
index dacbe47ef92f..b252a76331f2 100644
--- a/dev-java/commons-beanutils/Manifest
+++ b/dev-java/commons-beanutils/Manifest
@@ -1,5 +1,7 @@
 DIST commons-beanutils-1.10.1-src.tar.gz 401852 BLAKE2B 380282dd125d7ea5d11b9ad109d6db0f3fad433b241f3abd3c39a5830cdbfb505b82c28e615e0d8a6807f811c43c65f41c968078841de756a01dd5815c896152 SHA512 063d4c0c9b8c77e9358e15c0ac8b1ad7abbb31e4760a5b3898bac2aee72d0a7eb4f7890769fa31bd096eb038759f97f10f4e7418a6fc4059c1a2050a20756581
 DIST commons-beanutils-1.10.1-src.tar.gz.asc 488 BLAKE2B f2d8bdc0de05fcbd2ae7e02b60ef461d3206100eed9134ea308b4129dcc820da954e49ce2aa6af6608555b5fa1be18cb7fa1eef2a1b1462070c4e4131dbbc7f9 SHA512 c63782276dead71add56022515d1f8336d618ddf5166cbafa18a062031f2962791a31a74d225d3bef1b557213c15f37c6b7ce98c83046e3f537cc47ca6cfee7a
+DIST commons-beanutils-1.11.0-src.tar.gz 403183 BLAKE2B 3823f9ff060d182485cd7cae54999ae5d076d3cff0eec5f5ae87d66cfc960f9224cf17940023991b7e599a826796d572dd476681ced2a46accbeb209ff723f13 SHA512 edd930e7f8118d0cceb8647666fe1d5f873f939f858f433cd19985a75c4575455f2a2d339e4bcbf08b3f586c785a60429d4bb33ff6239da8f2c6183c8c318f18
+DIST commons-beanutils-1.11.0-src.tar.gz.asc 488 BLAKE2B 57401bf829ff9badc9ace98c8b3e36e65d2a649b4eb07a314426bd7b5b566965c9b5122a976be78e665f203af67d732fa401b1f417a4b0a349a0071f5cdc26e1 SHA512 f40927ad294f0280460aef5c53fd4a29357e59238a7f407013b9f67c333aa0752bde709f2fedc802f8140175bc3eedc446d8ad68d184643e6bf643aeff42f319
 DIST commons-beanutils-1.9.4-src.tar.gz 412606 BLAKE2B 213a2ad4d976ed4c55c9a73c0970a656e2f03efcba886369c8be164e04618937ad636ce7ffa6aa7b981e9595b24e4cbacc2bc632268bbfede8172091ef6eb4ff SHA512 6f3d30d02b9a66cf20509bd868c6e2dadb44bb27da1e6b9af7275675e0f3826845a5d4005509dd1eb77a5b2937820c4770a3753daaab072785dcdab0caa69e73
 DIST commons-beanutils-1.9.4-src.tar.gz.asc 833 BLAKE2B c971231cfb034bd9bbbd6e7801a4fcb54853c0d18872cfae81ce761fc8f71ebb70955456827ad33b4abd4df8c9820031fd49f28c50eddef5251b2a0d1b01cff9 SHA512 2a966959b2c94bf013df71885c2906a092b43a0ac6d63963f1462e7c09376964bb948c0681278a58fffae6716d042dc846b1649e1f4b0816e2adb3733bf14451
 DIST commons-collections-3.2.2-src.tar.gz 630693 BLAKE2B a70cebe9526291d5207db7edd7c9b50060413880d41dcb28c01cf05f7e00a9f5e1560012c3c3c763162412282db9512bc2b64a5788f210c5c8866943d912dafb SHA512 2e8ef638f07515b028a3e7e97851fcf1d9023a2c188e211bd1e936f35d3d91c2885adf3b1103ad17dfb7aeea6e7a67ce7826ee346a8a29c1aa7c6b0cf14e9230

diff --git a/dev-java/commons-beanutils/commons-beanutils-1.11.0.ebuild b/dev-java/commons-beanutils/commons-beanutils-1.11.0.ebuild
new file mode 100644
index 000000000000..71bd50a49059
--- /dev/null
+++ b/dev-java/commons-beanutils/commons-beanutils-1.11.0.ebuild
@@ -0,0 +1,97 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_ID="commons-beanutils:commons-beanutils:1.11.0"
+JAVA_TESTING_FRAMEWORKS="junit-vintage"
+
+inherit java-pkg-2 java-pkg-simple junit5 verify-sig
+
+DESCRIPTION="Provides easy-to-use wrappers around Reflection and Introspection APIs"
+HOMEPAGE="https://commons.apache.org/proper/commons-beanutils/"
+# We need some test classes of commons-collections which are not part of the jar file.
+ACC="commons-collections-3.2.2"
+SRC_URI="mirror://apache/commons/beanutils/source/${P}-src.tar.gz
+	test? ( https://archive.apache.org/dist/commons/collections/source/${ACC}-src.tar.gz )
+	verify-sig? ( https://downloads.apache.org/commons/beanutils/source/${P}-src.tar.gz.asc )"
+S="${WORKDIR}/${P}-src"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~amd64-linux ~x86-linux ~x64-macos"
+IUSE="log4j"
+
+BDEPEND="verify-sig? ( sec-keys/openpgp-keys-ggregory )"
+
+COMMON_DEPEND="
+	dev-java/commons-collections:0
+	>=dev-java/commons-logging-1.3.5:0[log4j=]
+	log4j? (
+		dev-java/log4j-12-api:2
+		dev-java/log4j-api:2
+	)
+"
+
+DEPEND="
+	${COMMON_DEPEND}
+	dev-java/jakarta-servlet-api:4
+	dev-java/slf4j-api:0
+	>=virtual/jdk-11:*
+	test? (
+		dev-java/junit:4
+		dev-java/junit:5[vintage]
+		dev-java/opentest4j:0
+	)
+"
+RDEPEND="
+	${COMMON_DEPEND}
+	>=virtual/jre-1.8:*
+"
+
+DOCS=( {CONTRIBUTING,README}.md {NOTICE,RELEASE-NOTES}.txt )
+PATCHES=( "${FILESDIR}/commons-beanutils-1.11.0-skipFailingTest.patch" )
+
+JAVA_CLASSPATH_EXTRA="jakarta-servlet-api-4 slf4j-api"
+JAVA_GENTOO_CLASSPATH="commons-collections commons-logging"
+JAVA_INTERMEDIATE_JAR_NAME="org.apache.${PN/-/.}"
+JAVA_MODULE_INFO_OUT="src/main"
+JAVA_SRC_DIR="src/main/java"
+JAVA_TEST_GENTOO_CLASSPATH="junit-4 junit-5 opentest4j"
+JAVA_TEST_RESOURCE_DIRS="data"
+JAVA_TEST_SRC_DIR=( src/test/java ../"${ACC}"-src/src/test )
+VERIFY_SIG_OPENPGP_KEY_PATH="/usr/share/openpgp-keys/ggregory.asc"
+
+src_unpack() {
+	if use verify-sig; then
+		verify-sig_verify_detached "${DISTDIR}"/${P}-src.tar.gz{,.asc}
+	fi
+	default
+}
+
+src_prepare() {
+	default #780585
+	java-pkg-2_src_prepare
+
+	if use log4j; then
+		JAVA_GENTOO_CLASSPATH+="
+			log4j-12-api-2
+			log4j-api-2
+		"
+	fi
+
+	if use test; then
+		# Apply patch to unpacked commons-collections
+		pushd "../${ACC}-src" >> /dev/null || die
+			eapply "${FILESDIR}/${ACC}-fixes.patch"
+		popd
+
+		cp -r ../"${ACC}"-src/data . || die "copy test data"
+	fi
+
+	local vm_version="$(java-config -g PROVIDES_VERSION)"
+	if ver_test "${vm_version}" -ge 17; then
+		JAVA_TEST_EXTRA_ARGS+=( --add-opens=java.base/java.{io,lang,util,time,time.chrono}=ALL-UNNAMED )
+	fi
+}

diff --git a/dev-java/commons-beanutils/files/commons-beanutils-1.11.0-skipFailingTest.patch b/dev-java/commons-beanutils/files/commons-beanutils-1.11.0-skipFailingTest.patch
new file mode 100644
index 000000000000..0f5508161710
--- /dev/null
+++ b/dev-java/commons-beanutils/files/commons-beanutils-1.11.0-skipFailingTest.patch
@@ -0,0 +1,31 @@
+ testComponentRegistersCustomConverter
+      tags: []
+  uniqueId: [engine:junit-vintage]/[runner:org.apache.commons.beanutils.converters.MemoryTestCase]/[test:testComponentRegistersCustomConverter(org.apache.commons.beanutils.converters.MemoryTestCase)]
+    parent: [engine:junit-vintage]/[runner:org.apache.commons.beanutils.converters.MemoryTestCase]
+    source: MethodSource [className = 'org.apache.commons.beanutils.converters.MemoryTestCase', methodName = 'testComponentRegistersCustomConverter', methodParameterTypes = '']
+    caught: java.lang.NegativeArraySizeException: -2147483648
+              	at org.apache.commons.beanutils.converters.MemoryTestCase.forceGarbageCollection(MemoryTestCase.java:68)
+              	at org.apache.commons.beanutils.converters.MemoryTestCase.testComponentRegistersCustomConverter(MemoryTestCase.java:162)
+              	at java.base/java.lang.reflect.Method.invoke(Method.java:565)
+  duration: 1227 ms
+    status: ✘ FAILED
+
+--- a/src/test/java/org/apache/commons/beanutils/converters/MemoryTestCase.java
++++ b/src/test/java/org/apache/commons/beanutils/converters/MemoryTestCase.java
+@@ -26,6 +26,7 @@ import java.lang.ref.WeakReference;
+ 
+ import org.apache.commons.beanutils.ConvertUtils;
+ import org.apache.commons.beanutils.Converter;
++import org.junit.Ignore;
+ import org.junit.Test;
+ 
+ /**
+@@ -95,7 +96,7 @@ public class MemoryTestCase {
+      * </ul>
+      *
+      */
+-    @Test
++    @Test @Ignore
+     public void testComponentRegistersCustomConverter() throws Exception {
+ 
+         final ClassLoader origContextClassLoader = Thread.currentThread().getContextClassLoader();


^ permalink raw reply related	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2025-10-03  5:12 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-10-03  5:11 [gentoo-commits] repo/gentoo:master commit in: dev-java/commons-beanutils/files/, dev-java/commons-beanutils/ Sam James
  -- strict thread matches above, loose matches on Subject: below --
2024-03-31  8:32 Miroslav Šulc

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox