Revision history for Perl module Protocol::DBus
0.16
- BUG FIX: Typo in write-congestion logic in Mojo.pm.
- Add pause(), resume(), and get_unique_bus_name() to EventMessenger.
- Fix race conditions in uncaught-failure tests.
0.15 Sun 3 May 2020
- BREAKING CHANGE: This module now expects and returns strings as
character-decoded. Previously it did no encoding nor decoding. (This change
is made to prevent invalid UTF-8 from being sent.)
- BREAKING CHANGE: send_call()’s returned promise, in cases where a reply
is not requested, now resolves when the message is sent.
- BREAKING CHANGE: send_call() no longer throws exceptions; all failure cases
are communicated as rejections of the returned promise. This change is made
to obviate the need to trap exceptions in event loops.
- BREAKING CHANGE: send_return(), send_error(), and send_signal() now
all return promises that resolve when the message is sent. Previously they
returned a boolean that indicated whether the message had been sent or was
still queued. This change is made to make use within event loops a bit more
natural. It also effects a more consistent interface: all send_*() methods
now return promises.
- Add on_failure callback to event loop modules.
- Document “flags” parameter to send_call().
0.14 Wed 25 Mar 2020
- Clarify UTF-8 encoding requirement in documentation. (No code changes.)
UPDATE: This requirement was reversed in 0.15; starting then, all strings
are to be *decoded* instead of raw UTF-8.
0.13 Thu 12 Dec 2019
- Mojo connector now uses Mojo::Promise rather than Promise::ES6 and
exposes “*_p” aliases for initialize() and send_call().
0.12 Tue 20 Nov 2019
- Fix POD typo that misidentifies Mojo connector.
0.11 Mon 19 Nov 2019
- BUG FIX: initialize() now returns 1 after initial truthy return.
- Implement non-blocking connect().
- Add AnyEvent and IO::Async wrapper modules.
- Improve Peer.pm documentation.
0.10 Thu 16 May 2019
- Switch from Module::Load to Module::Runtime.
0.09 Sat 2 Mar 2019
- BREAKING CHANGE: send_call() no longer accepts “on_return”. Instead,
the method returns an instance of Promise::ES6. This affords more
flexibility than “on_return” and relieves callers of the responsibility
to determine whether the response succeeded or failed.
- Rename get_connection_name() to get_unique_bus_name(). (The former
name is retained as an alias.)
- Parser.pm now detects prematurely shut-down connections.
0.08 Wed 9 Jan 2019
- Document the send_return(), send_error(), and send_signal() methods.
- Switch to native byte order as default rather than little-endian.
0.07 Thu 20 Dec 2018
- Rename do_authn() to initialize(), and make it return falsy until the
“Hello” response arrives back. This removes the workflow state where
authn is done but the connection name is not yet established. I don’t
believe this should break anything since get_message() never actually
returned the “Hello” response.
- Rename authn_pending_send() to init_pending_send().
- Added DBUS_COOKIE_SHA1 authentication support.
- Implement fallback when server indicates authn mechanisms
besides EXTERNAL.
- EXTERNAL authn now attempts to auto-load Socket::MsgHdr except on
OSes (e.g., Linux, Cygwin) where it’s known not to make a difference.
- Fix parsing of DBus addresses
0.06 Sat 1 Dec 2018
- Socket::MsgHdr is no longer required.
- BREAKING CHANGE: Socket::MsgHdr must now be loaded prior to D-Bus
authentication in order for UNIX FD passing to work.
0.05 Thu 15 Nov 2018
- Add proper UNIX_FD support and an example of its use.
- Add preserve_variant_signatures() mode.
- Add send_signal() method.
- Update documentation, add README.md.
0.04 Wed 14 Nov 2018
- Fix DICT unmarshaling alignment.
- Add receive.pl example and two contributed ones.
0.03 Sun 11 Nov 2018
- Disable UNIX_FD stuff until it can be made to work.
0.02 Sun 11 Nov 2018
- Fix some examples, remove broken example script
0.01 Tue 2 Oct 2018
- Initial release