Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package ibus-typing-booster for openSUSE:Factory checked in at 2023-10-12 23:41:55 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/ibus-typing-booster (Old) and /work/SRC/openSUSE:Factory/.ibus-typing-booster.new.1807 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "ibus-typing-booster" Thu Oct 12 23:41:55 2023 rev:116 rq:1117179 version:2.24.2 Changes: -------- --- /work/SRC/openSUSE:Factory/ibus-typing-booster/ibus-typing-booster.changes 2023-10-02 20:09:58.666381157 +0200 +++ /work/SRC/openSUSE:Factory/.ibus-typing-booster.new.1807/ibus-typing-booster.changes 2023-10-12 23:43:17.639470920 +0200 @@ -1,0 +2,9 @@ +Sun Oct 8 16:26:56 UTC 2023 - Marguerite Su <i...@marguerite.su> + +- fix factory build: + * ibus-typing-booster-libX11-1.8.7.patch + * libX11-data dropped some compose sequences in en_US locale + due to xkeyboard-config changes in version 1.8.7 (commit af2b6dfa) + * so some itb tests are not valid any more. + +------------------------------------------------------------------- New: ---- ibus-typing-booster-libX11-1.8.7.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ ibus-typing-booster.spec ++++++ --- /var/tmp/diff_new_pack.EviaWD/_old 2023-10-12 23:43:19.767547952 +0200 +++ /var/tmp/diff_new_pack.EviaWD/_new 2023-10-12 23:43:19.771548098 +0200 @@ -25,27 +25,51 @@ URL: https://mike-fabian.github.io/ibus-typing-booster/ Source0: https://github.com/mike-fabian/ibus-typing-booster/releases/download/%{version}/%{name}-%{version}.tar.gz Source1: https://releases.pagure.org/inscript2/inscript2-20210820.tar.gz +Patch0: %{name}-libX11-1.8.7.patch +BuildRequires: AppStream +BuildRequires: appstream-glib BuildRequires: dbus-1-x11 BuildRequires: desktop-file-utils BuildRequires: fdupes +BuildRequires: glib2 +BuildRequires: glibc-locale +BuildRequires: gtk3 BuildRequires: ibus-devel +BuildRequires: m17n-db +# for the unit tests +BuildRequires: m17n-lib BuildRequires: python3 BuildRequires: python3-devel BuildRequires: python3-gobject BuildRequires: python3-gobject-Gdk -BuildRequires: update-desktop-files -# for the unit tests -BuildRequires: m17n-lib -BuildRequires: AppStream -BuildRequires: appstream-glib -BuildRequires: glib2 -BuildRequires: glibc-locale -BuildRequires: gtk3 -BuildRequires: m17n-db +# Because of âfrom packing import versionâ: +BuildRequires: python3-packaging BuildRequires: python3-pyenchant +BuildRequires: update-desktop-files BuildRequires: xvfb-run +Requires: dbus-1-python3 +# Workaround bug with python3-enchant: https://bugzilla.opensuse.org/show_bug.cgi?id=1141993 +Requires: enchant-1-backend +# +Requires: ibus >= 1.5.3 +Requires: m17n-lib +Requires: python3 >= 3.3 +Requires: python3-distro # Because of âfrom packing import versionâ: -BuildRequires: python3-packaging +Requires: python3-packaging +Requires: python3-pyenchant +Requires: python3-pyxdg +Recommends: gdouros-symbola-fonts +# Recommend reasonably good fonts which have most of the emoji: +Recommends: noto-coloremoji-fonts +# For speech recognition: +Recommends: python3-PyAudio +# To make the setup tool look nicer and the search for dictionaries and imes better: +Recommends: python3-langtable +# Better regexpressions (optional): +Recommends: python3-regex +# To play a sound on error: +Recommends: python3-simpleaudio %if 0%{?sle_version} >= 120200 BuildRequires: python3-pyxdg %endif @@ -64,29 +88,6 @@ BuildRequires: myspell-fr_FR BuildRequires: myspell-it_IT %endif -# -Requires: ibus >= 1.5.3 -Requires: dbus-1-python3 -Requires: m17n-lib -Requires: python3 >= 3.3 -Requires: python3-distro -Requires: python3-pyenchant -# Because of âfrom packing import versionâ: -Requires: python3-packaging -# Workaround bug with python3-enchant: https://bugzilla.opensuse.org/show_bug.cgi?id=1141993 -Requires: enchant-1-backend -Requires: python3-pyxdg -# Recommend reasonably good fonts which have most of the emoji: -Recommends: noto-coloremoji-fonts -Recommends: gdouros-symbola-fonts -# For speech recognition: -Recommends: python3-PyAudio -# To play a sound on error: -Recommends: python3-simpleaudio -# To make the setup tool look nicer and the search for dictionaries and imes better: -Recommends: python3-langtable -# Better regexpressions (optional): -Recommends: python3-regex %description Ibus-typing-booster is a context sensitive completion @@ -98,11 +99,12 @@ ##extract inscript2 maps tar xzf %{SOURCE1} %endif +%patch0 -p1 %build export PYTHON=%{_bindir}/python3 %configure --disable-static --libexecdir=%{_libdir}/ibus -make %{?_smp_mflags} +%make_build %install export PYTHON=%{_bindir}/python3 @@ -133,7 +135,7 @@ desktop-file-validate \ %{buildroot}%{_datadir}/applications/ibus-setup-typing-booster.desktop desktop-file-validate \ - $RPM_BUILD_ROOT%{_datadir}/applications/emoji-picker.desktop + %{buildroot}%{_datadir}/applications/emoji-picker.desktop pushd engine # run doctests # hunspell_suggest.py test currently doesn't work on SuSE because @@ -200,7 +202,8 @@ %{_bindir}/ibus write-cache --system &>/dev/null || : %files -f %{name}.lang -%doc AUTHORS COPYING README README.html README.md +%license COPYING +%doc AUTHORS README README.html README.md %{_bindir}/emoji-picker %{_datadir}/%{name} %dir %{_datadir}/metainfo ++++++ ibus-typing-booster-libX11-1.8.7.patch ++++++ Index: ibus-typing-booster-2.24.2/tests/test_itb.py =================================================================== --- ibus-typing-booster-2.24.2.orig/tests/test_itb.py +++ ibus-typing-booster-2.24.2/tests/test_itb.py @@ -2367,89 +2367,73 @@ class ItbTestCase(unittest.TestCase): ['en_US'], update_gsettings=False) self.engine.do_process_key_event(IBus.KEY_dead_macron, 0, 0) self.assertEqual(self.engine.mock_preedit_text, '¯') - self.engine.do_process_key_event(0x010001EB, 0, 0) - self.assertEqual(self.engine.mock_preedit_text, 'Ç') - self.engine.do_process_key_event(IBus.KEY_Multi_key, 0, 0) - self.assertEqual(self.engine.mock_preedit_text, 'Ç·') - self.engine.do_process_key_event(IBus.KEY_macron, 0, 0) - self.assertEqual(self.engine.mock_preedit_text, 'ǯ') - self.engine.do_process_key_event(0x010001EB, 0, 0) - self.assertEqual(self.engine.mock_preedit_text, 'ÇÇ') - self.engine.do_process_key_event(IBus.KEY_Multi_key, 0, 0) - self.assertEqual(self.engine.mock_preedit_text, 'ÇÇ·') - self.engine.do_process_key_event(IBus.KEY_underscore, 0, 0) - self.assertEqual(self.engine.mock_preedit_text, 'ÇÇ_') - self.engine.do_process_key_event(0x010001EB, 0, 0) - self.assertEqual(self.engine.mock_preedit_text, 'ÇÇÇ') - self.engine.do_process_key_event(IBus.KEY_dead_macron, 0, 0) - self.assertEqual(self.engine.mock_preedit_text, 'ÇÇǯ') self.engine.do_process_key_event(IBus.KEY_dead_ogonek, 0, 0) - self.assertEqual(self.engine.mock_preedit_text, 'ÇÇǯË') + self.assertEqual(self.engine.mock_preedit_text, '¯Ë') self.engine.do_process_key_event(IBus.KEY_o, 0, 0) - self.assertEqual(self.engine.mock_preedit_text, 'ÇÇÇÇ') + self.assertEqual(self.engine.mock_preedit_text, 'Ç') self.engine.do_process_key_event(IBus.KEY_dead_macron, 0, 0) - self.assertEqual(self.engine.mock_preedit_text, 'ÇÇÇǯ') + self.assertEqual(self.engine.mock_preedit_text, 'ǯ') self.engine.do_process_key_event(IBus.KEY_Multi_key, 0, 0) - self.assertEqual(self.engine.mock_preedit_text, 'ÇÇÇǯ·') + self.assertEqual(self.engine.mock_preedit_text, 'ǯ·') self.engine.do_process_key_event(IBus.KEY_semicolon, 0, 0) - self.assertEqual(self.engine.mock_preedit_text, 'ÇÇÇǯ·;') + self.assertEqual(self.engine.mock_preedit_text, 'ǯ·;') self.engine.do_process_key_event(IBus.KEY_o, 0, 0) - self.assertEqual(self.engine.mock_preedit_text, 'ÇÇÇÇÇ') + self.assertEqual(self.engine.mock_preedit_text, 'ÇÇ') self.engine.do_process_key_event(IBus.KEY_Multi_key, 0, 0) - self.assertEqual(self.engine.mock_preedit_text, 'ÇÇÇÇÇ·') + self.assertEqual(self.engine.mock_preedit_text, 'ÇÇ·') self.engine.do_process_key_event(IBus.KEY_macron, 0, 0) - self.assertEqual(self.engine.mock_preedit_text, 'ÇÇÇÇǯ') + self.assertEqual(self.engine.mock_preedit_text, 'Çǯ') self.engine.do_process_key_event(IBus.KEY_dead_ogonek, 0, 0) - self.assertEqual(self.engine.mock_preedit_text, 'ÇÇÇÇǯË') + self.assertEqual(self.engine.mock_preedit_text, 'ÇǯË') self.engine.do_process_key_event(IBus.KEY_o, 0, 0) - self.assertEqual(self.engine.mock_preedit_text, 'ÇÇÇÇÇÇ') + self.assertEqual(self.engine.mock_preedit_text, 'ÇÇÇ') self.engine.do_process_key_event(IBus.KEY_Multi_key, 0, 0) - self.assertEqual(self.engine.mock_preedit_text, 'ÇÇÇÇÇÇ·') + self.assertEqual(self.engine.mock_preedit_text, 'ÇÇÇ·') self.engine.do_process_key_event(IBus.KEY_macron, 0, 0) - self.assertEqual(self.engine.mock_preedit_text, 'ÇÇÇÇÇǯ') + self.assertEqual(self.engine.mock_preedit_text, 'ÇÇǯ') self.engine.do_process_key_event(IBus.KEY_semicolon, 0, 0) - self.assertEqual(self.engine.mock_preedit_text, 'ÇÇÇÇÇǯ;') + self.assertEqual(self.engine.mock_preedit_text, 'ÇÇǯ;') self.engine.do_process_key_event(IBus.KEY_o, 0, 0) - self.assertEqual(self.engine.mock_preedit_text, 'ÇÇÇÇÇÇÇ') + self.assertEqual(self.engine.mock_preedit_text, 'ÇÇÇÇ') self.engine.do_process_key_event(IBus.KEY_Multi_key, 0, 0) - self.assertEqual(self.engine.mock_preedit_text, 'ÇÇÇÇÇÇÇ·') + self.assertEqual(self.engine.mock_preedit_text, 'ÇÇÇÇ·') self.engine.do_process_key_event(IBus.KEY_underscore, 0, 0) - self.assertEqual(self.engine.mock_preedit_text, 'ÇÇÇÇÇÇÇ_') + self.assertEqual(self.engine.mock_preedit_text, 'ÇÇÇÇ_') self.engine.do_process_key_event(IBus.KEY_dead_ogonek, 0, 0) - self.assertEqual(self.engine.mock_preedit_text, 'ÇÇÇÇÇÇÇ_Ë') + self.assertEqual(self.engine.mock_preedit_text, 'ÇÇÇÇ_Ë') self.engine.do_process_key_event(IBus.KEY_o, 0, 0) - self.assertEqual(self.engine.mock_preedit_text, 'ÇÇÇÇÇÇÇÇ') + self.assertEqual(self.engine.mock_preedit_text, 'ÇÇÇÇÇ') self.engine.do_process_key_event(IBus.KEY_Multi_key, 0, 0) - self.assertEqual(self.engine.mock_preedit_text, 'ÇÇÇÇÇÇÇÇ·') + self.assertEqual(self.engine.mock_preedit_text, 'ÇÇÇÇÇ·') self.engine.do_process_key_event(IBus.KEY_underscore, 0, 0) - self.assertEqual(self.engine.mock_preedit_text, 'ÇÇÇÇÇÇÇÇ_') + self.assertEqual(self.engine.mock_preedit_text, 'ÇÇÇÇÇ_') self.engine.do_process_key_event(IBus.KEY_semicolon, 0, 0) - self.assertEqual(self.engine.mock_preedit_text, 'ÇÇÇÇÇÇÇÇ_;') + self.assertEqual(self.engine.mock_preedit_text, 'ÇÇÇÇÇ_;') self.engine.do_process_key_event(IBus.KEY_o, 0, 0) - self.assertEqual(self.engine.mock_preedit_text, 'ÇÇÇÇÇÇÇÇÇ') + self.assertEqual(self.engine.mock_preedit_text, 'ÇÇÇÇÇÇ') self.engine.do_process_key_event(IBus.KEY_dead_caron, 0, 0) - self.assertEqual(self.engine.mock_preedit_text, 'ÇÇÇÇÇÇÇÇÇË') + self.assertEqual(self.engine.mock_preedit_text, 'ÇÇÇÇÇÇË') self.engine.do_process_key_event(IBus.KEY_EZH, 0, 0) - self.assertEqual(self.engine.mock_preedit_text, 'ÇÇÇÇÇÇÇÇÇÇ®') + self.assertEqual(self.engine.mock_preedit_text, 'ÇÇÇÇÇÇÇ®') self.engine.do_process_key_event(IBus.KEY_Multi_key, 0, 0) - self.assertEqual(self.engine.mock_preedit_text, 'ÇÇÇÇÇÇÇÇÇǮ·') + self.assertEqual(self.engine.mock_preedit_text, 'ÇÇÇÇÇÇǮ·') self.engine.do_process_key_event(IBus.KEY_c, 0, 0) - self.assertEqual(self.engine.mock_preedit_text, 'ÇÇÇÇÇÇÇÇÇÇ®c') + self.assertEqual(self.engine.mock_preedit_text, 'ÇÇÇÇÇÇÇ®c') self.engine.do_process_key_event(IBus.KEY_EZH, 0, 0) - self.assertEqual(self.engine.mock_preedit_text, 'ÇÇÇÇÇÇÇÇÇǮǮ') + self.assertEqual(self.engine.mock_preedit_text, 'ÇÇÇÇÇÇǮǮ') self.engine.do_process_key_event(IBus.KEY_dead_caron, 0, 0) - self.assertEqual(self.engine.mock_preedit_text, 'ÇÇÇÇÇÇÇÇÇǮǮË') + self.assertEqual(self.engine.mock_preedit_text, 'ÇÇÇÇÇÇǮǮË') self.engine.do_process_key_event(IBus.KEY_ezh, 0, 0) - self.assertEqual(self.engine.mock_preedit_text, 'ÇÇÇÇÇÇÇÇÇǮǮǯ') + self.assertEqual(self.engine.mock_preedit_text, 'ÇÇÇÇÇÇǮǮǯ') self.engine.do_process_key_event(IBus.KEY_Multi_key, 0, 0) - self.assertEqual(self.engine.mock_preedit_text, 'ÇÇÇÇÇÇÇÇÇǮǮǯ·') + self.assertEqual(self.engine.mock_preedit_text, 'ÇÇÇÇÇÇǮǮǯ·') self.engine.do_process_key_event(IBus.KEY_c, 0, 0) - self.assertEqual(self.engine.mock_preedit_text, 'ÇÇÇÇÇÇÇÇÇǮǮǯc') + self.assertEqual(self.engine.mock_preedit_text, 'ÇÇÇÇÇÇǮǮǯc') self.engine.do_process_key_event(IBus.KEY_ezh, 0, 0) - self.assertEqual(self.engine.mock_preedit_text, 'ÇÇÇÇÇÇÇÇÇǮǮǯǯ') + self.assertEqual(self.engine.mock_preedit_text, 'ÇÇÇÇÇÇǮǮǯǯ') self.engine.do_process_key_event(IBus.KEY_space, 0, 0) self.assertEqual(self.engine.mock_preedit_text, '') - self.assertEqual(self.engine.mock_committed_text, 'ÇÇÇÇÇÇÇÇÇǮǮǯǯ ') + self.assertEqual(self.engine.mock_committed_text, 'ÇÇÇÇÇÇǮǮǯǯ ') if self._compose_sequences.compose([IBus.KEY_Multi_key, 0x01002276, IBus.KEY_slash]) != 'â¸': self.skipTest( 'Compose file too old, older than ' @@ -2462,7 +2446,7 @@ class ItbTestCase(unittest.TestCase): self.assertEqual(self.engine.mock_preedit_text, 'â¸') self.engine.do_process_key_event(IBus.KEY_space, 0, 0) self.assertEqual(self.engine.mock_preedit_text, '') - self.assertEqual(self.engine.mock_committed_text, 'ÇÇÇÇÇÇÇÇÇǮǮǯǯ ⸠') + self.assertEqual(self.engine.mock_committed_text, 'ÇÇÇÇÇÇǮǮǯǯ ⸠') self.engine.do_process_key_event(IBus.KEY_Multi_key, 0, 0) self.assertEqual(self.engine.mock_preedit_text, '·') self.engine.do_process_key_event(0x0100093C, 0, 0) @@ -2473,7 +2457,7 @@ class ItbTestCase(unittest.TestCase): self.engine.do_process_key_event(IBus.KEY_space, 0, 0) self.assertEqual(self.engine.mock_preedit_text, '') self.assertEqual(self.engine.mock_committed_text, - 'ÇÇÇÇÇÇÇÇÇǮǮǯǯ ⸠\u0915\u093C ') + 'ÇÇÇÇÇÇǮǮǯǯ ⸠\u0915\u093C ') def test_compose_combining_chars_in_preedit_representation(self) -> None: self.engine.set_current_imes(