This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2019-01-17
Channels
- # aleph (3)
- # announcements (12)
- # beginners (80)
- # boot (3)
- # braveandtrue (16)
- # calva (3)
- # cider (82)
- # clojure (100)
- # clojure-art (3)
- # clojure-dev (79)
- # clojure-estonia (1)
- # clojure-europe (4)
- # clojure-finland (15)
- # clojure-indonesia (1)
- # clojure-italy (20)
- # clojure-nl (4)
- # clojure-spec (24)
- # clojure-sweden (2)
- # clojure-switzerland (1)
- # clojure-uk (99)
- # clojurescript (145)
- # cursive (8)
- # data-science (7)
- # datomic (26)
- # emacs (4)
- # figwheel-main (20)
- # fulcro (8)
- # graphql (3)
- # hoplon (2)
- # jobs (1)
- # kaocha (5)
- # leiningen (2)
- # liberator (19)
- # off-topic (16)
- # pathom (9)
- # perun (1)
- # portkey (2)
- # re-frame (17)
- # reitit (1)
- # shadow-cljs (26)
- # spacemacs (7)
- # vim (49)
Hey everyone, if you're anything like me, it makes you happy when your code is pretty. And sorted ns
declarations, with unused stuff removed, are the prettiest type of ns
declarations.
With that in mind I searched high and low for a linter that could help my pretty ns
declarations stay pretty. Devastatingly, I could find nothing of the sort. The future seemed bleak.
Little did I know the answer to my troubles was inside me all along. I opened up my REPL and before I knew it a brand new linter started coming together right before my very eyes. Behold: https://github.com/camsaul/lein-check-namespace-decls . Enjoy!
Interesting work! I'll keep an eye on it There's https://github.com/gfredericks/how-to-ns as well
Oh man, can't believe I couldn't find that one. Well, more linter options are always a good thing IMO
Clojure linter that checks that namespace declarations are cleaned the way `clj-refactor` would clean them. Leiningen plugin.
π πMy only complaint about clj-refactor is that it can be wrap the ns form to 80 columns too agressively... with no possible fix afaict But I do appreciate from it that it actually can clean the ns form in ways that a static tool can't
@U45T93RA6 internally refactor-nrepl
(the Clojure middleware part of clj-refactor
) prints namespaces with clojure.pprint/pprint
, so you can configure that.
I usually do something like this in one of my core namespaces to change the default printing width from 80 to 200:
(intern 'clojure.pprint '*print-right-margin* 200)
clj-refactor
then won't wrap things unless they exceed 200 characters in width.Either way the linter only checks that the namespace forms are =
in the Clojure sense so you can make them wide or narrow as you want and the linter won't complain.
Hi guys, new release (0.7.3) of titanoboa is out. It now supports java 8-11 (so lots of javas then β) - the main improvement is that the new version can now load external maven dependencies during runtime even on java 9 and higher (that was a tough one, but it works now). https://github.com/mikub/titanoboa
[metosin/reitit "0.2.11"]
is out! Reitit is a fast data-driven router for Clojure(Script) supporting browser-apps, ring, pedestal and sieppari. Notable changes:
- segment-router is rewritten to use a custom Java-backed Segment Trie on the JVM, making it 2x faster in the benchmarks
- linear-router is also backed by the the Segment Trie, making it 2-4 faster in the benchmarks
- guide on how to use expound as spec-coercion error printer
- FIX: route-data expansion can be extended
https://cljdoc.org/d/metosin/reitit/0.2.11/doc/introduction


Fulcro 2.8.0 is on Clojars. This new version adds βPre-mergeβ support by @wilkerlucio. This feature allows you to augment how data merge works at the component level. https://github.com/fulcrologic/fulcro http://book.fulcrologic.com/#PreMerge
