Skip to content

πŸ”– zbus 3.14.0

Choose a tag to compare

@github-actions github-actions released this 28 Jun 22:12
· 2596 commits to main since this release

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