This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2022-11-15
Channels
- # aleph (24)
- # announcements (8)
- # babashka (27)
- # beginners (55)
- # biff (4)
- # calva (32)
- # cider (5)
- # clj-kondo (11)
- # clojure (59)
- # clojure-android (3)
- # clojure-australia (1)
- # clojure-belgium (6)
- # clojure-dev (21)
- # clojure-europe (26)
- # clojure-nl (1)
- # clojure-norway (17)
- # clojurescript (19)
- # css (1)
- # data-science (10)
- # datahike (17)
- # events (3)
- # figwheel-main (4)
- # honeysql (1)
- # hugsql (5)
- # hyperfiddle (1)
- # jobs (1)
- # leiningen (3)
- # lsp (6)
- # malli (5)
- # meander (4)
- # nbb (6)
- # off-topic (87)
- # pathom (19)
- # portal (2)
- # re-frame (4)
- # reitit (6)
- # releases (1)
- # remote-jobs (3)
- # shadow-cljs (29)
- # sql (8)
- # tools-deps (6)
- # xtdb (7)
I've been playing with tools.deps recently and updating some of my projects as a way to learn the new tools better. A long, long time ago I wrote lein-hiera
as one of my first Leiningen plugins, to help me understand the structure of my code. I've rewritten lein-hiera
(now clj-hiera
) so that it's primarily a simple library namespace which is easy to consume from the clj
CLI as either a gitlib or as a stand-alone "tool". The plugin just bundles the library code now and does some lightweight wrapping to make the lein hiera
command work. If you've ever wanted a graph of your namespace dependencies, give it a shot!
https://github.com/greglook/clj-hiera
very cool! worked for me, but seems like it uses your default :sources instead of the :paths from your deps.edn (for me it scooped in my tests too - which are both under src/ in standard maven layout)
Ah, yeah the non leiningen default is a naive #{"src"}
- open to making that smarter
https://github.com/borkdude/rewrite-edn: utility lib on top of https://github.com/clj-commons/rewrite-clj with common operations to update EDN while preserving whitespace and comments.
0.4.5
ā¢ Add conj
: (str (r/update (r/parse-string "{:a [1 2 3]}") :a r/conj 1)) ;;=> "{:a [1 2 3 1]}"
(https://github.com/zerg000000)
ā¢ Add fnil
: (str (r/update (r/parse-string "{:a [1 2 3]}") :b (r/fnil r/conj []) 1)) ;;=> "{:a [1 2 3] :b [1]}"
Set of releases to add support for repository policies in deps.edn: ā¢ https://github.com/clojure/tools.deps.alpha 0.15.1254 ā¢ https://github.com/clojure/tools.tools v0.2.9 ā¢ https://clojure.org/releases/tools#v1.11.1.1200 1.11.1.1200 ā¢ https://github.com/clojure/tools.build v0.8.5 9c738da
In most cases, the default policies are fine, but if you need this, an example of how this looks:
{:mvn/repos
{"my-releases" {:url ""
:snapshots {:enabled false}
:releases {:enabled true
:update :daily
:checksum :fail}}}}
These policies will be output with -Spom
or -X:deps mvn-pom
or write-pom
in tools.build when generating a pom.xml.
More docs here: https://clojure.org/reference/deps_and_cli#_maven (although I see the bullet formatting is off, so fixing that still)Releasing our first library here at Cohesic! It is a set of helpers for XTDB, especially around undo/revert of an entity https://github.com/cohesic/cohesic-xtdb https://cohesic.github.io/cohesic-xtdb/