Fork me on GitHub

deps.clj : A faithful port of the clojure CLI bash script to Clojure v1.11.1.1165 catches up with the same version of the clojure CLI bash script with support for the new CLJ_JVM_OPTS and JAVA_OPTS environment variables. deps.clj is used in Calva for the getting started environment and used in #babashkafor fetching dependencies. Since it's available as a jar file (and bb script and binary), you can just download that and run it without having anything else installed to get the same clojure CLI experience, which for some environments can lower the barrier of entry for getting up and running with Clojure!

clojure-spin 8
🙏 6
gratitude 5
calva 3

For the record: Calva will use deps.clj whenever clojure is not installed. So it is not only for the dedicated Getting Started features. Granted, Calva does it this way to cut one step from the Getting Started with Clojure procedure.

🎉 1

The binary is a great alternative to the clojure Powershell module if you are using (or testing on) Windows native. You can run deps.exe from any Windows shell and escape a layer of confusing command line escaping.


Pro tip: if you are using babashka, it is effectively also available via bb clojure.


I've never gotten clojure, the Powershell module, to work on my Windows machines. But deps.clj works, so I use that. 😃


Same for me for some command lines on Windows. For continuous integration testing, I boldly rename deps.exe to clojure.exe.

metal 1

Or use bb clojure.


• Released initial version of , a collection of timeseries technical analysis indicators as graphcom nodes. • Also added a rationale to , hoping it better explains the why/what for this library, as well as linking to tacos as a use case.

clojure-spin 2
🙏 2
gratitude 4
🎉 6

We released a new version of clj-test-containers, a Clojure wrapper around testcontainers-java. It’s a maintenance upgrade to include the new testcontainers-java version which was released yesterday.

clojure-spin 4
🙏 1
gratitude 3
🎉 2
Martynas Maciulevičius12:09:28

This is a duplicate message from events channel but probably it's also a good idea to spam it here. I developed a web front-end for Clojure events calendar-feed: This is seeded from the same calendar as (underlying event collection done by eval2020)

clojure-spin 1
📆 1
gratitude 5
🎉 2

Is it open source we can go look at?

Martynas Maciulevičius01:10:56

It's in my github: There is no google, no trackers, nothing. Just clean calendar. I haven't even written any readme 😄 I'll add some kind of license, I think

Martynas Maciulevičius01:10:42

And credentials, of course. But I didn't bother with it yet.

Martynas Maciulevičius01:10:33

Do you want to host it on some kind of proper domain? Why do you ask? Maybe I can answer something.


I figured folks would want to see how it was built if it was public.


(and I was curious whether it was Clojure/Script or not)

Martynas Maciulevičius08:10:33

Well... I wanted to use ClojureScript and re-frame. But then I decided that there is just too little code to be useful and relearn re-frame (I recreated a new project for this one about 5 times and then gave up). This is basically just library integration where types actually are useful quite a bit. i.e. this kind of UI is not state-heavy but integration-heavy. i.e. integration dominates this code.

Ertugrul Cetin13:09:49

Hi all, I've developed a library called procedure.async, which provides async procedures for Clojure Why? • It'd be interesting to have re-frame's reg-sub like flow on the backend (we have reg-pro - register procedure) - which forces us to develop handlers in a certain way • reg-pros have dependencies (similar to reg-sub's :<- [:some-procedure-id]) and they realize asynchronously, so that gives some computational power • It allows a more natural way to keep frontend and backend code in the same file (.CLJC) • Frontend communicates via procedure's id directly (e.g. (dispatch-pro [:procedure-id payload-map]) - like dispatching re-frame event) • We can implement re-usable/high-level UI components in the same file with reg-pros, allowing us to have a close view of what is happening in a single unit • This design makes it easier to apply changes for both sides • Feels like Storybook for both frontend and backend!

🎉 11

For the uninitiated, what does procedure mean here? What context is the word from? Thanks! 😀

☝️ 1
Ertugrul Cetin21:09:27

The book SICP (one of the essential books in the LISP world), was calling functions to procedures 🙂


io.aviso/pretty 1.2 Pretty prints things prettily; mostly, carefully formatted exception output using ANSI colors, smarter ordering, and name-demangling to take the pain out of figuring out what went wrong, and where. This release buffers the exception output until it is complete before printing; this helps greatly in multi-threaded environments as it keeps any exception output across multiple threads from getting interleaved in the console.

🎉 14
😍 1

If often wonder how many people use pretty vs. how many just get it as a transitive dependency from other tools and libraries? It's up over 13M downloads across all versions, and 630K downloads just for version 1.1.1.


It wouldn't be too much work to find that out. Clojars has some pretty good data resources, If you just look at the top level dependents,, it seems like timbre is major user, but you would probably have to start downloading poms to try and figure out what might be pulling in the latest version.


At some point, I did some analysis comparing clojars downloads to github stars and there's some interesting outliers,;cid=C8V0BQ0M6

🧡 2

For example, has 22 github stars, but almost 18 million downloads


Parens of the Dead Seven years ago there was a hectic little screencast where I coded a game, like, so very quickly. This time I'm joined by @christian767 to do something hopefully a bit more entertaining, useful and informative. The first two episodes are out as we speak. More to come every Friday. ☀️😊

🤯 10
👀 5
🚀 19
🧟 17
🎓 2
🎉 1

Great to see this "come back from the dead" so to speak! If you want to announce new episodes as they appear, consider posting in #news-and-articles as this channel -- #announcements -- is primarily intended for major project/library announcements.


Excellent, thanks for the pointer. I'll join there at once. 🙂


Oh cool! I stumbled on those older screencasts early in my developer and clojure journey and thought it was so cool. I admired the proficiency and it made me want to up my skills too.

❤️ 2

@U07FCNURX i have always loved this and shared it with everyone who's learning. so great to see it getting an update!


Thanks, @U0509NKGK! That's great to hear. ❤️ I think this version might be better suited for learners also, since it's not so frantic, and there's more conversation.