[ANNOUNCE] libinput 1.11.901
Peter Hutterer
peter.hutterer at who-t.net
Mon Jul 30 07:38:12 UTC 2018
The first RC for libinput 1.12 is now available.
First a heads-up, this is probably going to be a longer RC cycle than usual
which is why I'm getting an RC out very soon after the 1.11 release. But
we're accumulating a few big changes and I really need testing feedback.
Expect there to be more (but smaller) features to come, but right now it's
time to test the big changes.
In terms of notable features, the udev hwdb handling has been removed in
favour of a libinput-specific quirks system. Quirks are just entries in .ini
files so from a functional perspective nothing much changes. The advantages
are more obvious matching and easier debugging when something doesn't match.
The new "libinput quirks" tool is your go-to tool here. As usual the
documentation has more information:
https://wayland.freedesktop.org/libinput/doc/latest/device-quirks.html
Speaking of documentation: fresh off the presses is the conversion to
sphinx with the ReadTheDocs theme. You are invited to marvel and go all
"oooh, ahhh" at the new look. Fixing the leftovers from the conversion and
polishing the docs is high priority but will take a while. As for everything
else, any help would be much appreciated.
We now build successfully on FreeBSD, I'm assuming this also means libinput
works under BSD ;) Many thanks to Greg for his porting work here.
Trackpoints were a focus this cycle, the previous acceleration method (1.8
and later) was simply broken and assumed data that (at least my) trackpoints
were not able to provide. The new methods is similar to the pre-1.8 versions
and features a magic multiplier. This is a quirk entry on a per-device basis
to bring the trackpoint motion into a sane value range. Unfortunately this
means previously assigned TRACKPOINT_RANGE properties are obsolete, if your
trackpoint had a different speed before please look at the documentation for
more info and how to fix it:
https://wayland.freedesktop.org/libinput/doc/latest/trackpoints.html
I can't stress this enough: please test this! Virtually all pointer
acceleration work so far happened in a feedback-less void which is both
terrifying and terrifyingly sad. If you have stakes in the game, help out!
Konstantin fixed a long-standing bug with touchpads that caused inadvertent
small motion on finger down/up. This improves precision pointing because it
removes that little a-few-pixel motion that often came on finger up.
Touchpads now support thumb detection via pressure thresholds, where
available. Like the pressure-based palm detection this requires that a
pressure threshold is defined and that the touchpad supports pressure.
Size-based thumb detection is currently being worked on but not merged yet.
As you would've noticed from the 1.11.x releases, we're on
gitlab now. Benjamin did quite a bit of work hooking up the GitLab CI
infastructure - we're now building everything on Fedora, Ubuntu, Arch (and
cross-compiling for FreeBSD). In addition we test the various build time
options, so that hopefully eliminates a whole set of bugs before they hatch.
Bugs, if they do hatch, can be filed here:
https://gitlab.freedesktop.org/libinput/libinput/issues
Besides all the above, the usual set of fixes, minor improvements, etc.
As usual, the git shortlog is below.
Benjamin Tissoires (5):
CI: Hook up GitLab CI
CI: do not pull images when checking for the creation date
CI: speed up the docker_check stage
CI: WIP: attempt to clean up the registry before leaving
gitlab-ci: use skopeo to check on container images
Daniel Stone (1):
doc: Fix URLs for GitLab, HTTPS
Greg V (12):
test: remove unused values.h include
Import versionsort implementation from musl for systems without versionsort
Fix include portablity (xlocale, stdlib)
Use getprogname() when program_invocation_short_name is not defined
test: support disabling tty on FreeBSD
test: use simple portable sendfile
test: ptrace compatibility with *BSD
Add input.h for FreeBSD
Autodetect and use libepoll-shim on FreeBSD
Add FreeBSD (cross-compliation based) CI
Add versionsort test
Update FreeBSD package cache in CI
Hans de Goede (1):
system-quirks: Add AttrTrackpointRange for Lenovo X270
Jeremy (1):
Improve HP Chromebook 14 pressure ranges
Konstantin Kharlamov (3):
touchpad: replace last_point with history.samples
touchpad: ignore motion on finger-up
libinput-private: constify inline helpers
Peter Hutterer (189):
udev: the IBM X41 Tablet must not disable the keyboard in tablet mode
filter: cap trackpoint scale factor at 1.0
tools: drop the publish-doc tool
COPYING: change a cgit to a gitlab URL
test: make litest_copy_file copy normal files too
test: remove created directories too
util: add a list_append()
util: add a safe_atou() as unsigned equivalent to safe_atoi()
udev: remove duplicate Chromebook Falco hwdb entry
Implement a quirks system to replace the udev property parsing
quirks: use an empty dmi modalias string for the test suite
quirks: allow for in-line comments
test: install per-test device quirks files
test: init the quirks once per test suite run
test: switch the udev tag tests to be quirk tests
libinput: initialize the quirks subsystem
Switch from udev property parsing to the quirks system
quirks: add the devicetree implementation
Hook up list-quirks --validate for the test suite
touchpad: don't pair external touchpads with lid/tablet mode switches
util: add null string test handling to strv_join
util: put limits on how many strings we join
util: abort for a negative zalloc() size
tools: libinput-record: put extra guard in to protect from OOB access
circleci: drop the separate libsolv update
meson.build: bump to 1.11.900
Move CODING_STYLE to markdown
tools: fix grab argument passing for libinput debug-events
data: add pressure range/palm threshold for the Dell XPS13 9333
meson.build: always build some tests
test: fix the input_id struct for the ALPS touchpad
test: fix a test device section name
quirks: use realloc instead of reallocarray
tools: measure touchpad-pressure: prevent division by zero
data: re-add the IBM X41 quirk
quirks: add MatchVersion in addition to VID/PID
data: switch alps touchpad matching to the bus/vid/pid matching
data: re-add the ALPS v8 size hint
data: add ALPS v8 trackpoint range
data: put a 'do not edit' warning into all data files
data: add the alps firmware version LUT
data: don't disable the keyboard on any Thinkpad Yoga models
Remove circle.yml
Drop the udev hwdb model quirks
gitlab ci: use GIT_DEPTH of 1
quirk: remove unused variable
quirks: explicitly cast the log priority
quirks: add more assertion to avoid API misusage
test: pass the open mode to open(O_CREAT)
Revert "quirks: add more assertion to avoid API misusage"
quirks: add more assertion to avoid API misusage (v2)
test: remove a compiler warning
doc: point to the gitlab ci file for a list of required packages
tools: pass a valid grab parameter to list-devices
tools: list-devices: unref the udev device
meson.build: add a libinput list-devices run to the test suite
util: abort if we try to allocate more than a MB
meson.build: add more overrides for coverity
quirks: drop the JUMPING_SEMI_MT model
tools: list-quirks: compress a condition
tools: list-quirks: fix usage to read "libinput list-quirks"
tools: list-quirks: add the thumb pressure threshold property
data: lenovo: fix device name for the X1 Carbon 6th
tools: list-quirks: print the value of the quirk too
tools: list-quirks: make the output easier to parse
tools: touchpad-pressure: switch to using quirks for pre-loading thresholds
tools: touchpad-pressure: add thumb pressure handling
doc: update docs to drop hwdb references
doc: use @verbatim, not @code for shell commands
tools: touchpad-pressure: update man page for device quirks
tools: touch-size: update to use the device quirks
test: fix zalloc max size tests
tools: libinput-record: use .yml suffix in the man page
doc: update docs to use a .yml suffix for libinput recorded files
tools: libinput-replay: set INPUT_PROP_* properties on the device
test: skip the test-suite runner based on SKIP_LIBINPUT_TEST_SUITE_RUNNER
gitlab CI: run ninja test too
test: don't require a device for quirks parsing tests
util: use assert() instead of abort() for testing for size limits
gitlab CI: add pkgconfig to the list
gitlab CI: add Arch to the list of built images
quirks: free the dt string
test: init test quirks in /tmp, not /run
test: if we never installed any udev files, we don't need to reload
test: quirks: init value to avoid valgrind errors
test: fix indentation in litest-int.h
test: switch the global device list to a struct list
test: add a libinput-test runner for 'deviceless' tests
tools: fake-build the measure touch-pressure/size sources
touchpad: don't disable tapping on MT_TOOL_PALM
test: parse arguments before any other stuff
tools: move printing device quirks to the shared tools lib
tools: libinput-record: print the list of quirks
tools: add record/replay to --help output
doc: fix typo in pointer acceleration docs
gitlab CI: build a release with -Werror
fallback: cancel the debounce timers during device remove, not destroy
GitLab CI: don't use spaces in artifact names
tools: rename list-quirks to the more generic "quirks list"
GitLab CI: always run ninja test unless otherwise specified
Gitlab CI: run the tests through valgrind on the f28 box
GitLab CI: rename MESON_PARAMS to MESON_ARGS
doc: build doxygen output into "Documentation"
doc: add the switches page to a "other devices" category
test: misc: up the time limit on the ratelimit tests
GitLab CI: move the scan-build job up in the file
Gitlab CI: trigger the wayland web rebuild on pushes to master
GitLab CI: only rebuild the website when pushing to libinput proper
Switch to using files() for the doxygen input sources
doc: drop the git version into the documentation
tools: if the execdir is the builddir, add it to the path
tools: quirks: if we're executing from the builddir, use the git datadir
tools: rely on the libinput and quirks tool to pick the right directories
tools: fake-build the other tools the same way as measure touchpad-tap
tools: don't add the debug behavior for release builds
doc: libinput-measure is a section, not a subsection
doc: add a subsection on how to use libinput record --autorestart
filter: replace the trackpoint accel with a velocity-based one
filter: make the trackpoint accel profile func the same prototype as the others
tools: fix units for trackpoint accel graph
tools: reduce the trackpoint gnuplot range to 0..1 units/ms
tools: drop the special handling for trackpoint accel, not needed anymore
tools: make-ptraccel-graphs: drop an unnecessary outfile
quirks: add quirks_get_double()
filter: add a trackpoint multiplier factor
quirks: remove the trackpoint range quirks entries
quirks: remove the leftovers of the trackpoint range attribute
quirks: append "Touchpad" to the various dell touchpad quirks
data: add the dell trackpoint multipliers
meson.build: move the directory path generation to a single section
test: tidy up the symbols leak test
doc: move the meson.build in as subdir()
Gitlab CI: use a space in the meson builddir
tap: remove unnecessary TAP_STATE_DEAD assignment
tap: log a tap bug for release on MULTITAP_PALM
data: add HP Chromebook 14 pressure ranges
Rename data/ to quirks/
test: remove unsupported events from the invalid-range touchscreen test device
evdev: whitespace fix
fallback: remove some if 0 code
tools: change prototype of the builddir lookup function
tools: setenv the quirks dir when running from the build directory
evdev: fix the trackpoint multiplier info message
doc: break up the "what is libinput" page with two sections
README: add a user documentation section fairly high up
doc: fix references to a trackpoint range in the FAQs
doc: move the "General" section to the "Developer" section
doc: add a section to the FAQs "is libinput required for Wayland"
tools: always set the log handler for debug-events and debug-gui
touchpad: don't NONE or HOVERING touches towards the touch
tools: fix touch frame checks in the YAML verifier script
test: add --gen-suppressions=all to the valgrind run
Gitlab CI: properly define empty dependencies for the wayland-web hook
doc: add a section name to seats-overview
doc: replace <pre> with @verbatim
doc: replace <a href> links with the doxygen markdown equivalent
doc: fix ref to device-quirks
doc: document the device quirks
README: indent the links that belong to list items
doc: indent all @note continuation lines
doc: single ` is enough for code highlighting
doc: reporting-bugs: use evemu-record as link text, not evemu
doc: replace html lists with markdown ones
doc: replace a few <b> with markdown's **
doc: point to libinput --version
doc: add a warning note that the reporting-bugs instructions do matter
doc: fix the url where to file a new bug
test: supress another bash warning
doc: fix erroneous </dt>
test: release a few leaking udev devices
test: properly release a few leaking litest device
util: fix a ubsan complaint about undefined left-shift
doc: we don't need the Namespaces doxygen page
tools: drop two unused imports
doc: move the Architecture blurb to the 'what is libinput' page
doc: copy some bits of the tablet docs to doxygen
doc: enable warnings in doxygen
doc: drop a few unnecessary @ref
doc: refer to "the libinput documentation" in a few @see cases
doc: a few replacements to make sphinx happy/prettier
doc: device-quirks: redo the model quirks <dl> for sphinx' benefit
doc: move the @verbatim start to the list item
doc: split the graphs into a separate array for re-use
Add the buildreqs for sphinx-build
Gitlab CI: set DEBIAN_FRONTEND noninteractive for the Ubuntu images
GitLab CI: print out the image age in seconds
dox: switch to sphinx for the user-visible documentation
doc/user: add a page detailing what configuration toggles are available
libinput 1.11.901
Sergiusz Michalik (1):
zalloc limit fix for libinput-record
git tag: 1.11.901
https://www.freedesktop.org/software/libinput/libinput-1.11.901.tar.xz
MD5: 925466c0fafa0263972cebe695c5b36a libinput-1.11.901.tar.xz
SHA1: 267039ed7bdadf23f7519a43a0e797ed4176e237 libinput-1.11.901.tar.xz
SHA256: 6b8a8f18ae7f183fb4b6148839264355e027847a8c9360ced19cb8fe08f30f8e libinput-1.11.901.tar.xz
SHA512: 5b20cde2f63d98a655eb8d841c128af5eb07cc355238e64b3db0e2ecda998cc8f6b9aef210f248840f88bcadc916ee7562158c672bbd23537b9bd5a80310bdcf libinput-1.11.901.tar.xz
PGP: https://www.freedesktop.org/software/libinput/libinput-1.11.901.tar.xz.sig
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 163 bytes
Desc: not available
URL: <https://lists.freedesktop.org/archives/wayland-devel/attachments/20180730/45796241/attachment-0001.sig>
More information about the wayland-devel
mailing list