diff options
Diffstat (limited to 'src/3rdparty/xkbcommon/NEWS')
-rw-r--r-- | src/3rdparty/xkbcommon/NEWS | 289 |
1 files changed, 282 insertions, 7 deletions
diff --git a/src/3rdparty/xkbcommon/NEWS b/src/3rdparty/xkbcommon/NEWS index 07ebdd97e3..50b01a3b5f 100644 --- a/src/3rdparty/xkbcommon/NEWS +++ b/src/3rdparty/xkbcommon/NEWS @@ -1,4 +1,278 @@ -libxkbcommon 0.4.1 +libxkbcommon 0.8.2 - 2018-08-05 +================== + +- Fix various problems found with fuzzing (see commit messages for + more details): + + - Fix a few NULL-dereferences, out-of-bounds access and undefined behavior + in the XKB text format parser. + + +libxkbcommon 0.8.1 - 2018-08-03 +================== + +- Fix various problems found in the meson build (see commit messages for more + details): + + - Fix compilation on Darwin. + + - Fix compilation of the x11 tests and demos when XCB is installed in a + non-standard location. + + - Fix xkbcommon-x11.pc missing the Requires specification. + +- Fix various problems found with fuzzing and Coverity (see commit messages for + more details): + + - Fix stack overflow in the XKB text format parser when evaluating boolean + negation. + + - Fix NULL-dereferences in the XKB text format parser when some unsupported + tokens appear (the tokens are still parsed for backward compatibility). + + - Fix NULL-dereference in the XKB text format parser when parsing an + xkb_geometry section. + + - Fix an infinite loop in the Compose text format parser on some inputs. + + - Fix an invalid free() when using multiple keysyms. + +- Replace the Unicode characters for the leftanglebracket and rightanglebracket + keysyms from the deprecated LEFT/RIGHT-POINTING ANGLE BRACKET to + MATHEMATICAL LEFT/RIGHT ANGLE BRACKET. + +- Reject out-of-range Unicode codepoints in xkb_keysym_to_utf8 and + xkb_keysym_to_utf32. + + +libxkbcommon 0.8.0 - 2017-12-15 +================== + +- Added xkb_keysym_to_{upper,lower} to perform case-conversion directly on + keysyms. This is useful in some odd cases, but working with the Unicode + representations should be preferred when possible. + +- Added Unicode conversion rules for the signifblank and permille keysyms. + +- Fixed a bug in the parsing of XKB key type definitions where the number + of levels were determined by the number of level *names*. Keymaps which + omit level names were hence miscompiled. + + This regressed in version 0.4.3. Keymaps from xkeyboard-config were not + affected since they don't omit level names. + +- New API: + xkb_keysym_to_upper() + xkb_keysym_to_lower() + + +libxkbcommon 0.7.2 - 2017-08-04 +================== + +- Added a Meson build system as an alternative to existing autotools build + system. + + The intent is to remove the autotools build in one of the next releases. + Please try to convert to it and report any problems. + + See http://mesonbuild.com/Quick-guide.html for basic usage, the + meson_options.txt for the project-specific configuration options, + and the PACKAGING file for more details. + + There are some noteworthy differences compared to the autotools build: + + - Feature auto-detection is not performed. By default, all features are + enabled (currently: docs, x11, wayland). The build fails if any of + the required dependencies are not available. To disable a feature, + pass -Denable-<feature>=false to meson. + + - The libraries are either installed as shared or static, as specified + by the -Ddefault_library=shared/static option. With autotools, both + versions are installed by default. + + - xorg-util-macros is not used. + + - A parser generator (bison/byacc) is always required - there is no + fallback to pre-generated output bundled in the tarball, as there is + in autotools. + +- Removed Android.mk support. + +- Removed the *-uninstalled.pc pkgconfig files. + +- Ported the interactive-wayland demo program to v6 of the xdg-shell + protocol. + +- Added new keysym definitions from xproto. + +- New API: + XKB_KEY_XF86Keyboard + XKB_KEY_XF86WWAN + XKB_KEY_XF86RFKill + XKB_KEY_XF86AudioPreset + + +libxkbcommon 0.7.1 - 2017-01-18 +================== + +- Fixed various reported problems when the current locale is tr_TR.UTF-8. + + The function xkb_keysym_from_name() used to perform case-insensitive + string comparisons in a locale-dependent way, but required it to to + work as in the C/ASCII locale (the so called "Turkish i problem"). + + The function is now no longer affected by the current locale. + +- Fixed compilation in NetBSD. + + +libxkbcommon 0.7.0 - 2016-11-11 +================== + +- Added support for different "modes" of calculating consumed modifiers. + The existing mode, based on the XKB standard, has proven to be + unintuitive in various shortcut implementations. + + A new mode, based on the calculation used by the GTK toolkit, is added. + This mode is less eager to declare a modifier as consumed. + +- Added a new interactive demo program using the Wayland protocol. + See the PACKAGING file for the new (optional) test dependencies. + +- Fixed a compilation error on GNU Hurd. + +- New API: + enum xkb_consumed_mode + XKB_CONSUMED_MODE_XKB + XKB_CONSUMED_MODE_GTK + xkb_state_key_get_consumed_mods2 + xkb_state_mod_index_is_consumed2 + + +libxkbcommon 0.6.1 - 2016-04-08 +================== + +- Added LICENSE to distributed files in tarball releases. + +- Minor typo fix in xkb_keymap_get_as_string() documentation. + + +libxkbcommon 0.6.0 - 2016-03-16 +================== + +- If the XKB_CONFIG_ROOT environment variable is set, it is used as the XKB + configuration root instead of the path determined at build time. + +- Tests and benchmarks now build correctly on OSX. + +- An XKB keymap provides a name for each key it defines. Traditionally, + these names are limited to at most 4 characters, and are thus somewhat + obscure, but might still be useful (xkbcommon lifts the 4 character limit). + + The new functions xkb_keymap_key_get_name() and xkb_keymap_key_by_name() + can be used to get the name of a key or find a key by name. Note that + a key may have aliases. + +- Documentation improvements. + +- New API: + xkb_keymap_key_by_name() + xkb_keymap_key_get_name() + + +libxkbcommon 0.5.0 - 2014-10-18 +================== + +- Added support for Compose/dead keys in a new module (included in + libxkbcommon). See the documentation or the + xkbcommon/xkbcommon-compose.h header file for more details. + +- Improved and reordered some sections of the documentation. + +- The doxygen HTML pages were made nicer to read. + +- Most tests now run also on non-linux platforms. + +- A warning is emitted by default about RMLVO values which are not used + during keymap compilation, which are most often a user misconfiguration. + For example, "terminate:ctrl_alt_backspace" instead of + "terminate:ctrl_alt_bksp". + +- Added symbol versioning for libxkbcommon and libxkbcommon-x11. + Note: binaries compiled against this and future versions will not be + able to link against the previous versions of the library. + +- Removed several compatablity symbols from the binary (the API isn't + affected). This affects binaries which + + 1. Were compiled against a pre-stable (<0.2.0) version of libxkbcommon, and + 2. Are linked against the this or later version of libxkbcommon. + + Such a scenario is likely to fail already. + +- If Xvfb is not available, the x11comp test is now correctly skipped + instead of hanging. + +- Benchmarks were moved to a separate bench/ directory. + +- Build fixes from OpenBSD. + +- Fixed a bug where key type entries such as "map[None] = Level2;" were + ignored. + +- New API: + XKB_COMPOSE_* + xkb_compose_* + + +libxkbcommon 0.4.3 - 2014-08-19 +================== + +- Fixed a bug which caused xkb_x11_keymap_new_from_device() to misrepresent + modifiers for some keymaps. + + https://github.com/xkbcommon/libxkbcommon/issues/9 + +- Fixed a bug which caused xkb_x11_keymap_new_from_device() to ignore XKB + PrivateAction's. + +- Modifiers are now always fully resolved after xkb_state_update_mask(). + Previously the given state components were used as-is, without + considering virtual modifier mappings. + Note: this only affects non-standard uses of xkb_state_update_mask(). + +- Added a test for xkbcommon-x11, "x11comp". The test uses the system's + Xvfb server and xkbcomp. If they do not exist or fail, the test is + skipped. + +- Fixed memory leaks after parse errors in the XKB yacc parser. + The fix required changes which are currently incompatible with byacc. + + +libxkbcommon 0.4.2 - 2014-05-15 +================== + +- Fixed a bug where explicitly passing "--enable-x11" to ./configure would + in fact disable it (regressed in 0.4.1). + +- Added @since version annotations to the API documentation for everything + introduced after the initial stable release (0.2.0). + +- Added a section to the documentation about keysym transformations, and + clarified which functions perform a given transformation. + +- XKB files which fail to compile during keymap construction can no longer + have any effect on the resulting keymap: changes are only applied when + the entire compilation succeeds. + Note: this was a minor correctness issue inherited from xkbcomp. + +- Fix an out-of-bounds array access in src/x11/util.c:adopt_atoms() + error-handling code. + Note: it seems impossible to trigger in the current code since the input + size cannot exceed the required size. + + +libxkbcommon 0.4.1 - 2014-03-27 ================== - Converted README to markdown and added a Quick Guide to the @@ -15,7 +289,7 @@ libxkbcommon 0.4.1 is converted to an appropriate control character. This matches the behavior of libX11's XLookupString(3), and required by the XKB specification: - http://www.x.org/releases/current/doc/kbproto/xkbproto.html#Interpreting_the_Control_Modifier + https://www.x.org/releases/current/doc/kbproto/xkbproto.html#Interpreting_the_Control_Modifier https://bugs.freedesktop.org/show_bug.cgi?id=75892 @@ -41,7 +315,8 @@ libxkbcommon 0.4.1 - Bug fixes. -libxkbcommon 0.4.0 + +libxkbcommon 0.4.0 - 2014-02-02 ================== - Add a new add-on library, xkbcommon-x11, to support creating keymaps @@ -68,7 +343,7 @@ libxkbcommon 0.4.0 xkb_x11_* types and functions, XKB_X11_* constants. -libxkbcommon 0.3.2 +libxkbcommon 0.3.2 - 2013-11-22 ================== - Log messages from the library now look like "xkbcommon: ERROR" by @@ -77,7 +352,7 @@ libxkbcommon 0.3.2 - Apply capitalization transformation on keysyms in xkb_keysym_get_one_sym(), to match the behavior specified in the XKB specification: - http://www.x.org/releases/current/doc/kbproto/xkbproto.html#Interpreting_the_Lock_Modifier + https://www.x.org/releases/current/doc/kbproto/xkbproto.html#Interpreting_the_Lock_Modifier - Support byacc for generating the parser, in addition to Bison. @@ -90,7 +365,7 @@ libxkbcommon 0.3.2 - Bug fixes. -libxkbcommon 0.3.1 +libxkbcommon 0.3.1 - 2013-06-03 ================== - Replace the flex scanner with a hand-written one. flex is no longer @@ -102,7 +377,7 @@ libxkbcommon 0.3.1 xkb_keymap_key_for_each() -libxkbcommon 0.3.0 +libxkbcommon 0.3.0 - 2013-04-01 ================== - Allow passing NULL to *_unref() functions; do nothing instead of |