Skip to content

Commit 93f260c

Browse files
authored
Merge pull request #55 from OpenVoxProject/move_dep_pins
Move version pins
2 parents f176ecb + 41293b8 commit 93f260c

1 file changed

Lines changed: 46 additions & 34 deletions

File tree

project.clj

Lines changed: 46 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
(def slf4j-version "2.0.17")
22
(def logback-version "1.3.16")
33
(def i18n-version "1.0.3")
4-
(def kitchensink-version "3.5.5")
54

65
(require '[clojure.string :as str]
76
'[leiningen.core.main :as main])
@@ -30,47 +29,60 @@
3029
;; requires lein 2.2.0+.
3130
:pedantic? :abort
3231

33-
;; These are to enforce consistent versions across dependencies of dependencies,
34-
;; and to avoid having to define versions in multiple places. If a component
35-
;; defined under :dependencies ends up causing an error due to :pedantic? :abort,
36-
;; because it is a dep of a dep with a different version, move it here.
32+
;; Generally, try to keep version pins in :managed-dependencies and the libraries
33+
;; this project actually uses in :dependencies, inheriting the version from
34+
;; :managed-dependencies. This prevents endless version conflicts due to deps of deps.
35+
;; Renovate should keep the versions largely in sync between projects.
3736
:managed-dependencies [[org.clojure/clojure "1.12.4"]
37+
[org.clojure/core.async "1.8.741"]
38+
[org.clojure/tools.logging "1.3.1"]
39+
[org.clojure/tools.macro "0.2.2"]
40+
41+
[org.slf4j/slf4j-api ~slf4j-version]
42+
[org.slf4j/log4j-over-slf4j ~slf4j-version]
43+
[ch.qos.logback/logback-classic ~logback-version]
44+
[ch.qos.logback/logback-core ~logback-version]
45+
[ch.qos.logback/logback-access ~logback-version]
46+
47+
[beckon "0.1.1"]
48+
[clj-time "0.15.2"]
49+
[clj-commons/fs "1.6.312"]
50+
[com.kohlschutter.junixsocket/junixsocket-core "2.10.1" :extension "pom"]
3851
[commons-io "2.21.0"]
39-
[org.openvoxproject/kitchensink ~kitchensink-version]
40-
[org.openvoxproject/kitchensink ~kitchensink-version :classifier "test"]]
52+
[io.github.clj-kondo/config-slingshot-slingshot "1.0.0"]
53+
[nrepl/nrepl "0.9.0"]
54+
[org.openvoxproject/i18n ~i18n-version]
55+
[org.openvoxproject/kitchensink "3.5.5"]
56+
[org.openvoxproject/kitchensink "3.5.5" :classifier "test"]
57+
[org.openvoxproject/typesafe-config "1.0.1"]
58+
[prismatic/plumbing "0.6.0"]
59+
[prismatic/schema "1.4.1"]]
4160

4261
:dependencies [[org.clojure/clojure]
43-
[org.clojure/tools.logging "1.3.1"]
44-
[org.clojure/tools.macro "0.2.2"]
45-
[org.clojure/core.async "1.8.741"]
46-
47-
[org.slf4j/slf4j-api ~slf4j-version]
48-
[org.slf4j/log4j-over-slf4j ~slf4j-version]
49-
[ch.qos.logback/logback-classic ~logback-version]
62+
[org.clojure/core.async]
63+
[org.clojure/tools.logging]
64+
[org.clojure/tools.macro]
65+
66+
[beckon]
67+
[ch.qos.logback/logback-classic]
5068
;; even though we don't strictly have a dependency on the following two
5169
;; logback artifacts, specifying the dependency version here ensures
5270
;; that downstream projects don't pick up different versions that would
5371
;; conflict with our version of logback-classic
54-
[ch.qos.logback/logback-core ~logback-version]
55-
[ch.qos.logback/logback-access ~logback-version]
56-
57-
[clj-time "0.15.2"]
58-
[clj-commons/fs "1.6.312"]
59-
60-
[prismatic/plumbing "0.6.0"]
61-
[prismatic/schema "1.4.1"]
62-
63-
[beckon "0.1.1"]
64-
65-
[org.openvoxproject/typesafe-config "1.0.1"]
66-
;; exclusion added due to dependency conflict over asm and jackson-dataformat-cbor
67-
;; see https://github.com/puppetlabs/trapperkeeper/pull/306#issuecomment-1467059264
68-
[org.openvoxproject/kitchensink :exclusions [cheshire]]
72+
[ch.qos.logback/logback-access]
73+
[ch.qos.logback/logback-core]
74+
[clj-commons/fs]
75+
[clj-time]
76+
[com.kohlschutter.junixsocket/junixsocket-core :extension "pom"]
77+
[io.github.clj-kondo/config-slingshot-slingshot]
78+
[nrepl/nrepl]
6979
[org.openvoxproject/i18n ~i18n-version]
70-
[nrepl/nrepl "0.9.0"]
71-
[io.github.clj-kondo/config-slingshot-slingshot "1.0.0"]
72-
73-
[com.kohlschutter.junixsocket/junixsocket-core "2.10.1" :extension "pom"]]
80+
[org.openvoxproject/kitchensink :exclusions [cheshire]]
81+
[org.openvoxproject/typesafe-config]
82+
[org.slf4j/log4j-over-slf4j]
83+
[org.slf4j/slf4j-api]
84+
[prismatic/plumbing]
85+
[prismatic/schema]]
7486

7587
:deploy-repositories [["releases" {:url "https://clojars.org/repo"
7688
:username :env/CLOJARS_USERNAME
@@ -89,7 +101,7 @@
89101
:profiles {:dev {:source-paths ["examples/shutdown_app/src"
90102
"examples/java_service/src/clj"]
91103
:java-source-paths ["examples/java_service/src/java"]
92-
:dependencies [[org.openvoxproject/kitchensink :classifier "test" :exclusions [cheshire]]]}
104+
:dependencies [[org.openvoxproject/kitchensink :exclusions [cheshire] :classifier "test"]]}
93105

94106
:testutils {:source-paths ^:replace ["test"]}
95107
:uberjar {:aot [puppetlabs.trapperkeeper.main]

0 commit comments

Comments
 (0)