bb print-deps: sort dependencies (#1582)
* `bb print-deps`: sort dependencies Co-authored-by: Teodor Heggelund <git@teod.eu>
This commit is contained in:
parent
85eef7d6f7
commit
de06c199f1
4 changed files with 23 additions and 8 deletions
|
|
@ -10,6 +10,7 @@ A preview of the next release can be installed from
|
|||
## Unreleased
|
||||
|
||||
- [#1579](https://github.com/babashka/babashka/issues/1579): add `clojure.tools.reader/resolve-symbol`
|
||||
- [#1581](https://github.com/babashka/babashka/issues/1581): `bb print-deps`: sort dependencies
|
||||
|
||||
## 1.3.181 (2023-06-13)
|
||||
|
||||
|
|
|
|||
|
|
@ -98,7 +98,8 @@
|
|||
:feature/logging
|
||||
:feature/priority-map
|
||||
:feature/rrb-vector
|
||||
{:dependencies [[com.clojure-goes-fast/clj-async-profiler "0.5.0"]
|
||||
{:dependencies [[borkdude/rewrite-edn "0.4.6"]
|
||||
[com.clojure-goes-fast/clj-async-profiler "0.5.0"]
|
||||
[com.opentable.components/otj-pg-embedded "0.13.3"]
|
||||
[nubank/matcher-combinators "3.6.0"]]}]
|
||||
:uberjar {:global-vars {*assert* false}
|
||||
|
|
|
|||
|
|
@ -30,6 +30,7 @@
|
|||
'org.hsqldb/hsqldb)
|
||||
bb-edn-deps (:deps @common/bb-edn)
|
||||
deps (merge deps bb-edn-deps)
|
||||
deps (into (sorted-map) deps)
|
||||
paths (:paths @common/bb-edn)
|
||||
deps {:deps deps}
|
||||
deps (cond-> deps
|
||||
|
|
|
|||
|
|
@ -2,16 +2,28 @@
|
|||
(:require [babashka.deps :as deps]
|
||||
[babashka.fs :as fs]
|
||||
[babashka.test-utils :refer [bb]]
|
||||
[borkdude.rewrite-edn :as r]
|
||||
[clojure.string :as str]
|
||||
[clojure.test :refer [deftest is testing]]
|
||||
[rewrite-clj.node :as n]
|
||||
[sci.core :as sci]))
|
||||
|
||||
|
||||
(deftest print-deps-test
|
||||
(let [deps (bb nil "print-deps" "--format" "deps")
|
||||
tmp-dir (fs/create-temp-dir)]
|
||||
(let [deps (bb nil "print-deps" "--format" "deps")]
|
||||
(testing "printed deps map can be read by Clojure"
|
||||
(spit (fs/file tmp-dir "deps.edn") deps)
|
||||
(let [cp (sci/with-out-str
|
||||
(deps/clojure ["-Spath"] {:dir (str tmp-dir)}))]
|
||||
(is (str/includes? cp "babashka.curl")))
|
||||
(fs/delete-tree tmp-dir))))
|
||||
(let [tmp-dir (fs/create-temp-dir)]
|
||||
(spit (fs/file tmp-dir "deps.edn") deps)
|
||||
(let [cp (sci/with-out-str
|
||||
(deps/clojure ["-Spath"] {:dir (str tmp-dir)}))]
|
||||
(is (str/includes? cp "babashka.curl")))
|
||||
(fs/delete-tree tmp-dir)))
|
||||
|
||||
(testing "keys in dep map are sorted"
|
||||
(let [values-sorted? (fn [xs] (= xs (sort xs)))
|
||||
deps-edn-str-deps-keys (fn [s]
|
||||
(->> (r/get (r/parse-string s) :deps)
|
||||
n/child-sexprs
|
||||
(partition 2)
|
||||
(map first)))]
|
||||
(is (values-sorted? (deps-edn-str-deps-keys deps)))))))
|
||||
|
|
|
|||
Loading…
Reference in a new issue