[ https://issues.apache.org/jira/browse/STORM-314?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14219499#comment-14219499 ]
Brandon Adams commented on STORM-314: ------------------------------------- This bug also affects compojure and ring.codec in noticeable ways. > Storm breaks tools.cli upgrades on Clojure projects that depend on Storm > ------------------------------------------------------------------------ > > Key: STORM-314 > URL: https://issues.apache.org/jira/browse/STORM-314 > Project: Apache Storm > Issue Type: Bug > Affects Versions: 0.9.1-incubating > Reporter: Andrew Montalenti > Labels: build, easyfix > > We're working on new a Python + Storm interop library called streamparse > (https://github.com/Parsely/streamparse/). To submit topologies to Storm and > run local clusters, it leverages lein and the Clojure DSL. In the project we > create for Storm, our lein project.clj configuration includes these > dependencies: > :dependencies [ > [storm "0.9.0.1"] > [org.clojure/clojure "1.5.1"] > [org.clojure/data.json "0.2.4"] > [org.clojure/tools.cli "0.3.1"] > ] > The last dependency, org.clojure/tools.cli, is problematic. This is because > Storm apparently bundles org.clojure/tools.cli 0.2.x, and due to the way > Storm is compiled, it masks over the 0.3.1 dependency, which changes the API > dramatically. I discussed this with technomancy (lein's creator) on IRC, and > he said this was probably due to "AOT" -- ahead-of-time compilation -- > causing incorrect classpath resolution to Storm's bundled version > To work around the issue right now, I need to add > :exclusions [org.clojure/tools.cli] > to my project.clj. However, I am filing this bug because as the lein author > says in the project's FAQ: > "You may also want to report a bug with the dependency that uses hard version > ranges as they cause all kinds of problems and exhibit unintuitive behaviour." -- This message was sent by Atlassian JIRA (v6.3.4#6332)