You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cayenne.apache.org by "Nikita Timofeev (JIRA)" <ji...@apache.org> on 2017/08/17 08:41:00 UTC
[jira] [Commented] (CAY-2351) Remove commons-collections usage
completely
[ https://issues.apache.org/jira/browse/CAY-2351?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16130100#comment-16130100 ]
Nikita Timofeev commented on CAY-2351:
--------------------------------------
Issue CAY-2345 is now closed and it will remove transitive dependency on commons-collections
> Remove commons-collections usage completely
> -------------------------------------------
>
> Key: CAY-2351
> URL: https://issues.apache.org/jira/browse/CAY-2351
> Project: Cayenne
> Issue Type: Improvement
> Components: Core Library
> Affects Versions: 4.1.M1
> Reporter: Nikita Timofeev
> Assignee: Nikita Timofeev
> Fix For: 4.1.M1
>
>
> This task is final part of effort of removing all external dependencies from *cayenne-server*.
> *Why to do so*:
> * keeping cayenne free of outer dependencies will allow easier integration of Cayenne in projects, reducing issues in case of dependencies incompatibilities
> * most of commons-collections code used by Cayenne can be replaced by plain java (this will require Java 8) so it will be easier to maintain
> * commons-collections v3.2.1 used now have security vulnerabilities (see this [issue|https://issues.apache.org/jira/browse/COLLECTIONS-580])
> *Negative impact*
> Cayenne use some tricky collections from that lib now and will require to deal with their replacement
> Those collections are:
> - {{LRUMap}} this will be seamlessly replaced by already used {{ConcurrentLinkedHashMap}}
> - {{CompositeCollection}} this will be copied into Cayenne code base as it has almost no dependencies and relatively small
> - {{ReferenceMap}} this should be implemented by Cayenne as copying this will lead to copying significant part of commons-collections code base, luckily Cayenne actually use only two variants of this map: strong keys + weak values and strong keys + soft values.
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)