iTranslated by AI

The content below is an AI-generated translation. This is an experimental feature, and may contain errors. View original article
🟠

Major changes to Mozc since October 2022

に公開

First draft: 2023-10-10

I have summarized the main changes to Mozc since October 2022. This is a compilation of information already available in documents, commit logs, and Issues, so there is no new information. I will add any missing items later.

Please report any Mozc issues or feature requests to GitHub Issues or Discussions.

Current Version

  • 2.29.5250
  • The third number (5250) is the number of days elapsed since version numbers were first assigned.
  • Reference: Google Japanese Input is 2.29.5050

Statistics

2022-10-11 - 2023-10-10

Cumulative Total

  • Number of commits: 3,348
  • Number of closed issues: 633
  • Number of merged pull requests: 51

Major Changes

  • Expansion of the scope for accepting pull requests (PRs)
  • Build artifacts can now be downloaded from GitHub Actions
  • Changed supported Windows versions from 8.1 to 10 or later
  • Changed supported macOS versions from 10.12 to 11.0 or later
  • Expansion of builds using Bazel
  • Changed supported Qt version from 5 to 6

Expansion of PR Acceptance Scope

Changed to allow accepting PRs for the following code:

  • Linux, macOS, and Windows clients
  • Candidate windows and GUI tools
  • Various data files

Details

Dictionary data updates

Addressed input-related feedback reported in Issues

Added bracket pairs that can be input

Addressed an issue where some Romaji conversions did not work when the alphanumeric character width was set to half-width

Expansion of Romaji conversion logic

Creation of mozc.zip in Bazel's Linux build

Added support for selecting the candidate window implementation in Wayland sessions for the IBus client

Additions and changes to environment variables used by the IBus client

Default input method can now be selected from the menu in IBus

Changed the default compiler on Linux from clang to the system default

Changed the scope of GYP build support on Linux

  • Alternatives are builds using Bazel
  • Removed IBus client build using GYP

Removed GTK-based candidate window code

  • Alternative is the Qt-based candidate window
  • In addition to removing it from previous build settings, the code itself has been deleted

Refactoring of IBus implementation

  • Created a wrapper class for C++
    • ibus_engine_show_lookup_table(engine_ptr)engine_wrapper.ShowLookupTable()

Made ANDROID_NDK_HOME setting unnecessary by default in Bazel's Linux build

Emacs Client

  • Improved Lint errors and added support for the latest versions

Icon updates

Addition of installers

End of support for 32-bit builds

Deletion of code for Windows 7 and 8

Default compiler changed to MSVC 2022

  • The previous default was MSVC 2017

Windows Installer version bumped to 5.0

Utilization of WIL (Windows Implementation Library)

Deletion of code for IMM32

  • Because support is now limited to Windows 10 or later

Build target changed to 11.0 or later

Support for building universal binaries and Apple Silicon binaries

Build artifacts can now be downloaded from GitHub Actions

Migration to Qt 6

Removal of dependency on jsoncpp

  • Because the code using it was deleted

Change in naming conventions for Bazel build macros

Utilization of Abseil library

  • Changed from const std::string& to absl::string_view
  • Utilization of absl::Str*, absl::flat_hash_*, absl::Span, absl::Time, ABSL_MUST_USE_RESULT, etc.
  • Removal of Mozc-specific implementations

Revamped thread implementation

  • Migrated from platform-specific implementations to std::thread

Changed order of values in unit tests

  • Changed from EXPECT_EQ(expected, actual) to EXPECTED_EQ(actual, expected)

Changed platform identification macros to standard ones

Reorganization of the base/ directory

Refactoring for C++17

  • Changed from new to std::make_unique
  • Changed to standard types such as uint32uint32_t
  • Utilization of std::move
  • Utilization of constexpr

Future Plans

Closing

While looking back to summarize these changes, I was reminded once again of the cooperation and support from so many people. Thank you very much.

GitHubで編集を提案

Discussion