-
-
Notifications
You must be signed in to change notification settings - Fork 99
/
deps.edn
128 lines (122 loc) · 6.83 KB
/
deps.edn
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
;; copyright (c) 2018-2024 sean corfield, all rights reserved
;; see https://github.com/seancorfield/dot-clojure
{:mvn/repos {"sonatype" {:url "https://oss.sonatype.org/content/repositories/snapshots/"}}
:deps {org.clojure/clojure {:mvn/version "RELEASE"}}
:aliases
{;; ADD tools.deps so you can get help within an existing project:
;; clojure -X:deps replaces the deps/paths
;; clojure -X:deps+ ADDS to the deps/paths
:deps+ {:extra-deps {org.clojure/tools.deps.cli {:mvn/version "RELEASE"}}
:ns-default clojure.tools.deps.cli.api
:ns-aliases {help clojure.tools.deps.cli.help}}
;; jar installation and deployment:
;; - see https://github.com/slipset/deps-deploy
;; - clj -X:deploy :artifact '"project.jar"'
;; - this relies on having a pom.xml file and, for deployment, these two
;; environment variables: CLOJARS_USERNAME, CLOJARS_PASSWORD
:deploy {:replace-deps {slipset/deps-deploy {:mvn/version "RELEASE"}}
:exec-fn deps-deploy.deps-deploy/deploy
:exec-args {:installer :remote}}
;; polylith tool:
:poly {:replace-deps {polylith/clj-poly {:mvn/version "0.2.21"}}
:main-opts ["-m" "polylith.clj.core.poly-cli.core"]}
:poly-next {:replace-deps {polylith/clj-poly {:mvn/version "0.3.21-SNAPSHOT"}}
:main-opts ["-m" "polylith.clj.core.poly-cli.core"]}
;; testing and debugging tools (this would normally be overridden
;; by a :test alias in the project deps.edn file -- but it's a
;; useful default):
:test {:extra-paths ["test" "src/test/clojure"]
:extra-deps {org.clojure/test.check {:mvn/version "RELEASE"}}}
;; use this at the end of your aliases to cancel any main opts in earlier
;; aliases, e.g., clojure -M:test:no-main to avoid running tests:
:no-main {:main-opts []}
;; - see https://github.com/seancorfield/test-runner
;; - run your tests: clj -X:test:runner
:runner {:extra-deps {io.github.seancorfield/test-runner
{:git/tag "v0.6.0" :git/sha "d5f18c5"}}
:exec-fn cognitect.test-runner.api/test
:exec-args {:dirs ["test" "src/test/clojure"]}}
;; - see https://github.com/jonase/eastwood#running-eastwood-in-a-repl
:eastwood {:extra-deps {jonase/eastwood {:mvn/version "RELEASE"}}
:main-opts ["-m" "eastwood.lint" "{:source-paths,[\"src\"],:test-paths,[\"test\"]}"]}
;; - see https://github.com/athos/clj-check
:check {:extra-deps {io.github.athos/clj-check
{:git/tag "0.1.0" :git/sha "0ca84df"}}
:main-opts ["-m" "clj-check.check"]}
;; - see https://github.com/clojure-expectations/clojure-test
;; - run your expectations: clj -M:test:expect:runner
:expect {:extra-deps {com.github.seancorfield/expectations {:mvn/version "RELEASE"}}}
;; - see https://github.com/hugoduncan/criterium/
;; - (require '[criterium.core :refer [bench]])
;; - (bench (your-expression))
:bench {:extra-deps {criterium/criterium {:mvn/version "RELEASE"}}}
;; REPL-related tools:
;; - start Figwheel and/or Rebel Readline, with a socket REPL:
;; - clj -M:portal:dev/repl OR clojure -M:rebel:portal:dev/repl
;; - clojure -M:rebel:dev/repl
;; - clojure -M:nrepl:dev/repl
;; - clojure -M:fig:build:dev/repl
:dev/repl {:jvm-opts ["-XX:-OmitStackTraceInFastThrow"]
:extra-deps {io.github.seancorfield/dot-clojure
{:git/tag "v1.1.1"
:git/sha "c967b4f"}}
:main-opts ["-e" "((requiring-resolve 'org.corfield.dev.repl/start-repl))"]}
;; - in case you need precompiled code on your classpath:
:classes {:extra-paths ["classes"]}
;; - start a Socket REPL on port 50505 (not needed if you use the :dev/repl alias):
:socket {:jvm-opts ["-Dclojure.server.repl={:address,\"0.0.0.0\",:port,50505,:accept,clojure.core.server/repl}"]}
;; - see https://github.com/bhauman/rebel-readline
;; - start a Rebel Readline REPL:
:rebel {:extra-deps {com.bhauman/rebel-readline {:mvn/version "RELEASE"}}
:main-opts ["-m" "rebel-readline.main"]}
;; - see https://nrepl.org/
;; - start a basic nREPL server on a random available port:
:nrepl {:extra-deps {nrepl/nrepl {:mvn/version "RELEASE"}}
:main-opts ["-m" "nrepl.cmdline"]}
;; - see https://nrepl.org/
;; - start a CIDER-enhanced nREPL server on a random available port:
:cider-nrepl {:extra-deps {cider/cider-nrepl {:mvn/version "RELEASE"}}
:main-opts ["-m" "nrepl.cmdline" "--middleware" "[cider.nrepl/cider-middleware]"]}
;; - see https://github.com/Datomic/dev.datafy
:datomic/dev.datafy
{com.datomic/dev.datafy {:git/sha "4a9dffb"
:git/tag "v0.1"
:git/url "https://github.com/Datomic/dev.datafy"}}
;; - see https://github.com/donut-party/dbxray
:dbxray
{party.donut/dbxray {:mvn/version "RELEASE"}}
;; - see https://github.com/jimpil/jedi-time
:jedi-time
{:extra-deps {jedi-time/jedi-time {:mvn/version "0.2.1"}}}
;; - see https://github.com/djblue/portal
:portal
{:extra-deps {djblue/portal {:mvn/version "RELEASE"}}}
;; - see https://github.com/stuarthalloway/reflector
:reflect
{:extra-deps {io.github.stuarthalloway/reflector
{:git/url "https://github.com/stuarthalloway/reflector"
:sha "93a0c19b4526c1180959e940202928d35e5c3cef"}}}
;; pull in specific versions of Clojure:
:1.0 {:override-deps {org.clojure/clojure {:mvn/version "1.0.0"}}}
:1.1 {:override-deps {org.clojure/clojure {:mvn/version "1.1.0"}}}
:1.2 {:override-deps {org.clojure/clojure {:mvn/version "1.2.1"}}}
:1.3 {:override-deps {org.clojure/clojure {:mvn/version "1.3.0"}}}
:1.4 {:override-deps {org.clojure/clojure {:mvn/version "1.4.0"}}}
:1.5 {:override-deps {org.clojure/clojure {:mvn/version "1.5.1"}}}
:1.6 {:override-deps {org.clojure/clojure {:mvn/version "1.6.0"}}}
:1.7 {:override-deps {org.clojure/clojure {:mvn/version "1.7.0"}}}
:1.8 {:override-deps {org.clojure/clojure {:mvn/version "1.8.0"}}}
:1.9 {:override-deps {org.clojure/clojure {:mvn/version "1.9.0"}}}
;; latest 1.10 is 1.10.3 but you can ask for earlier versions:
:1.10 {:override-deps {org.clojure/clojure {:mvn/version "1.10.3"}}}
:1.10.0 {:override-deps {org.clojure/clojure {:mvn/version "1.10.0"}}}
:1.10.1 {:override-deps {org.clojure/clojure {:mvn/version "1.10.1"}}}
:1.10.2 {:override-deps {org.clojure/clojure {:mvn/version "1.10.2"}}}
;; latest 1.11 is 1.11.4 but you can ask for earlier versions:
:1.11 {:override-deps {org.clojure/clojure {:mvn/version "1.11.4"}}}
:1.11.0 {:override-deps {org.clojure/clojure {:mvn/version "1.11.0"}}}
:1.11.1 {:override-deps {org.clojure/clojure {:mvn/version "1.11.1"}}}
:1.11.2 {:override-deps {org.clojure/clojure {:mvn/version "1.11.2"}}}
:1.11.3 {:override-deps {org.clojure/clojure {:mvn/version "1.11.3"}}}
;; latest 1.12 is 1.12.0:
:1.12 {:override-deps {org.clojure/clojure {:mvn/version "1.12.0"}}}}}