scripts/makeheader: Minor improvements
[platform/upstream/libxkbcommon.git] / NEWS
diff --git a/NEWS b/NEWS
index fee6a59..e098f0f 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -1,3 +1,192 @@
+libxkbcommon 1.5.0 - 2023-01-02
+==================
+
+- Add `xkb_context` flag `XKB_CONTEXT_NO_SECURE_GETENV` and `rxkb_context` flag
+  `RXKB_CONTEXT_NO_SECURE_GETENV`.
+
+  xkbcommon uses `getenv_secure()` to obtain environment variables. This flag
+  makes xkbcommon use `getenv()` instead.
+
+  This is useful for some clients that have relatively benign capabilities set,
+  like CAP_SYS_NICE, that also want to use e.g. the XKB configuration from the
+  environment and user configs in XDG_CONFIG_HOME.
+
+  Contributed by Ronan Pigott.
+
+- Fix crash in `xkbcli interactive-wayland` under a compositor which supports
+  new versions of the xdg-shell protocol.
+
+  Contributed by Jan Alexander Steffens (heftig).
+
+- Fix some MSVC build issues.
+
+- Fix some issues when including xkbcommon as a meson subproject.
+
+- meson>=0.51 is now required.
+
+- New API:
+  XKB_CONTEXT_NO_SECURE_GETENV
+  RXKB_CONTEXT_NO_SECURE_GETENV
+
+libxkbcommon 1.4.1 - 2022-05-21
+==================
+
+- Fix compose sequence overriding (common prefix) not working correctly.
+  Regressed in 1.2.0.
+
+  Contributed by Weng Xuetian.
+
+- Remove various bogus currency sign (particulary Euro and Korean Won) entries
+  from the keysym <-> Unicode mappings. They prevented the real
+  keysyms/codepoints for these from mapping correctly.
+
+  Contributed by Sam Lantinga and Simon Ser.
+
+libxkbcommon 1.4.0 - 2022-02-04
+==================
+
+- Add `enable-tools` option to Meson build (on by default) to allow disabling
+  the `xkbcli` tools.
+
+  Contributed by Alex Xu (Hello71).
+
+- In `xkbcli list`, fix "YAML Norway problem" in output.
+
+  Contributed by Peter Hutterer.
+
+- In libxkbregistry, variants now inherit iso639, iso3166 and brief from parent
+  layout if omitted.
+
+  Contributed by M Hickford.
+
+- In libxkbregistry, don't call `xmlCleanupParser()` - it's not supposed to
+  be called by libraries.
+
+  Contributed by Peter Hutterer.
+
+- In libxkbregistry, skip over invalid ISO-639 or ISO-3166 entries.
+
+  Contributed by Peter Hutterer.
+
+libxkbcommon 1.3.1 - 2021-09-10
+==================
+
+- In `xkbcli interactive-x11`, use the Esc keysym instead of the Esc keycode
+  for quitting.
+
+  Contributed by Simon Ser.
+
+- In `xkbcli how-to-type`, add `--keysym` argugment for how to type a keysym
+  instead of a Unicode codepoint.
+
+- Fix a crash in `xkb_x11_keymap_new_from_device` error handling given some
+  invalid keymaps. Regressed in 1.2.0.
+
+  Reported by Zack Weinberg. Tested by Uli Schlachter.
+
+libxkbcommon 1.3.0 - 2021-05-01
+==================
+
+- Change `xkbcli list` to output YAML, instead of the previous ad-hoc format.
+
+  This allows to more easily process the information in a programmetic way, for
+  example
+
+    xkbcli list | yq -r ".layouts[].layout"
+
+  Contributed by Peter Hutterer.
+
+- Optimize a certain part of keymap compilation (atom interning).
+
+- Fix segmentation fault in case-insensitive `xkb_keysym_from_name` for certain
+  values like the empty string.
+
+  Contributed by Isaac Freund.
+
+- Support building libxkbcommon as a meson subproject.
+
+  Contributed by Adrian Perez de Castro.
+
+- Add `ftruncate` fallback for `posix_fallocate` in `xkbcli interactive-wayland`
+  for FreeBSD.
+
+  Contributed by Evgeniy Khramtsov.
+
+- Properly export library symbols in MSVC.
+
+  Contributed by Adrian Perez de Castro.
+
+libxkbcommon 1.2.1 - 2021-04-07
+==================
+
+- Fix `xkb_x11_keymap_new_from_device()` failing when the keymap contains key
+  types with missing level names, like the one used by the `numpad:mac` option
+  in xkeyboard-config. Regressed in 1.2.0.
+
+libxkbcommon 1.2.0 - 2021-04-03
+==================
+
+- `xkb_x11_keymap_new_from_device()` is much faster. It now performs only 2
+  roundtrips to the X server, instead of dozens (in first-time calls).
+
+  Contributed by Uli Schlachter.
+
+- Case-sensitive `xkb_keysym_from_name()` is much faster.
+
+- Keysym names of the form `0x12AB` and `U12AB` are parsed more strictly.
+  Previously the hexadecimal part was parsed with `strtoul()`, now only up
+  to 8 hexadecimal digits (0-9A-Fa-f) are allowed.
+
+- Compose files now have a size limit (65535 internal nodes). Further sequences
+  are discared and a warning is issued.
+
+- Compose table loading (`xkb_compose_table_new_from_locale()` and similar) is
+  much faster.
+
+- Use `poll()` instead of `epoll()` for `xlbcli interactive-evdev`, making it
+  portable to FreeBSD which provides evdev but not epoll. On FreeBSD, remember
+  to install the `evdev-proto` package to get the evdev headers.
+
+- The build now requires a C11 compiler (uses anonymous structs/unions).
+
+libxkbcommon 1.1.0 - 2021-02-27
+==================
+
+- Publish the `xkb-format-text-v1.md` file in the HTML documentation. This file
+  existed for a long time but only in the Git repository.
+  Link: https://xkbcommon.org/doc/current/md_doc_keymap_format_text_v1.html
+
+- Add partial documentation for xkb_symbols to xkb-format-text-v1.md.
+
+  Contributed by Simon Zeni.
+
+- Update keysym definitions to latest xorgproto. In particular, this adds many
+  special keysyms corresponding to Linux evdev keycodes.
+
+  Contributed by Peter Hutterer <@who-t.net>.
+
+- New API:
+  Too many XKB_KEY_* definitions to list here.
+
+libxkbcommon 1.0.3 - 2020-11-23
+==================
+
+- Fix (hopefully) a segfault in xkb_x11_keymap_new_from_device() in some
+  unclear situation (bug introduced in 1.0.2).
+
+- Fix keymaps created with xkb_x11_keymap_new_from_device() don't have level
+  names (bug introduced in 0.8.0).
+
+libxkbcommon 1.0.2 - 2020-11-20
+==================
+
+- Fix a bug where a keysym that cannot be resolved in a keymap gets compiled to
+  a garbage keysym. Now it is set to XKB_KEY_NoSymbol instead.
+
+- Improve the speed of xkb_x11_keymap_new_from_device() on repeated calls in the
+  same xkb_context().
+
+
 libxkbcommon 1.0.1 - 2020-09-11
 ==================