Github user aledsage commented on the pull request:

    https://github.com/apache/incubator-brooklyn/pull/85#issuecomment-50471866
  
    Looking at e.g. [1], there are folk who argue it each way. I also like the 
suggestion "reflect the logical project dependencies". If the project has a 
source-level dependency on guava then fine to declare that rather than rely on 
a transitive dependency pulling it in. When combined with tools like the Maven 
Story Teller Plugin (MSTP) [2] then this should be ok.
    
    What I am wary of is... if we use library X that includes in its method 
signatures types from library Y, then I don't want us to declare a dependency 
on Y just because of that. If we upgrade the version of X, then we want to 
automatically get the correct version of Y rather than having to manually 
update our pom for Y as well when MSTP tells us its wrong.
    
    @grkvlt what are your opinions here? (I also don't want this to turn into a 
huge debate/distraction!)
    
    [1] 
http://stackoverflow.com/questions/4226756/maven-should-i-keep-or-remove-declared-dependencies-that-are-also-transitives
    [2] http://confluence.highsource.org/display/MSTP/User+Guide


---
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.
---

Reply via email to