Skip to content

Commit 3ca4836

Browse files
Throw instead of System/exit if min Clojure version is not satisfied
1 parent 6da1cce commit 3ca4836

File tree

1 file changed

+6
-7
lines changed

1 file changed

+6
-7
lines changed

src/cider/nrepl.clj

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@
2727
Having an enforced minimum version can help users and maintainers alike diagnose issues more quickly,
2828
avoiding problematic code paths in our middleware, and in clients like cider.el."
2929
{:major 1
30-
:minor 9})
30+
:minor 10})
3131

3232
;; Make sure we're running a supported Clojure version
3333
(when (or (< (-> *clojure-version* :major long)
@@ -37,12 +37,11 @@
3737
(-> min-clojure-verion :major long))
3838
(< (-> *clojure-version* :minor long)
3939
(-> min-clojure-verion :minor long))))
40-
(try
41-
(.println System/err (format "cider-nrepl requires a newer Clojure version (found: %s, minimum required: %s). Exiting."
42-
*clojure-version*
43-
min-clojure-verion))
44-
(finally
45-
(System/exit 1))))
40+
(let [msg (format "cider-nrepl requires a newer Clojure version (found: %s, minimum required: %s)."
41+
*clojure-version* min-clojure-verion)]
42+
(try
43+
(.println System/err msg)
44+
(finally (throw (ex-info msg {}))))))
4645

4746
;; Perform the underlying dynamic `require`s asap, and also not within a
4847
;; separate thread (note the `future` used in `#'initializer`), since `require`

0 commit comments

Comments
 (0)