diff options
| author | Santhosh Raju <fox@FreeBSD.org> | 2026-09-02 02:40:16 +0000 |
|---|---|---|
| committer | Santhosh Raju <fox@FreeBSD.org> | 2026-09-02 02:42:26 +0000 |
| commit | afdcf81ac49eceff248377ba0b9f2dc35f7a8634 (patch) | |
| tree | f409e984792876f05844ce6657aaa82832cf3428 /net/netmap | |
| parent | 74638794049ce60abd107ee14f3d0e3e834a1258 (diff) | |
Changes since 1.13.219:
1.13.220 (2026-08-31)
Read the release blog post:
https://blog.michielborkent.nl/babashka-ffi.html
FFI:
* Add experimental babashka.ffi
(https://github.com/babashka/ffi): call C functions in shared
libraries straight from babashka and JVM Clojure! See the guide:
https://github.com/babashka/ffi/blob/main/doc/guide.md
* Linux: dynamic binaries require glibc 2.28. The install script
selects the static binary on older systems
* On Linux, the install script installs the dynamic binary by
default. It installs the static binary on musl systems and on
systems with glibc older than 2.17. The --static and --dynamic
options override the automatic selection
* The dynamic binary for Linux amd64 links every library statically
except glibc. It no longer needs libz.so.1 at run time
* On FreeBSD, the install script installs the dynamic binary when the
Linuxulator has a linux_base with glibc 2.17 or newer, such as
linux_base-rl9
* The Linux binaries include zlib 1.2.13. The static binary uses musl
1.2.6. The build pins both versions and compiles them from source
Tasks:
* :exec-args can sit directly on a task, not only under :cli, the way
(exec ...) already reads it. The bare key wins over the one under
:cli. Before, it was ignored on an :exec-fn or :cmd task
* A task's :cli :exec-args merge over the :tasks top level
:exec-args. Before, the task's map replaced the top level's
* A task's :cli spec adds to the runner-level :tasks {:cli {:spec
...}} instead of replacing it. An option from the runner level
keeps its coercion and default, and --help lists it under Inherited
options
* A task with :exec-fn runs when another task :depends on it. Before,
it did nothing
* Options declared by an :exec-fn task named in :depends also parse
for the CLI task that runs, with their coercion and default. --help
lists them under Inherited options
* A :depends task's :exec-fn receives only the options that task
declared, with its defaults, not everything the command line parsed
* A CLI task cannot name a :cmd task in :depends, unless that task
also has a :task body: nothing says which of its subcommands to run
* :cmd can be a symbol naming a var that holds the command tree, like
:cli. Its namespace loads on demand
* Shell completion offers inherited options (via :depends) too
* bb tasks and --help still describe a task when a dependency's
namespace does not load. Running the task reports the error
Misc:
* SCI: call site caching for instance and static methods,
constructors and fields. Interop calls are up to 5x faster
* #1321: support implementing the clojure.core/Inst protocol on
records, types and reify, and with extend-protocol and extend-type
* Fix output of custom clojure.pprint dispatch functions
* #2054: a proxy of java.io.Writer supports the one-argument write
and append, so binding *out* to it works. Interop on a proxied
Writer or Reader finds their own methods instead of only the ones
on Closeable
* #1728: Add java.util.TreeMap
* Fix: the % parameters of a function literal inside a syntax quote
are no longer namespace-resolved, through edamame 1.6.43
* Building babashka from source no longer fails when one upstream
host is unreachable. The build fetches the musl and zlib tarballs
with retries, from mirrors, and caches them per machine
* Building from source: the BABASHKA_DYNAMIC build flag is
BABASHKA_FULLY_DYNAMIC, because it named a different axis than the
install script's --dynamic
Upgrades:
* Bump jline to 4.4.0: security hardening, a rewritten signal path
for the FFM terminal, Kitty keyboard protocol. The ambiguous key
binding timeout in the REPL drops from 1000 ms to 100 ms
* Bump GraalVM to 25.0.4. The macOS amd64 binary stays on 25.0.1, the
last version Oracle ships for that platform
* #2021: bump http-kit to 2.9.0-beta4, which fixes four security
advisories
* Bump babashka.cli to 0.12.88: help shows the dispatch-level spec
under Inherited options, format-command-help accepts :spec,
completion no longer offers :positional keys as options, the
command named on the command line wins over the :exec-args of its
ancestors, and the fish completion snippet keeps the emitted option
order
* babashka.cli 0.12.88 also adds :cmd-aliases, alternative names for
a command that dispatch like the command itself, and attached short
option values: -J-Dfoo=bar binds "-Dfoo=bar" when :J declares a
non-boolean :coerce. An interior hyphen in a cluster of flags is an
error instead of silently ending option parsing
* Bump edamame to 1.6.43, which carries the syntax-quote fix listed
above
* Bump jsoup to 1.23.2: W3C namespace fixes, URL validation per RFC
9110, CR and LF escaping in multipart form names
* Bump hiccup to 2.0.0 final, from 2.0.0-RC1
* Bump rewrite-clj to 1.2.57
* Bump selmer to 1.13.5: Twig-style {% embed %}, multiline tags. The
shipped deps.edn said 1.12.70 while the binary carried 1.13.1; both
now agree
Diffstat (limited to 'net/netmap')
0 files changed, 0 insertions, 0 deletions
