Skip to content

zbus 3.6.0

Choose a tag to compare

@zeenix zeenix released this 11 May 08:00
· 3041 commits to main since this release
  • Add Proxy::call_with_flags.
  • Add Add Connection::request_name_with_flags.
  • Add Proxy::receive_signal_with_args, which is the same as Proxy::receive_signal but allows one to setup server-side filtering based on argument matches, thus allowing you to avoid unnecessary D-Bus traffic flowing to your connection.
  • Fix the API and handling of argN and argNpath in match rules. We were assuming that they've to be contiguous but that's not true. One can set a condition on any arg at any index. This means an API break but:
    • We just introduced the API in the last release so chances of someone using it directly are very low.
    • If anyone was using the changed API, they were likely in trouble anyway.
    • We avoid breaking the main API by keeping MatchRuleBuilder::{add_arg, add_arg_path} the same and adding new methods for adding args at a specific index.
    • The API that is breaking is mostly going to be useful for bus implementations and there is hardly one yet.
  • Improved tokio-console integration:
    • Add traces to futures running as tasks.
    • Enable tracing feature of tokio.
    • Set IDs on tokio tasks. tokio_unstable cargo flag will need to be specified though but we leave that to the users.
  • Fix a possible race-condition in signal streams, that mainly affected low-end machines.
  • Avoid redundant signals for OwnerChangedStream. Make use of ability to set a filter on args in
    match rules to only be notified of changes to name we're actually interested in.
  • Pre-allocate known capacity for match rule args.
  • Add chrono feature, which is a proxy feature to enable chrono feature+dep in zvariant.
  • Fixes to docs.
  • Some internal improvements.
  • Bumped dependencies:
    • ordered-stream 0.1.2
    • zvariant 3.9.0
    • zbus_names 2.4.0