Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package fcitx5-libthai for openSUSE:Factory checked in at 2025-01-29 16:17:42 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/fcitx5-libthai (Old) and /work/SRC/openSUSE:Factory/.fcitx5-libthai.new.2316 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "fcitx5-libthai" Wed Jan 29 16:17:42 2025 rev:9 rq:1241105 version:5.1.5 Changes: -------- --- /work/SRC/openSUSE:Factory/fcitx5-libthai/fcitx5-libthai.changes 2025-01-06 16:05:59.343684329 +0100 +++ /work/SRC/openSUSE:Factory/.fcitx5-libthai.new.2316/fcitx5-libthai.changes 2025-01-29 16:18:18.739211424 +0100 @@ -1,0 +2,7 @@ +Wed Jan 29 07:08:24 UTC 2025 - Marguerite Su <i...@marguerite.su> + +- update to 5.1.5 + * use addon factory v2 + * do not include keysymgen.h + +------------------------------------------------------------------- Old: ---- fcitx5-libthai-5.1.4.tar.zst New: ---- fcitx5-libthai-5.1.5.tar.zst ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ fcitx5-libthai.spec ++++++ --- /var/tmp/diff_new_pack.A8ib4Z/_old 2025-01-29 16:18:19.615247753 +0100 +++ /var/tmp/diff_new_pack.A8ib4Z/_new 2025-01-29 16:18:19.615247753 +0100 @@ -17,7 +17,7 @@ Name: fcitx5-libthai -Version: 5.1.4 +Version: 5.1.5 Release: 0 Summary: Libthai input method engine for Fcitx5 License: GPL-2.0-or-later ++++++ fcitx5-libthai-5.1.4.tar.zst -> fcitx5-libthai-5.1.5.tar.zst ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/fcitx5-libthai-5.1.4/CMakeLists.txt new/fcitx5-libthai-5.1.5/CMakeLists.txt --- old/fcitx5-libthai-5.1.4/CMakeLists.txt 2024-10-08 21:48:48.000000000 +0200 +++ new/fcitx5-libthai-5.1.5/CMakeLists.txt 2025-01-23 00:27:29.000000000 +0100 @@ -1,5 +1,7 @@ -cmake_minimum_required(VERSION 3.10) -project(fcitx5-libthai VERSION 5.1.4) +cmake_minimum_required(VERSION 3.12) +project(fcitx5-libthai VERSION 5.1.5) + +set(REQUIRED_FCITX_VERSION 5.1.12) find_package(ECM REQUIRED 1.0.0) set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH} "${CMAKE_CURRENT_SOURCE_DIR}/cmake" ${CMAKE_MODULE_PATH}) include(FeatureSummary) @@ -7,7 +9,7 @@ include(ECMUninstallTarget) find_package(PkgConfig REQUIRED) -find_package(Fcitx5Core 5.0.2 REQUIRED) +find_package(Fcitx5Core ${REQUIRED_FCITX_VERSION} REQUIRED) find_package(Iconv REQUIRED) find_package(Gettext REQUIRED) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/fcitx5-libthai-5.1.4/org.fcitx.Fcitx5.Addon.LibThai.metainfo.xml.in new/fcitx5-libthai-5.1.5/org.fcitx.Fcitx5.Addon.LibThai.metainfo.xml.in --- old/fcitx5-libthai-5.1.4/org.fcitx.Fcitx5.Addon.LibThai.metainfo.xml.in 2024-10-08 21:48:48.000000000 +0200 +++ new/fcitx5-libthai-5.1.5/org.fcitx.Fcitx5.Addon.LibThai.metainfo.xml.in 2025-01-23 00:27:29.000000000 +0100 @@ -14,6 +14,7 @@ <url type="vcs-browser">https://github.com/fcitx/fcitx5-libthai</url> <project_group>Fcitx</project_group> <releases> + <release version="5.1.5" date="2025-01-22"/> <release version="5.1.4" date="2024-10-08"/> <release version="5.1.3" date="2024-04-22"/> <release version="5.1.2" date="2024-01-02"/> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/fcitx5-libthai-5.1.4/src/CMakeLists.txt new/fcitx5-libthai-5.1.5/src/CMakeLists.txt --- old/fcitx5-libthai-5.1.4/src/CMakeLists.txt 2024-10-08 21:48:48.000000000 +0200 +++ new/fcitx5-libthai-5.1.5/src/CMakeLists.txt 2025-01-23 00:27:29.000000000 +0100 @@ -1,5 +1,5 @@ -add_library(iconvwrapper STATIC iconvwrapper.cpp) +add_library(iconvwrapper OBJECT iconvwrapper.cpp) set_target_properties(iconvwrapper PROPERTIES POSITION_INDEPENDENT_CODE ON) target_link_libraries(iconvwrapper Fcitx5::Utils Iconv::Iconv) @@ -7,7 +7,7 @@ engine.cpp thaikb.cpp ) -add_library(libthai MODULE ${LIBTHAI_SOURCES}) +add_fcitx5_addon(libthai ${LIBTHAI_SOURCES}) target_link_libraries(libthai iconvwrapper Fcitx5::Core ${THAI_TARGET} Iconv::Iconv) target_include_directories(libthai PRIVATE ${PROJECT_BINARY_DIR}) set_target_properties(libthai PROPERTIES PREFIX "") diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/fcitx5-libthai-5.1.4/src/engine.cpp new/fcitx5-libthai-5.1.5/src/engine.cpp --- old/fcitx5-libthai-5.1.4/src/engine.cpp 2024-10-08 21:48:48.000000000 +0200 +++ new/fcitx5-libthai-5.1.5/src/engine.cpp 2025-01-23 00:27:29.000000000 +0100 @@ -5,18 +5,37 @@ * */ #include "engine.h" +#include "thaikb.h" +#include <cstddef> +#include <cstdint> +#include <cstring> #include <deque> +#include <fcitx-utils/capabilityflags.h> +#include <fcitx-utils/key.h> +#include <fcitx-utils/keysym.h> #include <fcitx-utils/log.h> #include <fcitx-utils/utf8.h> +#include <fcitx/addoninstance.h> +#include <fcitx/event.h> #include <fcitx/inputcontext.h> #include <fcitx/inputcontextmanager.h> +#include <fcitx/inputmethodentry.h> +#include <stdexcept> +#include <string> +#include <string_view> +#include <thai/thailib.h> #include <thai/thcell.h> #include <thai/thinp.h> +#include <vector> -namespace fcitx { +namespace { FCITX_DEFINE_LOG_CATEGORY(libthai_log, "libthai"); +} + +namespace fcitx { + #define LIBTHAI_DEBUG() FCITX_LOGC(libthai_log, Debug) constexpr auto FALLBACK_BUFF_SIZE = 4; @@ -99,11 +118,13 @@ LibThaiEngine::~LibThaiEngine() {} -void LibThaiEngine::activate(const InputMethodEntry &, InputContextEvent &) {} +void LibThaiEngine::activate(const InputMethodEntry & /*entry*/, + InputContextEvent & /*event*/) {} -void LibThaiEngine::deactivate(const InputMethodEntry &, InputContextEvent &) {} +void LibThaiEngine::deactivate(const InputMethodEntry & /*entry*/, + InputContextEvent & /*event*/) {} -bool isContextIntactKey(Key key) { +static bool isContextIntactKey(Key key) { return (((key.sym() & 0xFF00) == 0xFF00) && (/* IsModifierKey */ @@ -114,7 +135,7 @@ key.sym() <= FcitxKey_ISO_Last_Group_Lock)); } -bool isContextLostKey(Key key) { +static bool isContextLostKey(Key key) { return ((key.sym() & 0xFF00) == 0xFF00) && (key.sym() == FcitxKey_BackSpace || key.sym() == FcitxKey_Tab || @@ -134,12 +155,13 @@ (FcitxKey_F1 <= key.sym() && key.sym() <= FcitxKey_F35)); } -void LibThaiEngine::keyEvent(const InputMethodEntry &, KeyEvent &keyEvent) { +void LibThaiEngine::keyEvent(const InputMethodEntry & /*entry*/, + KeyEvent &keyEvent) { auto key = keyEvent.rawKey(); if (keyEvent.isRelease()) { return; } - auto state = keyEvent.inputContext()->propertyFor(&factory_); + auto *state = keyEvent.inputContext()->propertyFor(&factory_); // If any ctrl alt super modifier is pressed, ignore. if (key.states().testAny(KeyStates{KeyState::Ctrl_Alt, KeyState::Super}) || isContextLostKey(key)) { @@ -187,7 +209,8 @@ prevChar = prevChars.back(); } if (!th_isaccept(prevChar, newChar, *config_.strictness)) { - return keyEvent.filterAndAccept(); + keyEvent.filterAndAccept(); + return; } if (state->commitString(&newChar, 1)) { keyEvent.filterAndAccept(); @@ -200,14 +223,16 @@ state->prevCell(&contextCell); if (!th_validate_leveled(contextCell, newChar, &conv, *config_.strictness)) { - return keyEvent.filterAndAccept(); + keyEvent.filterAndAccept(); + return; } if (conv.offset < 0) { // SurroundingText not supported, so just reject the key. if (!keyEvent.inputContext()->capabilityFlags().test( CapabilityFlag::SurroundingText)) { - return keyEvent.filter(); + keyEvent.filter(); + return; } keyEvent.inputContext()->deleteSurroundingText(conv.offset, @@ -217,15 +242,17 @@ state->rememberPrevChars(newChar); if (state->commitString(conv.conv, strlen(reinterpret_cast<char *>(conv.conv)))) { - return keyEvent.filterAndAccept(); + keyEvent.filterAndAccept(); + return; } } -void LibThaiEngine::reset(const InputMethodEntry &, InputContextEvent &event) { - auto state = event.inputContext()->propertyFor(&factory_); +void LibThaiEngine::reset(const InputMethodEntry & /*entry*/, + InputContextEvent &event) { + auto *state = event.inputContext()->propertyFor(&factory_); state->forgetPrevChars(); } } // namespace fcitx -FCITX_ADDON_FACTORY(fcitx::LibThaiFactory); +FCITX_ADDON_FACTORY_V2(libthai, fcitx::LibThaiFactory); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/fcitx5-libthai-5.1.4/src/engine.h new/fcitx5-libthai-5.1.5/src/engine.h --- old/fcitx5-libthai-5.1.4/src/engine.h 2024-10-08 21:48:48.000000000 +0200 +++ new/fcitx5-libthai-5.1.5/src/engine.h 2025-01-23 00:27:29.000000000 +0100 @@ -9,10 +9,16 @@ #include "iconvwrapper.h" #include "thaikb.h" +#include <fcitx-config/configuration.h> +#include <fcitx-config/enum.h> #include <fcitx-config/iniparser.h> +#include <fcitx-config/option.h> +#include <fcitx-config/rawconfig.h> #include <fcitx-utils/i18n.h> #include <fcitx/addonfactory.h> +#include <fcitx/addoninstance.h> #include <fcitx/addonmanager.h> +#include <fcitx/event.h> #include <fcitx/inputcontextproperty.h> #include <fcitx/inputmethodengine.h> #include <fcitx/instance.h> @@ -47,7 +53,7 @@ void keyEvent(const InputMethodEntry &entry, KeyEvent &keyEvent) override; void reset(const InputMethodEntry &entry, InputContextEvent &event) override; - void deactivate(const fcitx::InputMethodEntry &, + void deactivate(const fcitx::InputMethodEntry & /*entry*/, fcitx::InputContextEvent &event) override; const fcitx::Configuration *getConfig() const override { return &config_; } void setConfig(const fcitx::RawConfig &raw) override { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/fcitx5-libthai-5.1.4/src/iconvwrapper.cpp new/fcitx5-libthai-5.1.5/src/iconvwrapper.cpp --- old/fcitx5-libthai-5.1.4/src/iconvwrapper.cpp 2024-10-08 21:48:48.000000000 +0200 +++ new/fcitx5-libthai-5.1.5/src/iconvwrapper.cpp 2025-01-23 00:27:29.000000000 +0100 @@ -6,8 +6,14 @@ */ #include "iconvwrapper.h" +#include <cstddef> +#include <cstdint> #include <fcitx-utils/utf8.h> #include <iconv.h> +#include <iterator> +#include <memory> +#include <string_view> +#include <vector> class IconvWrapperPrivate { public: @@ -30,7 +36,7 @@ } std::vector<uint8_t> IconvWrapper::tryConvert(std::string_view s) const { - auto conv = d_ptr->conv_; + iconv_t conv = d_ptr->conv_; for (auto iter = std::begin(s), e = std::end(s); iter != e; iter = fcitx::utf8::nextChar(iter)) { std::vector<uint8_t> result; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/fcitx5-libthai-5.1.4/src/libthai-addon.conf.in.in new/fcitx5-libthai-5.1.5/src/libthai-addon.conf.in.in --- old/fcitx5-libthai-5.1.4/src/libthai-addon.conf.in.in 2024-10-08 21:48:48.000000000 +0200 +++ new/fcitx5-libthai-5.1.5/src/libthai-addon.conf.in.in 2025-01-23 00:27:29.000000000 +0100 @@ -6,3 +6,6 @@ Type=SharedLibrary OnDemand=True Configurable=True + +[Addon/Dependencies] +0=core:@REQUIRED_FCITX_VERSION@