Clojure

Clojure Deref (Aug 20, 2021)

20 August 2021
Alex Miller

Welcome to the Clojure Deref! This is a weekly link/news roundup for the Clojure ecosystem. (@ClojureDeref RSS)

Highlights

Peter Strömberg spent the week working on a very cool zero-install "learn Clojure" story using Gitpod and Calva. He’s looking for feedback - check it out, particularly if you are early in your Clojure journey!

In business news, Adam Renklint from Pitch had a nice write up about how they leverage Clojure as a tool for releasing every week. And congrats to Metabase for their $30M round this week!

In the core

I mentioned last week that I was working on lightweight keyword aliases and I’ve summarized what we’ve looked at, the final proposal, and patches at CLJ-2123. I also spent some "quality" time this week updating all of the tools.deps dependencies. The latest Maven core release bumps some transitive deps with security reports and also fixes a number of concurrency issues we’ve been seeing through the Clojure CLI. Unfortunately, I also detected a regression in some of the Maven model building code and spent some time filing tickets and working with Maven folks on that (will probably lead to a new Maven release). For now I have worked around the regression so tools.deps/Clojure CLI users won’t be impacted.

Fogus has continued work on new update-keys and update-vals functions and a related older problem that affects the benchmarking of those. He’s also been doing some work on the Cognitect aws-api.

Podcasts and videos

Libraries and Tools

New releases and tools this week:

  • Clojure CLI 1.10.3.943 - many perf improvements

  • tools.build v0.1.8 - Library of functions for building Clojure projects

  • deps-new - NEW - A new, simpler alternative to clj-new

  • clj-test-containers 0.5.0 - A lightweight, unofficial wrapper around the Testcontainers Java library

  • clojure-lsp 2021.08.16-19.02.30

  • lein-clojure-lsp - NEW - Language Server (LSP) for Clojure

  • datomic-cloud-backup 0.0.5 - A library for creating and restoring backups of databases in Datomic Cloud

  • honeysql 2.0.783 - Turn Clojure data structures into SQL

  • pathom3 2021.08.14-alpha - Logic programming via attribute relationships

  • pod-babashka-etaoin - now available for windows - pure Clojure webdriver protocol implementation

  • vim-iced 3.6.0 - Clojure Interactive Development Environment for Vim8/Neovim

  • portal 0.14.0 - A clojure tool to navigate through your data

  • trenchman - NEW Trenchman is a standalone nREPL/prepl client written in Go and heavily inspired by Grenchman. It connects to a running nREPL/prepl server and starts up a REPL session instantly.

Video Throwback

The Calva getting started work reminded me of Felienne Hermans' excellent Strange Loop 2019 keynote "How to teach programming (and other things)?". If you’re interested in this area, also check out her upcoming book (available in large part in early release now) The Programmer’s Brain based on her research. It’s a great read and I think every programmer will learn some interesting things from it.