Skip to content

Releases: z-galaxy/busd

0.5.0

13 Jan 13:37
4bf9a96

Choose a tag to compare

Added

  • πŸ‘· Drop Windows jobs from CI.
  • ✨ Implement unix:dir and unix:tmpdir for --address.
  • πŸ‘· Suggest to copy the git hooks.

Changed

  • 🎨 A minor readability improvement.
  • 🚚 Update Github org name.
  • 🎨 Fix Cargo.toml formatting.
  • ♻️ Extract Rule and Policy into their own files.
  • πŸ”§ Support --config, --session (default), and --system.
  • πŸ”§ Read XML file(s) into consumer-ready Config. #78
  • ♻️ Extract unix_addr() out of unix_stream().
  • πŸ”§ Change the default address to listen upon.

Dependencies

  • ⬆️ Update quick-xml to 0.39.0 (#288).
  • ⬆️ Update tokio to v1.49.0 (#287).
  • ⬆️ Update clap to v4.5.54 (#286).
  • ⬆️ Update rustix to v1.1.3 (#285).
  • ⬆️ Update tracing to v0.1.44 (#284).
  • ⬆️ Update ntest to v0.9.5 (#283).
  • ⬆️ Update tracing-subscriber to v0.3.22 (#281).
  • ⬆️ Update actions/checkout action to v6.
  • ⬆️ Update console-subscriber to 0.5.0 (#273).
  • βž– Drop now redundant nix dep.
  • βž• Use rustix instead of nix.
  • ⬆️ Update zbus to 5.13.1.
  • ⬆️ Update enumflags2 to v0.7.12 (#232).
  • ⬆️ Update nix to 0.30.0 (#225).
  • βž• Add the "quick-xml" crate.
  • ⬆️ Update fastrand to v2.3.0 (#180).
  • βž• Add "fastrand" crate.
  • βž– Drop hex dependency.
  • βž– rand now a dev-dependency.

Documentation

  • πŸ“ Link to gimoji's web interface.
  • πŸ“ Remove Windows support claim from the README.
  • πŸ“ Sync with zbus' CONTRIBUTING.md.

Fixed

  • πŸ› Add previous guid to new address.
  • πŸ› Expose the socket address clients can use.

Other

  • πŸ€– Automate releasing with release-plz.
  • 🚨 Make latest clippy happy.
  • πŸ”Š Make errors and warnings a little bit more descriptive.
  • 🚩 Drop fs feature of tokio.
  • 🚩 Drop default-features of futures-util crate.
  • 🚩 Drop uneeded clap default features.

Performance

  • ⚑️ More binary optimizations for release builds (#228).
  • ⚑️ Drop docs generation in fdo interfaces.
  • ⚑️ Trade compile-time for binary size reduction in release mode.

Removed

  • πŸ”₯ Remove a useless conversion.
  • πŸ”₯ Drop support for Windows.

Security

  • πŸ”’οΈ Add comprehensive security policy. #147

πŸ”– Release 0.4.0

21 Oct 04:14
374de38

Choose a tag to compare

  • ⬆️ 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 use EXTERNAL. For TCP sockets on
    non-Windows, we use ANONYMOUS (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

09 May 17:54
3687c01

Choose a tag to compare

  • ⬆️ 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.

01 May 11:46
0048ecd

Choose a tag to compare

  • ✨ 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.

29 Jun 22:59

Choose a tag to compare

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.