summaryrefslogtreecommitdiff
path: root/dev-java
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2024-12-09 02:07:41 +0000
committerV3n3RiX <venerix@koprulu.sector>2024-12-09 02:07:41 +0000
commit1a95f960273f276a4fdefb824336b073d83bcb5e (patch)
tree6adc7118c038d948a0e44ceb3095e09bc2cbe488 /dev-java
parent494168b06b81a32b889c3cb1f721f925d0a6824f (diff)
gentoo auto-resync : 09:12:2024 - 02:07:41
Diffstat (limited to 'dev-java')
-rw-r--r--dev-java/Manifest.gzbin55384 -> 55387 bytes
-rw-r--r--dev-java/byte-buddy/Manifest3
-rw-r--r--dev-java/byte-buddy/byte-buddy-1.15.10.ebuild144
-rw-r--r--dev-java/byte-buddy/files/byte-buddy-1.15.10-Skip-testIgnoreExistingField.patch34
-rw-r--r--dev-java/javassist/Manifest5
-rw-r--r--dev-java/javassist/files/javassist-3.29.2-gentoo.patch46
-rw-r--r--dev-java/javassist/javassist-3.29.2.ebuild42
-rw-r--r--dev-java/javassist/javassist-3.30.2.ebuild54
-rw-r--r--dev-java/jdbc-postgresql/Manifest2
-rw-r--r--dev-java/jdbc-postgresql/jdbc-postgresql-42.7.4.ebuild58
-rw-r--r--dev-java/mockito/Manifest1
-rw-r--r--dev-java/mockito/mockito-2.28.2-r1.ebuild106
-rw-r--r--dev-java/scram/Manifest4
-rw-r--r--dev-java/scram/metadata.xml1
-rw-r--r--dev-java/scram/scram-3.1.ebuild102
-rw-r--r--dev-java/stringprep/Manifest4
-rw-r--r--dev-java/stringprep/metadata.xml1
-rw-r--r--dev-java/stringprep/stringprep-2.2.ebuild55
18 files changed, 626 insertions, 36 deletions
diff --git a/dev-java/Manifest.gz b/dev-java/Manifest.gz
index ba97a61b040c..d1d39954b3c4 100644
--- a/dev-java/Manifest.gz
+++ b/dev-java/Manifest.gz
Binary files differ
diff --git a/dev-java/byte-buddy/Manifest b/dev-java/byte-buddy/Manifest
index eb9f73fc2574..1f58093aa02a 100644
--- a/dev-java/byte-buddy/Manifest
+++ b/dev-java/byte-buddy/Manifest
@@ -1,3 +1,6 @@
+AUX byte-buddy-1.15.10-Skip-testIgnoreExistingField.patch 1409 BLAKE2B f327cbb42bd8cd2a39a1cda15e4307a9a366f8350c51bd98af2d70e6f9b36e06e21a6a82a2c3a30abe6b8abb5c8e40da4d5601b6b2061625a750de297e4744b3 SHA512 c4d4aa9a0e4719241ead17bf8bf8a04f06055a9985127e892eec000ef02c0d9ee88e76190d8c19e544e1ac99ec87b01a3d00332d5caca842d2e95b1edf608c8c
DIST byte-buddy-1.14.0.tar.gz 1989303 BLAKE2B c284f54ebc6bf67e4706380f0876f403fcf5ae172a690888d13d6b3399cf41bf1fd8890bf15059f71a9457ec6343254ad1f421f8e4975aa70dd9a2103ab59610 SHA512 e6ccda287935b5ff7104d5c0e4904b0595918a21bcc90c6ac5b2358cc0371b22a4fcac2a95dde9e377c5d1e43077c8b57ea9520a9093b2380ab53c830f107ced
+DIST byte-buddy-1.15.10.tar.gz 2057524 BLAKE2B 7f5e178b3ea31fb30379e49d69f34ba1b9953d705a54c3609bb771f66962af776dee95ea10ab7049e50351362ff87c164782bc4b1b782985ac8f122e5833cb4e SHA512 3b7a02475433193efe8a8e20378369ec18f10c81dd90b428d5393c45fe261f678b1707c92923381b8a3030f8a2e8525fe95e3337ca7e5455cdc5fc2647416d2a
EBUILD byte-buddy-1.14.0.ebuild 4836 BLAKE2B 157a0deb79c6011aa6facdf995e5cbcac333cfcb7a6bf23cf1d4aef045f30860dd1e1fadd783ee9c98745e369ab0b84a717a2dfea0f281d2e51305686c1dd134 SHA512 cbdba61c44c69f52f8327857618d8238ff131df0463190d4dcd6985cc58cee5691749a20f7208b0fb091fb405dc4a4af52e1b1608729abd18a2bd5ef4af8c1ca
+EBUILD byte-buddy-1.15.10.ebuild 4173 BLAKE2B 02c21435e490f8e44c9bf97af9abdfd3c1855c250812bb0b8538ea9402575e3567eeb6967f9842ec58df64811b9a857147d8cac42d7be26624a5619645ef5ce0 SHA512 84677f6f5159309821e427779a7033d0829bef426ae46ce388736dba575443b9f27bfcdc73a964a9b20b1ff452f28b530ebb2b3504ad11a14f1c611ae79d6925
MISC metadata.xml 440 BLAKE2B ef73e69de33dc6bbea38c81b8744fad5ce4764644d9cc6168d7c0f175856e30c3a577ffc597f25f8caf26bacfd80663b55eddde047a346fcb582d883269233b9 SHA512 b27c92e768c2783c90c8b4693c3265a9533a09abe76b2b3bd54e3865d270eed91414fcd89513bc30feb0243ea21f63d354b907b74eb18e98f899811101a6c956
diff --git a/dev-java/byte-buddy/byte-buddy-1.15.10.ebuild b/dev-java/byte-buddy/byte-buddy-1.15.10.ebuild
new file mode 100644
index 000000000000..a1021afe6a00
--- /dev/null
+++ b/dev-java/byte-buddy/byte-buddy-1.15.10.ebuild
@@ -0,0 +1,144 @@
+# 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_PROVIDES="net.bytebuddy:byte-buddy-agent:${PV} net.bytebuddy:byte-buddy:${PV}"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Offers convenience for attaching an agent to the local or a remote VM"
+HOMEPAGE="https://bytebuddy.net"
+SRC_URI="https://github.com/raphw/byte-buddy/archive/${P}.tar.gz"
+S="${WORKDIR}/byte-buddy-${P}"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~ppc64"
+
+DEPEND="
+ >=dev-java/asm-9.7.1:9
+ dev-java/findbugs-annotations:0
+ dev-java/jna:4
+ dev-java/jsr305:0
+ >=virtual/jdk-11:*
+ test? (
+ >=dev-java/mockito-2.28.2-r1:2
+ )
+"
+
+RDEPEND=">=virtual/jre-1.8:*"
+
+PATCHES=( "${FILESDIR}/byte-buddy-1.15.10-Skip-testIgnoreExistingField.patch" )
+
+JAVA_CLASSPATH_EXTRA="
+ asm-9
+ findbugs-annotations
+ jna-4
+ jsr305
+"
+JAVADOC_CLASSPATH="${JAVA_CLASSPATH_EXTRA}"
+JAVADOC_SRC_DIRS=(
+ "byte-buddy-agent/src/main/java"
+ "byte-buddy/src/main/java"
+)
+
+src_prepare() {
+ default #780585
+ java-pkg_clean ! -path "./byte-buddy-dep/src/test/*" # Keep test-classes
+ java-pkg-2_src_prepare
+ # https://github.com/raphw/byte-buddy/blob/byte-buddy-1.12.20/byte-buddy-agent/pom.xml#L142-L176
+ cat > byte-buddy-agent/src/main/java/module-info.java <<-EOF || die
+ module net.bytebuddy.agent {
+ requires java.instrument;
+ requires static jdk.attach;
+ requires static com.sun.jna;
+ requires static com.sun.jna.platform;
+ requires java.base;
+ exports net.bytebuddy.agent;
+ exports net.bytebuddy.agent.utility.nullability;
+ }
+ EOF
+
+ # instead of shading byte-buddy-dep we move it into byte-buddy.
+ mv byte-buddy{-dep,}/src/main/java || die "cannot move sources"
+
+ # https://github.com/raphw/byte-buddy/blob/byte-buddy-1.12.20/byte-buddy/pom.xml#L159-L195
+ local exports="$( \
+ sed -n '/<packages.list.external>/,/<\/packages.list.external/p' \
+ byte-buddy/pom.xml \
+ | sed -e 's:^:exports :' -e 's:,:;:' \
+ | grep -v 'packages.list.external\|shade' | tr -s '[:space:]' \
+ )" || die
+ cat > byte-buddy/src/main/java/module-info.java <<-EOF || die
+ module net.bytebuddy {
+ requires static java.instrument;
+ requires static java.management;
+ requires static jdk.unsupported;
+ requires static net.bytebuddy.agent;
+ requires static com.sun.jna;
+ requires static com.sun.jna.platform;
+ requires java.base;
+ ${exports}
+ }
+ EOF
+}
+
+src_compile() {
+ einfo "Compiling byte-buddy-agent.jar"
+ JAVA_JAR_FILENAME="byte-buddy-agent.jar"
+ JAVA_RESOURCE_DIRS="byte-buddy-agent/src/main/resources"
+ JAVA_SRC_DIR="byte-buddy-agent/src/main/java"
+ java-pkg-simple_src_compile
+ JAVA_GENTOO_CLASSPATH_EXTRA+=":byte-buddy-agent.jar"
+ rm -r target || die
+
+ einfo "Compiling byte-buddy.jar"
+ JAVA_JAR_FILENAME="byte-buddy.jar"
+ JAVA_MAIN_CLASS="net.bytebuddy.build.Plugin\$Engine\$Default"
+ JAVA_RESOURCE_DIRS=()
+ JAVA_SRC_DIR="byte-buddy/src/main/java"
+ java-pkg-simple_src_compile
+ JAVA_GENTOO_CLASSPATH_EXTRA+=":byte-buddy.jar"
+ rm -r target || die
+
+ einfo "Building javadocs"
+ rm byte-buddy{,-agent}/src/main/java/module-info.java || die
+ use doc && ejavadoc
+}
+
+src_test() {
+ # instead of shading byte-buddy-dep we move it into byte-buddy.
+ mv byte-buddy{-dep,}/src/test || die "cannot move tests"
+
+ JAVAC_ARGS="-g"
+ JAVA_TEST_GENTOO_CLASSPATH="junit-4,mockito-2"
+
+ einfo "Testing byte-buddy-agent"
+ # https://github.com/raphw/byte-buddy/issues/1321#issuecomment-1252776459
+ JAVA_TEST_EXTRA_ARGS=( -Dnet.bytebuddy.test.jnapath="${EPREFIX}/usr/$(get_libdir)/jna-4/" )
+ JAVA_TEST_SRC_DIR="byte-buddy-agent/src/test/java"
+ java-pkg-simple_src_test
+
+ einfo "Testing byte-buddy"
+ JAVA_TEST_RESOURCE_DIRS=( byte-buddy/src/test/{resources,precompiled*} )
+ JAVA_TEST_SRC_DIR="byte-buddy/src/test/java"
+
+ JAVA_TEST_EXCLUDES=(
+ # all tests in this class fail, https://bugs.gentoo.org/863386
+ net.bytebuddy.build.CachedReturnPluginTest
+ )
+ java-pkg-simple_src_test
+}
+
+src_install() {
+ java-pkg_dojar "byte-buddy-agent.jar"
+ java-pkg-simple_src_install
+
+ if use source; then
+ java-pkg_dosrc "byte-buddy-agent/src/main/java/*"
+ java-pkg_dosrc "byte-buddy/src/main/java/*"
+ fi
+}
diff --git a/dev-java/byte-buddy/files/byte-buddy-1.15.10-Skip-testIgnoreExistingField.patch b/dev-java/byte-buddy/files/byte-buddy-1.15.10-Skip-testIgnoreExistingField.patch
new file mode 100644
index 000000000000..c90c3c9a66c9
--- /dev/null
+++ b/dev-java/byte-buddy/files/byte-buddy-1.15.10-Skip-testIgnoreExistingField.patch
@@ -0,0 +1,34 @@
+There was 1 failure:
+1) testIgnoreExistingField(net.bytebuddy.build.CachedReturnPluginOtherTest)
+net.bytebuddy.pool.TypePool$Resolution$NoSuchTypeException: Cannot resolve type description for net.bytebuddy.build.CachedReturnPlugin$Advice$boolean
+ at net.bytebuddy.pool.TypePool$Resolution$Illegal.resolve(TypePool.java:190)
+ at net.bytebuddy.build.CachedReturnPlugin.<init>(CachedReturnPlugin.java:125)
+ at net.bytebuddy.build.CachedReturnPluginOtherTest.testIgnoreExistingField(CachedReturnPluginOtherTest.java:19)
+
+FAILURES!!!
+
+--- a/byte-buddy-dep/src/test/java/net/bytebuddy/build/CachedReturnPluginOtherTest.java
++++ b/byte-buddy-dep/src/test/java/net/bytebuddy/build/CachedReturnPluginOtherTest.java
+@@ -6,13 +6,14 @@ import net.bytebuddy.dynamic.ClassFileLocator;
+ import net.bytebuddy.dynamic.DynamicType;
+ import org.hamcrest.CoreMatchers;
+ import org.junit.Test;
++import org.junit.Ignore;
+
+ import static org.hamcrest.CoreMatchers.sameInstance;
+ import static org.hamcrest.MatcherAssert.assertThat;
+
+ public class CachedReturnPluginOtherTest {
+
+- @Test
++ @Test @Ignore
+ @SuppressWarnings("rawtypes")
+ public void testIgnoreExistingField() {
+ DynamicType.Builder<ExistingField> builder = new ByteBuddy().redefine(ExistingField.class);
+@@ -73,4 +74,4 @@ public class CachedReturnPluginOtherTest {
+ return null;
+ }
+ }
+-}
+\ No newline at end of file
++}
diff --git a/dev-java/javassist/Manifest b/dev-java/javassist/Manifest
index a4e5b35d9058..fdd44a7f755a 100644
--- a/dev-java/javassist/Manifest
+++ b/dev-java/javassist/Manifest
@@ -1,3 +1,6 @@
+AUX javassist-3.29.2-gentoo.patch 2017 BLAKE2B 7febb5f77737ba747a0431f6e324867df2fc978d95b209a2e3d019a3da5f128cfc4442a393882f3e5d5ae924dcbb63d455a12edf66d4acc32a3a343e6fee079c SHA512 02e884234be315e40e333ca6978a2c1399610a0fe1a7d352c694ea943069c97c87bc1b34492033d30e4c39b03bbcbc80bf63f25161a97e6a6f64ef1273a4dd7a
DIST javassist-3.29.2.tar.gz 1293705 BLAKE2B 23101970a3fe9e4428b9e2e55ec2973663b537b2e205db55952bce116eb0cdd327e156f9bebf16a3c4322d8e5002d612067b14e8d234e87524361b5f08c9ecde SHA512 651f48d9138b54d4816611c077614bbb15f8189d755c2c2c7e5c2dfb35ad8f48cd9d2e0532edbd565456a923b3166eaecdde8702d65c70a32eb21c2d42f67bfc
-EBUILD javassist-3.29.2.ebuild 2488 BLAKE2B a66a27d625b25f0e3cf764ef27f7e8dd30a04d58c64e16ae9663765a614110df999594f8db80bb2011c9b66e0f474d09d8d8858316fdb1edd8c19981dfad7032 SHA512 1bfd58b3c483304b7258ee96959b58c68d17be14843f9e1971330a4f9f479ee64922bbf915590b08fbb96b482e4eef1044ebb953efb5c4785da64277f316dec8
+DIST javassist-3.30.2.tar.gz 1295788 BLAKE2B e54fc5eb0b61c3f706d3d91169fc2ed76b8b5f43c8b4ef9eca3fa8c0001d30fd700bfc3f92c2d1a6e0960910977e6086dfda37602bbc36addaaad9cab253333f SHA512 d4bcfc1dbf94f6727eceb2aa33c9c7b9bfd2087d91e3b8b38df86f79975c26b677301eca900e6fef5415f995428d107f93cb5ee5a0d634a82e14bc0199b49a62
+EBUILD javassist-3.29.2.ebuild 1407 BLAKE2B 8746f2546201642f469c3120b947ffd1813d05400273737bced86a6d887f02233a3890ac47cf9bb8e7ab8aca89db4c163e2561c0314c2be8a5e6eb04249a212d SHA512 94ab51dc8e4ecb7596fd79867f79968709b6c553cc58f92211e624138341246c7bc7ce368f10385329a3cc811bb64ef348e71a78f313bdc3a5ddb9ac9f185625
+EBUILD javassist-3.30.2.ebuild 1409 BLAKE2B c7d2b2711c17ed3b5dc5257dc734f3b7d273eb10e5fd250a3166b6b2abe20b1e9365adb9b6b21c04287661035ee442d56b6ceaa0ab8e15e64a782c8e7da45755 SHA512 d40c77adb6f50797f92b1fc1842cf625ec1d7666146dfabf0e1e0c29e46018c4866c1d5c0da3429721539167170990b42edff57f1f66e70c009324e69455ace2
MISC metadata.xml 551 BLAKE2B c2f226813733db484e082189bb9420fa19eea8d5f95f751cf42305f110dc6b8a6e07370d9e3bca4be9dfac71333c86e95fb5e3f48543ca0041c2e2a4d96808b0 SHA512 b6b193720397459d3133bed6d0e93973084375684f1df77f93703f9cadf06e0a23e2798a13edf70c67642a656d5e5ef24aef2c032c71b65bc215622dbe42c1e2
diff --git a/dev-java/javassist/files/javassist-3.29.2-gentoo.patch b/dev-java/javassist/files/javassist-3.29.2-gentoo.patch
new file mode 100644
index 000000000000..27ae390d465b
--- /dev/null
+++ b/dev-java/javassist/files/javassist-3.29.2-gentoo.patch
@@ -0,0 +1,46 @@
+adjust BASE_PATH, PATH and JAR_PATH for java-pkg-simple.eclass
+
+--- a/src/test/javassist/JvstTest4.java
++++ b/src/test/javassist/JvstTest4.java
+@@ -635,10 +635,10 @@ public class JvstTest4 extends JvstTestRoot {
+ assertEquals(packageName, obj.getClass().getPackage().getName());
+ }
+
+- public static final String BASE_PATH = "../../";
++ public static final String BASE_PATH = "";
+ public static final String JAVASSIST_JAR = BASE_PATH + "javassist.jar";
+- public static final String CLASSES_FOLDER = BASE_PATH + "build/classes";
+- public static final String TEST_CLASSES_FOLDER = BASE_PATH + "build/test-classes";
++ public static final String CLASSES_FOLDER = BASE_PATH + "target/classes";
++ public static final String TEST_CLASSES_FOLDER = BASE_PATH + "target/test-classes";
+
+ public static class Inner1 {
+ public static int get() {
+--- a/src/test/javassist/JvstTestRoot.java
++++ b/src/test/javassist/JvstTestRoot.java
+@@ -5,10 +5,10 @@ import java.lang.reflect.Method;
+
+ public class JvstTestRoot extends TestCase {
+ // the directory where all compiled class files are found.
+- public static final String PATH = "../../target/test-classes/";
++ public static final String PATH = "target/test-classes/";
+
+ // the directory where javassist.jar is found.
+- public static final String JAR_PATH = "../../";
++ public static final String JAR_PATH = "";
+
+ ClassPool sloader, dloader;
+ Loader cloader;
+--- a/src/test/javassist/JvstTest2.java
++++ b/src/test/javassist/JvstTest2.java
+@@ -333,8 +333,8 @@ public class JvstTest2 extends JvstTestRoot {
+
+ url = cp.find("javassist.CtMethod").toString();
+ System.out.println("testURL: " + url);
+- assertTrue(url.startsWith("file:"));
+- assertTrue(url.endsWith("/javassist/CtMethod.class"));
++ assertTrue(url.startsWith("jar:file:"));
++ assertTrue(url.endsWith("javassist.jar!/javassist/CtMethod.class"));
+
+ assertNull(cp.find("javassist.TestURL"));
+
diff --git a/dev-java/javassist/javassist-3.29.2.ebuild b/dev-java/javassist/javassist-3.29.2.ebuild
index a26a44d09cbc..87d13e19f38e 100644
--- a/dev-java/javassist/javassist-3.29.2.ebuild
+++ b/dev-java/javassist/javassist-3.29.2.ebuild
@@ -1,9 +1,6 @@
# Copyright 1999-2024 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 https://github.com/jboss-javassist/javassist/archive/rel_3_29_2_ga.tar.gz --slot 3 --keywords "~amd64 ~arm ~arm64 ~ppc64 ~x86" --ebuild javassist-3.29.2.ebuild
-
EAPI=8
JAVA_PKG_IUSE="doc source test"
@@ -15,29 +12,26 @@ inherit java-pkg-2 java-pkg-simple
DESCRIPTION="A class library for editing bytecodes in Java."
HOMEPAGE="https://www.javassist.org"
SRC_URI="https://github.com/jboss-javassist/javassist/archive/rel_${PV//./_}_ga.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/${PN}-rel_${PV//./_}_ga"
LICENSE="Apache-2.0 LGPL-2.1 MPL-1.1"
SLOT="3"
KEYWORDS="amd64 arm64 ppc64 ~amd64-linux ~x86-linux"
-# Compile dependencies
-# POM: pom.xml
-# test? junit:junit:[4.13.1,) -> >=dev-java/junit-4.13.2:4
-# test? org.hamcrest:hamcrest-all:1.3 -> !!!artifactId-not-found!!!
-
-DEPEND=">=virtual/jdk-11:*
- test? ( dev-java/hamcrest-library:1.3 )"
+DEPEND="
+ >=virtual/jdk-11:*
+ test? ( dev-java/hamcrest-library:1.3 )
+"
RDEPEND=">=virtual/jre-1.8:*"
DOCS=( Changes.md README.md )
HTML_DOCS=( tutorial/{brown.css,tutorial.html,tutorial2.html,tutorial3.html} )
-S="${WORKDIR}/${PN}-rel_${PV//./_}_ga"
+PATCHES=( "${FILESDIR}/javassist-3.29.2-gentoo.patch" )
JAVA_AUTOMATIC_MODULE_NAME="org.javassist"
JAVA_MAIN_CLASS="javassist.CtClass"
-JAVA_NEEDS_TOOLS=1
JAVA_SRC_DIR="src/main"
JAVA_TEST_GENTOO_CLASSPATH="hamcrest-library-1.3,junit-4"
@@ -46,28 +40,9 @@ JAVA_TEST_RUN_ONLY="javassist.JvstTest" # pom.xml, line 167
JAVA_TEST_SRC_DIR="src/test"
src_prepare() {
- default
+ default #780585
+ java-pkg-2_src_prepare
java-pkg_clean javassist.jar
- sed -e 's:\.\./\.\./::' -i src/test/javassist/JvstTest{4,Root}.java || die
-
- # Tests run: 432, Failures: 6
- # https://bugs.gentoo.org/856364
- # Cannot solve those test failures.
- # replacing test... with notTest... for those tests
- sed \
- -e '/public void/s:testInsertAt:notTestInsertAt:' \
- -e '/public void/s:testInsertLocal:notTestInsertLocal:' \
- -e '/public void/s:testNewArray:notTestNewArray:' \
- -e '/public void/s:testURL:notTestURL:' \
- -i src/test/javassist/JvstTest2.java || die
-
- sed \
- -e '/public void/s:testMethodParameters:notTestMethodParameters:' \
- -i src/test/javassist/JvstTest4.java || die
-
- sed \
- -e '/public void/s:testLocalVarAttribute:notTestLocalVarAttribute:' \
- -i src/test/javassist/bytecode/BytecodeTest.java || die
}
src_test() {
@@ -75,5 +50,6 @@ src_test() {
einfo "Testing"
JAVA_PKG_WANT_SOURCE=11
JAVA_PKG_WANT_TARGET=11
+ JAVAC_ARGS="-g -parameters"
java-pkg-simple_src_test
}
diff --git a/dev-java/javassist/javassist-3.30.2.ebuild b/dev-java/javassist/javassist-3.30.2.ebuild
new file mode 100644
index 000000000000..fd3122df656a
--- /dev/null
+++ b/dev-java/javassist/javassist-3.30.2.ebuild
@@ -0,0 +1,54 @@
+# 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="org.javassist:javassist:3.30.2-GA"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="A class library for editing bytecodes in Java."
+HOMEPAGE="https://www.javassist.org"
+SRC_URI="https://github.com/jboss-javassist/javassist/archive/rel_${PV//./_}_ga.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/${PN}-rel_${PV//./_}_ga"
+
+LICENSE="Apache-2.0 LGPL-2.1 MPL-1.1"
+SLOT="3"
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~amd64-linux ~x86-linux"
+
+DEPEND="
+ >=virtual/jdk-11:*
+ test? ( dev-java/hamcrest-library:1.3 )
+"
+
+RDEPEND=">=virtual/jre-1.8:*"
+
+DOCS=( Changes.md README.md )
+HTML_DOCS=( tutorial/{brown.css,tutorial.html,tutorial2.html,tutorial3.html} )
+
+PATCHES=( "${FILESDIR}/javassist-3.29.2-gentoo.patch" )
+
+JAVA_AUTOMATIC_MODULE_NAME="org.javassist"
+JAVA_MAIN_CLASS="javassist.CtClass"
+JAVA_SRC_DIR="src/main"
+
+JAVA_TEST_GENTOO_CLASSPATH="hamcrest-library-1.3,junit-4"
+JAVA_TEST_RESOURCE_DIRS="src/test/resources"
+JAVA_TEST_RUN_ONLY="javassist.JvstTest" # pom.xml, line 167
+JAVA_TEST_SRC_DIR="src/test"
+
+src_prepare() {
+ default #780585
+ java-pkg-2_src_prepare
+ java-pkg_clean ! -path "./src/test*"
+}
+
+src_test() {
+ einfo "Testing"
+ JAVA_PKG_WANT_SOURCE=11
+ JAVA_PKG_WANT_TARGET=11
+ JAVAC_ARGS="-g -parameters"
+ java-pkg-simple_src_test
+}
diff --git a/dev-java/jdbc-postgresql/Manifest b/dev-java/jdbc-postgresql/Manifest
index e663f1ae9d7f..7f6200b5a92c 100644
--- a/dev-java/jdbc-postgresql/Manifest
+++ b/dev-java/jdbc-postgresql/Manifest
@@ -1,3 +1,5 @@
DIST postgresql-jdbc-42.7.3.src.tar.gz 1005966 BLAKE2B 1c9aeae572fc983d6b86f8b552a78d1bd11cf439ca863ea4856ad470f60b6a9b4c0ae5ece60f3bc19718f288b9ce93572b522b5f5953a9b4b12558044d630959 SHA512 354e71a6da0f6b4b5282de4dd949f1824f1cd17a8dd73fbd218ff5adebd08e078fa7d59ee149cbe4133a7a149e39e71c5e075b58d72bfedd3e4b47680e86fa4b
+DIST postgresql-jdbc-42.7.4.src.tar.gz 1033780 BLAKE2B ece772486915c60154fdcf165854dfacdc3077da6fcfea5e58d555be14d397d090b78629ea431ac541f3ede0fce2c8c2927fc90546eac03cc27dfa0357ffc319 SHA512 3f864848d0b6b079daf8abecabb2bd8487fa8bc23ef9265bfa71c484b4ee3b38a76cc38af7a72ac3ac64fa26569952b9b69d08b3b8a115d44bee823151c6c292
EBUILD jdbc-postgresql-42.7.3.ebuild 1549 BLAKE2B 3569622e9ff9681c203a0c5323763d87175d11566062a629a8bbd8ff0a1c5647dc31725cf18ab1ee2c818c759f557e742960ef429694641f03733fa32ea29349 SHA512 48149e824e9c0e2318408becfad106b9d6a298c9a5d734aa7a154d1d48b9fae536c83893a1b593efc1fa6667c573c8684b83e6a491117b9b170f773a0c887a32
+EBUILD jdbc-postgresql-42.7.4.ebuild 1550 BLAKE2B 47cb0639b890305f4f27147ef462a7abd7756471b965767273f831630661dcfd60f8daade39af1205c16e91ec190cb2ece1414235dc5a2bac894702502cdfc20 SHA512 cda7b1552f27a10645cd977591ecaf2a990b59dbfbe45501287ae84b21f69b09e090a877cb2af93fc6387d9b7361682d1f08547b89effff8106d6f1e04e916f2
MISC metadata.xml 295 BLAKE2B 1c8987c0d6f65d4e3019c2d6b8a0f8fac5f06e9144b118d3a0351f4a0e9b76ac4bc5b5ad678d92a691da7e8e8bb8c33f12d17d9dcc8b0ff007057d80307ebd24 SHA512 6a38ee7d2287a20ab89d7a92c59e74437877c4271cb38f00fccde9753c3caa8dccc3261fad23f81ec3dd2155f429aa4c3437bda024353640f8ed90ca096f9318
diff --git a/dev-java/jdbc-postgresql/jdbc-postgresql-42.7.4.ebuild b/dev-java/jdbc-postgresql/jdbc-postgresql-42.7.4.ebuild
new file mode 100644
index 000000000000..a7d3d95b2a68
--- /dev/null
+++ b/dev-java/jdbc-postgresql/jdbc-postgresql-42.7.4.ebuild
@@ -0,0 +1,58 @@
+# 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="org.postgresql:postgresql:${PV}"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Java JDBC 4.2 (JRE 8+) driver for PostgreSQL database"
+HOMEPAGE="https://jdbc.postgresql.org/"
+SRC_URI="https://jdbc.postgresql.org/download/postgresql-jdbc-${PV}.src.tar.gz"
+S="${WORKDIR}/postgresql-${PV}-jdbc-src"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~amd64"
+# package se.jiderhamn.classloader does not exist
+# package se.jiderhamn.classloader.leak does not exist
+# package uk.org.webcompere.systemstubs.environment does not exist
+# package uk.org.webcompere.systemstubs.jupiter does not exist
+# package uk.org.webcompere.systemstubs.properties does not exist
+# package uk.org.webcompere.systemstubs.resource does not exist
+RESTRICT="test" #839681
+
+DEPEND="
+ dev-java/checker-framework-qual:0
+ dev-java/jna:4
+ dev-java/osgi-cmpn:8
+ dev-java/osgi-core:0
+ >=dev-java/scram-3.1:0
+ dev-java/waffle-jna:0
+ >=virtual/jdk-1.8:*
+ test? ( dev-java/junit:5 )
+"
+
+RDEPEND=">=virtual/jre-1.8:*"
+
+JAVA_CLASSPATH_EXTRA="
+ checker-framework-qual
+ jna-4
+ osgi-cmpn-8
+ osgi-core
+ scram
+ waffle-jna
+"
+JAVA_AUTOMATIC_MODULE_NAME="org.postgresql.jdbc"
+JAVA_MAIN_CLASS="org.postgresql.util.PGJDBCMain"
+JAVA_RESOURCE_DIRS="src/main/resources"
+JAVA_SRC_DIR="src/main/java"
+JAVA_TEST_GENTOO_CLASSPATH="
+ junit-4
+ junit-5
+"
+JAVA_TEST_RESOURCE_DIRS="src/test/resources"
+JAVA_TEST_SRC_DIR="src/test/java"
diff --git a/dev-java/mockito/Manifest b/dev-java/mockito/Manifest
index ff44de2dcd74..e6e7a5bcfa20 100644
--- a/dev-java/mockito/Manifest
+++ b/dev-java/mockito/Manifest
@@ -4,6 +4,7 @@ DIST mockito-2.28.2.tar.gz 875085 BLAKE2B d0aab378c028530724156f999700506fe64f5b
DIST mockito-4.11.0.tar.gz 1050218 BLAKE2B 7f7298e233c9cdb0b475aa201300a1063fd8efc587f3a4de0cb1caedd6f6506a32f8e9b0548fa5898892515ec96625153a1a2ad65fc8070b7dc6c254206fbbfd SHA512 b1de01c8e9b2fc4eef0013af562efeac7e22babdebbd8c7842ecd55071627e11c5e6ab575436990ea70d4ceefb56fc260333278c8d4b833e454956bf89841fc5
DIST mockito-core-1.9.5-sources.jar 723074 BLAKE2B e553a923542a1a2574ee0cda5979d168cc3e9644dbbc9fceed2301ae1bac150c4e35dbc4432d50e2479efea2a6cd35ec19c62c3598f61709f1f5dc8959cc0155 SHA512 271e626c3b5be9a7d7c82a2f0bf44077aabd51924b0956a88633ace7fe8c134d8cd1f89ce348ce0d15ccce55a50027e303836d2d2f430500317b6136d308d3d4
EBUILD mockito-1.9.5-r4.ebuild 712 BLAKE2B bbb94a982384032ed4e2fd38cb32be5feb2b3a7aa35ed054c62d73d5b2dbf8853b594cebfadfa49d3134f89131a4cd875ea0ebbac051c23e00d39378fbe11498 SHA512 34bdf3f6c8182307a41b28371c0e8406aea00e3f47184fde5097076c008992e6cf52341413ccedc003c3685f88d7b52d5aaee161632cec7bb909c1958f3be6b4
+EBUILD mockito-2.28.2-r1.ebuild 3477 BLAKE2B 830a2e20bd8359d9a2e74738de481492d4cffa9af38a6ecbed0443264e78655316954b1f32ac3cc8a8aec3db3a37b4c1457711f25ff36b88518a3298e6514d8e SHA512 f7fb07a48f3361a51c123be12aeb72713b6ebd4b21722e7acbb343feae5b38aa831ec3a743a1639a77b62e4aa51daefb1ce9d41433d1f2150c0d3cab9b2a1b0a
EBUILD mockito-2.28.2.ebuild 3376 BLAKE2B eacb33f6976ae1665d984de0a811470335c9e2490bbb78459ed309b4557236d8dfaa140827028fcf110e9ffa28166084e75b898d571b1bf27d88eaa3f4ac5a2e SHA512 77b40fa3984e0fff77846365c21eb8306d6d81a2e8fa1e19f275258e25be764381a2f13d1a4232e1d14c6d97db733db8bd5e927766bd9136f9bd0d115bcb0f17
EBUILD mockito-4.11.0.ebuild 1228 BLAKE2B 27c976b0ee2e782d471c91ef89708a62002c6e8a385ea67d865ff5430a34ec932146ee57493ce9684c7d566b1d9f1f54b709287bf0b2fb93b465b7596c641957 SHA512 189d3b3d14f847efce028a87c1706a26ded43f45e28299177bfb86f18d11398b2f03428ed48d9c4944cc277e199cb85424b0735a34fa78fbe82ab368bf7b119d
MISC metadata.xml 317 BLAKE2B 209b27a429c1fdeca71c1e215f8fc43bfc66c961b1a3ad3dfcda16d5ea1df51e54cea248f4f152966aa1f91059b91c21fb734c6995f8033150dbda5e1813d121 SHA512 1f7be64d432b4004d2bbf1ec2c6776ec8618875356ea0308b8409f322d48bf3440d692732406ddb3fa7a273c9754c4cc5a6f6cd9808348d0ba8beb7159887a5b
diff --git a/dev-java/mockito/mockito-2.28.2-r1.ebuild b/dev-java/mockito/mockito-2.28.2-r1.ebuild
new file mode 100644
index 000000000000..6b413be4b92e
--- /dev/null
+++ b/dev-java/mockito/mockito-2.28.2-r1.ebuild
@@ -0,0 +1,106 @@
+# 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="org.mockito:mockito-core:${PV}"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Mockito mock objects library core API and implementation"
+HOMEPAGE="https://github.com/mockito/mockito"
+SRC_URI="https://github.com/mockito/mockito/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/${P}"
+
+LICENSE="MIT"
+SLOT="2"
+KEYWORDS="~amd64 ~arm64 ~ppc64"
+
+# Tests need a version of byte-buddy supporting Java 21. #930103
+CP_DEPEND="
+ dev-java/asm:9
+ >=dev-java/byte-buddy-1.15.10:0
+ dev-java/hamcrest-core:1.3
+ dev-java/junit:4
+ dev-java/objenesis:0
+ dev-java/opentest4j:0
+"
+
+DEPEND="${CP_DEPEND}
+ >=virtual/jdk-1.8:*
+ test? ( dev-java/assertj-core:3 )
+"
+
+RDEPEND="${CP_DEPEND}
+ >=virtual/jre-1.8:*
+"
+
+# see https://bugs.gentoo.org/903897
+PATCHES=(
+ "${FILESDIR}/mockito-2.28.2-skip-failing-tests.patch"
+ "${FILESDIR}/mockito-2.28.2-fix-unused-stubbings-test.patch"
+)
+
+JAVA_AUTOMATIC_MODULE_NAME="org.mockito"
+JAVA_CLASSPATH_EXTRA="junit-4 opentest4j"
+JAVA_SRC_DIR="src/main/java"
+
+JAVA_TEST_EXCLUDES=(
+ org.mockito.internal.junit.JUnitRuleTest # We run it in JAVA_TEST_RUN_ONLY
+ org.mockito.internal.util.reflection.DummyClassForTests # No runnable methods
+ org.mockito.internal.util.reflection.DummyParentClassForTests # No runnable methods
+ org.mockito.junit.TestableJUnitRunner # No runnable methods
+ org.mockitoutil.TestBase # No runnable methods
+)
+JAVA_TEST_GENTOO_CLASSPATH="assertj-core-3,junit-4"
+JAVA_TEST_RUN_ONLY=(
+ # This needs to run separately, otherwise one of its 4 tests would fail.
+ org.mockito.internal.junit.JUnitRuleTest
+)
+JAVA_TEST_SRC_DIR="src/test/java"
+
+src_prepare() {
+ java-pkg-2_src_prepare
+ default
+ # dev-java/byte-buddy is built from byte-buddy-dep without shaded stuff.
+ sed \
+ -e 's:net.bytebuddy.jar.asm:org.objectweb.asm:' \
+ -i src/main/java/org/mockito/internal/creation/bytebuddy/MockMethodAdvice.java \
+ -i src/main/java/org/mockito/internal/creation/bytebuddy/InlineBytecodeGenerator.java || die
+}
+
+src_compile() {
+ java-pkg-simple_src_compile
+ mv target/classes/org/mockito/internal/creation/bytebuddy/inject/MockMethodDispatcher.{class,raw} || die
+ jar ufv mockito.jar -C target/classes org/mockito/internal/creation/bytebuddy/inject/MockMethodDispatcher.raw || die
+}
+
+src_test() {
+ # Increasing number of test failures with higher Java versions
+ # Test failures are documented in https://bugs.gentoo.org/903897
+ local vm_version="$(java-config -g PROVIDES_VERSION)"
+ if ver_test "${vm_version}" -ge 11; then
+ JAVA_TEST_EXCLUDES+=(
+ org.mockito.internal.stubbing.defaultanswers.ReturnsMocksTest
+ org.mockitousage.bugs.GenericsMockitoAnnotationsTest
+ )
+ fi
+ if ver_test "${vm_version}" -ge 17; then
+ JAVA_TEST_EXCLUDES+=(
+ org.concurrentmockito.ThreadsRunAllTestsHalfManualTest
+ org.mockitousage.matchers.InvalidUseOfMatchersTest
+ org.mockitousage.serialization.DeepStubsSerializableTest
+ org.mockitousage.stubbing.StubbingWithDelegateTest
+ )
+ JAVA_TEST_EXTRA_ARGS+=( --add-opens=java.base/java.io=ALL-UNNAMED )
+ JAVA_TEST_EXTRA_ARGS+=( --add-opens=java.base/java.lang=ALL-UNNAMED )
+ JAVA_TEST_EXTRA_ARGS+=( --add-opens=java.base/sun.reflect.generics.reflectiveObjects=ALL-UNNAMED )
+ fi
+ # First run what needs to run separately
+ java-pkg-simple_src_test
+ # And then the other tests
+ JAVA_TEST_RUN_ONLY=""
+ java-pkg-simple_src_test
+}
diff --git a/dev-java/scram/Manifest b/dev-java/scram/Manifest
index c6e8a00c7c50..2d607ef4ffba 100644
--- a/dev-java/scram/Manifest
+++ b/dev-java/scram/Manifest
@@ -1,3 +1,5 @@
DIST scram-2.1.tar.bz2 52442 BLAKE2B e9ec2367251770c4adb3d4bf62702c8ca13264fd12270dfb4f138c740536eb508a383486a81e1ab2bb0f8d4792642d033180c0e43ac287917543249fd16c8a76 SHA512 e2807d2c4b7984b5d9f53cb5ea6f9b2c2d5b48b5e695f25fb775cb3f22672851a9299cfe95912f109205c74817cf9f2fd706f8d49e473257e2571f409ec34044
+DIST scram-3.1.tar.gz 70163 BLAKE2B f91c8eeb81e5518f2b238e363db94a17af6ff19aa43e693483d46cff57ca52b73490ddb78782a06e72fa417ebee6b3977ed9e42c25bfc844cb455ce0a5c112ee SHA512 9602c25c4e5c6efb04c334b8c89abaa2e50986c0f91f958792d55184f0d6242e6aeec495b408a55df4bc97eaab838bfdc6bb5f70b62665e6953a87bb5dc63ac6
EBUILD scram-2.1.ebuild 1823 BLAKE2B 8cd7d8bbeb53ecb8457476723d3d0c87f3b772f1952e9881c4d4d434aae3cd8a4cc436347267197ac0532ed7eb67a727c9206bed5239062f84542edac635b494 SHA512 7c2d86d3994371ac4da7d32bf14c15d32a6e967eef33cc6a4eb070f4c5fcb5125749c576ebd7f6c31a292c4ce58e19e063dafd9789a23c8223d323cfdece77c4
-MISC metadata.xml 297 BLAKE2B f03fc754a928c11fd5dfc5cf8a4d180484eb4b83ea6ad6532b3317b68866e2b0e84b4a709866efef7bdd6ab3917aeca2d5095af7e1a1075f925c38cc3f414313 SHA512 a6a4d886cb27996296b2cb0a510f5b82b29b3ae667f18c8e0779cfb07f4552cf64ceed46841b434c36c0e22f30fed14e11d129826279e00ee511a073eb9a55a7
+EBUILD scram-3.1.ebuild 2015 BLAKE2B 7ada595de609bb465433b86b9c2c294ae1406c2ae7e6d62e90cce31f0a315f646d37fd57b459b57e22d6de64cd8741f09d67f3a97d07376a7f8f93a6fa3a37c9 SHA512 450c862dd21fd9b017e8a77b97b6b56e3802496c5f1568727c615c7c5fd82e58471b1a11078ddcbf4d17a48f102479e354ac4875b20f6e5750b47f835fa47c45
+MISC metadata.xml 349 BLAKE2B e8538574177740ee2eebd053bcc3ef9476f3c2de5cff9327a26ef2adc07d7708bed6e408498f8651b984ca86ddb344dba44f82318b84a5f04103b0eb4482b8d9 SHA512 d8069a0d64882c077a77310e4af630de82a74848abe0c70060fb54f3d7aa85ec1acce90357abcf8c5253551a1f100c5efd83918621989e0f3db4256df357fad2
diff --git a/dev-java/scram/metadata.xml b/dev-java/scram/metadata.xml
index 0feb6155dbc1..33fd2cf43d98 100644
--- a/dev-java/scram/metadata.xml
+++ b/dev-java/scram/metadata.xml
@@ -6,5 +6,6 @@
</maintainer>
<upstream>
<remote-id type="gitlab">ongresinc/scram</remote-id>
+ <remote-id type="github">ongres/scram</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-java/scram/scram-3.1.ebuild b/dev-java/scram/scram-3.1.ebuild
new file mode 100644
index 000000000000..5d9dc470f1fa
--- /dev/null
+++ b/dev-java/scram/scram-3.1.ebuild
@@ -0,0 +1,102 @@
+# 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="com.ongres.scram:client:3.1"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="SCRAM (RFC 5802) Java implementation"
+HOMEPAGE="https://github.com/ongres/scram"
+SRC_URI="https://github.com/ongres/scram/archive/${PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/${P}"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64"
+RESTRICT="test" #839681
+
+CP_DEPEND="
+ dev-java/jetbrains-annotations:0
+ >=dev-java/stringprep-2.2:0
+"
+
+DEPEND="
+ ${CP_DEPEND}
+ dev-java/findbugs-annotations:0
+ dev-java/jsr305:0
+ >=virtual/jdk-1.8:*
+ test? ( dev-java/junit:5 )
+"
+
+RDEPEND="
+ ${CP_DEPEND}
+ >=virtual/jre-1.8:*
+"
+
+DOCS=( CHANGELOG.md README.md )
+
+JAVADOC_CLASSPATH="
+ findbugs-annotations
+ jetbrains-annotations
+ stringprep
+"
+
+JAVADOC_SRC_DIRS=(
+ "scram-common/src/main/java"
+ "scram-client/src/main/java"
+)
+
+JAVA_CLASSPATH_EXTRA="
+ findbugs-annotations
+ jetbrains-annotations
+ jsr305
+ stringprep
+"
+
+JAVA_TEST_GENTOO_CLASSPATH="
+ junit-4
+ junit-5
+ stringprep
+"
+
+src_compile() {
+ einfo "Compiling module common"
+ JAVA_SRC_DIR="scram-common/src/main/java"
+ JAVA_JAR_FILENAME="common.jar"
+ java-pkg-simple_src_compile
+ JAVA_GENTOO_CLASSPATH_EXTRA+=":common.jar"
+ rm -r target || die
+
+ einfo "Compiling module client"
+ JAVA_SRC_DIR="scram-client/src/main/java"
+ JAVA_JAR_FILENAME="client.jar"
+ java-pkg-simple_src_compile
+ JAVA_GENTOO_CLASSPATH_EXTRA+=":client.jar"
+ rm -r target || die
+
+ use doc && ejavadoc
+}
+
+src_test() {
+ einfo "Testing scram-common"
+ JAVA_TEST_SRC_DIR="scram-common/src/test/java"
+ java-pkg-simple_src_test
+
+ einfo "Testing scram-client"
+ JAVA_TEST_SRC_DIR="scram-client/src/test/java"
+ java-pkg-simple_src_test
+}
+
+src_install() {
+ JAVA_JAR_FILENAME="client.jar"
+ java-pkg-simple_src_install
+ java-pkg_dojar "common.jar"
+ if use source; then
+ java-pkg_dosrc "scram-common/src/main/java/*"
+ java-pkg_dosrc "scram-client/src/main/java/*"
+ fi
+}
diff --git a/dev-java/stringprep/Manifest b/dev-java/stringprep/Manifest
index 6eaf4d2e657d..c3d850b4caff 100644
--- a/dev-java/stringprep/Manifest
+++ b/dev-java/stringprep/Manifest
@@ -1,3 +1,5 @@
DIST stringprep-1.1-sources.jar 23229 BLAKE2B f347262c7b3a7632c94111226333e964b51a3bb8af357b79a62e1f457c5fccd845cb2d232f8d3cca4fc149c2341b962724397eff53224ade10f492a17298a00c SHA512 88cec43ad19a7a2a6194a62999fecb35e17ff04127d72fb0990f4003e41af1d3a5aeb8b2cc3c0c87165cdcb005963faf244f05d78c6f00aac0ab1835d336e565
+DIST stringprep-2.2.tar.gz 89428 BLAKE2B 1453bc3f6ffcf2cbb245c1e18bec1d3b0f7955f63727370c8dfce3e94bce2d880b6c24b91c59b52cbc8bc42330324ae3be7e750d3ecddfa04fd711bdbd171ef3 SHA512 ccaa184016c202b0343f15ce00e91b39d6f1d759904e501d67854142527fb96cf0accf8ef49fda463a0be5257ca3a6ea68f09661dba26ae9c0c25ad80af8ecb4
EBUILD stringprep-1.1.ebuild 566 BLAKE2B d76f5873df4a41cf89a79468487b56d6644ce28a8e93c421a02e08dd98a26744e7fdb9f9167fbf9aa0c9b6c6c7766dbed640c0f82b5afc88a7a5d74927f6d20c SHA512 7509bc12e7a0e0583a11760db482efc61f7fab60a38db950366957f783205759a97adb4e73c8a21d50af6ae72bc78123ed1f5ce2aec329d47064bae5f0a4feaf
-MISC metadata.xml 302 BLAKE2B 1ba5ecccffdf30c77547b5a8175b72e9cfdb6e195f635a6223b794bd9740bc98c5b498b97bc36758ebd9ddf0a280f1f38b4f43131cc66c113aca8fa90ad65f55 SHA512 191e87275c4a46652dcf954e066ea5d7508726d61ab4f07d839431346bf08dc1bef1e427c3d2e894d0fd53060225f09785e2654d41574ab09c35aa922da89ae7
+EBUILD stringprep-2.2.ebuild 1366 BLAKE2B 490a2dcd2ac679f09a7431bfdb1831a448ea85047f6e24bb98999f76e25a0c0d140ee4522b5a8d0168f6b6ec4034035bb71832ee3d931ab982962495d5362123 SHA512 a43e7e932f0cbe2ecd6986468c8fd623e9d00b136ce900331bbc4c3933e36cc3e365dae7ac2ddc55adb35ff60315043275bdb70967f8b843352e08d09561ef8f
+MISC metadata.xml 359 BLAKE2B 71111f85201eddcdf76f466e3f87d29bf4243ec982333299eb80d34b4f16163e1c891a39bd23387f72b6c2a8e1202dcb716b657f8bfbf888d1b756eb1f9760e5 SHA512 39e6f6adeb3f9fd166bb7bf76196ea9aa040dc6dbe3ac1d71418b899ac704caf6533910731909e070e1b9a964f365bc786c6ceebe3340522211b34f4e865d34d
diff --git a/dev-java/stringprep/metadata.xml b/dev-java/stringprep/metadata.xml
index e870bae78b8b..13bb9fdc9f53 100644
--- a/dev-java/stringprep/metadata.xml
+++ b/dev-java/stringprep/metadata.xml
@@ -6,5 +6,6 @@
</maintainer>
<upstream>
<remote-id type="gitlab">ongresinc/stringprep</remote-id>
+ <remote-id type="github">ongres/stringprep</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-java/stringprep/stringprep-2.2.ebuild b/dev-java/stringprep/stringprep-2.2.ebuild
new file mode 100644
index 000000000000..0c0be2c3c2c4
--- /dev/null
+++ b/dev-java/stringprep/stringprep-2.2.ebuild
@@ -0,0 +1,55 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# tests are wip
+JAVA_PKG_IUSE="doc source"
+MAVEN_ID="com.ongres.stringprep:stringprep:2.2"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Stringprep (RFC 3454) Java implementation"
+HOMEPAGE="https://gitlab.com/ongresinc/stringprep"
+SRC_URI="https://github.com/ongres/stringprep/archive/${PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/${P}"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc64 ~x86"
+
+DEPEND=">=virtual/jdk-11:*" # module-info
+RDEPEND=">=virtual/jre-1.8:*"
+
+JAVADOC_SRC_DIRS=( {string,name,sasl}prep/src/main/java )
+
+src_compile() {
+ mkdir -p target/classes || die
+ local module
+ for module in stringprep nameprep saslprep; do
+ einfo "Compiling ${module}"
+ JAVA_JAR_FILENAME="${module}.jar"
+ JAVA_SRC_DIR=( "${module}"/src/main/java{,9} )
+ if [[ -d "${module}/src/main/resources" ]]; then
+ JAVA_RESOURCE_DIRS="${module}/src/main/resources"
+ fi
+ java-pkg-simple_src_compile
+ JAVA_GENTOO_CLASSPATH_EXTRA+=":${module}.jar"
+ rm -r target || die
+ done
+
+ use doc && ejavadoc
+}
+
+src_install() {
+ JAVA_JAR_FILENAME="stringprep.jar"
+ java-pkg-simple_src_install
+ java-pkg_dojar {name,sasl}prep.jar
+
+ local module
+ for module in stringprep nameprep saslprep; do
+ if use source; then
+ java-pkg_dosrc "${module}/src/main/java/*"
+ fi
+ done
+}