Merge pull request #1732 from cprice404/bug/1695-repository-replace
Fix support for `^:replace` metadata on `:repositories` (fixes #1695)
This commit is contained in:
commit
481be7460d
4 changed files with 26 additions and 6 deletions
6
leiningen-core/dev-resources/replace-repositories.clj
Normal file
6
leiningen-core/dev-resources/replace-repositories.clj
Normal file
|
@ -0,0 +1,6 @@
|
|||
(defproject metadata-check "0.1.0"
|
||||
:description "Check that repositories can be replaced."
|
||||
:license {:name "Eclipse Public License"}
|
||||
:dependencies [[robert/hooke "1.1.2"]
|
||||
[stencil "0.2.0"]]
|
||||
:repositories ^:replace [["nexus" {:url "https://clojars.org/repo/"}]])
|
|
@ -3,7 +3,7 @@
|
|||
<groupId>leiningen-core</groupId>
|
||||
<artifactId>leiningen-core</artifactId>
|
||||
<packaging>jar</packaging>
|
||||
<version>2.5.0</version>
|
||||
<version>2.5.1-SNAPSHOT</version>
|
||||
<name>leiningen-core</name>
|
||||
<description>Library for core functionality of Leiningen.</description>
|
||||
<url>https://github.com/technomancy/leiningen</url>
|
||||
|
@ -16,7 +16,7 @@
|
|||
<scm>
|
||||
<connection>scm:git:git://github.com/technomancy/leiningen.git</connection>
|
||||
<developerConnection>scm:git:ssh://git@github.com/technomancy/leiningen.git</developerConnection>
|
||||
<tag>7cca27e54a28c11f86de697fa60dfba378690876
|
||||
<tag>e77db48947ee47e7ee0c1e4b8f5e43764e3aa3b7
|
||||
</tag>
|
||||
<url>https://github.com/technomancy/leiningen</url>
|
||||
</scm>
|
||||
|
@ -24,11 +24,17 @@
|
|||
<sourceDirectory>src</sourceDirectory>
|
||||
<testSourceDirectory>test</testSourceDirectory>
|
||||
<resources>
|
||||
<resource>
|
||||
<directory>dev-resources</directory>
|
||||
</resource>
|
||||
<resource>
|
||||
<directory>resources</directory>
|
||||
</resource>
|
||||
</resources>
|
||||
<testResources>
|
||||
<testResource>
|
||||
<directory>dev-resources</directory>
|
||||
</testResource>
|
||||
<testResource>
|
||||
<directory>dev-resources</directory>
|
||||
</testResource>
|
||||
|
@ -91,13 +97,18 @@
|
|||
<dependency>
|
||||
<groupId>org.apache.maven.wagon</groupId>
|
||||
<artifactId>wagon-http</artifactId>
|
||||
<version>2.4</version>
|
||||
<version>2.7</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>com.hypirion</groupId>
|
||||
<artifactId>io</artifactId>
|
||||
<version>0.3.1</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>spyscope</groupId>
|
||||
<artifactId>spyscope</artifactId>
|
||||
<version>0.1.4</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>pedantic</groupId>
|
||||
<artifactId>pedantic</artifactId>
|
||||
|
@ -113,7 +124,6 @@
|
|||
<artifactId>clojure</artifactId>
|
||||
</exclusion>
|
||||
</exclusions>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>clojure-complete</groupId>
|
||||
|
@ -125,7 +135,6 @@
|
|||
<artifactId>clojure</artifactId>
|
||||
</exclusion>
|
||||
</exclusions>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
</project>
|
||||
|
|
|
@ -319,7 +319,8 @@
|
|||
(fn [left right]
|
||||
;; Assumes that left always contains :reduce OR :prepend in its meta
|
||||
(with-meta
|
||||
(cond (-> left meta :reduce) (-> left meta :reduce
|
||||
(cond (different-priority? left right) (pick-prioritized left right)
|
||||
(-> left meta :reduce) (-> left meta :reduce
|
||||
(reduce left right))
|
||||
(-> left meta :prepend) (concat right left))
|
||||
(merge (meta left)
|
||||
|
|
|
@ -69,6 +69,10 @@
|
|||
;; TODO: test omit-default
|
||||
;; TODO: test reading project that doesn't def project
|
||||
|
||||
(deftest test-replace-repositories
|
||||
(let [actual (read (.getFile (io/resource "replace-repositories.clj")))]
|
||||
(is (= 1 (-> actual :repositories count)))))
|
||||
|
||||
(deftest test-retain-profile-metadata
|
||||
(let [actual (read (.getFile (io/resource "profile-metadata.clj")))
|
||||
profiles (:profiles actual)]
|
||||
|
|
Loading…
Reference in a new issue