home / client / 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
{;; Exact pins — the Closure compiler version rides on these two (the same
 ;; known-good pair as the kits and the games); half of the deterministic-build
 ;; story. They are also the pair both suite kits were released with, and their
 ;; sources are compiled from this classpath, so a different pair would mean a
 ;; different compile of somebody else's released kit.
 ;;
 ;; Relative paths only: the idpat publish gate scans every decompressed git
 ;; object for local path fragments and aborts on one. Never :local/root.
 ;;
 ;; OUR OWN KITS ARE CLOJURESCRIPT LIBRARIES AND ARE CONSUMED AS SOURCE: their
 ;; src/ goes on this classpath and is compiled into whatever build needs it —
 ;; one cljs.core, one copy per build, DCE'd against actual use. Foreign
 ;; JS/native packages (@noble/*, the libp2p family, @multiformats/*) stay
 ;; string requires: that is ordinary interop, not the hybrid. The npm sha pins
 ;; in package.json are still the ONE cross-repo dependency mechanism
 ;; (dev/docs/CLJS.md); this only changes how the pinned tree is READ.
 ;;
 ;; Bind the DEFINING namespaces — ardegazu.id.{crypto,identity,profile,
 ;; protocol,xkey,bridge-host} and ardegazu.social.{friends,invites,lbgossip,
 ;; net,notify,presence,receipts,selfsync,text} — never `ardegazu.id.index` or
 ;; `ardegazu.social.index`, which are re-export shims for the ESM surface and
 ;; have no business on a classpath consumer's requires.
 ;;
 ;; BOTH paths are required. Classpath consumption is TRANSITIVE: social-kit's
 ;; own sources require ardegazu.id.*, so id-kit's src has to be here even for
 ;; the namespaces home reaches only through social-kit. id-kit's landed one
 ;; commit ahead of the requires (a5c7e65) for exactly that reason.
 ;;
 ;; ardegazu.social.net is on this classpath too, deliberately. It is the one
 ;; namespace in the kit that touches libp2p, and every package it names is
 ;; already a direct dependency of this app — nothing new enters the resolution
 ;; graph. The boundary that matters is a MODULE boundary in shadow-cljs.edn,
 ;; not a package one: only home.social requires it, so it lands in :social and
 ;; libp2p stays out of the initial download. scripts/build.mjs asserts that
 ;; against the emitted bundles with the kit's own wire vocabulary, which is a
 ;; stronger gate than the npm subpath ever was.
 :paths ["src"
         "node_modules/ardegazu-id-kit/src"
         "node_modules/ardegazu-social-kit/src"]
 :deps {org.clojure/clojurescript {:mvn/version "1.12.134"}
        thheller/shadow-cljs {:mvn/version "3.3.6"}}
 :aliases
 {:dev {:extra-deps {cider/cider-nrepl {:mvn/version "0.59.0"}}}}}

static mirror of HEAD · about · clone: git clone https://git.ardegazu.ro/home.git