-
Notifications
You must be signed in to change notification settings - Fork 4
/
deps.edn
275 lines (239 loc) · 15.2 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
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
{:deps {org.clojure/clojure {:mvn/version "1.12.0-alpha12"}
;; try older clojure version if you wish
;; org.clojure/clojure {:mvn/version "1.10.3"}
org.clojure/test.check {:mvn/version "1.1.0"}
com.gfredericks/test.chuck {:mvn/version "0.2.12"}
dev.weavejester/medley {:mvn/version "1.5.0"}
ring/ring-core {:mvn/version "1.10.0"}
ring/ring-json {:mvn/version "0.5.1"}
compojure/compojure {:mvn/version "1.6.2"}
org.apache.pdfbox/pdfbox {:mvn/version "3.0.0-RC1"}
net.java.dev.jna/jna {:mvn/version "5.9.0"}
org.flatland/useful {:mvn/version "0.11.6"}
org.apache.poi/poi-ooxml {:mvn/version "5.0.0"}
org.clojure/core.async {:mvn/version "1.3.622"}
funcool/cats {:mvn/version "2.4.1"}
buddy/buddy-hashers {:mvn/version "1.8.158"}
buddy/buddy-sign {:mvn/version "3.4.333"}
org.julienxx/clj-slack {:mvn/version "0.6.3"}
clojure-complete/clojure-complete {:mvn/version "0.2.5"}
com.rpl/specter {:mvn/version "1.1.3"}
quil/quil {:mvn/version "4.0.0-SNAPSHOT-1"}
inspector-jay/inspector-jay {:mvn/version "0.3"}
org.clojure/tools.reader {:mvn/version "1.3.6"}
net.cgrand/sjacket {:mvn/version "0.1.1"}
jonase/eastwood {:mvn/version "0.9.9"}
ns-graph/ns-graph {:mvn/version "0.1.4"}
com.climate/claypoole {:mvn/version "1.1.4"}
etaoin/etaoin {:mvn/version "0.4.6"}
;; https://github.com/openjdk/jol
org.openjdk.jol/jol-core {:mvn/version "0.16"}
org.clojure/java.jmx {:mvn/version "1.0.0"}
me.raynes/conch {:mvn/version "0.8.0"}
tupelo/tupelo {:mvn/version "21.09.07"}
com.clojure-goes-fast/clj-java-decompiler {:mvn/version "RELEASE"}
com.clojure-goes-fast/clj-async-profiler {:mvn/version "RELEASE"}
com.clojure-goes-fast/jvm-hiccup-meter {:mvn/version "RELEASE"}
com.clojure-goes-fast/clj-memory-meter {:mvn/version "RELEASE"}
com.clojure-goes-fast/jvm-alloc-rate-meter {:mvn/version "RELEASE"}
criterium/criterium {:mvn/version "0.4.6"}
org.clojars.pntblnk/clj-ldap {:mvn/version "0.0.17"}
vvvvalvalval/scope-capture {:mvn/version "0.3.3"}
org.clojure/tools.trace {:mvn/version "0.7.11"}
nodisassemble/nodisassemble {:mvn/version "0.1.3"}
phrase/phrase {:mvn/version "0.3-alpha4"}
net.n01se/clojure-jna {:mvn/version "1.0.0"}
com.taoensso/truss {:mvn/version "1.8.0"}
net.cgrand/xforms {:mvn/version "0.19.2"}
clojure2d/clojure2d {:mvn/version "1.4.3"}
datascript/datascript {:mvn/version "1.2.8"}
lambdaisland/deep-diff {:mvn/version "0.0-47"}
bocko/bocko {:mvn/version "1.0.0"}
;; oz alpha34 doesn't work?
;; metasoarous/oz {:mvn/version "1.6.0-alpha33"}
metasoarous/oz {:mvn/version "1.6.0-alpha1"}
aerial.hanami/aerial.hanami {:mvn/version "0.12.7"}
org.clojure/java.data {:mvn/version "1.0.86"}
fn-fx/fn-fx-javafx {:mvn/version "0.5.0-SNAPSHOT"}
cljfx/cljfx {:mvn/version "1.7.16"}
rewrite-clj/rewrite-clj {:mvn/version "1.0.682-alpha"}
amperity/greenlight {:mvn/version "0.6.1"}
org.apache.commons/commons-math3 {:mvn/version "3.6.1"}
generateme/fastmath {:mvn/version "2.1.6"}
kixi/stats {:mvn/version "0.5.4"}
redux/redux {:mvn/version "0.1.4"}
distributions/distributions {:mvn/version "0.1.2"}
thi.ng/geom {:mvn/version "1.0.0-RC4"}
cheshire/cheshire {:mvn/version "5.10.1"}
org.flatland/ordered {:mvn/version "1.5.9"}
spec-provider/spec-provider {:mvn/version "0.4.14"}
tesser.core/tesser.core {:mvn/version "1.0.4"}
clj-http/clj-http {:mvn/version "3.12.3"}
com.palletops/stevedore {:mvn/version "0.8.0-beta.7"}
com.taoensso/tufte {:mvn/version "2.2.0"}
com.taoensso/timbre {:mvn/version "5.1.2"}
com.taoensso/encore {:mvn/version "3.45.0"}
org.clojure/tools.logging {:mvn/version "1.2.4"}
org.apache.logging.log4j/log4j-api {:mvn/version "2.14.1"}
org.apache.logging.log4j/log4j-core {:mvn/version "2.14.1"}
org.apache.logging.log4j/log4j-slf4j-impl {:mvn/version "2.14.1"}
cprop/cprop {:mvn/version "0.1.19"}
spectrum/spectrum {:mvn/version "0.2.5"}
clindex/clindex {:mvn/version "0.4.3"}
jpmonettas/tools.namespace {:mvn/version "0.3.2"}
com.cognitect.aws/api {:mvn/version "0.8.524"}
com.cognitect.aws/endpoints {:mvn/version "1.1.12.69"}
com.cognitect.aws/logs {:mvn/version "813.2.972.0"}
org.clojure/core.cache {:mvn/version "1.0.217"}
org.clojure/core.memoize {:mvn/version "1.0.250"}
techascent/tech.ml.dataset {:mvn/version "6.021"}
;; cool visualization library built on top of Vega with pre-made visualizations functions
;; https://github.com/techascent/tech.viz
;; - see also https://github.com/scicloj/viz.clj
techascent/tech.viz {:mvn/version "6.00-beta-16-3"}
scicloj/tablecloth {:mvn/version "6.012"}
;; jme-clj/jme-clj {:mvn/version "0.1.13"}
org.clojure/core.logic {:mvn/version "1.0.0"}
overtone/overtone {:mvn/version "0.10.6"}
org.clojure/core.rrb-vector {:mvn/version "0.1.2"}
leipzig/leipzig {:mvn/version "0.10.0"}
com.gfredericks/vcr-clj {:mvn/version "0.4.19"}
nubank/matcher-combinators {:mvn/version "3.3.1"}
meander/epsilon {:mvn/version "0.0.650"}
djblue/portal {:mvn/version "0.35.0"}
;; this leads to circular dependency error in aws logs?!
;; org.clojars.cyrik/omni-trace {:mvn/version "0.3.31"}
expound/expound {:mvn/version "0.8.10"}
;; html parsing - see also my project 'reality-watcher'
hickory/hickory {:mvn/version "0.7.1"}
;; blazing fast JSON & CSV parsing: https://github.com/cnuernber/charred
com.cnuernber/charred {:mvn/version "1.000"}
;; clerk - notebooks: https://github.com/nextjournal/clerk
io.github.nextjournal/clerk {:mvn/version "0.8.451"}
;; meta-csv, next.jdbc, and docjure are used in data-science notebook: https://github.com/nextjournal/clerk-demo/blob/main/notebooks/data_science.clj
meta-csv/meta-csv {:mvn/version "0.1.0"}
com.github.seancorfield/next.jdbc {:mvn/version "1.2.659"}
dk.ative/docjure {:mvn/version "1.16.0"}
;; signal handling
spootnik/signal {:mvn/version "0.2.4"}
;; use java.nio from Clojure: https://github.com/babashka/fs
babashka/fs {:mvn/version "0.1.6"}
;; flow-storm-debugger: https://github.com/jpmonettas/flow-storm-debugger/
com.github.jpmonettas/flow-storm-dbg {:mvn/version "3.3.309"}
;; SubnetUtils is useful for IP range detection: https://jkoder.com/convert-cidr-notation-to-ip-range-in-java/
;; https://commons.apache.org/proper/commons-net/apidocs/index.html
commons-net/commons-net {:mvn/version "3.8.0"}
commons-io/commons-io {:mvn/version "2.13.0"}
;; loopr macro: https://aphyr.com/posts/360-loopr-a-loop-reduction-macro-for-clojure
;; https://github.com/aphyr/dom-top/blob/04d0a688262a3671880e83ce0f35882bd8fa2ff9/src/dom_top/core.clj#L665
dom-top/dom-top {:mvn/version "1.0.7"}
;; classpath is a lie: https://lambdaisland.com/blog/2021-08-25-classpath-is-a-lie
;; https://github.com/lambdaisland/classpath
;; classloader-chain, classpath-chan, and `update-classpath!` are interesting functions
;; in the lambdaisland.classpath ns
com.lambdaisland/classpath {:mvn/version "0.0.27"}
;; Ben Sless - tools.jvm: https://github.com/bsless/tools.jvm
;; things like finding current process pid, show classpath, and attach VisualVM
io.github.bsless/tools.jvm {:mvn/version "0.0.15"}
;;; Various data serialization formats
;;;
;; https://github.com/Datomic/fressian
;; examples: https://github.com/Datomic/fressian/blob/master/examples/org/fressian/Examples.java
;; faster than edn and transit
;; clojure wrapper: https://github.com/clojure/data.fressian
org.clojure/data.fressian {:mvn/version "1.0.0"}
;; compare to transit: https://github.com/cognitect/transit-clj
com.cognitect/transit-clj {:mvn/version "1.0.329"}
;; datalevin: https://github.com/juji-io/datalevin/blob/master/doc/install.md
datalevin/datalevin {:mvn/version "0.6.29"}
;; finger trees: https://github.com/clojure/data.finger-tree
;; see discussion here: https://clojurians.slack.com/archives/C03S1KBA2/p1659682276157529
org.clojure/data.finger-tree {:mvn/version "0.0.3"}
;; https://github.com/aysylu/loom
;; from lisp-in-small-pieces slack https://lisp2022.slack.com/archives/C03C3NMCM7T/p1659860280125529?thread_ts=1659808272.992099&cid=C03C3NMCM7T
;; - For graphs there is a mature library “Loom” which defines protocols and provides implementations for many common graphs and common graph algorithms.
;; - It is an excellent, well tested and well thought out library that works well.
;; - For most use cases it will make your life much easier to use it.
aysylu/loom {:mvn/version "1.0.2"}
;; wrapper for ghostwheel: https://github.com/fulcrologic/guardrails
;; see also https://www.fulcrologic.com/open-source#guardrails
;; and "-Dguardrails.enabled" jvm option below (https://github.com/fulcrologic/guardrails#quick-start)
com.fulcrologic/guardrails {:mvn/version "1.1.11"}
lambdaisland/deep-diff2 {:mvn/version "2.4.138"}
;; https://github.com/clojure-emacs/haystack/ - parsing stacktraces ala Cider
mx.cider/haystack {:mvn/version "0.0.3"}
;; https://github.com/clj-python/libpython-clj
;; To use libpython-clj2 with jdk-17 you need to enable the foreign module - see https://github.com/clj-python/libpython-clj/blob/6e7368b44aaabddf565a5bbf3a240e60bf3dcbf8/deps.edn#L10
;; => DOESN'T WORK at the moment - see `clojure-experiments.stats.python.libpython`
;; clj-python/libpython-clj {:mvn/version "2.025"}
;; simple library to read excel sheets with Clojure
;; https://github.com/kbosompem/bb-excel
com.github.kbosompem/bb-excel {:mvn/version "0.0.2"}
;; see https://clojureverse.org/t/scicloj-meeting-14-video-clojure-in-geography-with-will-cohen/6644/1
factual/geo {:mvn/version "3.0.1"}
repl-plot/repl-plot {:mvn/version "0.1.0-SNAPSHOT"}
;; statecharts / state machines: https://github.com/lucywang000/clj-statecharts
clj-statecharts/clj-statecharts {:mvn/version "0.1.7"}
;; to compile java code - see "Clojure goes brr" talk
virgil/virgil {:mvn/version "0.1.9"}
io.github.nubank/morse {:git/tag "v2023.04.27.01" :git/sha "7a85e46"}
;; remote debugging with Clojure Debugging Toolkit: http://georgejahad.com/clojure/cdt.html
;; - see also https://github.com/georgejahad/cdt
cdt/cdt {:mvn/version "1.2.6.2"}
;;; Jetty benchmark: https://clojurians.slack.com/archives/C03S1KBA2/p1691305650647229
;;; see `clojure-experiments.performance.jetty-c10k-problem`
;;; also standalone in /Users/jumar/workspace/clojure/performance/c10k-problem
metosin/jsonista {:mvn/version "0.3.7"}
metosin/malli {:mvn/version "0.14.0"}
metosin/reitit {:mvn/version "0.7.0-alpha5"}
metosin/reitit-dev {:mvn/version "0.7.0-alpha5"}
metosin/ring-swagger-ui {:mvn/version "4.18.1"}
ring-cors/ring-cors {:mvn/version "0.1.13"}
;; https://github.com/sunng87/ring-jetty9-adapter/blob/master/project.clj
info.sunng/ring-jetty9-adapter {:mvn/version "0.22.1"}
;; doesn't work with Jetty 12 :(
;; org.eclipse.jetty/jetty-server {:mvn/version "12.0.0.beta4"}
org.clojure/tools.cli {:mvn/version "1.0.219"}
;; logs to stderr by default - see resources/jetty-logging.properties
org.eclipse.jetty/jetty-slf4j-impl {:mvn/version "11.0.15"}
;; tesseract's java bindings for OCR / image recognition: https://github.com/nguyenq/tess4j
;; - recommended here: https://clojurians.slack.com/archives/CQT1NFF4L/p1704717615285299
net.sourceforge.tess4j/tess4j {:mvn/version "5.10.0"}
;; https://github.com/aphyr/clj-antlr
clj-antlr/clj-antlr {:mvn/version "0.2.13"}
}
:aliases
{
:dev
{:jvm-opts ["-Xmx1g" #_"-Xmx256m" ;; use -Xmx256m if you want to play with memory usage (see e.g. src/clojure_experiments/eval.clj )
;; For example Virtual Threads
"--enable-preview"
;; this can be used with http://georgejahad.com/clojure/cdt.html too
;; don't use this by default because you won't be able to run multiple repls
;; If needed, it's preferable to start the repl and pass this via `-J`
;; clj -J"-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:5005" -M:dev:cider-repl
;; "-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:5005"
"-Djol.tryWithSudo=true" ;; cljol: # WARNING: Unable to attach Serviceability Agent. You can try again with escalated privileges. Two options: a) use -Djol.tryWithSudo=true to try with sudo; b) echo 0 | sudo tee /proc/sys/kernel/yama/ptrace_scopejk 1j
;; For clj-memory-meter - see https://gist.github.com/alexander-yakushev/63515455759e66bfa19dbaa126fccf56
"-Djdk.attach.allowAttachSelf=true"
;; see https://krzysztofslusarski.github.io/2022/12/12/async-manual.html#how-to-cl
"-XX:+UnlockDiagnosticVMOptions" "-XX:+DebugNonSafepoints"
;; for helpful NPE messages: https://openjdk.java.net/jeps/358
"-XX:+ShowCodeDetailsInExceptionMessages"
;; To use libpython-clj2 with jdk-17 you need to enable the foreign module - see https://github.com/clj-python/libpython-clj/blob/6e7368b44aaabddf565a5bbf3a240e60bf3dcbf8/deps.edn#L10
"--enable-native-access=ALL-UNNAMED"
;;; module exports
;; this is needed for datalevin: https://github.com/juji-io/datalevin/blob/master/doc/install.md
"--add-opens=java.base/java.nio=ALL-UNNAMED"
"--add-opens=java.base/sun.nio.ch=ALL-UNNAMED"
;; to access Hotspot Severicability API - see https://stackoverflow.com/questions/55698109/has-this-method-ever-been-called-inside-a-running-jvm
"--add-modules=jdk.hotspot.agent"
"--add-exports=jdk.hotspot.agent/sun.jvm.hotspot=ALL-UNNAMED"
"--add-exports=jdk.hotspot.agent/sun.jvm.hotspot.oops=ALL-UNNAMED"
"--add-exports=jdk.hotspot.agent/sun.jvm.hotspot.tools=ALL-UNNAMED"
"--add-exports=jdk.hotspot.agent/sun.jvm.hotspot.runtime=ALL-UNNAMED"
"--add-exports=jdk.hotspot.agent/sun.jvm.hotspot.classfile=ALL-UNNAMED"
;; to access jdk.internal.misc.VM#maxDirectMemory
;; - see https://stackoverflow.com/questions/53543062/replace-access-to-sun-misc-vm-for-jdk-11
"--add-exports=java.base/jdk.internal.misc=ALL-UNNAMED"
]}}}