Releases: dbus2/busd
π Release 0.4.0
- β¬οΈ Upgrade dependencies:
- zbus 5.0.
- anyhow 1.0.90.
- clap 4.5.20.
- futures-util 0.3.31.
- serde 1.0.210.
- tokio 1.40.0.
- xdg-home 1.3.0.
- console-subscriber 0.4.0.
- enumflags2 0.7.10.
- event-listener 5.3.1.
- π Drop auth-mechanism CLI arg. It's now automatically chosen for you, based on the socket type
in use. For UNIX sockets and for TCP on Windows, we useEXTERNAL
. For TCP sockets on
non-Windows, we useANONYMOUS
(i-e no authentication at all). On Unix machines, people should
use the UNIX socket anyway and if EXTERNAL is possible, it's best to stick to it.dbus-broker
also doesn't support anonymous authentication and since they only support Unix sockets for
transport, it means they don't support anonymous authentication at all. - π Drop support for
DBUS_COOKIE_SHA1
auth mechanism. This is in conjunction with zbus dropping
it in 5.0. Besides, I added this support mainly for hopes of possibly using it for a remote
transport. However, due to lack of time and funding, I decided to drop those plans from the
roadmap. - Exclude duplicate license file.
π Release 0.3.1
- β¬οΈ Update depenencies:
- zbus to 4.2.1. This fixes busd on FreeBSD.
- serde to 1.0.201.
- anyhow to 1.0.83.
- event-listener to 5.3.0.
π Release 0.3.0.
- β¨ Implement Monitoring interface. This means, you can now monitor the bus using
busctl monitor
. - β¨ Add --ready-fd that allows busd to notify its parent (usually a service manager) that it is
ready to accept new incoming connections. This information can then be used by the service manager
to ensure that dependant services are only started after the broker is ready to accept incoming
connections. #27 - β‘οΈ Use new zbus::socket::Channel for self-dial connection. This should improve the performance
of our own D-Bus API since it avoids deserialization and re-allocation on the receiver side. - β‘οΈ Enable LTO for release builds.
- π¨ Explicit lifetimes for constant string literals.
- π½οΈ Port to zbus 4 API. This also implies bumping required versions of shared depdendencies, like
event-listener and tokio. - β¬οΈ Update dependencies:
- zbus to 4.2.0.
- serde to 1.0.199.
- anyhow to 1.0.82.
- tokio to 1.37.0.
- clap to 4.5.4.
- nix to 0.28.0.
- console-subscriber to 0.2.0.
- xdg-home to 1.1.0.
- tracing-subscriber to 0.3.18.
- tracing to 0.1.40.
- futures-util to 0.3.30.
- enumflags2 to 0.7.9.
- β¬οΈ Bump MSRV to 1.74.
- β Add a direct dep on event-listener. We indirectly depended on it already.
- π CONTRIBUTING: Drop inexistent gitmoji blog post link.
- βοΈ CONTRIBUTING: Fix a few typos and sync with zbus.
- π©Ή Fix some unused imports for non-unix target.
- π₯ Drop bogus import of
anyhow::Ok
. - π± Add our logo to README.
- β¨ Many internal fixes and improvements.
π Release 0.2.0.
We now have all basic features so all zbus tests can now run successfully against busd. π₯³
β¨ Project moved to Github and renamed to busd
.
β¨ Add --print-address cli option.
β¨ Implement org.freedesktop.DBus
interface. Some methods are currently placeholders though.
β¨ Make it work on non-UNIX. The main target is Windows here.
β¨ Add option to enable anonymous connections.
β¨ Add TCP transport.
β¨ Support sending signals, both broadcast and unicast.
β¨ Allow sending messages to well-known names.
π Implement DBUS_COOKIE_SHA1
auth. The actual authentication is done by zbus but we manage our
cookie jar. The management of cookies file is done as per spec.
π Enable ANSI terminal colors in tracing_subsciber.
π Ensure messages have sender
set before forwarding them. The peers should be able to rely on
sender being always set and correct.
π©Ή Drop related resources when a peer disconnects.
π©Ή Check unique name exists in DBus.GetNameOwner impl.
πΈ Portable way to figure out temp dir.
πΈ Replace path
cmd arg by address
. We now deal with a generic D-Bus address string instead of
unix socket path.
π¦οΈ Bump MSRV to 1.70. So we can use use std::sync::OnceLock
.
β Require hex, xdg-home, rand and tokio-fs.
β Add optional dep on console-subscriber. So that we can interface with tokio-console.
β Only require nix on unix.
β Drop parking_lot dep. We don't use it anymore.
β Drop now unneeded fastrand dev dep.
β¬οΈ Bump nix requirement to 0.26.
β¬οΈ Update proc-macro2 to latest release.
β¬οΈ Require latest zbus.
π Populate & update README.
π Add gimoji recommendation to contributing guide.
π Add legal notice about contribution content.
π Add contribution guide.
π· Add a few tests.
π· Add a robust CI that tests on multiple platforms.
π Switch from warning to debug log for error on receiving msg. This happens when peer disconnects
and is very common so a warning log is not justified.
π₯ Add easter egg method.
𧡠Spawn a new task for setting up each connection. This way we don't have to make other clients
wait for previous client's setup to finish.
π₯
Don't ignore errors from accept().
π₯ Drop use of unneeded outer socket dir.
π₯ Ensure socket file is deleted even if failures happen.
π Many internal improvements.