Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

dev-java/jaxb-api: add 4.0.0 | dev-java/jackson-module-jakarta-xmlbind: enable tests #25849

Closed
wants to merge 8 commits into from
1 change: 1 addition & 0 deletions dev-java/fastinfoset/Manifest
@@ -0,0 +1 @@
DIST fastinfoset-2.1.0.tar.gz 304643 BLAKE2B 07d571d46dd31bbd1fb9a4aac457b7a2b3e9278a41a9b072790a2da56adccbba92cdfd7dde95d976d92c7fa38476448c3dd6e77366338fdce3e63f334e5823d4 SHA512 807926fe90f97a72e5d6f8abcbad8639b424d7938ab2afc7dc8107070db216167aada859acd041ba17566a33e277330d9ee51bdc10d16aa19a6ea07d4ae858aa
46 changes: 46 additions & 0 deletions dev-java/fastinfoset/fastinfoset-2.1.0.ebuild
@@ -0,0 +1,46 @@
# 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 https://github.com/eclipse-ee4j/jaxb-fi/archive/2.1.0.tar.gz --slot 0 --keywords "~amd64 ~ppc64 ~x86" --ebuild fastinfoset-2.1.0.ebuild

EAPI=8

JAVA_PKG_IUSE="doc source test"
MAVEN_ID="com.sun.xml.fastinfoset:FastInfoset:2.1.0"
JAVA_TESTING_FRAMEWORKS="junit-4"

inherit java-pkg-2 java-pkg-simple

DESCRIPTION="Open Source implementation of the Fast Infoset Standard for Binary XML"
HOMEPAGE="https://projects.eclipse.org/projects/ee4j.jaxb-impl/FastInfoset"
SRC_URI="https://github.com/eclipse-ee4j/jaxb-fi/archive/${PV}.tar.gz -> ${P}.tar.gz"

LICENSE="Apache-2.0 EPL-1.0"
SLOT="0"
KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"

DEPEND="
>=virtual/jdk-1.8:*
"

RDEPEND="
>=virtual/jre-1.8:*
"

DOCS=( ../{CONTRIBUTING,NOTICE,README}.md )
HTML_DOCS=( docs/{index,ReleaseNotes}.html )

S="${WORKDIR}/jaxb-fi-${PV}/${PN}"

JAVA_SRC_DIR="src/main/java"
JAVA_RESOURCE_DIRS="src/main/resources"

JAVA_TEST_GENTOO_CLASSPATH="junit-4"
JAVA_TEST_SRC_DIR="src/test/java"
JAVA_TEST_RESOURCE_DIRS="src/test/resources"

src_install() {
default # https://bugs.gentoo.org/789582
java-pkg-simple_src_install
}
7 changes: 7 additions & 0 deletions dev-java/fastinfoset/metadata.xml
@@ -0,0 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
</maintainer>
</pkgmetadata>
1 change: 1 addition & 0 deletions dev-java/istack-commons-runtime/Manifest
@@ -0,0 +1 @@
DIST jaxb-istack-commons-istack-commons-runtime-4.1.1.tar.gz 66161 BLAKE2B 07103ec616d23e14a5f61c4bb7ef9dce042f0df678db44f035b48c74eb7930f251d8b7fd8ce36c9bae7a7ef8ce213c62587dad2547518ba4638faf102ef651cd SHA512 b119b2c3582f5cbbd5793e0eb0a00c199c93119f3c18e34c57f8753b3a7008b9b93de58fd62df94d6cbedd698488616a80c334fda3d5038078e3858229f995cf
@@ -0,0 +1,51 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2

# Skeleton command:
# java-ebuilder --generate-ebuild --workdir . --pom runtime/pom.xml --download-uri https://github.com/eclipse-ee4j/jaxb-istack-commons/archive/4.1.1.tar.gz --slot 0 --keywords "~amd64 ~ppc64 ~x86" --ebuild jaxb-istack-commons-runtime-4.1.1.ebuild

EAPI=8

JAVA_PKG_IUSE="doc source test"
MAVEN_ID="com.sun.istack:istack-commons-runtime:4.1.1"
JAVA_TESTING_FRAMEWORKS="junit-4"

inherit java-pkg-2 java-pkg-simple

DESCRIPTION="istack common utility code"
HOMEPAGE="https://projects.eclipse.org/projects/ee4j/istack-commons/"
SRC_URI="https://github.com/eclipse-ee4j/jaxb-istack-commons/archive/${PV}.tar.gz -> jaxb-istack-commons-${P}.tar.gz"

LICENSE="EPL-1.0"
SLOT="0"
KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"

# Compile dependencies
# POM: runtime/pom.xml
# jakarta.activation:jakarta.activation-api:2.1.0 -> >=dev-java/jakarta-activation-api-2.1.0:2
# POM: runtime/pom.xml
# test? junit:junit:4.13.2 -> >=dev-java/junit-4.13.2:4

DEPEND="
>=virtual/jdk-1.8:*
dev-java/jakarta-activation-api:2
"

RDEPEND="
>=virtual/jre-1.8:*
"

DOCS=( ../{CONTRIBUTING,NOTICE,README}.md )

S="${WORKDIR}/jaxb-istack-commons-${PV}/istack-commons"

JAVA_CLASSPATH_EXTRA="jakarta-activation-api-2"
JAVA_SRC_DIR="runtime/src/main/java"

JAVA_TEST_GENTOO_CLASSPATH="junit-4"
JAVA_TEST_SRC_DIR="runtime/src/test/java"

src_install() {
default # https://bugs.gentoo.org/789582
java-pkg-simple_src_install
}
7 changes: 7 additions & 0 deletions dev-java/istack-commons-runtime/metadata.xml
@@ -0,0 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
</maintainer>
</pkgmetadata>
@@ -0,0 +1,110 @@
# 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 https://github.com/FasterXML/jackson-dataformat-xml/archive/jackson-dataformat-xml-2.13.3.tar.gz --slot 0 --keywords "~amd64 ~arm ~arm64 ~ppc64 ~x86" --ebuild jackson-dataformat-xml-2.13.3.ebuild

EAPI=8

JAVA_PKG_IUSE="doc source test"
MAVEN_ID="com.fasterxml.jackson.dataformat:jackson-dataformat-xml:2.13.3"
JAVA_TESTING_FRAMEWORKS="junit-4"

inherit java-pkg-2 java-pkg-simple

DESCRIPTION="Data format extension for Jackson"
HOMEPAGE="https://github.com/FasterXML/jackson-dataformat-xml"
SRC_URI="https://github.com/FasterXML/${PN}/archive/${P}.tar.gz"

LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"

# Common dependencies
# POM: pom.xml
# com.fasterxml.jackson.core:jackson-annotations:2.13.3 -> >=dev-java/jackson-annotations-2.13.3:2
# com.fasterxml.jackson.core:jackson-core:2.13.3 -> >=dev-java/jackson-core-2.13.3:0
# com.fasterxml.jackson.core:jackson-databind:2.13.3 -> >=dev-java/jackson-databind-2.13.3:0
# com.fasterxml.woodstox:woodstox-core:6.2.7 -> >=dev-java/woodstox-core-6.2.8:0
# org.codehaus.woodstox:stax2-api:4.2.1 -> >=dev-java/stax2-api-4.2.1:0

CP_DEPEND="
~dev-java/jackson-annotations-${PV}:2
~dev-java/jackson-core-${PV}:0
~dev-java/jackson-databind-${PV}:0
>=dev-java/stax2-api-4.2.1-r1:0
dev-java/woodstox-core:0
"

# Compile dependencies
# POM: pom.xml
# test? com.fasterxml.jackson.module:jackson-module-jakarta-xmlbind-annotations:2.13.3 -> >=dev-java/jackson-module-jakarta-xmlbind-2.13.3:0
# test? com.sun.xml.stream:sjsxp:1.0.2 -> >=dev-java/sjsxp-1.0.2:0
# test? jakarta.xml.bind:jakarta.xml.bind-api:3.0.1 -> >=dev-java/jaxb-api-3.0.1:3
# test? junit:junit:4.13.1 -> >=dev-java/junit-4.13.2:4

DEPEND="
>=virtual/jdk-11:*
${CP_DEPEND}
test? (
~dev-java/jackson-module-jakarta-xmlbind-${PV}:0
dev-java/jaxb-api:4
dev-java/sjsxp:0
)
"

RDEPEND="
>=virtual/jre-1.8:*
${CP_DEPEND}"

DOCS=( README.md release-notes/{CREDITS,VERSION}-2.x )

S="${WORKDIR}/${PN}-${P}"

JAVA_SRC_DIR=( "src/main/java" "src/moditect" )
JAVA_RESOURCE_DIRS="src/main/resources"

JAVA_TEST_GENTOO_CLASSPATH="jackson-module-jakarta-xmlbind,sjsxp,jaxb-api-4,junit-4"
JAVA_TEST_SRC_DIR="src/test/java"
JAVA_TEST_RESOURCE_DIRS="src/test/resources"

src_prepare() {
java-pkg-2_src_prepare

sed -e 's:@package@:com.fasterxml.jackson.dataformat.xml:g' \
-e "s:@projectversion@:${PV}:g" \
-e 's:@projectgroupid@:com.fasterxml.jackson.dataformat:g' \
-e "s:@projectartifactid@:${PN}:g" \
"${JAVA_SRC_DIR}/com/fasterxml/jackson/dataformat/xml/PackageVersion.java.in" \
> "${JAVA_SRC_DIR}/com/fasterxml/jackson/dataformat/xml/PackageVersion.java" || die
}

src_test() {
pushd src/test/java || die
local JAVA_TEST_RUN_ONLY=$(find * -name "*Test*.java" \
! -wholename "**/failing**/*.java" \
! -name "*TestBase.java" )
popd

JAVA_TEST_RUN_ONLY="${JAVA_TEST_RUN_ONLY//.java}"
JAVA_TEST_RUN_ONLY="${JAVA_TEST_RUN_ONLY//\//.}"

# The same failure under openjdk-17 occurs upstream (running 'mvn test')

# 1) testCollection(com.fasterxml.jackson.dataformat.xml.lists.ListAsObjectTest)
# com.fasterxml.jackson.databind.exc.InvalidDefinitionException: Failed to call `setAccess()` on Field 'first' due to
# `java.lang.reflect.InaccessibleObjectException`, problem: Unable to make field transient java.util.LinkedList$Node
# java.util.LinkedList.first accessible: module java.base does not "opens java.util" to unnamed module @42bb2aee

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.util=ALL-UNNAMED )
fi

java-pkg-simple_src_test
}

src_install() {
default # https://bugs.gentoo.org/789582
java-pkg-simple_src_install
}
@@ -0,0 +1,84 @@
# 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 https://github.com/FasterXML/jackson-modules-base/archive/jackson-modules-base-2.13.3.tar.gz --slot 0 --keywords "~amd64 ~arm ~arm64 ~ppc64 ~x86" --ebuild jackson-module-jakarta-xmlbind-2.13.3.ebuild

EAPI=8

JAVA_PKG_IUSE="doc source test"
MAVEN_ID="com.fasterxml.jackson.module:jackson-module-jakarta-xmlbind-annotations:2.13.3"
JAVA_TESTING_FRAMEWORKS="junit-4"

inherit java-pkg-2 java-pkg-simple

DESCRIPTION="Support for using Jakarta XML Bind (aka JAXB 3.0) annotations"
HOMEPAGE="https://github.com/FasterXML/jackson-modules-base"
SRC_URI="https://github.com/FasterXML/jackson-modules-base/archive/jackson-modules-base-${PV}.tar.gz -> ${P}.tar.gz"

LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"

# Common dependencies
# POM: pom.xml
# com.fasterxml.jackson.core:jackson-annotations:2.13.3 -> >=dev-java/jackson-annotations-2.13.3:2
# com.fasterxml.jackson.core:jackson-core:2.13.3 -> >=dev-java/jackson-core-2.13.3:0
# com.fasterxml.jackson.core:jackson-databind:2.13.3 -> >=dev-java/jackson-databind-2.13.3:0
# com.sun.activation:jakarta.activation:2.0.1 -> >=dev-java/jakarta-activation-2.0.1:2
# jakarta.xml.bind:jakarta.xml.bind-api:3.0.1 -> >=dev-java/jaxb-api-3.0.1:3

CP_DEPEND="
~dev-java/jackson-annotations-${PV}:2
~dev-java/jackson-core-${PV}:0
~dev-java/jackson-databind-${PV}:0
dev-java/jakarta-activation:1
dev-java/jaxb-api:4
"

# Compile dependencies
# POM: pom.xml
# test? junit:junit:4.13.1 -> >=dev-java/junit-4.13.2:4
# test? org.glassfish.jaxb:jaxb-runtime:3.0.1 -> !!!groupId-not-found!!!

DEPEND="
>=virtual/jdk-11:*
${CP_DEPEND}
test? (
dev-java/jaxb-runtime:4
)
"

RDEPEND="
>=virtual/jre-1.8:*
${CP_DEPEND}"

S="${WORKDIR}/jackson-modules-base-jackson-modules-base-${PV}/jakarta-xmlbind/"

JAVA_SRC_DIR=( "src/main/java" "src/moditect" )
JAVA_RESOURCE_DIRS="src/main/resources"

JAVA_TEST_GENTOO_CLASSPATH="jaxb-runtime-4,junit-4"
JAVA_TEST_SRC_DIR="src/test/java"

JAVA_TEST_EXCLUDES=(
# Upstream does not run these
com.fasterxml.jackson.module.jakarta.xmlbind.failing.TestUnwrapping
com.fasterxml.jackson.module.jakarta.xmlbind.failing.TestXmlID3
)

src_prepare() {
java-pkg-2_src_prepare

sed -e 's:@package@:com.fasterxml.jackson.module.jakarta.xmlbind:g' \
-e "s:@projectversion@:${PV}:g" \
-e 's:@projectgroupid@:com.fasterxml.jackson.module:g' \
-e "s:@projectartifactid@:jackson-module-jakarta-xmlbind-annotations:g" \
"${JAVA_SRC_DIR}/com/fasterxml/jackson/module/jakarta/xmlbind/PackageVersion.java.in" \
> "${JAVA_SRC_DIR}/com/fasterxml/jackson/module/jakarta/xmlbind/PackageVersion.java" || die
}

src_install() {
default # https://bugs.gentoo.org/789582
java-pkg-simple_src_install
}
1 change: 1 addition & 0 deletions dev-java/jaxb-api/Manifest
@@ -1,2 +1,3 @@
DIST jaxb-api-2.3.3.tar.gz 193025 BLAKE2B 1cf4461fdc67cc05ee43e880c254290b9dbe8a40b1dc39444d8fb6656698876a4bb16c679ee551ec7baa95c07eaf83e2fe5638a71eafbb158805c14c38888cb8 SHA512 37d6705fc1563f0d35a215e2f176473ee5e817a4a3017afe22042a4235c86b8556ea1fb23210d07ca7ea3cd1e0a3271daa4be8c9652cfe92ce2898f1381de3bf
DIST jaxb-api-3.0.1.tar.gz 420695 BLAKE2B 70da435e75f6fcb155d57ee20659897d7d1a72dc38e77f0348eaa767b56e2c5fbb7df88c3b0c794cfc7eaad3d839550a197288dab59520a63562f083388764c0 SHA512 16d62a1fd6045a57f1d215227ce75860340c286eb0986b1086a0312dbc8ca8119b25533c42fe54f367231ec1c34795fec6a9355417f71ce826ee28d5fb6cf9fe
DIST jaxb-api-4.0.0.tar.gz 543827 BLAKE2B 12a113126290fdf46270d2713d88836e8f5d01059127747a343816a10deb45ecc8c8dc8cf2cf7e2b71754977900645d4fef6e08fa8c47f583945fea34bc62357 SHA512 eb4eab396b894ab801433e0e31f93a4980f3913176a1960591a69e4fd55f10f316a7edb712df323c59f7dc9ca6cebacb7257be06aec72446059dd8b93c6de175
2 changes: 1 addition & 1 deletion dev-java/jaxb-api/jaxb-api-3.0.1-r1.ebuild
Expand Up @@ -12,7 +12,7 @@ MAVEN_ID="jakarta.xml.bind:jakarta.xml.bind-api:3.0.1"
inherit java-pkg-2 java-pkg-simple

DESCRIPTION="Jakarta XML Binding API"
HOMEPAGE="https://github.com/eclipse-ee4j/jaxb-api/jakarta.xml.bind-api"
HOMEPAGE="https://github.com/eclipse-ee4j/jaxb-api"
SRC_URI="https://github.com/eclipse-ee4j/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"

LICENSE="EPL-1.0"
Expand Down
42 changes: 42 additions & 0 deletions dev-java/jaxb-api/jaxb-api-4.0.0.ebuild
@@ -0,0 +1,42 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2

EAPI=8

JAVA_PKG_IUSE="doc source test"
MAVEN_ID="jakarta.xml.bind:jakarta.xml.bind-api:4.0.0"
JAVA_TESTING_FRAMEWORKS="junit-4"

inherit java-pkg-2 java-pkg-simple

DESCRIPTION="Jakarta XML Binding API"
HOMEPAGE="https://github.com/eclipse-ee4j/jaxb-api"
SRC_URI="https://github.com/eclipse-ee4j/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"

LICENSE="EPL-1.0"
SLOT="4"
KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"

CP_DEPEND="dev-java/jakarta-activation:2"

DEPEND="${CP_DEPEND}
>=virtual/jdk-11:*"

RDEPEND="${CP_DEPEND}
>=virtual/jre-1.8:*"

DOCS=( {CONTRIBUTING,NOTICE,README}.md )

S="${WORKDIR}/${P}"

JAVA_SRC_DIR="api/src/main/java"
JAVA_RESOURCE_DIRS="api/src/main/resources"

JAVA_TEST_GENTOO_CLASSPATH="junit-4"
JAVA_TEST_SRC_DIR="jaxb-api-test/src/test/java"
JAVA_TEST_RESOURCE_DIRS="jaxb-api-test/src/test/resources"

src_install() {
default # https://bugs.gentoo.org/789582
java-pkg-simple_src_install
}
1 change: 1 addition & 0 deletions dev-java/jaxb-runtime/Manifest
@@ -0,0 +1 @@
DIST jaxb-ri-4.0.0.tar.gz 1739184 BLAKE2B a85a12fdca0b6eff8664894d65e2f82d30491e20050fde2ca828fa3c2c79ce2e158fca5ce6d0ae2cb2a00859abc0c9e9d49321c0943b862fd603a9e732f29dc4 SHA512 766a58d5107a88c19a99014b737b7b14a510b928dd26991adfe902073614923690c1e5a231834ec4a200a10adf9505b27179b8d84cf09dbb09292341c328e743