https://clojars.org/com.github.avanelsas/barereplay After announcing https://clojurians.slack.com/archives/C06MAR553/p1784044750461419, a small Clojurescript runtime that supports presenting data in a https://github.com/avanelsas/baredom based Web Components based UI using only server state, I have worked on a separate a time-travel replay debugger for BareBuild, called BareReplay. BareBuild is designed in such a way that it runs a single step function which takes a resource and an event and produces a resource and an effect. Because of this simplicity, it becomes trivial to replay the steps that a server-state powered BareBuild UI takes. BareReplay can store each event and allows you to step through them in a floating panel that not only displays the steps but also the data that flows from client to server and back. It makes debugging much simpler as it offers a direct insight at any point in time what the current state is. I'm really happy witht he way it has turned out so far! A video of the demo for BareReplay is added here. As always, I would love to hear feedback here or in the #C0AS9CBPALB channel
https://clojure.org/news/2026/07/28/clojure-1-13-alpha6 is now available!
Destructuring additions and changes
• To get a map of all keys in the input, augmented by the defaults, traversing deeply through nested maps, use the new :all directive.
• Report as errors any use of unbound/unreferenced keys in :or when using any of the new constructs (:defaults, :select et al)
• https://clojure.atlassian.net/browse/CLJ-2972 Destructuring test clean up for :or entries
If you have questions, please open a new thread in #C03S1KBA2 or #C06E3HYPR, thanks!
We have Alpha 6 on QA at work now. I'll create new threads for anything we run into. We did not trigger any errors on :or (but we're only using :select in a few places so far—I'll look for opportunities to use :all next).
I expect we'll start to roll this out to production tomorrow. Thank you.
Do I understand right that :all is doing declaratively in the destructuring what would be "manually" merging :as with :defaults?