Skip to content

zbus-2.0.0-beta.7

Choose a tag to compare

@zeenix zeenix released this 11 May 07:53
· 3963 commits to main since this release
  • async ObjectServer & Interface API.
  • async API now the primary API, with blocking wrappers provided under blocking module.
  • API to get cached properties from a Proxy.
  • Break a cyclic ref.
  • No Async prefix when only generating async proxy.
  • dbus_proxy now allows you to:
    • disable generation of each proxy type.
    • choose names of generated proxy types.
  • API to quick access essential message fields.
  • Remove unused Error::InsufficientData.
  • Avoid some unneeded allocations.
  • Don't resolve destination for non-bus connections.
  • Add reply_dbus_error helper to Connection.
  • Add DBusError trait. zbus_macros::DBusError implements this trait for you.
  • MessageBuilder should only require MessageHeader to create replies.
  • Implement Clone for MessageHeader.
  • Move name registration API from ObjectServer to Connection.
  • Add Connection::monitor_activity().
  • Re-export async-trait and futures-util crates.
  • Drop AsRawFd impl for Connection.
  • ObjectServer::dispatch_message now internal.
  • Drop ObjectServer::connection().
  • ObjectServer now an on-demand Connection attribute.
  • Proxy signal handlers now called automatically.
  • Drop now unneeded SignalReceiver type.
  • Drop Proxy::handle_signal.
  • Drop now unneeded Proxy::next_signal methods.
  • Drop now unneeded Connection::receive_message.
  • Bring back MessageStream and add blocking::MessageStream wrapper that implements Iterator.
  • Rename MessageBuilder::with_flag to with_flags.
  • More flexible MessageBuilder API.
  • Add MessageFields::replace().
  • Return owned fds from Message::disown_fds().
  • Don't disown the FDs in the messsage as part of Connection::call.
  • Drop OwnedFd in favor of new zvariant::OwnedFd.
  • Track destination owner changes.
  • Don't require proxy destination to be known.
  • Add ManagedObjects type alias.
  • Add raw::Socket trait that allows creation of custom Connection implementation. Implementations for async_io::Async<std::os::unix::net::UnixStream> and tokio::net::UnixStream (enabled with tokio feature) are provided.
  • Provide Address construtors.
  • Replace internal-executor feature with ConnectionBuilder::internal_executor.
  • Don't hardcode fallback session bus address.
  • Add ObjectServer::get_interface.
  • Add ObjectServer::with_mut.
  • Drop now unneeded ObjectServer::local_node_emit_signal.
  • Add SignalContext type.
    • interface signals now take &SignalContext instead of &self.
    • <property>_changed methods now take a SignalContext argument.
    • ObjectServer::with::func now takes an &SignalContext arg.
  • Add Message::body_as_bytes.
  • Remove now-unused Error::UnmatchedBodySignature.
  • Change Message::body to use zvariant::DynamicDeserialize.
  • Switch bounds to zvariant::DynamicType where appropriate.
  • ObjectServer now Send + Sync.
  • Interface now requires Send + Sync.
  • Re-export zvariant and zbus_names as names.
  • Many other fixes/improvements.
  • Dependencies changed:
    • Re-add event-listener dep.
    • Require async-trait.
    • Add async-std dev dependency.
    • Upgrade serde_repr to 0.1.5.
    • Drop now unneeded scoped-tls dep.

All contributors to this release: