fix(deps): update rust crate zbus to v5 (v1) #2005
Closed
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
3->5Release Notes
dbus2/zbus (zbus)
v5.1.0: 🔖 zbus 5.1.0Compare Source
rust-versionto1.80. #1107unixexectransport.Commandstdio socket type. This socket communicates with a spawned child process viaits standard input and output streams.
winnow.v5.0.1: 🔖 zbus 5.0.1Compare Source
zvariant_utilsdep. We don't always releasezvariant_utilstogether with othercrates, so unlike the macros crates, the versions don't need to be tied together. This will also
allow us to bring
zvariant_utilsimprovements to users without having to release all dependentpackages as well.
v5.0.0: 🔖 zbus 5.0.0Compare Source
encoding and decoding.
proxymacro respects visibility. This includes all types generated byproxy. Unfortunatelythis means that the existing code will have to set the visiblity explicitly to
pubif theywere relying on the generated proxy to be public.
DBUS_COOKIE_SHA1auth mechanism. #727sha1crate as a dependency, which can be problematic for some users. #543EXTERNALis not an option, you might as well just useANONYMOUS.authentication mechanisms with one of them being no-authentication, this really makes sense
since we can just autodetect what authentication method to use for a specific socket type on a
specific platform. This also simplifies the handshake logic and will allow us to pipeline the
whole client-side handshake in the future, when we can drop the xdg-dbus-proxy workarounds. #781
same type of arguments.
fdoAPI.interfacenow generates a trait, Signals, that provides the same signalmethods as user specifies but w/o the
SignalEmitterargument (#871). The macro also generates2 implementations of this trait for:
method.
SignalContext::emit. Add a new method to SignalContext that allows emitting a signal fora given interface and singal name.
mechanism. We'll use this in a following commit to avoid an allocation.
should be used with it. The implementation can choose this based on the socket type and the
target platform.
be private.
SignalContexttoSignalEmitter. Since now this emits signals, this is a moreappropriate name. We keep a deprecated
SignalContexttype alias as well as thesignal_contextattribute ofinterfacefor not completely breaking the existing code.AuthMechanismin the root asdeprecated.
the conversion to NonZeroU32 panics. #946
the
ProxyAPI.p2pfeature is enabled.serde_bytesCargo feature. This is just a proxy feature forzvariant'sserde_bytesfeature. #1052
blocking-apitozbus&zbus_macros. When enabled, thezbus::blockingmodule is available. When disabled,proxymacro ignores the value of
gen_blockingattribute and doesn't generate blocking proxy. Thisfeature is enabled by default.
caminofeature as proxy for zvariant feature of the same name.sha1crate.futures-sink.randnow an optional dependency. It is only enabled ifp2pfeature is enabled. This meansthat
randdependency is dropped for typical users.blockingmodule docs.v4.4.0: 🔖 zbus 4.4.0Compare Source
heaplessfeature, which is just a proxy tozvariantfeature of the same name.v4.3.1: 🔖 zbus 4.3.1Compare Source
issue in xdg-dbus-proxy has already been fixed, it will take some time before the fix is
released and is widely available.
type. We might need to add an attribute to control this in the future, as this as this may not
always be what the user wants.
mdbook-tocfrom @badboy.two distinct concepts separate.
v4.3.0: 🔖 zbus 4.3.0Compare Source
interfacecan now generateproxyfor you. #236object_server::ResponseDispatchNotifierserde::Deserializefor it.blocking::Connection::call_methoddocs.v4.2.2: 🔖 zbus 4.2.2Compare Source
methods by default. #799
v4.2.1: 🔖 zbus 4.2.1Compare Source
c1aa5c7, where westarted to invalidate properties in every
PropertyChangedsignal. This is wrong anyway but italso meant zbus interfaces breaking against gio. #765
assert!instead ofdebug_assert!.debug_assert!is removed in release builds, alongwith any values computed inside it. This meant that since the use of
debug_assert!incommit
7fc3ab7, the fdo interfaces weren't getting added fornodes for release profile. Let's use
assert!instead. #764pipelining, hence we need to handle
NEGOTIATE_UNIX_FDcommand's response before sending outBEGINcommand andHellomethod call message.full message could be received at the end of the client handshake process.
v4.2.0: 🔖 zbus 4.2.0Compare Source
dbus_interfacenow provides aspawnattribute to control whether the method call handling is spawned as a task or not.
pre-authenticated socket. This could also be socket that doesn't need any authentication. #590.
method have a default implementation that just uses the lower-level sibling methods. Implementers
can either override this method or the lower-level method, depending on the underlying socket
they're using.
communication. This can be used with
connection::Builder::authenticated_socketto create aconnection for in-process communication. #591.
Hellomethod call to thebus. This reduces unnecessary round-trips & hence latencies. #493
one mechanism to be set.
auth_mechansim. This is inpreparation for #731, when we will remove this method entirely.
Return an error instead of an explicit panic if attempted, since it is not an internal invariant.
windows-gdbusfeature and associated hacks.Turns out that the reference D-Bus implementation supports autolaunch fine and we don't need
special support for gdbus binary. Hopefully, in the near future, busd will also support it. #687
Interfacebeing unstable API. Also recommend what people should do whendbus_interfaceisn't enough.autolaunch addresses so there is no need to create an address with scopes.
CANCELcommandduring a handshake, the server must move on to the next handshake method available (if any).
client is unknown or invalid in the current context, we shouldn't completely error out but rather
send an error and continue as if nothing happened.
output.
v4.1.2: 🔖 zbus 4.1.2Compare Source
To go with zbus_macros 4.1.2. Other changes:
v4.1.1: 🔖 zbus 4.1.1Compare Source
The actual change is in zbus_macros 4.1.1.
v4.1.0: 🔖 zbus 4.1.0Compare Source
v4.0.1: 🔖 zbus 4.0.1Compare Source
ProxyDefaultforblocking::Proxythat was missed in 4.0.0.v4.0.0: 🔖 zbus 4.0.0Compare Source
A new API-breaking release that brings in a huge amount of changes. Most using code should still
compile (with deprecation warnings) and work without changes. Hightlights:
zbus_macros release notes for details, including commands to automatically update your
code.
deprecation warnings will guide you to the new paths.
xmland
quick-xmlfeature flags are removed as a result. #413.&zvariant::serialized::Data.unsafe (even though it's not marked as such) since it disassociates the FDs from the message and
the caller is free to close them while message is still referencing them.
likely used by very few people, who can use the
sendmethod instead.&Guidnow, instead of a string.constructed through an address with GUID in it, we should verify this GUID is the same as one
received from the server during the handshake.
halves.
Guidnow has a lifetime parameter, andOwnedGuidis a new type that's a wrapper aroundGuid<'static>. Internally,Guidis now awrapper around
zvariant::Strand is now a very similar type to otherzvariant::Strwrappertypes.
address::Transport.Address` isno longer an enum but a struct with hidden fields. #476.
present and provide API to set a GUID on an
Addressinstance.unix:tmpdirandunix:dirtransports.for<'d> zvariant::DynamicDeserialize<'d>on the result type of a call is sufficient todeserialize; use this bound instead of the stricter
DeserializeOwned + zvariant::Type.p2pfeature. Given that typical users do not need this API, we don't enable it by default.bus-implcargo feature. API that is only needed by bus implementations now gated behind this non-default cargo feature. #480.the peer-to-peer and bus implementation API respectively.
async-recursionfor targets other than MacOS and Windows.blocking::ObjectServer. Not exactly a smart pointer. Also other blocking wrappers don't do that. #475.Connectionmanaging the serial numbers.option-as-arrayfeature. This is a mainly azvariantproxy/forwarding feature.enabled. This only causes confusion if user enables it since then
Option<T>haszvariant::Typeimplemented but D-Bus encoding doesn't support that and people get runtime errors instead.
fd-passing on socket type that doesn't support it, reject the request.
new_bare is just a wrapper around now, since all proxy types implement ProxyDefault trait. #417.
allowing all generated proxies to implement this trait.
generic code around different proxy types. #433
v3.15.2: 🔖 zbus 3.15.2Compare Source
To go with zbus_macros 3.15.2. Other changes:
v3.15.1: 🔖 zbus 3.15.1Compare Source
v3.15.0: 🔖 zbus 3.15.0Compare Source
🐛 Add missing
nixfeature.🏷️ Add ResponseDispatchNotifier type. A wrapper interface method response type that notifies the
caller of the response being sent off.
🚸 Specify service and object path for Monitoring & Debug.Stats proxies. These defaults to be
based on the interface name otherwise and that's not the expected bhaviour.
✏️ Fix a typo in docs.
Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.