libei 1.5.0 is now available. libei is a library to send Emulated Input (EI) to a matching Emulated Input Server (EIS) which can receive those events with libeis, also part of this project.
libei uses GitLab releases, for tarballs please see: https://gitlab.freedesktop.org/libinput/libei/-/releases/ The protocol remains the same (bar many cleanups, typo fixes and rewordings) but on the C library side we have a few improvements: - previously a slow receiver would get disconnected as soon as the other side encountered a writers' block. This is now handled via a larger queue so disconnections will only happen in extreme cases. - for the socket backend, the new eis_backend_socket_get_client_pid() provides, perhaps unsurprisingly, the client PID - ei_event_ref() and ei_event_unref() are now available to clients in case the event needs to be kept outside the immediate scope. This should still be handled with care. - The handling of ei_pingpong and ei_sync is now that the pong/sync reply is sent when the respective event is unref'd (previously it was sent as soon as the event is retrieved from libei(s)). This allows e.g. an EIS implementation to complete processing of internal state before replying to the client. And of course a typical grab-bag of fixes all over the place. Many thanks to Axel Karjalainen, David Redondo, Eric Long, Ian Douglas Scott, Jason Gerecke, Jonas Ådahl, and Kacper Piwiński. Axel Karjalainen (5): test: fix false fail by actually looking for unbound capability mask doc: Correct meaning of ei_connection.disconnected docs: Make the description of context types more generic docs: Extend summaries docs: Fix issues and make some language clearer David Redondo (1): Make it possible to fetch the pid of a client in socket mode Eric Long (1): test: increase protocol-test-valgrind timeout Ian Douglas Scott (1): test: Advertise scroll/button interfaces in `test_connect_receive_seat` Jason Gerecke (5): scanner: Avoid trailing full stops in regex search for protocol names Fix MIT license header text proto: Correct spelling issues in the protocol documentation doc: Correct spelling errors in the code documentation oeffis: Correct spelling errors in log messages Jonas Ådahl (2): ei-device: Don't leak fd when receiving the keymap libeis: remove leftover debug log Kacper Piwiński (2): util: use already computed strlen util: don't call function in macro argument Peter Hutterer (21): ei: print the sequence number on error for a start_emulating event test: add a test for multiple start/stop emulating events eis: if a client is slow, queue up messages for future delivery CI: bump to Fedora 42 and latest ci-templates tools: handle EI_EVENT_SYNC in the demo client tools: print missing event types in the demo client test: remove an unused function test: add a bunch of strv helpers test: add ability to capture logs test: expose the ei socket fd to tests eis: don't warn about EPIPE, just debug-log it Swap accidental trailing comma for a semicolon ei: don't use the connection until we have one libei: fix the docs for the various _unref functions test: expand peck_new() to take varargs test: change peck_new_context to take varargs utils: add the etrace macro ei: indentation fix eis: send the interface version for the scroll interface eis: only send interface versions that the client announced eis: only send scroll/button capabilities if the client supports them
signature.asc
Description: PGP signature