XZ 5.8がリリース - バックドア発見後初のメジャーバージョンアップ版

[PR]記事内のアフィリエイトリンクから収入を得る場合があります
  • URLをコピーしました!

Linux等で広く使われている圧縮ユーティリティ「XZ Utils」の最新版、v5.8.0が3月25日(現地時間)に公開されました(Phoronix)。

XZ Utilsは昨年5.6.0/5.6.1に当時のメンテナによって悪意のあるバックドア埋め込まれていたことが発見され大きな注目を集めました。バックドアは5月に公開された5.6.2で修正されおり、5.8.0はバックドア発見後初となるメジャーバージョンアップ版ということになります。

5.8.0ではliblzmaの改良が行われ、SSE2を活用することで、LZMA/LZMA2デコーダーのパフォーマンスが向上しています。CMakeの互換性の改善(NetBSD、Darwin、mingw-w64)や、クロアチア語、イタリア語、ポルトガル語、ルーマニア語等の翻訳の更新、またマニュアルベージの更新も行われています。

なお、開発版の5.7.xシリーズでは、LZMA Utilsスクリプトのいくつか(lzcmp、lzdiffなど)の非推奨化や、PowerPCおよびRISC-Vプロセッサでのエンコーダの速度の向上、RISC-V、ARM64、x86 BCJフィルタに対応する新しい低レベルAPIの追加、fsync()を利用したファイル削除の信頼性向上などの変更が行われています。

リリースノートは以下の通りです。


5.8.0 (2025-03-25)

    This bumps the minor version of liblzma because new features were
    added. The API and ABI are still backward compatible with liblzma
    5.6.x, 5.4.x, 5.2.x, and 5.0.x.

    * liblzma on 32/64-bit x86: When possible, use SSE2 intrinsics
      instead of memcpy() in the LZMA/LZMA2 decoder. In typical cases,
      this may reduce decompression time by 0-5 %. However, when built
      against musl libc, over 15 % time reduction was observed with
      highly compressed files.

    * CMake: Make the feature test macros match the Autotools-based
      build on NetBSD, Darwin, and mingw-w64.

    * Update the Croatian, Italian, Portuguese, and Romanian
      translations.

    * Update the German, Italian, Korean, Romanian, Serbian, and
      Ukrainian man page translations.

    Summary of changes in the 5.7.x development releases:

    * Mark the following LZMA Utils script aliases as deprecated:
      lzcmp, lzdiff, lzless, lzmore, lzgrep, lzegrep, and lzfgrep.

    * liblzma:

        - Improve LZMA/LZMA2 encoder speed on 64-bit PowerPC (both
          endiannesses) and those 64-bit RISC-V processors that
          support fast unaligned access.

        - Add low-level APIs for RISC-V, ARM64, and x86 BCJ filters
          to lzma/bcj.h. These are primarily for erofs-utils.

        - x86/x86-64/E2K CLMUL CRC code was rewritten.

        - Use the CRC32 instructions on LoongArch.

    * xz:

        - Synchronize the output file and its directory using fsync()
          before deleting the input file. No syncing is done when xz
          isn't going to delete the input file.

        - Add --no-sync to disable the sync-before-delete behavior.

        - Make --single-stream imply --keep.

    * xz, xzdec, lzmainfo: When printing messages, replace
      non-printable characters with question marks.

    * xz and xzdec on Linux: Support Landlock ABI versions 5 and 6.

    * CMake: Revise the configuration variables and some of their
      options, and document them in the file INSTALL. CMake support
      is no longer experimental. (It was already not experimental
      when building for native Windows.)

    * Add build-aux/license-check.sh.


最新版のソースコードは公式サイトからダウンロード可能です。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次