You are viewing a plain text version of this content. The canonical link for it is here.
Posted to server-dev@james.apache.org by "Wojtek (Jira)" <se...@james.apache.org> on 2023/01/20 16:48:00 UTC

[jira] [Created] (JAMES-3878) Remove icu4j dependency and replace required functionality with other dependencies

Wojtek created JAMES-3878:
-----------------------------

             Summary: Remove icu4j dependency and replace required functionality with other dependencies
                 Key: JAMES-3878
                 URL: https://issues.apache.org/jira/browse/JAMES-3878
             Project: James Server
          Issue Type: Improvement
          Components: mailbox
    Affects Versions: master
            Reporter: Wojtek


(context discussion: [https://gitter.im/apache/james-project?at=63c87300c47d581062986327)]

 

Currently James has `icu4j` as dependency but only uses `UnicodeSet.containsAll()` from it. Given that the dependency is 15M and the usage is minimal and could be replaced with functions from other dependencies it would be good to do so.

 

Right now it's used in:
 * `org.apache.james.mailbox.model.MailboxAnnotationKey`
 * {{org.apache.james.jmap.draft.model.Keyword }}
 * ({{{}.java){}}}{{{}{}}}
 * {{org.apache.james.jmap.mail.Keyword}} ({{{}.scala{}}})

 

It could be replaced with `re2` from google (https://github.com/google/re2j), which is already present in dependencies and it's only ~100K) and performance wise it should be on pair.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org