In that last April, I made [journald-send], to serve as replacement for [systemd-python], for folks who want to write logs to journald, using native protocol.
It is a partial replacement, because it only offers the "write" part, not "read". That's enough because most of applications which want to talk with journald just need to "write". I made [journald-send] out of the frustration that systemd-python development seems to be stuck, the last release was on the beginning of 2023, when it is 2026 now, and the compatibility with Python 3.14 is uncertain. Even after I contributed some code to modernize the Python project structure, the core developers still seems to not rush to make a release.
I wrote [jounald-send] in Rust, aiming for Python 3.14 free-threaded (No GIL) mode. Because I only need to support "write" operation, I decide not to depend on the C libsystemd, and go further by using Rust pure libraries ([rustix] and [memfd]) to talk with Linux API. I learnt from [tracing-journald] for how to prepare data for journald protocol and which steps to do with the sockets. The difference is that [tracing-journald] is using libc and I use [rustix], [memfd].
After finishing [journald-send], I updated my other libraries [chameleon-log], [structlog-journald] to use journald-send under the hood. [chameleon-log] is for integrating [logbook] and [structlog-journald] is for integrating with [structlog].

