Github user richardcloudsoft commented on the pull request:
https://github.com/apache/incubator-brooklyn/pull/85#issuecomment-50475810
@ahgittin: @aledsage's reasoning agrees with mine, with the added thought
if it's sometimes better to be explicit rather than implicit. This change has
resulted in one or two surprising dependencies coming to light, such as
references to JUnit's `Assert` class and `com.beust.jcommander`'s `List` class.
These are programming errors that detected using this practice.
More specifically, for my next step I will need to be identifying the
licenses of our dependencies, and having our dependencies explicitly listed in
each project will help me in the event of any problematic licenses (of which I
know there will be at least two) - I will be quickly able to determine which
projects may require action.
@aledsage - I am slightly concerned by your statement about library X and
library Y. If the application invokes a method on library X, and that method
uses a type for library Y, then the application will have to work with the
library Y type and therefore its code will depend on library Y. Under this
scheme, library Y would be explicitly declared. *However*, if the application
uses library X but *does* *not* use the problematic method, the application
code makes no references to library Y and therefore there is no dependency on
library Y. Does that address your concern?
---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at [email protected] or file a JIRA ticket
with INFRA.
---