π zbus 3.14.0
β¨ Add arg0ns to match rule. arg0namespace has an overly restrictive type (InterfaceName), which
disallows valid values (e.g. those containing '-' or single-element names such as 'org'). Further
more, a MatchRule with arg0namespace previously would not match a message whose arg0 is not a
valid InterfaceName (even if it is a valid BusName). Fixes #382.
β¨ Derive Debug for MatchRuleBuilder.
β¨ Implement Clone for MessageBuilder.
β¨ Add a from_bytes constructor for Message. Closes #326
β¨ Allow unicast signals through the dbus_interface. Fixes #374.
β¨ Provide various string conversions from Guid.
β¨ impl From for Guid.
β¨ Implement Type, Serialize & Deserialize for Guid. So that this can be returned from
dbus_interface and dbus_proxy methods.
β¨ Owned getters for ConnectionCredentials fields. For non-Copy fields (i-e those requiring
allocation).
β¨ impl From<MessageHeader> for MessageBuilder.
β¨ Add MessageStream::{max_queued,set_max_queued}. Add getter and setter for message queue
capacity. #350.
ποΈ Fix how MatchRule handles arg0namespace. arg0.starts_with(arg0namespace) is not enough. For
example, namespace 'o' should not match 'org.foo'.
ποΈ Drop signature & fds from fields. when converting a MessageHeader into a MessageBuilder
since these fields are dependent on the body and that's specified later.
ποΈ Handle 0 bytes received from socket. Seems the assumption that we can't ever get 0 bytes is
wrong.
π Don't choke on empty match rule arg values.
π©Ή zb: Drop unneeded use of all in cfg attributes. New clippy warns about this.
π©Ή fdo::DBus::get_id returns Guid instead of raw String. Theoretically, this is a breaking
change, but this is also a fix since the method should have been returning the more specific
type. To make things easier for users, we provide a more conversions from Guid to String and
&str.
π©Ή Manual impl for Deserialize for Guid. So we can verify it's a valid UUID string.
β‘οΈ Box a large future. Fixes new clippy warning about large futures. Fixes #330.
β¬οΈ Bump our MSRV. More and more dependencies are requiring Rust 1.64.0, so let's bump our MSRV to match.
β¬οΈ Require zbus_names 2.6.0.
β¬οΈ Require zvariant 3.15.0.
β¬οΈ Update enumflags2.
π Fix link to DBusError derive.
π Warn about example code requiring a session bus in README/crate docs. Fixes #389.
π Update forgotten links to old book location.
π Clarify MatchRule::arg0namespace docs.
π Fix link to DBusError derive.
π Add IBus example for ConnectionBuilder::address. Fixes #361.
ποΈ Deprecate MatchRule(Builder)::arg0namespace in favour of arg0ns.
π§ͺ Test empty args in match rules. Turns out we can't parse match rules with empty argument values.
β Add optional dep on blocking. If async-io is enbled, we now depend on blocking. This just
turns it into a direct dependency.
π¨ Code comments should also adhere to 100 character limit.
π¨ Minor formatting change.