#C1DV21X9P https://github.com/lambdaisland/dbus-client https://github.com/lambdaisland/dbus-client/releases/tag/v0.4.30 is out.
D-Bus is a IPC mechanism used on Linux both for various desktop integrations, and for system-level coordination and observation.
This library provides a pure-Clojure, Babashka-compatible implementation of the D-Bus protocol. It is the first version that is suitable for general consumption.
• fix bugs in the message buffering, processing loop, and (de)serialisation
• add a higher level call interface, for making a remote method call and getting the response
• add wrapper namespaces for standard D-Bus and Systemd interfaces
The only dependency is org.clojure/data.xml.
what is use case for this kind of library in context of Clojure?
https://github.com/babashka/babashka: Native, fast starting Clojure interpreter for scripting
1.13.220
• FFI: the new experimental babashka.ffi namespace lets you call C functions in shared libraries straight from babashka and JVM Clojure. Read the blog post: https://blog.michielborkent.nl/babashka-ffi.html
• Tasks: :exec-fn tasks compose through :depends
• Faster interop: SCI call site caching makes instance/static method calls up to 5x faster.
• Linux: the install script now installs a dynamic binary by default (only depends on glibc); --static still gives the fully static one.
• Fixes: binding *out* to a proxy of java.io.Writer works. clojure.core/Inst on records/types/reify, add java.util.TreeMap , custom clojure.pprint dispatch output.
• Several library upgrades
Full changelog: https://github.com/babashka/babashka/releases/tag/v1.13.220