File tree Expand file tree Collapse file tree 2 files changed +28
-10
lines changed Expand file tree Collapse file tree 2 files changed +28
-10
lines changed Original file line number Diff line number Diff line change 32
32
cider/cider-nrepl {:mvn/version " 0.52.0" }}
33
33
:jvm-opts [" -XX:-OmitStackTraceInFastThrow" ]}
34
34
35
+ :flowstorm
36
+ {; ; for disabling the official compiler
37
+ :classpath-overrides {org.clojure/clojure nil }
38
+ :extra-deps {com.github.flow-storm/clojure {:mvn/version " 1.12.0-3" }
39
+ com.github.flow-storm/flow-storm-dbg {:mvn/version " 4.1.1" }}
40
+ :jvm-opts [" -Dclojure.storm.instrumentEnable=true" ]}
41
+
35
42
:nrepl/jvm
36
43
{:extra-deps {refactor-nrepl/refactor-nrepl {:mvn/version " 3.10.0" }}
44
+ :jvm-opts [" -Djdk.attach.allowAttachSelf" ]
37
45
:main-opts [" -m" " nrepl.cmdline"
38
46
" --middleware" " [refactor-nrepl.middleware/wrap-refactor cider.nrepl/cider-middleware]"
39
47
" -i" ]}
40
48
41
49
:nrepl/cljs ; ; note shadow-cljs does its own thing, this is for a REPL with
42
50
; ; support for plain old ClojureScript
43
51
{:extra-deps {cider/piggieback {:mvn/version " 0.6.0" }}
52
+ :jvm-opts [" -Djdk.attach.allowAttachSelf" ]
44
53
:main-opts [" -m" " nrepl.cmdline"
45
54
" --middleware" " [cider.nrepl/cider-middleware cider.piggieback/wrap-cljs-repl]"
46
55
" -i" ]}
Original file line number Diff line number Diff line change 1
1
(ns dev-repl
2
2
(:require [babashka.cli :as cli]
3
3
[babashka.process :as process]
4
+ [clojure.string :as str]
4
5
[lread.status-line :as status]))
5
6
6
7
(def cli-spec {:help {:desc " This usage help" }
7
8
9
+ :flowstorm {:alias :f
10
+ :coerce :boolean
11
+ :desc " Enable flowstorm" }
12
+
8
13
; ; cider nrepl pass through opts
9
14
:host {:ref " <ADDR>"
10
15
:alias :h
22
27
23
28
(defn- usage-help []
24
29
(status/line :head " Usage help" )
25
- (status/line :detail (cli/format-opts {:spec cli-spec :order [:host :bind :port :help ]})))
30
+ (status/line :detail (cli/format-opts {:spec cli-spec :order [:flowstorm : host :bind :port :help ]})))
26
31
27
32
(defn- usage-fail [msg]
28
33
(status/line :error msg)
40
45
41
46
42
47
(defn launch-repl [flavor args]
43
- (let [opts (parse-opts args)]
44
- (if ( : help opts)
48
+ (let [{ :keys [flowstorm host bind port help]} (parse-opts args)]
49
+ (if help
45
50
(usage-help )
46
- (do (status/line :head " Launching Clojure %s nREPL" (name flavor))
47
- (process/exec " clj" (str " -M:1.12:test-common:nrepl:nrepl/" (case flavor
48
- :cljs " cljs:cljs"
49
- :jvm " jvm" ))
50
- " -h" (:host opts)
51
- " -b" (:bind opts)
52
- " -p" (:port opts))))))
51
+ (let [aliases (cond-> [(case flavor
52
+ :cljs " nrepl/cljs:cljs"
53
+ :jvm " nrepl/jvm" )]
54
+ flowstorm (conj " flowstorm" ))]
55
+ (status/line :head " Launching Clojure %s nREPL" (name flavor))
56
+ (when flowstorm
57
+ (status/line :detail " Flowstorm support is enabled" ))
58
+ (process/exec " clj" (str " -M:1.12:test-common:nrepl:" (str/join " :" aliases))
59
+ " -h" host
60
+ " -b" bind
61
+ " -p" port)))))
53
62
54
63
; ; Entry points
55
64
(defn dev-jvm [& args]
You can’t perform that action at this time.
0 commit comments