Add support for string deps in project.clj
This is needed for rare cases where maven artifact-ids and/or group-ids aren't valid symbols (e.g. they start with a number). Test coverage added.
This commit is contained in:
parent
bbbead38b2
commit
66cef075e8
4 changed files with 29 additions and 7 deletions
|
@ -6,7 +6,9 @@
|
||||||
[clucy "0.2.2" :exclusions [org.clojure/clojure]]
|
[clucy "0.2.2" :exclusions [org.clojure/clojure]]
|
||||||
[lancet "1.0.1"]
|
[lancet "1.0.1"]
|
||||||
[robert/hooke "1.1.2"]
|
[robert/hooke "1.1.2"]
|
||||||
[stencil "0.2.0"]]
|
[stencil "0.2.0"]
|
||||||
|
["net.3scale/3scale-api" "3.0.2"]
|
||||||
|
["clj-http" "3.4.1"]]
|
||||||
:twelve ~(+ 6 2 4)
|
:twelve ~(+ 6 2 4)
|
||||||
:disable-implicit-clean true
|
:disable-implicit-clean true
|
||||||
:eval-in-leiningen true)
|
:eval-in-leiningen true)
|
||||||
|
|
|
@ -14,7 +14,7 @@
|
||||||
</license>
|
</license>
|
||||||
</licenses>
|
</licenses>
|
||||||
<scm>
|
<scm>
|
||||||
<tag>f42a5cfec3c3bbe1fcc7cb63130955519bb7ca3a
|
<tag>bbbead38b2bbf6e4e7bb315b67dbde6948a6eb84
|
||||||
</tag>
|
</tag>
|
||||||
<url/>
|
<url/>
|
||||||
</scm>
|
</scm>
|
||||||
|
@ -106,7 +106,7 @@
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>org.apache.maven.wagon</groupId>
|
<groupId>org.apache.maven.wagon</groupId>
|
||||||
<artifactId>wagon-http</artifactId>
|
<artifactId>wagon-http</artifactId>
|
||||||
<version>2.10</version>
|
<version>2.12</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>com.hypirion</groupId>
|
<groupId>com.hypirion</groupId>
|
||||||
|
@ -118,6 +118,11 @@
|
||||||
<artifactId>pedantic</artifactId>
|
<artifactId>pedantic</artifactId>
|
||||||
<version>0.2.0</version>
|
<version>0.2.0</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.slf4j</groupId>
|
||||||
|
<artifactId>slf4j-nop</artifactId>
|
||||||
|
<version>1.7.22</version>
|
||||||
|
</dependency>
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>org.clojure</groupId>
|
<groupId>org.clojure</groupId>
|
||||||
<artifactId>tools.macro</artifactId>
|
<artifactId>tools.macro</artifactId>
|
||||||
|
|
|
@ -9,7 +9,8 @@
|
||||||
[cemerick.pomegranate.aether :as aether]
|
[cemerick.pomegranate.aether :as aether]
|
||||||
[leiningen.core.utils :as utils]
|
[leiningen.core.utils :as utils]
|
||||||
[leiningen.core.user :as user]
|
[leiningen.core.user :as user]
|
||||||
[leiningen.core.classpath :as classpath])
|
[leiningen.core.classpath :as classpath]
|
||||||
|
[clojure.string :as str])
|
||||||
(:import (clojure.lang DynamicClassLoader)
|
(:import (clojure.lang DynamicClassLoader)
|
||||||
(java.io PushbackReader Reader)))
|
(java.io PushbackReader Reader)))
|
||||||
|
|
||||||
|
@ -48,10 +49,22 @@
|
||||||
[profile]
|
[profile]
|
||||||
(vector? profile))
|
(vector? profile))
|
||||||
|
|
||||||
|
(defn artifact-namespace
|
||||||
|
[id]
|
||||||
|
(if (string? id)
|
||||||
|
(first (str/split id #"/"))
|
||||||
|
(or (namespace id) (name id))))
|
||||||
|
|
||||||
|
(defn artifact-name
|
||||||
|
[id]
|
||||||
|
(if (string? id)
|
||||||
|
(last (str/split id #"/"))
|
||||||
|
(name id)))
|
||||||
|
|
||||||
(defn artifact-map
|
(defn artifact-map
|
||||||
[id]
|
[id]
|
||||||
{:artifact-id (name id)
|
{:artifact-id (artifact-name id)
|
||||||
:group-id (or (namespace id) (name id))})
|
:group-id (artifact-namespace id)})
|
||||||
|
|
||||||
(defn exclusion-map
|
(defn exclusion-map
|
||||||
"Transform an exclusion vector into a map that is easier to combine with
|
"Transform an exclusion vector into a map that is easier to combine with
|
||||||
|
|
|
@ -36,11 +36,13 @@
|
||||||
:eval-in :leiningen,
|
:eval-in :leiningen,
|
||||||
:license {:name "Eclipse Public License"}
|
:license {:name "Eclipse Public License"}
|
||||||
|
|
||||||
:dependencies '[[leiningen-core/leiningen-core "2.0.0-SNAPSHOT"]
|
:dependencies `[[leiningen-core/leiningen-core "2.0.0-SNAPSHOT"]
|
||||||
[clucy/clucy "0.2.2" :exclusions [[org.clojure/clojure]]]
|
[clucy/clucy "0.2.2" :exclusions [[org.clojure/clojure]]]
|
||||||
[lancet/lancet "1.0.1"]
|
[lancet/lancet "1.0.1"]
|
||||||
[robert/hooke "1.1.2"]
|
[robert/hooke "1.1.2"]
|
||||||
[stencil/stencil "0.2.0"]
|
[stencil/stencil "0.2.0"]
|
||||||
|
[~(symbol "net.3scale" "3scale-api") "3.0.2"]
|
||||||
|
[clj-http/clj-http "3.4.1"]
|
||||||
[org.clojure/tools.nrepl "0.2.12"
|
[org.clojure/tools.nrepl "0.2.12"
|
||||||
:exclusions [[org.clojure/clojure]]]
|
:exclusions [[org.clojure/clojure]]]
|
||||||
[clojure-complete/clojure-complete "0.2.4"
|
[clojure-complete/clojure-complete "0.2.4"
|
||||||
|
|
Loading…
Reference in a new issue