-
36f16411
by Peter Hutterer at 2023-06-09T10:27:55+10:00
meson.build: bump to use gnu11 over gnu99
static asserts require C11
-
7beaef95
by Jeremy Bícha at 2023-08-11T08:16:11-04:00
New upstream version 0.99.2
-
b24c5585
by Jeremy Bícha at 2023-08-11T08:51:43-04:00
New upstream version 1.0.0
-
7ddd70e9
by Peter Hutterer at 2023-08-29T11:39:20+10:00
Add ei_device_get_region_at() to obtain a region for a point
Helper function so clients don't need to loop through the regions to
find the matching one.
-
b7ab63c3
by Peter Hutterer at 2023-08-30T09:11:08+10:00
util: fix iobuf_take_fd invalid memmove for multiple fds
Wrong calculation resulted in memmoving only the first 32 bytes (i.e. 8
fds) instead of the first 32 fds, resulting in an infinite loop when
cleaning up an iobuf with more than 8 fds.
-
2fbd2298
by Peter Hutterer at 2023-08-30T09:11:08+10:00
util: fix iobuf_append_fd OOB when we have too many fds
Cannot happen in deploymentts since we never have more than one anyway.
Fixes #43
-
76652350
by Peter Hutterer at 2023-08-30T09:18:26+10:00
Add a mapping_id to the regions
This allows a caller to match up a region with other data, e.g. in the
remote desktop case the same mapping_id can be assigned to the pipewire
stream that represents that output.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
-
e03c047b
by Peter Hutterer at 2023-08-30T09:36:40+10:00
proto: require Python 3.9
ei-scanner relies on some 3.9 features and since that has been out for
almost 3 years now, let's make it a requirement.
Fixes #39
-
7115e9c4
by Peter Hutterer at 2023-08-30T09:46:36+10:00
test: rework the oeffis dbus tests to be pytest-compatible
DBusMock is unittest based and the documentation points users to that
approach. That approach is limiting however because we can't use all
pytest features (see [1]). Luckily, the parent class in dbusmock doesn't
really do much so we can emulate the functionality ourselves - all we
need to do is call the same setUp/tearDowns and be done with it.
This means we can move the dbus-monitor and mainloop handling into
fixtures too which makes the code a fair bit nicer to read.
[1] https://docs.pytest.org/en/7.1.x/how-to/unittest.html#pytest-features-in-unittest-testcase-subclasses
-
4f2fd161
by Peter Hutterer at 2023-08-31T12:41:13+10:00
test: close the sockets on exit
-
8e95c7d8
by Peter Hutterer at 2023-08-31T12:41:13+10:00
util: add a strv_from_mem() helper function
Generates a strv with the buffer as hex string.
-
8f911d5e
by Peter Hutterer at 2023-08-31T12:41:13+10:00
test: log the buffers after reading from them
Should help debug some issues with the encoding
-
f235052f
by Peter Hutterer at 2023-08-31T12:41:13+10:00
test: ensure munit debug messages are visible on failure
-
abe85e05
by Peter Hutterer at 2023-08-31T13:20:05+10:00
meson: build libutil with hidden symbols visibility
We were leaking some of the utility functions, let's not do that.
This is technically an ABI break but if you're relying on libei to
export those functions...well, don't.
-
1bac0c28
by Peter Hutterer at 2023-08-31T13:30:36+10:00
CI: update the commit for the last ABI break
abe85e051 stopped the symbol leaks which will look like an ABI break.
-
90040096
by Peter Hutterer at 2023-08-31T13:37:13+10:00
test: rename a variable to avoid clashes
Future changes will use slen further below because it's the best name,
so let's rename this one since it's less impactful.
-
397ee6d7
by Peter Hutterer at 2023-08-31T13:37:13+10:00
brei: avoid pointer casts for 32/64 bit values
Copy those onto the buffer with a memcpy rather than via a
(const char *) cast to make sure we work on s390x too.
-
a223ce86
by Peter Hutterer at 2023-08-31T13:37:13+10:00
util: switch iobuf to uint8_t to avoid sign issues
char is signed or unsigned, so let's avoid this by using uint8_t.
-
f9c6ea30
by Peter Hutterer at 2023-08-31T13:37:13+10:00
brei: copy protocol strings out of the protocol buffers
With our strings being a 4-byte header followed by the string itself,
they're virtually guaranteed not to be 8-byte aligned. This causes an
issue on some architectures so we need to copy the string out before we
access it.
Since strings are the only protocol type with that extra buffer, let's
hack this in with the minimum effort approach - a null-terminated
char * pointer array that's filled with the strings as they appear in
on the wire. The brei_arg->s points to one of those strings as needed.
This means we can drop the brei_string struct, thanks to pointer alignment
issues this struct doesn't work on s390x, so let's drop it, it no longer
serves any meaningful value.
Fixes #41
-
931632ef
by Peter Hutterer at 2023-08-31T13:37:13+10:00
test: use munit_assert_uint64 for 64-bit values
Otherwise we only take the first 4 bytes which can fail on BE if we're
comparing an array directly (like we do for the string test).
-
16c7b157
by Peter Hutterer at 2023-08-31T13:42:25+10:00
test: fix 64-bit pointer access for the object ids
memcpy this out so we can compare them.
-
8713ef2d
by Peter Hutterer at 2023-08-31T14:06:49+10:00
libei 1.1.0rc1
-
ac16ba77
by Peter Hutterer at 2023-09-01T12:06:38+10:00
tools: start ei-debug-events for the fd we get from the oeffis demo tool
Once we get the fd, fork off ei-debug-events for that fd so we can debug
what the EIS implementation actually sends us.
-
c179b3da
by Peter Hutterer at 2023-09-01T12:18:20+10:00
tools: fix an indentation issue
-
d9d46305
by Peter Hutterer at 2023-09-01T12:18:20+10:00
tools/debug-events: print the region mapping id
This changes the region print format from a string to a dict
-
dbd0e971
by Jeremy Bícha at 2023-09-01T11:56:00-04:00
New upstream version 1.0.901
-
0820e29b
by Jason Gerecke at 2023-09-06T21:16:08+00:00
Correct documentation for ei_touch_(get|set)_user_data
-
82cdbc91
by Peter Hutterer at 2023-09-07T15:07:54+10:00
libei 1.1.0
-
4929aeae
by Alban Browaeys at 2023-09-14T02:01:04+02:00
Fix duplicate negation in log message
The test is meant for "not emulating", not "not not emulating".
-
273b5a4e
by Jeremy Bícha at 2023-09-23T12:44:47-04:00
New upstream version 1.1.0
-
381c6bea
by Peter Hutterer at 2023-10-05T23:00:20+00:00
ei: improve a debug message, the number we print is the serial
-
8f6c3558
by Peter Hutterer at 2023-10-11T00:41:13+00:00
util: fix clobbered errno in sink_add_source
-
95d1107c
by Peter Hutterer at 2023-10-11T00:41:13+00:00
util: allow sources to have write notifications
In case our outbound buffers are full we need we need to be able to have a
notification when we're able to write again.
There are two approaches to do this: one is to duplicate the source
(and dup() the fd) and use that for write notifications only. The other
approach is to toggle the source's EPOLLOUT flag on demand, thus
sharing the source dispatch. I picked the latter for simplicity.
-
69e973e6
by Peter Hutterer at 2023-10-11T00:41:13+00:00
ei: queue unsent messages for later delivery if our buffer is full
If our write buffer is full, enqueue the events instead and try to flush
them out later when we can write again.
Fixes #46
-
cefef7b1
by Peter Hutterer at 2023-10-11T00:41:13+00:00
Add a static assertion that EAGAIN == EWOULDBLOCK
Not sure what platforms this isn't the case on and I'm even less sure we
need to care so let's fail the build where this is the case and work it
out if someone complains.
-
fd2999ff
by Peter Hutterer at 2023-10-11T00:49:25+00:00
tools: add a --interval option to the demo server and client
Makes testing a few things easier.
-
d4bf8840
by Peter Hutterer at 2023-10-11T00:58:23+00:00
util: block SIGALRM during posix_fallocate
posix_fallocate() may be interrupted (EINTR), e.g. by SIGALRM in the X
server's smart scheduler. On slow systems and for large allocations
this means we cannot ever succeed so let's block SIGALRM like everyone
else does.
See e.g.
https://gitlab.freedesktop.org/xorg/xserver/-/commit/4cfee398726adf89db4b632ade7d6cab8b78282e
and the same code is in libwayland, libdecor, etc.
-
b8884770
by Peter Hutterer at 2023-10-11T12:25:53+10:00
CI: add a separate job for the documentation build
The pages job is only run once we push to main, so any issues with the
documentation build won't be picked up until it's too late. Split those
up and build the doc in a separate job, the pages job simply takes the
artifacts from that job and publishes them.
-
43b383eb
by Peter Hutterer at 2023-10-11T12:42:47+10:00
doc/protocol: fix some hugo warnings
WARN 2023/10/11 12:41:19 "_index.md": WARNING you must call the ref /
relref shortcode with '% %' instead of '< >' to work correctly for the
anchor target attribute
-
59097177
by Peter Hutterer at 2023-10-11T13:09:31+10:00
doc: use a specific revision of the hugo template
Upstream commit 1250bf30a8c2e3c1bfac285489bc63f2c395b641 somehow breaks
things. Doesn't affect hugo v0.111 (F39) but it does break on F38 on
v0.101.
Let's not waste more time debugging this, hardcode the template and in a
few weeks time we can switch to F39 as the build host.
-
3f768ecb
by Peter Hutterer at 2023-10-11T13:31:47+10:00
CI: add missing dependencies line
-
38244b8c
by Peter Hutterer at 2023-10-18T09:44:01+10:00
ei: if sending a message fails, don't send any more
Any error will cause ei_disconnect() which in turn unwinds our context.
Each object removed will cause an ei_send_message() to notify the server
but that will only cause error messages - our socket is already gone.
Fix this by removing the source and checking if the fd is still valid
before we write to it.
Fixes #47
-
5dcdc696
by Peter Hutterer at 2023-10-19T14:18:57+10:00
ei: remove the source if we get disconnected
If we get disconnected there's no point sending anything anymore, the
server may have already closed the connection.
Otherwise this produces a confusing warning in the log:
18:37:31 | INFO | Disconnected by EIS
... | WARN | failed to send message: Broken pipe
See https://gitlab.freedesktop.org/libinput/libei/-/merge_requests/262#note_2132619
-
2df570b2
by Peter Hutterer at 2023-10-24T18:22:48+10:00
tools: add an --iterations argument to ei-demo-client
Limits the number of poll() iterations before triggering a shutdown.
This allows us to use this tool for shutdown testing too - previously
it would just get killed and never performed a proper unwind.
-
cdbd1d9e
by Peter Hutterer at 2023-10-24T18:25:25+10:00
util: replace most of SIGALRM blocks with EINTR checks
SIGALRM *should* not really be an issue for us, most of our IO shouldn't
take long (posix_fallocate is the exception) so we can just retry it
instead of blocking someone's use of SIGALRM.
Doing it here mostly means that the rest of libei doesn't have to care
about EINTR, it'll just be handled transparently (just like before with
the SIGALRM blocks).
-
a3c80109
by Peter Hutterer at 2023-10-24T18:25:25+10:00
util: don't check for EINTR on close()
See https://gitlab.freedesktop.org/libinput/libei/-/merge_requests/261#note_2131802
-
19c949a4
by Peter Hutterer at 2023-10-24T18:25:25+10:00
util: retry posix_fallocate() if it fails
We block SIGALRM since d4bf8840a48854a822951707764b452bacf3dd56 so any
remaining EINTR is something we should probably retry with.
-
6758b997
by Peter Hutterer at 2023-10-24T18:25:25+10:00
util: add helper macros for the ELF section handling
-
f558eeda
by Peter Hutterer at 2023-10-24T18:25:25+10:00
util: add a global setup option to our munit wrapper
This allows us to handle/manipulate argv and/or pass a userdata to the
tests. Same ELF section approach as we already have with the MUNIT_TEST
macro but this time it's for a global setup.
Note that for the generated __start and __stop section variables we have
to have at least one entry in that section which we do with one
hardcoded (and ignored) one.
-
05d79f6e
by Peter Hutterer at 2023-10-24T18:25:25+10:00
test: set up a timer to trigger SIGALRM
Xwayland uses a timer for the scheduler which means any of our syscalls
can trigger EINTR. Let's make sure we may catch bugs related to that by
setting up our test suite to hammer us with timers.
Can't guarantee this will trigger all bugs but over time it may help or
at least ensure that the low-hanging fruit are all fixed.
-
57e7cd79
by Peter Hutterer at 2023-11-08T16:04:33+10:00
doc: drop the git depth from the hugo theme
We need a specific SHA so let's not risk that one being outside that
depth that we clone to.
-
f9c83ed9
by Peter Hutterer at 2023-11-08T23:24:45+00:00
test: expand log messages to accommodate for 4-digit line numbers
-
35832d9f
by Peter Hutterer at 2023-11-08T23:24:45+00:00
test: make peck_dispatch_until_stable() print more useful debug info
-
44e7f2cb
by Peter Hutterer at 2023-11-08T23:24:45+00:00
test: fix a test missing frame events
-
d31b5a1c
by Peter Hutterer at 2023-11-08T23:24:45+00:00
eis: only queue a seat bind event if the caps change
This triggered an internal bug message in test_ei_seat_bind_unbind_immediately.
If a client unbinds all capabilities this triggers an EIS_SEAT_BIND with
zero caps. peck would call eis_seat_remove() which calls eis_seat_drop().
That queued another EIS_EVENT_SEAT_BIND with zero capabilities, leading
peck to call eis_seat_remove() again on an already removed seat.
-
34c83370
by Peter Hutterer at 2023-11-08T23:24:45+00:00
eis: fix a typo
-
fae41aac
by Peter Hutterer at 2023-11-08T23:24:45+00:00
test: hack a peck_debug() function
To make it easier to print something debuggy from a test.
This is the MVP, it always requires an argument after the format string
but it'll do for now.
-
7999483a
by Peter Hutterer at 2023-11-09T10:15:38+10:00
test: make bug logs fatal by default
We don't want to paper over bugs in the implementation, so let's make
any ei/eis error message with a bug in it fatal by default.
This needs to be disabled where we test for known-buggy client/EIS
behavior.
-
4e634aa7
by Peter Hutterer at 2023-11-09T12:47:06+10:00
test: add the ability to add offsets to ei_now()
Build a separate libei-eierpecken.so that is identical to libei.so but
allows adding an offset to ei_now() for the eierpecken tests. That
offset is added to the return value of ei_now(), removing the real-time
dependency of the tests.
In other words, we can call peck_ei_add_time_offset(peck, s2us(5)) to
add 5 seconds to the time and continue the test as if that time has
elapsed.
-
924341e1
by Peter Hutterer at 2023-11-09T12:47:06+10:00
ei: keep a cache of defunct objects to avoid spamming the log
Because of the asynchronous protocol, we may get this interaction
server sends A->destroyed()
client sends A->foo()
client receives A->destroyed()
server receives A->foo()
server sends invalid_object_id(A)
client receives invalid_object_id(A)
Previously we dropped the object after destroyed() and were thus
guaranteed to warn about the invalid object id for that same object
later.
Fix this by keeping a cache of defunct object IDs that we know about and
ignoring errors for recently dropped objects.
Every 20 ei_dispatch() calls we drop any defunct objects that were
unregistered more than 5 seconds ago.
Fixes #49
-
38132d6f
by Peter Hutterer at 2023-11-09T12:55:56+10:00
ei: improve debug messages for keymap failures
Let's be more informative about what failed.
Fixes #48
-
9697aa9c
by Peter Hutterer at 2023-12-05T14:25:10+10:00
pre-commit: autoupdate and add two more useful checkers
We don't have symlinks but let's check for them anyway. And check for
merge conflict leftoers too.
-
49363168
by Peter Hutterer at 2023-12-06T08:19:00+10:00
libei 1.2.0
-
06a8819d
by Jeremy Bícha at 2023-12-05T18:53:33-05:00
New upstream version 1.2.0
-
55e5deed
by Peter Hutterer at 2023-12-13T17:55:16+10:00
ci: bump to use F39
And drop the job to test the minimum meson version in the process. F39
ships with python 3.12 which causes this error with meson 0.56.0
proto/meson.build:17:0: ERROR: <ExternalProgram 'python3' -> ['/usr/bin/python3']> is not a valid python or it is missing setuptools
We could put the effort into setting up the CI to fix this, but we
won't.
-
97d66604
by Peter Hutterer at 2023-12-14T10:41:19+10:00
CI: drop the git depth for the ABI check job
We need to make sure that we can checkout whichever sha was the last ABI
break.
-
eaed3883
by Peter Hutterer at 2023-12-14T10:44:54+10:00
CI: fix a hardcoded fedora and replace it with the jinja var
-
870123f5
by Peter Hutterer at 2023-12-14T10:44:54+10:00
CI: move the minium meson version job to debian
See 55e5deedd8d2681e1c87a14f2d92008b89888f47 where this job was removed.
-
6ce695db
by Peter Hutterer at 2023-12-14T00:58:18+00:00
test: yield the proxy, not the subprocess for the liboeffis fixtures
There's virtually no use for the process, so let's yield the proxy
object instead because we can make use of that.
-
d2977865
by Peter Hutterer at 2023-12-14T00:58:18+00:00
oeffis: OEFFIS_DEVICE_ALL_DEVICES should translate to "all"
As the portal documentation [1] says:
Bitmask of what device types to request remote controlling of. Default is all.
The default is only triggered if we do not submit the types at all, the
current behavior of sending a value of 0 means "none". Fix this by
skipping the "types" key if we try to select for all devices.
[1] https://flatpak.github.io/xdg-desktop-portal/docs/doc-org.freedesktop.impl.portal.RemoteDesktop.html
-
08f1d410
by Peter Hutterer at 2024-02-05T13:33:04+10:00
libei 1.2.1
-
93efd3d1
by David Redondo at 2024-03-05T22:47:05+00:00
eis-demo-server: Send a sensible discrete scroll value
So it can be a good example for people and doesn't log about
server bugs.
-
54ca521d
by Peter Hutterer at 2024-03-12T04:25:33+00:00
proto: highlight the region 'hight' typo in the documentation
Changing this would be an API-breaking change (depending on how
bindings are generated) so we'll have to live with this typo for the
foreseeable future.
Closes #53
-
a91dac8d
by Jeremy Bícha at 2024-04-01T14:18:51-04:00
New upstream version 1.2.1
-
33b4a619
by Matt Turner at 2024-04-08T12:21:09-04:00
test: Raise SIGALRM interval to 50µs
On some platforms, an interval of 5µs is short enough that the test
spends its time almost exclusively processing SIGALRMs and never
progresses otherwise. Raising the interval to 50µs allows the test to
pass in a fraction of a second.
Bug: https://bugs.gentoo.org/916777
Closes: https://gitlab.freedesktop.org/libinput/libei/-/issues/50
-
23f05643
by David Redondo at 2024-04-09T06:39:13+00:00
Fix API docs for EIS_EVENT_CLIENT_CONNECT
The functions with event in their name don't exist.
-
da1fa204
by Peter Hutterer at 2024-07-24T12:29:48+10:00
meson.build: bump the meson version by one
This allows us to drop one version check
-
9ee399c8
by Peter Hutterer at 2024-07-24T17:39:04+10:00
CI: Lock hugo to v0.111 to allow for distro updates
F40 now ships v0.121 which again breaks something in the relearn theme
so let's lock our version here to one we know works and move on with
life. I can't be bothered to relearn hugo and themes every few months
just for a single static website.
-
40598203
by Peter Hutterer at 2024-07-24T20:19:44+10:00
CI: bump to Fedora 40
-
267716a7
by Peter Hutterer at 2024-07-25T11:11:02+10:00
proto: mark the explanation in disconnect as nullable
This is the only string in the current protocol that is nullable and our
DTD allows for that so it's not even an API break. Yay.
Closes #54
-
87705ef9
by Peter Hutterer at 2024-07-25T11:11:07+10:00
scanner: handle the allow-null attribute for arguments
Currently unused but it's exposed, so yay...
-
0f811145
by Peter Hutterer at 2024-07-25T01:17:39+00:00
Fix region check for devices with multiple regions
Use the ei(s)_device_in_region() to check for any region.
Closes #56
-
a424458f
by Peter Hutterer at 2024-07-25T01:17:39+00:00
Devices without regions pass coordinates as-is
If a device doesn't have a region (e.g. physical device) the answer to
"is this in the region" is always yes.
Closes #56
-
eb1d5a7e
by Peter Hutterer at 2024-07-29T14:32:40+10:00
test: drop a custom cleanup func in favor of _unref_
-
c4ac0841
by Peter Hutterer at 2024-07-29T14:48:34+10:00
util/memmap: add a helper wrapper around mmap
Makes this easier to use with our unref functions.
-
dc153c50
by Peter Hutterer at 2024-07-29T14:48:34+10:00
util/memfile: include stddef for size_t
-
6ea468c8
by Peter Hutterer at 2024-07-29T14:48:34+10:00
util/memfile: use MAP_SHARED to create the map
Using MAP_PRIVATE means copy-on-write so our data written into the map
immediately disappears again. This leads to a empty string when sending
a keymap to a client.
-
a924888f
by Peter Hutterer at 2024-07-29T14:53:35+10:00
ei-demo-client: use mmap to read the keymap
Closes #55
-
3e2e43e3
by Peter Hutterer at 2024-07-29T14:54:31+10:00
ei-demo-client: use xkb_keymap_new_from_buffer()
This is the more correct approach since we get a sized buffer from the
server and people may use this as reference code in their implementation.
Technically we cannot expect a true zero-terminated string from EIS.
Unfortunately this means we need to work around
libxkbcommon#307 to strip trailing zeroes from the buffer if any exist.
-
865d7152
by Peter Hutterer at 2024-07-29T05:15:53+00:00
util: replace a strncpy with a memcpy
We know exactly the lengths of everything involved here so let's use
memcpy. This way we don't need the stringop-truncation warning (a pragma
clang doesn't support anyway).
-
e8a84435
by David Redondo at 2024-07-31T07:05:48+00:00
oeffis: Make ConnectToEIS call async
A blocking call can be problematic when done from inside Xwayland
to the compositor as the compositor could be doing a blocking X call
at the same time. In this instance we found it's likely to happen
because this call will happen shortly after the user accepted the
This is not a problem for the other calls because the portal API
is async for these via request response signalling.
-
b67cdba8
by Peter Hutterer at 2024-08-01T11:56:23+10:00
CI: avoid duplicate pipelines
-
5331dc0b
by Peter Hutterer at 2024-08-01T02:09:29+00:00
proto: the keymap event is optional, clarify that
A device may not have a keymap in which case it just sends scancodes
hoping they'll be mapped to something sensible.
-
a5dd5a5e
by Peter Hutterer at 2024-08-01T02:09:29+00:00
proto: fix a wrong interface reference: callback -> pingpong
-
0b2f46e1
by Peter Hutterer at 2024-08-01T02:09:29+00:00
proto: note that a touch without a region is a EIS bug
-
438140fe
by Peter Hutterer at 2024-08-01T02:09:29+00:00
proto: correct the ei_device.interface documentation
Remove leftovers from when this was an ei_device.capability event
but since removed, see [1]. Instead make clear that this needs to be
one of the bound interfaces.
[1] a902d5dbd859 ("protocol: replace the capabilities enum with an interface list")
-
362c4c39
by Peter Hutterer at 2024-08-01T02:09:29+00:00
proto: remove vestiges of ei_device.capability
This is now obsolete after [1]. The ei_device.interface event announces
which interfaces are available on the device so we don't need
documentation to say "it's a bug to send this request if the device
doesn't have the capability" since the client won't have the interface
to begin with.
Fixes: a902d5dbd859 ("protocol: replace the capabilities enum with an interface list")
-
d6a8a5e9
by Peter Hutterer at 2024-08-01T02:09:29+00:00
proto: clarify that a client bug means ignored and/or disconnected
-
798b0966
by Peter Hutterer at 2024-08-01T02:09:29+00:00
proto: clarify that the scale factor is a multiplication factor
-
712e9513
by Peter Hutterer at 2024-08-01T02:09:29+00:00
protocol: correct false references to interface_version
This is the handshake_version request/event, not the
ei_connection.interface_version.
-
2f887267
by Peter Hutterer at 2024-08-01T02:09:29+00:00
proto: add an extra reference to the interface_version event
Just in case, so it's more obvious that those two negotiate each other.
-
54dd4353
by Peter Hutterer at 2024-08-01T02:09:29+00:00
proto: remove ambiguous wording hunk from the interface_version event
This wording is confusing, see
https://gitlab.freedesktop.org/libinput/libei/-/issues/59#note_2501641
Remove the explicit mention of interfaces with client-side created
objects so we fall back to the default "client announces, server
confirms" which is all we need here anyway.
-
917b79f8
by Peter Hutterer at 2024-08-01T02:09:29+00:00
proto: clarify the ei_keyboard.modifier event a bit
This is an event in response to "something change the modifier state"
where "something" was not an ei_keyboard.key event on this interface.
Examples are NumLock on after resumed, a nonzero XKB group, etc.
Closes #57
-
e411b85a
by Peter Hutterer at 2024-08-07T10:47:25+10:00
Print the event type name for invalid events
-
9f82bbf3
by Peter Hutterer at 2024-08-07T10:51:12+10:00
test: add tests for multiple regions
Adds the test for
commit 0f8111454422 ("Fix region check for devices with multiple regions")
-
ebde54f3
by David Redondo at 2024-08-08T09:54:13+10:00
ei-demo-client: Remove obsolote portal option
-
cf4ab5e7
by David Redondo at 2024-08-08T09:55:43+10:00
Allow passing a fd to ei-demo-client
Like in ei-debug-events
-
997b7c0f
by Peter Hutterer at 2024-08-08T10:18:24+10:00
libei 1.3.0
-
0413da34
by Jeremy Bícha at 2024-08-15T08:27:55-04:00
New upstream version 1.3.0
-
6230e187
by Peter Hutterer at 2024-08-22T12:12:20+10:00
README: reword the blurb about short lived applications
This particular wording dates to when libei created devices and the EIS
implementation would ack/nack those devices. This isn't the case anymore
so let's reword this a bit.
Closes #62
-
37cc857a
by Peter Hutterer at 2024-09-03T04:00:33+00:00
doc: demote the socket backend in the documentation
The socket backend is useful for debugging and testing but not for real
user-cases where the fd negotiation should be handled by the caller
(e.g. passing it down through the portal). Let's demote the socket
backend in favour of the fd backend.
Related https://gitlab.freedesktop.org/libinput/libei/-/issues/63
-
bf03c563
by Peter Hutterer at 2024-09-11T12:25:41+10:00
Add a few missing va_end
Found by gcc -fanalyze
-
ec031bc4
by Peter Hutterer at 2024-09-11T12:26:40+10:00
test: add a few non-null checks to make the static analyzer happy
-
22c94fd9
by Peter Hutterer at 2024-09-11T12:26:59+10:00
util: silence out-of-bounds read warning
gcc -fanalyze complains because it doesn't know the __stop section is
always greater than the __start section so it complains that we're
eventually reading past our __start section. Let's silence that with a
simple check.
-
e3091a18
by Peter Hutterer at 2024-09-11T12:27:38+10:00
util: fix a comment to use the right decimal marker for english
-
bbc1f8de
by Peter Hutterer at 2024-09-11T12:27:38+10:00
util: fix a leaking fd in a test
-
005c4ac4
by Peter Hutterer at 2024-09-11T12:27:38+10:00
util: use xalloc instead of calloc to avoid NULL checks
-
55fe9303
by Peter Hutterer at 2024-09-11T12:27:38+10:00
oeffis: rewrite sender_name to make the analyzer happy
Technically we need to check allocation failure of sender after xstrdup
but in doing so we might as well xalloc it and copy chars over
one-by-one.
No functional changes.
-
96609f82
by Peter Hutterer at 2024-09-11T12:27:38+10:00
util: do an allocation null check in strstrip
-
a5826424
by Peter Hutterer at 2024-09-11T12:27:38+10:00
util: correct the fd validity check
Unlikely but the fd returned may be 0
-
dbc06510
by Peter Hutterer at 2024-09-12T00:39:09+00:00
scanner: switch to using dataclasses
This drops one dependency that we're not fully using anyway. Except for
the per-attribute validators that can be done in __post_init() we're not
using attrs for anything that dataclasses cannot do.
-
0770fec4
by Peter Hutterer at 2024-10-17T16:18:51+10:00
Drop black, switch to ruff format
-
d593127c
by Peter Hutterer at 2024-11-26T15:33:36+10:00
Revert "util: silence out-of-bounds read warning"
(t < &start_test_function_section) is never true so this commit ended up
disabling the unit tests altogether. That may shut up -fanalyze but
is somewhat of a regression in functionality...
This reverts commit 22c94fd916d13573ba5ace10ae3852e196c33ddf.
-
37ea2164
by Peter Hutterer at 2024-11-27T02:13:53+00:00
test: print the line no for peck_ei(s)_assert_no_events
-
a491580f
by Peter Hutterer at 2024-11-27T02:13:53+00:00
test: improve debugging for failed event type comparisons
-
1cf06d0a
by Peter Hutterer at 2024-11-29T12:27:48+10:00
tools: fix colorprint in the demo server
This ended up as multiple print calls, better to compile the lot into a
single print message so its output can be collected correctly by pytest.
Part-of: <https://gitlab.freedesktop.org/libinput/libei/-/merge_requests/312>
-
11aa1039
by Peter Hutterer at 2024-11-29T12:27:48+10:00
tool: allow for touchscreen-only seat in the demo server
Part-of: <https://gitlab.freedesktop.org/libinput/libei/-/merge_requests/312>
-
80bbcc67
by Peter Hutterer at 2024-11-29T12:27:48+10:00
libei: fix an error message, spurious 'd'
Part-of: <https://gitlab.freedesktop.org/libinput/libei/-/merge_requests/312>
-
b3a42439
by Peter Hutterer at 2024-12-02T00:23:14+00:00
test: make the c++ build test mirror the c build test
Part-of: <https://gitlab.freedesktop.org/libinput/libei/-/merge_requests/310>
-
247b6acd
by Peter Hutterer at 2024-12-02T00:23:14+00:00
meson.build: allow disabling libei and libeis
This is primarily a development feature because it makes it easier to
develop a new feature for just one library without having to worry
about build errors in the other library (e.g. when new protocol parts
are added).
Part-of: <https://gitlab.freedesktop.org/libinput/libei/-/merge_requests/310>
-
1f0cc835
by Peter Hutterer at 2024-12-02T10:28:19+10:00
ei: declare struct ei_touch
Part-of: <https://gitlab.freedesktop.org/libinput/libei/-/merge_requests/313>
-
076e8bc6
by Peter Hutterer at 2024-12-02T10:28:19+10:00
proto: correct some documentation regarding ei_touchscreen
Part-of: <https://gitlab.freedesktop.org/libinput/libei/-/merge_requests/313>
-
327dd4f8
by Peter Hutterer at 2024-12-03T13:18:54+10:00
test: fix string encoding in the python test bindings
The protocol encoding is the string including the null byte. The test
wrappers sent the right string length but only encoded strlen() bytes so
where we had a string that's a multiple of 4 long we ended up claiming
it's a byte longer than was on the wire.
Part-of: <https://gitlab.freedesktop.org/libinput/libei/-/merge_requests/314>
-
b33317cd
by Peter Hutterer at 2024-12-03T05:25:33+00:00
util: Add the trace() debugging macro
Copied from libinput but pushed into util-macros with the color escape
codes expanded for simplicity.
Part-of: <https://gitlab.freedesktop.org/libinput/libei/-/merge_requests/315>
-
62ae6f5e
by Peter Hutterer at 2024-12-05T02:44:56+00:00
ei: make ei_disconnect() public
Previously the only way to disconnect from the EIS implementation was
to call ei_unref() and release all resources. This makes it more
difficult for shared cleanup code - clients already have code in place
to deal with DEVICE_REMOVED, SEAT_REMOVED, etc. but that code has to
be triggered manually before ei_unref() is called.
OTOH where the server disconnects us, libei already unwound the state
so we would artificially generate these removed events, allowing the
client to clean up.
Make life easier for client by allowing them to ei_disconnect() and
get the benefits of our state unwinding. ei_disconnect() was already
used internally to disconnect on any error so this merely makes this
function public.
Closes #67
Part-of: <https://gitlab.freedesktop.org/libinput/libei/-/merge_requests/311>
-
0cf12a88
by Peter Hutterer at 2024-12-06T16:48:48+10:00
eis: remove pending events on eis_device_remove()
This fixes a memleak caused by anything having a device ref when
ei_device_remove() is called. This can happen e.g. if there is a pending
event that hasn't been flushed with a ei_device.frame yet.
Example Sequence:
- client sends an event, event is queued to pending with a ref to the
device
- next event causes a client disconnect, queuing an emulated seat bind
of 0
- server calls eis_device_remove()
- client calls eis_device_unref()
One ref is still held in the pending event that was never visible to the
server, preventing the device from being freed.
Part-of: <https://gitlab.freedesktop.org/libinput/libei/-/merge_requests/317>
-
c169ac63
by Peter Hutterer at 2024-12-06T16:48:48+10:00
test: keep the announced interface as local variable
This will be more prominent as we add new interface versions and hooking
it up via the right signals is better than analyzing the calllog.
Part-of: <https://gitlab.freedesktop.org/libinput/libei/-/merge_requests/317>
-
7619bfa9
by Peter Hutterer at 2024-12-06T16:48:48+10:00
test: switch a bool([...]) to any()
Part-of: <https://gitlab.freedesktop.org/libinput/libei/-/merge_requests/317>
-
96f20ae3
by Peter Hutterer at 2024-12-06T16:48:48+10:00
test: ignore a ConnectionResetError during our dispatch
If our server disconnects us with data still in the pipe we never picked
up on that data causing heisenbugs depending on whether we read things
(esp. the "disconnected" event) fast enough or not.
Part-of: <https://gitlab.freedesktop.org/libinput/libei/-/merge_requests/317>
-
60bc264e
by Peter Hutterer at 2024-12-06T16:48:48+10:00
test: ignore a failure to send a pong
Our automatic pong handler unconditionally sends a Pong back to the EIS
implementation. For some tests and depending on timing we may have
been disconnected already, resulting in a BrokenPipeError that fails
us the test. Ignore that error.
Part-of: <https://gitlab.freedesktop.org/libinput/libei/-/merge_requests/317>
-
9ee33b01
by Peter Hutterer at 2024-12-06T16:48:48+10:00
test: fix a spuriously failing timeout
When running repeated tests in parallel, this one eventually fails
because the ei.send() doesn't trigger the expected BrokenPipeError.
Use ei.dispatch() instaed and check whether the connection still exists.
Part-of: <https://gitlab.freedesktop.org/libinput/libei/-/merge_requests/317>
-
2acf42db
by Peter Hutterer at 2024-12-09T12:41:24+10:00
tools/debug-events: add missing linebreaks to the modifier event
Part-of: <https://gitlab.freedesktop.org/libinput/libei/-/merge_requests/320>
-
beb1de62
by Peter Hutterer at 2024-12-10T09:37:45+10:00
ei: indentation fix
Part-of: <https://gitlab.freedesktop.org/libinput/libei/-/merge_requests/321>
-
f2811418
by Peter Hutterer at 2024-12-10T09:39:04+10:00
proto: add two missing comments for consistency
Part-of: <https://gitlab.freedesktop.org/libinput/libei/-/merge_requests/321>
-
504afdea
by Peter Hutterer at 2024-12-10T05:06:49+00:00
test: drop the use of attr
All our uses can be done with dataclasses so we don't need an external
package.
Part-of: <https://gitlab.freedesktop.org/libinput/libei/-/merge_requests/319>
-
d4b60a7d
by Peter Hutterer at 2024-12-10T05:06:49+00:00
test: rename a variable to shut up ruff with default args
We disable that warning in the CI and pre-commit but it's a simple
fix here that makes sense.
test/test_oeffis.py:185:9: E741 Ambiguous variable name: `l`
Part-of: <https://gitlab.freedesktop.org/libinput/libei/-/merge_requests/319>
-
cdec01da
by Peter Hutterer at 2024-12-10T05:06:49+00:00
CI: force all auto features to enabled
Since we will automatically disable bits if required dependencies
aren't present let's make sure at least our CI complains.
Closes #70
Part-of: <https://gitlab.freedesktop.org/libinput/libei/-/merge_requests/319>
-
561cfd00
by Peter Hutterer at 2024-12-11T10:09:34+10:00
doc: unwinding state before stop_emulating is the caller's responsibility
Part-of: <https://gitlab.freedesktop.org/libinput/libei/-/merge_requests/308>
-
739ea0f3
by Peter Hutterer at 2024-12-17T15:11:54+10:00
protocol: fix the description summary for the touch events
Part-of: <https://gitlab.freedesktop.org/libinput/libei/-/merge_requests/308>
-
b1c1c5d5
by Peter Hutterer at 2024-12-17T15:12:56+10:00
Add the ei_touchscreen.cancel event and ei_touch_cancel()
In the protocol it's a new request/event that is sent instead of the
touch up event.
In the library this is implemented as ei_touch_cancel() which
transparently sends cancel() or up depending on the EIS implementation
support. This is mirrored for the EIS implementation.
Where touch cancel is received as an event it is presented
as EI_EVENT_TOUCH_UP with an ei_event_touch_is_cancel() flag to
check if it was a cancel. This is required for backwards compatbility,
we cannot replace the TOUCH_UP event with a TOUCH_CANCEL event without
breaking existing callers. To add a new event type we would need clients
announcing support for those event types but that's an effort that's
better postponed until we have a stronger need for it (see #68).
Closes #60
Part-of: <https://gitlab.freedesktop.org/libinput/libei/-/merge_requests/308>
-
9c35a57c
by Peter Hutterer at 2024-12-17T15:59:02+10:00
doc: fix some linewrapping issues
Part-of: <https://gitlab.freedesktop.org/libinput/libei/-/merge_requests/322>
-
3c88c0d3
by Peter Hutterer at 2024-12-17T15:59:02+10:00
tools/demo-server: note that aborting on unknown events is bad
Part-of: <https://gitlab.freedesktop.org/libinput/libei/-/merge_requests/322>
-
91e0b896
by Peter Hutterer at 2024-12-17T16:00:59+10:00
doc: specifically mention that unknown events must be unref'd
And document the event type enums as non-exhaustive.
Part-of: <https://gitlab.freedesktop.org/libinput/libei/-/merge_requests/322>
-
95eb3c4b
by Peter Hutterer at 2024-12-18T04:30:01+00:00
ei: revamp the internal sync callback
In prep work for exposing some of this to the caller, this adds a new
object that carries the our callbacks including the user data (if any).
This is an internal system only and is only used in the handshake
implementation where we don't have userdata anyway.
The new approach is: the callback has an object with a done() and
destroy() callback and the user data, done() is called when we receive
the message from the protocol, destroy() on destroy regardless whether
we got done() first.
This allows a caller to clean up user data even where the callback was
not triggered because we got disconnected first.
Part-of: <https://gitlab.freedesktop.org/libinput/libei/-/merge_requests/316>
-
2cc5e56e
by Peter Hutterer at 2024-12-18T04:30:01+00:00
eis: revamp the internal sync callback
Identical to "ei: revamp the internal sync callback" but for libeis.
In prep work for exposing some of this to the caller, this adds a new
object that carries the our callbacks including the user data (if any).
This is an internal system only and is only used in the handshake
implementation where we don't have userdata anyway.
The new approach is: the callback has an object with a done() and
destroy() callback and the user data, done() is called when we receive
the message from the protocol, destroy() on destroy regardless whether
we got done() first.
This allows a caller to clean up user data even where the callback was
not triggered because we got disconnected first.
Part-of: <https://gitlab.freedesktop.org/libinput/libei/-/merge_requests/316>
-
a278c7b3
by Peter Hutterer at 2024-12-18T04:30:01+00:00
ei: add ei_ping() and the matching EI_EVENT_PONG
This wraps around ei_connection.sync to allow a C API user to add
synchronization points.
Closes #69
Part-of: <https://gitlab.freedesktop.org/libinput/libei/-/merge_requests/316>
-
e4079640
by Peter Hutterer at 2024-12-18T04:30:01+00:00
eis: add eis_ping() and the matching EIS_EVENT_PONG
Identical to "ei: add ei_ping() and the matching EI_EVENT_PONG" but for
libeis.
This wraps around ei_connection.ping to allow a C API user to add
synchronization points.
Closes #69
Part-of: <https://gitlab.freedesktop.org/libinput/libei/-/merge_requests/316>
-
97101342
by Peter Hutterer at 2024-12-18T04:30:01+00:00
test: add a test for sync events during frames
Part-of: <https://gitlab.freedesktop.org/libinput/libei/-/merge_requests/316>
-
73e0e8d3
by Peter Hutterer at 2024-12-18T04:30:01+00:00
eis: add EI_EVENT_SYNC as opaque event to correctly schedule callbacks
This event is required to fix an issue with the current
ei_callback.done handling in libeis: previously we would imediately send
the ei_callback.done upon receiving ei_connection.sync from the client.
This results in incorrect behavior as we may have events in the queue
(and/or pending a frame) that the EIS implementation hasn't seen yet.
For example a client sending:
- ei_pointer.motion
- ei_connection.sync
- ei_device.frame
- ei_connection.sync
Will queue a motion + frame event on the EIS side during eis_dispatch()
but immediately receive done events for both sync requests.
This could be handled purely internally by keeping the sync event in the
queue but hidden to the caller - and automatically calling done when
it's that events turn, i.e. something like:
```
struct eis_event *eis_get_event(struct eis) {
struct eis_event *e = first_event(eis);
if (e == EIS_EVENT_SYNC) {
eis_callback_send_done(e);
eis_event_unref(e);
e = next_event(eis);
}
return e;
}
```
but that opens us up to a set of potential bugs detailed in
https://gitlab.freedesktop.org/libinput/libei/-/issues/71#note_2694603
So let's go the easy route by having a new event type that does nothing
other than eis_event_unref() in the EIS implementation. This way we can
queue the event and have everything behave in-order and as expected.
Closes #71
Part-of: <https://gitlab.freedesktop.org/libinput/libei/-/merge_requests/316>
-
564f14a7
by Peter Hutterer at 2024-12-18T04:30:01+00:00
ei: add EI_EVENT_SYNC as opaque event to correctly schedule callbacks
See the corresponding eis commit for details.
Part-of: <https://gitlab.freedesktop.org/libinput/libei/-/merge_requests/316>
-
1152c038
by Erik Jensen at 2024-12-18T04:41:11+00:00
Specify MODIFIERS to be sent for any state change.
Updates protocol and API documentation to specify that the modifiers
event should be sent by the EIS implementation every time the modifier
or group state changes, including when the change is triggered by key
events on the emulated keyboard.
The previous approach of expecting the client to track modifier state
using xkb_state_update_key() for injected keys resulted in multiple
opportunities for the client and server to get out of sync (both due to
unavoidable race conditions and due the client not having access to the
complete state used by the server to calculate state changes), with no
way for the client to ensure it had a correct modifier map short of
unbinding and rebinding the seat.
The new approach allows the client to track state solely by applying
modifiers events with xkb_state_update_mask(), simplifying client
implementation. Because the event is sent for all changes, the client
can use ei_connection.sync / ei_ping() to ensure that it has received
the latest state incorporating all key requests sent prior to the sync
request (along with any externally-caused modifier state changes that
may have occured up to the time the sync message was received).
Part-of: <https://gitlab.freedesktop.org/libinput/libei/-/merge_requests/318>
-
6bbb3c59
by Peter Hutterer at 2025-02-03T12:05:56+10:00
proto: fix a trailing whitespace
Part-of: <https://gitlab.freedesktop.org/libinput/libei/-/merge_requests/323>
-
6068f3b1
by Peter Hutterer at 2025-02-03T13:13:59+10:00
CI: drop the python-black naming from the ruff job
Fixes: 0770fec43392 ("Drop black, switch to ruff format")
Part-of: <https://gitlab.freedesktop.org/libinput/libei/-/merge_requests/325>
-
fb85496a
by Peter Hutterer at 2025-02-03T13:17:12+10:00
pre-commit: update to the latest version of our hooks
Part-of: <https://gitlab.freedesktop.org/libinput/libei/-/merge_requests/325>
-
76845ecd
by Peter Hutterer at 2025-02-03T13:17:34+10:00
Reformat for ruff 0.9
New formatting rules, apparently.
Part-of: <https://gitlab.freedesktop.org/libinput/libei/-/merge_requests/325>
-
d25ceaff
by Peter Hutterer at 2025-02-03T13:33:25+10:00
libei 1.4 RC1
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
-
f3a1f79b
by Jeremy Bícha at 2025-02-04T13:50:28-05:00
New upstream version 1.3.901
-
1c16877f
by Jeremy Bícha at 2025-09-04T17:17:24-04:00
Import autopkgtest addition from Seb Bacher
-
bb0e963c
by Jeremy Bícha at 2025-09-04T17:21:21-04:00
New upstream version 1.0.901
-
787bb130
by Jeremy Bícha at 2025-09-04T17:21:22-04:00
Update upstream source from tag 'upstream/1.0.901'
Update to upstream version '1.0.901'
with Debian dir 24de1636c05d79c20045a64511e0824b7ef01797
-
f47122b9
by Jeremy Bícha at 2025-09-04T17:21:54-04:00
New upstream release
-
d61a5dc3
by Jeremy Bícha at 2025-09-04T17:21:55-04:00
don't ignore s390x
-
83fea700
by Jeremy Bícha at 2025-09-04T17:22:12-04:00
Update symbols files
-
568d803b
by Jeremy Bícha at 2025-09-04T17:22:14-04:00
releasing package libei version 1.0.901-1
-
f24d89e7
by Jeremy Bícha at 2025-09-04T17:22:32-04:00
debian/copyright: Add copyright for debian/* per ftpmaster request
-
d8eab600
by Jeremy Bícha at 2025-09-04T17:22:33-04:00
releasing package libei version 1.0.901-2
-
ebf44672
by Jeremy Bícha at 2025-09-04T17:22:46-04:00
Extend dh_auto_test timeout
for hppa 🫤
-
7420fa93
by Jeremy Bícha at 2025-09-04T17:22:47-04:00
debian/tests/control: Depend on valgrind-if-available instead of valgrind
-
852bf4e9
by Jeremy Bícha at 2025-09-04T17:22:48-04:00
releasing package libei version 1.0.901-3
-
dbdf349a
by Jeremy Bícha at 2025-09-04T17:25:53-04:00
New upstream version 1.1.0
-
a29c70ce
by Jeremy Bícha at 2025-09-04T17:25:55-04:00
Update upstream source from tag 'upstream/1.1.0'
Update to upstream version '1.1.0'
with Debian dir 67509f988d5e84f25746eda733ba97d80d94b311
-
f2d3e3e3
by Jeremy Bícha at 2025-09-04T17:27:15-04:00
New upstream release
-
2a1c7432
by Jeremy Bícha at 2025-09-04T17:27:16-04:00
releasing package libei version 1.1.0-1
-
8d693b22
by Jeremy Bícha at 2025-09-04T17:28:01-04:00
New upstream version 1.2.0
-
56bd7081
by Jeremy Bícha at 2025-09-04T17:28:02-04:00
Update upstream source from tag 'upstream/1.2.0'
Update to upstream version '1.2.0'
with Debian dir 7cb6dd9719b081fa5c868858270b6ea41774e3bc
-
951218f3
by Jeremy Bícha at 2025-09-04T17:28:06-04:00
New upstream release
-
47ca0ddd
by Jeremy Bícha at 2025-09-04T17:28:09-04:00
debian/*.symbols: Add new symbols
-
b084d9db
by Jeremy Bícha at 2025-09-04T17:28:10-04:00
releasing package libei version 1.2.0-1
-
74074210
by Jeremy Bícha at 2025-09-04T17:28:36-04:00
New upstream version 1.2.1
-
e5e18402
by Sebastien Bacher at 2025-09-04T17:29:29-04:00
* debian/patches/disable_sigalrm_tests.patch:
- disable the sigalrm tests for now as suggested by upstream,
the tests didn't exist before so it's not a regression
-
3e9a1cab
by Sebastien Bacher at 2025-09-04T17:29:30-04:00
releasing package libei version 1.2.0-2
-
8b42006e
by Jeremy Bícha at 2025-09-04T17:29:39-04:00
New upstream version 1.2.1
-
f41a5571
by Jeremy Bícha at 2025-09-04T17:29:40-04:00
Update upstream source from tag 'upstream/1.2.1'
Update to upstream version '1.2.1'
with Debian dir c711291223d8da95acccfff451b757e00614af81
-
d1972398
by Jeremy Bícha at 2025-09-04T17:29:51-04:00
New upstream release
-
668cbe86
by Jeremy Bícha at 2025-09-04T17:29:52-04:00
releasing package libei version 1.2.1-1
-
cafff87d
by Jeremy Bícha at 2025-09-04T17:30:07-04:00
Update debian/watch for Gitlab changes
-
b032eb09
by Jeremy Bícha at 2025-09-04T17:30:55-04:00
New upstream version 1.3.0
-
9ff23cfa
by Jeremy Bícha at 2025-09-04T17:30:56-04:00
Update upstream source from tag 'upstream/1.3.0'
Update to upstream version '1.3.0'
with Debian dir 794785d42f1d3db2112fedeab88f190de1aa3214
-
24946e5b
by Jeremy Bícha at 2025-09-04T17:32:39-04:00
New upstream release
-
916ceb96
by Jeremy Bícha at 2025-09-04T17:32:40-04:00
Update pkg-config binary package name
-
adc9d2d0
by Jeremy Bícha at 2025-09-04T17:32:41-04:00
Bump Standards Version to 4.7.0
-
0a08ab13
by Jeremy Bícha at 2025-09-04T17:32:42-04:00
Drop unnecessary executable permissions from libei-tests
-
4e3c73ee
by Jeremy Bícha at 2025-09-04T17:32:43-04:00
releasing package libei version 1.3.0-1
-
72d33ed5
by Niels Thykier at 2025-09-04T17:33:03-04:00
Import Debian changes 1.3.0-1.1
libei (1.3.0-1.1) unstable; urgency=medium
.
* Non-maintainer upload.
.
[ Rebecca N. Palmer ]
* Work around infinite recursion in test using a minimal fix.
(Closes: #1084287)
-
b6e1546f
by Niels Thykier at 2025-09-04T17:33:14-04:00
Import Debian changes 1.3.0-1.2
libei (1.3.0-1.2) unstable; urgency=medium
.
* Non-maintainer upload.
* Fix typo in the patch from 1.3.0-1.1 that broke the package.
-
0dafeeb0
by Jeremy Bícha at 2025-09-04T17:34:06-04:00
Replace patch with debian/rules code
-
f1b1b6b0
by Jeremy Bícha at 2025-09-04T17:34:08-04:00
Add link to temporary Vcs in debian/control
-
5da23f2c
by Jeremy Bícha at 2025-09-04T17:34:09-04:00
releasing package libei version 1.3.0-2
-
c941fbf3
by Jeremy Bícha at 2025-09-04T17:34:15-04:00
Remove no longer needed ppc64el workaround
-
01e898d1
by Jeremy Bícha at 2025-09-04T17:34:17-04:00
releasing package libei version 1.3.0-3