Sun Sep 13 09:25:38 2020 UTC ()
libxkbcommon: update to 1.0.1.

libxkbcommon 1.0.1 - 2020-09-11
==================

- Fix the tool-option-parsing test failing.

- Remove requirement for pytest in the tool-option-parsing test.

- Make the table output of `xkbcli how-to-type` aligned.

- Some portability and test isolation fixes.

libxkbcommon 1.0.0 - 2020-09-05
==================

Note: this release is API and ABI compatible with previous releases -- the
major version bump is only an indication of stability.

- Add libxkbregistry as configure-time optional library. libxkbregistry is a C
  library that lists available XKB models, layouts and variants for a given
  ruleset. This is a separate library (libxkbregistry.so, pkgconfig file
  xkbregistry.pc) and aimed at tools that provide a listing of available
  keyboard layouts to the user. See the Documentation for details on the API.

  Contributed by Peter Hutterer <@who-t.net>.

- Better support custom user configuration:

    * Allow including XKB files from other paths.

      Previously, a 'symbols/us' file in path A would shadow the same file in
      path B. This is suboptimal, we rarely need to hide the system files - we
      care mostly about *extending* them. By continuing to check other lookup
      paths, we make it possible for a XDG_CONFIG_HOME/xkb/symbols/us file to
      have sections including those from /usr/share/X11/xkb/symbols/us.

      Note that this is not possible for rules files, which need to be manually
      controlled to get the right bits resolved.

    * Add /etc/xkb as extra lookup path for system data files.

      This completes the usual triplet of configuration locations available for
      most processes:
      - vendor-provided data files in /usr/share/X11/xkb
      - system-specific data files in /etc/xkb
      - user-specific data files in $XDG_CONFIG_HOME/xkb

      The default lookup order user, system, vendor, just like everything else
      that uses these conventions.

      For include directives in rules files, the '%E' resolves to that path.

    * Add a new section to the documentation for custom user configuration.

  Contributed by Peter Hutterer <@who-t.net>.

- Add an `xkbcli` command-line utility.

  This tool offers various subcommands for introspection and debugging.
  Currently the available subcommands are:

  list
    List available rules, models, layouts, variants and options

  interactive-wayland
    Interactive debugger for XKB keymaps for Wayland

  interactive-x11
    Interactive debugger for XKB keymaps for X11

  interactive-evdev
    Interactive debugger for XKB keymaps for evdev (Linux)

  compile-keymap
    Compile an XKB keymap

  how-to-type
    See separate entry below.

  See the manpages for usage information.

  Contributed by Peter Hutterer <@who-t.net>.

- Add `xkb_utf32_to_keysym()` to translate a Unicode codepoint to a keysym.
  When a special keysym (`XKB_KEY_` constant) for the codepoint exists, it is
  returned, otherwise the direct encoding is used, if permissible.

  Contributed by Jaroslaw Kubik <@froglogic.com>.

- Add `xkb_keymap_key_get_mods_for_level()` which retrieves sets of modifiers
  which produce a given shift level in a given key+layout.

  Contributed by Jaroslaw Kubik <@froglogic.com>.

- Add `xkbcli how-to-type` command, which, using `xkb_utf32_to_keysym()`
  and `xkb_keymap_key_get_mods_for_level()` and other APIs, prints out all
  the ways to produce a given keysym.

  For example, how to type `?` (codepoint 63) in a us,de keymap?

    $ xkbcli how-to-type --layout us,de 63 | column -ts $'\t'
    keysym: question (0x3f)
    KEYCODE  KEY NAME  LAYOUT#  LAYOUT NAME   LEVEL#  MODIFIERS
    20       AE11      2        German        2       [ Shift ]
    20       AE11      2        German        2       [ Shift Lock ]
    61       AB10      1        English (US)  2       [ Shift ]

- Add a new section to the documentation describing the format of the XKB
  rules file.

- Search for Compose in $XDG_CONFIG_HOME/XCompose (fallback to
  ~/.config/XCompose) before trying $HOME/.XCompose.

  Note that libX11 still only searches in $HOME/.XCompose.

  Contributed by Emmanuel Gil Peyrot <@linkmauve.fr>.

- Bump meson requirement to >= 0.49.0.

- Fix build with byacc.

- Fix building X11 tests on PE targets.

  Contributed by Jon Turney <@dronecode.org.uk>

- The tests no longer rely on bash, only Python (which is already used by
  meson).

- New API:
  xkb_utf32_to_keysym
  xkb_keymap_key_get_mods_for_level
  XKB_KEY_XF86FullScreen


(wiz)
diff -r1.25 -r1.26 pkgsrc/x11/libxkbcommon/Makefile
diff -r1.8 -r1.9 pkgsrc/x11/libxkbcommon/PLIST
diff -r1.18 -r1.19 pkgsrc/x11/libxkbcommon/distinfo

cvs diff -r1.25 -r1.26 pkgsrc/x11/libxkbcommon/Makefile (expand / switch to context diff)
--- pkgsrc/x11/libxkbcommon/Makefile 2020/01/27 10:53:28 1.25
+++ pkgsrc/x11/libxkbcommon/Makefile 2020/09/13 09:25:37 1.26
@@ -1,6 +1,6 @@
-# $NetBSD: Makefile,v 1.25 2020/01/27 10:53:28 wiz Exp $
+# $NetBSD: Makefile,v 1.26 2020/09/13 09:25:37 wiz Exp $
 
-DISTNAME=	libxkbcommon-0.10.0
+DISTNAME=	libxkbcommon-1.0.1
 CATEGORIES=	x11
 MASTER_SITES=	https://xkbcommon.org/download/
 EXTRACT_SUFX=	.tar.xz
@@ -29,5 +29,6 @@
 BUILDLINK_API_DEPENDS.libxcb+=	libxcb>=1.10
 .include "../../x11/libxcb/buildlink3.mk"
 .include "../../x11/xkeyboard-config/buildlink3.mk"
+.include "../../textproc/libxml2/buildlink3.mk"
 .include "../../devel/meson/build.mk"
 .include "../../mk/bsd.pkg.mk"

cvs diff -r1.8 -r1.9 pkgsrc/x11/libxkbcommon/PLIST (expand / switch to context diff)
--- pkgsrc/x11/libxkbcommon/PLIST 2019/11/06 12:51:55 1.8
+++ pkgsrc/x11/libxkbcommon/PLIST 2020/09/13 09:25:37 1.9
@@ -1,18 +1,33 @@
-@comment $NetBSD: PLIST,v 1.8 2019/11/06 12:51:55 wiz Exp $
+@comment $NetBSD: PLIST,v 1.9 2020/09/13 09:25:37 wiz Exp $
+bin/xkbcli
 include/xkbcommon/xkbcommon-compat.h
 include/xkbcommon/xkbcommon-compose.h
 include/xkbcommon/xkbcommon-keysyms.h
 include/xkbcommon/xkbcommon-names.h
 include/xkbcommon/xkbcommon-x11.h
 include/xkbcommon/xkbcommon.h
+include/xkbcommon/xkbregistry.h
 lib/libxkbcommon-x11.so
 lib/libxkbcommon-x11.so.0
 lib/libxkbcommon-x11.so.0.0.0
 lib/libxkbcommon.so
 lib/libxkbcommon.so.0
 lib/libxkbcommon.so.0.0.0
+lib/libxkbregistry.so
+lib/libxkbregistry.so.0
+lib/libxkbregistry.so.0.0.0
 lib/pkgconfig/xkbcommon-x11.pc
 lib/pkgconfig/xkbcommon.pc
+lib/pkgconfig/xkbregistry.pc
+libexec/xkbcommon/xkbcli-compile-keymap
+libexec/xkbcommon/xkbcli-how-to-type
+libexec/xkbcommon/xkbcli-interactive-x11
+libexec/xkbcommon/xkbcli-list
+man/man1/xkbcli-compile-keymap.1
+man/man1/xkbcli-how-to-type.1
+man/man1/xkbcli-interactive-x11.1
+man/man1/xkbcli-list.1
+man/man1/xkbcli.1
 ${PLIST.doc}share/doc/libxkbcommon/html/annotated.html
 ${PLIST.doc}share/doc/libxkbcommon/html/bc_s.png
 ${PLIST.doc}share/doc/libxkbcommon/html/bdwn.png

cvs diff -r1.18 -r1.19 pkgsrc/x11/libxkbcommon/distinfo (expand / switch to context diff)
--- pkgsrc/x11/libxkbcommon/distinfo 2020/01/27 10:53:28 1.18
+++ pkgsrc/x11/libxkbcommon/distinfo 2020/09/13 09:25:37 1.19
@@ -1,6 +1,6 @@
-$NetBSD: distinfo,v 1.18 2020/01/27 10:53:28 wiz Exp $
+$NetBSD: distinfo,v 1.19 2020/09/13 09:25:37 wiz Exp $
 
-SHA1 (libxkbcommon-0.10.0.tar.xz) = d8f956f4bc5382d5d8e0e4dd590c4f090e0e985a
+SHA1 (libxkbcommon-1.0.1.tar.xz) = c3eb29be002785f51f74614bbd61fd64fce7812d
-RMD160 (libxkbcommon-0.10.0.tar.xz) = 9c31510f78ca9b39d839b667ea7de01bc5d49981
+RMD160 (libxkbcommon-1.0.1.tar.xz) = 2bbad312d88b4b7bc1f89490ef44b62f52634803
-SHA512 (libxkbcommon-0.10.0.tar.xz) = 58c523b42a8ea0cae7322d453fbc5d4624374221246cb067074e2ff9820eef3ceea8686283136432cdf0842acfc0858c7b2d3954de234b6501092ae1d27c9e79
+SHA512 (libxkbcommon-1.0.1.tar.xz) = 929be7b52fae360a696f01e0a8f3aa9b585ad99db975a88680ababf623e46f4d98e6f7590a2859c24060856f45b27e7249072702fbbf5a7bd0d4a10791e6d489
-Size (libxkbcommon-0.10.0.tar.xz) = 383788 bytes
+Size (libxkbcommon-1.0.1.tar.xz) = 432692 bytes