You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@jackrabbit.apache.org by "Konrad Windszus (Jira)" <ji...@apache.org> on 2021/08/30 16:23:00 UTC

[jira] [Comment Edited] (JCRVLT-391) Remove copied classes of Xerces

    [ https://issues.apache.org/jira/browse/JCRVLT-391?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17406812#comment-17406812 ] 

Konrad Windszus edited comment on JCRVLT-391 at 8/30/21, 4:22 PM:
------------------------------------------------------------------

{{org.apache.jackrabbit.vault.util.xml.serialize}} has been increased to 3.0.0 because formerly public classes have been removed (https://github.com/apache/jackrabbit-filevault/commit/ffe8e36fbdb3023a4436b820463197762aa9c281#diff-98491387af99e0595ce4f42692221e831a038d9f94bf6b3316383336eae20378L1). {{org.apache.jackrabbit.vault.util.xml}} does not contain any classes, therefore the package version should not matter (there should never be a import-package towards it). But maybe in the past it contained some classes. We can remove the package-version there (and by that no longer export that empty package).

What concrete issue do you have? Which bundle has conflicting imports to those packages?


was (Author: kwin):
{{org.apache.jackrabbit.vault.util.xml.serialize}} has been increased to 3.0.0 because formerly public classes have been removed (https://github.com/apache/jackrabbit-filevault/commit/ffe8e36fbdb3023a4436b820463197762aa9c281#diff-98491387af99e0595ce4f42692221e831a038d9f94bf6b3316383336eae20378L1). {{org.apache.jackrabbit.vault.util.xml}} does not contain any classes, therefore the package version should not matter (there should never be a import-package towards it). But maybe in the past it contained some classes. We can remove the package-version there.

What concrete issue do you have? Which bundle has conflicting imports to those packages?

> Remove copied classes of Xerces
> -------------------------------
>
>                 Key: JCRVLT-391
>                 URL: https://issues.apache.org/jira/browse/JCRVLT-391
>             Project: Jackrabbit FileVault
>          Issue Type: Task
>          Components: vlt
>    Affects Versions: 3.4.0
>            Reporter: Konrad Windszus
>            Assignee: Konrad Windszus
>            Priority: Major
>             Fix For: 3.4.2
>
>
> Currently the classes below {{o.a.j.v.util.xml}} seem to be a copy of Xerces classes. Instead of just relying on an old copy one should use a proper Maven dependency together with https://maven.apache.org/plugins/maven-shade-plugin/ or https://bnd.bndtools.org/instructions/conditionalpackage.html to make sure update to the latest version is possible.
> Also it needs to be clarified if the embedded Xerces should be listed explicitly in https://github.com/apache/jackrabbit-filevault/blob/trunk/LICENSE.txt.
> The original intent is stated in https://github.com/apache/jackrabbit-filevault/blob/9fa6c72bf4bdf36331b50b9370f3ed826a4622e8/vault-core/src/main/java/org/apache/jackrabbit/vault/util/xml/serialize/XMLSerializer.java#L64.
> The only modifications to the original Xerces were linebreaks after attributes and an alphabetic attribute sort order.
> The following alternatives are available:
> # Use the {{javax.xml.transform}} API (JAXP Transformation API, TrAX). There is no official way though to control the order of attribute, therefore I would recommend to already emit the attributes in the correct order instead of reordering them with the output.  Controlling the indentation of attributes is hard to achieve: https://stackoverflow.com/questions/8393370/use-xslt-to-add-newlines-after-attributes
> # Use StAX with the Woodstox implementation. Seems faster, but still no sophisticated output formatting options available (like indentation options and line length)
> # Implement a simple serializer based on SAX events from scratch



--
This message was sent by Atlassian Jira
(v8.3.4#803005)