Hi,
On 4/29/21 12:00 PM, Mikolaj Izdebski wrote:
Hi Hans,
On Wed, Apr 28, 2021 at 3:47 PM Hans de Goede <hdegoede(a)redhat.com> wrote:
> Also I hope it is ok if I pick your brain a bit on a java
> packaging issue which I've been having.
>
> I maintain a couple of java leave packages (games) + some deps
> which AFAIK are only used by these games.
>
> One of these deps (dom4j) has been FTBFS since F34:
>
https://bugzilla.redhat.com/show_bug.cgi?id=1923601
>
> I've been looking into this and the actual problem seems to
> be with Java 9 now including what once was the org.relaxng.datatype
> except they did not just bundle it, they also changed where it
> sits in the namespace to com.sun.tools.rngdatatype <sigh>
>
> Just doing a s/org.relaxng.datatype/com.sun.tools.rngdatatype/
> got me a bit further, but it seems that msv, which is a dep of
> dom4j needs to be rebuild first with the same search-replace
> done on it and the FTBFS bug of msv is stuck because of one
> of its deps getting orphaned+retired :
>
https://bugzilla.redhat.com/show_bug.cgi?id=1923446
>
> So I think I can fix this by:
>
> 1. Unorphaning jvnet-parent, which is the missing msv dep
You can unorphan/unretire it, but removing dependency on jvnet-parent
is another choice. Probably better choice as jvnet-parent is no longer
developed or maintained by upstream.
> 2. Do a s/org.relaxng.datatype/com.sun.tools.rngdatatype/ in msv, rebuild
> 3. Do a s/org.relaxng.datatype/com.sun.tools.rngdatatype/ in dom4j, rebuild
relaxngDatatype was retired in Fedora. A replacement is
jaxb-relaxng-datatype package (built from jaxb source package), but it
uses a different namespace. Therefore steps 2 and 3 seem correct and
necessary.
> And then either do this only for rawhide, or push all 3 modified
> packages to F34 in a single bodhi update.
>
> Mikolaj, does this sounds like a reasonable plan to you; or
> should I approach this differently?
Yes, that sounds good. I would also double check to see whether
msv/dom4j are really needed by your packages.
Thank you for this hint. dom4j is still used by 4 packages,
but "dnf repoquery --whatrequires msv-<subpkg>" returns nothing
but msv for all msv packages. So it seems that nothing is using this
at runtime. As such I've just removed the classes from dom4j which
depend on msv as those seem to be unused.
I've only pushed this to rawhide for now and I've asked the
maintainers of the other 3 packages to test them with the new
dom4j build.
I'll also add a comment to the msv FTBFS bug that it might be
best to just orphan msv as it has been deprecated upstream and
not seen a new release since 2013 it seems.
> Also if yes this is a reasonable plan any advice on also
> pushing the fixed packages to F34, or not ?
I am in favor of F34 update. Users of dom4j/msv that do not rely on
relaxngDatatype-related functionality should be unaffected by the
update. Users that do rely on it would get it fixed.
Ok, I'll update dom4j once I've positive testing feedback from
the maintainers of the other pkgs depending on it.
Regards,
Hans