You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@commons.apache.org by "Brahim Djoudi (JIRA)" <ji...@apache.org> on 2014/10/30 10:58:34 UTC

[jira] [Commented] (COLLECTIONS-483) Cyclic dependencies among several packages.

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

Brahim Djoudi commented on COLLECTIONS-483:
-------------------------------------------


Dear Thomas.

First, thank you for your reply.

About the proposed enhancement, I agree with you. The work required  for the users of the library may become significant because of
the broken API compatibilty.
I proposed the dependency refactoring because I am used to work with OSGi environments where dependencies should be managed
at package level. With the Commons Collections, I use a "Require-Bundle" clause to import the library entirely. It's not really a problem
for me since the library has a version number at jar level.

Best Regards
Brahim



> Cyclic dependencies among several packages.
> -------------------------------------------
>
>                 Key: COLLECTIONS-483
>                 URL: https://issues.apache.org/jira/browse/COLLECTIONS-483
>             Project: Commons Collections
>          Issue Type: Improvement
>    Affects Versions: 4.0-alpha1, 4.0
>            Reporter: Brahim Djoudi
>            Priority: Minor
>         Attachments: c4-refactored.png, c4-refactoring.pdf, c4-src.zip, c4.png
>
>   Original Estimate: 4h
>  Remaining Estimate: 4h
>
> Many packages have mutual dependency, directly or undirectly.
> These dependencies may be avoided just by moving some classes and interfaces within different packages.
> This refactoring breaks API compatibility but enhances the useability and the maintainability (hopefully) of the library. In addition, few issues in dynamic environments (like OSGi) less occur.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)