Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

resolve-dependencies returns exclusions as vector of vectors #93

Closed
martinklepsch opened this issue Dec 15, 2017 · 2 comments
Closed

resolve-dependencies returns exclusions as vector of vectors #93

martinklepsch opened this issue Dec 15, 2017 · 2 comments

Comments

@martinklepsch
Copy link

martinklepsch commented Dec 15, 2017

Not sure if this is a bug or intentional. Via boot-clj/boot#635

(require 'cemerick.pomegranate.aether)

(cemerick.pomegranate.aether/resolve-dependencies
 :coordinates  '[[boot/core "2.7.0" :exclusions [org.clojure/clojure boot/pod]]]
 :repositories  [["clojars" {:url "https://repo.clojars.org/"}]
                 ["maven-central" {:url "https://repo1.maven.org/maven2"}]])

;; returns this:
{[boot/core "2.7.0" :exclusions [[org.clojure/clojure] [boot/pod]]] nil}

I would expect it to return exclusions in the same way they were given to resolve-dependencies, i.e. in this case the expected return value would be:

{[boot/core "2.7.0" :exclusions [org.clojure/clojure boot/pod]] nil}

Is this a bug or is there purpose to returning exclusions as vector of vectors? Thanks! :)

PS. I also reproduced this with v1.0.0.

@martinklepsch
Copy link
Author

martinklepsch commented Dec 19, 2017

Any chance someone can comment on whether this is a bug or intentional? It seems like it should be easy to fix so I'm happy to do it if desired. 🙂

@cemerick
Copy link
Collaborator

It's intentional. After being passed through aether, exclusions end up being "normalized" to look like any other dependency vector (just absent a version string in that case). Note that the symbol-only representation of exclusion groupId/artifactIds is just a convenience, resolved here:

https://github.com/cemerick/pomegranate/blob/c5a5535b7026e3547b13563904f331175efa9eeb/src/main/clojure/cemerick/pomegranate/aether.clj#L237

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants