OSS updates May 2023

In this post I'll give updates about open source I worked on during May 2023.

To see previous OSS updates, go here.

Babashka-conf

Babashka-conf is happening June 10th in Berlin. Only a few tickets left!

Sponsors

I'd like to thank all the sponsors and contributors that make this work possible! Open the details section for more info.

Sponsor info Top sponsors:

If you want to ensure that the projects I work on are sustainably maintained, you can sponsor this work in the following ways. Thank you!

If you're used to sponsoring through some other means which isn't listed above, please get in touch.

On to the projects that I've been working on!

Updates

The following projects had updates in the last month. Note that only highlights are mentioned and not a full overview of all changes. See the project's changelogs for all changes.

Other projects

These are (some of the) other projects I'm involved with but little to no activity happened in the past month.

Click for more details

  • edamame: Configurable EDN/Clojure parser with location metadata
    • Improvements for reading namespaced maps
  • babashka.book: Babashka manual
    • Several corrections
    • Dynamic :exec-args
    • Script-adjacent bb.edn docs
  • CLI: Turn Clojure functions into CLIs!
    • Support --no-option and parse as {:option false}
    • Support grouped aliase like -ome as {:o true, :m true, :e true}
  • pod-babashka-go-sqlite3: A babashka pod for interacting with sqlite3
    • Better error message when connection is not a string
  • instaparse-bb
    • Add transform function
  • jet: CLI to transform between JSON, EDN, YAML and Transit using Clojure
    • Add option to elide commas
  • quickdoc: Quick and minimal API doc generation for Clojure
  • rewrite-clj: Rewrite Clojure code and edn
  • sql pods: babashka pods for SQL databases
  • pod-babashka-buddy: A pod around buddy core (Cryptographic Api for Clojure).
  • gh-release-artifact: Upload artifacts to Github releases idempotently
  • neil: A CLI to add common aliases and features to deps.edn-based projects
  • cljs-showcase: Showcase CLJS libs using SCI
  • carve - Remove unused Clojure vars
  • grasp: Grep Clojure code using clojure.spec regexes
  • quickblog: Light-weight static blog engine for Clojure and babashka
  • lein2deps: leiningen to deps.edn converter
  • 4ever-clojure - Pure CLJS version of 4clojure, meant to run forever!
  • pod-babashka-lanterna: Interact with clojure-lanterna from babashka
  • pod-babashka-fswatcher: babashka filewatcher pod
  • joyride: VSCode CLJS scripting and REPL (via SCI)
  • clj2el: transpile Clojure to elisp
  • deflet: make let-expressions REPL-friendly!
  • babashka.json: babashka JSON library/adapter

Published: 2023-05-30

Tagged: clojure oss updates

OSS updates April 2023

In this post I'll give updates about open source I worked on during April 2023.

To see previous OSS updates, go here.

Babashka-conf

Babashka-conf is happening June 10th in Berlin. Save the date and/or submit your babashka/clojure-related talk or workshop in the CfP!

Sponsors

I'd like to thank all the sponsors and contributors that make this work possible! Top sponsors:

If you want to ensure that the projects I work on are sustainably maintained, you can sponsor this work in the following ways. Thank you!

If you're used to sponsoring through some other means which isn't listed above, please get in touch.

On to the projects that I've been working on!

Projects

The following projects had updates in the last month. Note that only highlights are mentioned and not a full overview of all changes. See the project's changelogs for all changes.

Contributions to other projects

Other projects

These are (some of the) other projects I'm involved with but little to no activity happened in the past month.

Published: 2023-04-30

Tagged: clojure oss updates

OSS updates March 2023

In this post I'll give updates about open source I worked on during March 2023.

Sponsors

But first off, I'd like to thank all the sponsors and contributors that make this work possible! Top sponsors:

If you want to ensure that the projects I work on are sustainably maintained, you can sponsor this work in the following ways. Thank you!

If you're used to sponsoring through some other means which isn't listed above, please get in touch.

On to the projects that I've been working on!

cherry

Experimental ClojureScript to ES6 module compiler

This month I've been preparing cherry as a compiler that you can embed in your existing CLJS / shadow-cljs applications. This makes cherry an additional alternative to SCI and self-hosted CLJS.

Read about embedding cherry into your application here.

I've been working on several PRs to include cherry as an additional evaluator in:

scimacs

The Small Clojure Interpreter (SCI) integrated with emacs as a loadable module.

This is a new project by Jack Rusher and I've helped him with the SCI integration.

clj2el

Transpile clojure to elisp. A brand new project to transpile Clojure to Elisp. It might be of value for those who know Clojure better than Elisp and want to have something to get started. It's far from complete. Try it in the playground here.

deflet

Make let-expressions REPL-friendly!

The deflet macro lets your write inline-def expressions, while expanding those to regular let expressions, giving you the benefits of REPL-driven development without polluting production code with top level vars.

babashka

Native, fast starting Clojure interpreter for scripting

New release: 1.3.175 (2023-03-18)), 1.3.176 (2023-03-18)

Highlights:

The clojure.core.async/go macro now uses virtual threads.

Many small fixes and upgrades.

See the complete CHANGELOG.

babashka.json

This is a JSON abstraction library that you can include in babashka and JVM projects while also including your own favorite JSON implementation. The idea is that babashka libraries can include this, while JVM projects don't have to switch their JSON implementation to cheshire.core.

Babashka compatibility in external libs

I worked together with the maintainers of the following libraries to make them compatible with babashka:

clj-kondo

Static analyzer and linter for Clojure code that sparks joy

New release: 2023.03.17

Some highlights:

Check the changelog for details.

SCI

Configurable Clojure/Script interpreter suitable for scripting and Clojure DSLs

New release: 0.7.39 (2023-03-07)

See changelog for more.

Contributions to other projects

Brief mentions

The following projects also got updates, mostly in the form of maintenance and performance improvements. This post would get too long if I had to go into detail about them, so I'll briefly mention them in random order:

Other projects

These are (some of the) other projects I'm involved with but little to no activity happened in the past month.

Published: 2023-04-07

Tagged: clojure oss updates

Archive