Adobe Commerce / Magento Open Source 2.4.6, 2.4.5-p2, 2.4.4-p3がリリースされました

事前のリリース予告通り、Adobe Commerce と Magento Open Sourceの新バージョンがリリースされました。
公式Experience Leagueのリリース記事は以下のとおりです。

今回リリースされたバージョンは以下の3つとなっており、2つはセキュリティアップデートとなっています。

  • 2.4.6
  • 2.4.5-p2
  • 2.4.4-p3

2.4.6のハイライト

最新バージョンである、Adobe Commerce / Magento Open Source 2.4.6では、以下のような新機能と修正が加えられています。
(もちろんそれ以外の細かいレベルの修正はたくさん加えられています)

動作環境に対する変更点:

Adobe Commerce / Magento Open Sourceを動作させるために必要な環境に対する変更が行われています。

  • OpenSearch2.xとElasticsearch 8.xのサポート
  • PHP8.2サポートの追加とPHP7.4サポートの廃止
  • Composer 1.xの削除
  • Redis 7.0.xのサポート
  • MariaDB 10.6のサポート

基本的には新バージョンへの対応と、公式サポートが終了したバージョンの除外がメインとなっています。
注意しなければならない点としては、

  • PHPの対応バージョン変更
  • OpenSearchの公式対応とElasticsearchの対応バージョン変更
  • Composerのバージョン変更

あたりでしょうか。

対応PHPバージョンのまとめ

PHPの対応バージョンは表に整理すると、

  PHP7.4 PHP8.1 PHP8.2
2.3.7
2.4.3
2.4.4
2.4.5
2.4.6

 

という組み合わせになります。
2.3.7や2.4.3からは2.4.6へ一気にアップデートできません。2.4.4は比較的安定しているので、古いバージョンからのアップデート先としては堅実かもしれません。
そこから2.4.5を飛ばして、2.4.6へアップデート計画を立てるのが安全ではないかと思います。

ひっそり追加された機能

あまり目立った機能ではないですが、

  • 管理画面商品一覧の件数制限設定

という設定項目と新機能が追加されています。
おそらくは非常に商品点数が多い事業者向けの対応ではないかと思われます。

Adobe Commerceのみの改良点

Adobe Commerceのみに加えられた改良点としては、主に以下のものが挙げられています。

  • 大量のカスタマーセグメント定義に対するパフォーマンス向上
  • インポートパフォーマンスの向上(100,000レコード/分)
  • 高負荷時の注文受付処理能力向上(クラウド版のみ)

いずれもパフォーマンス改善ばかりですが、カスタマーセグメントはAdobe Commerce版の標準機能だけに、活用している事業者も多そうです。
ここ最近の傾向として、Adobe Commerce / Magento Open Sourceともに新機能は控えめになっています。
どちらかといえば細かいレベルの不具合修正や、連携先(DHLなど)の仕様変更に対応するようなものが多く、かつてのように「こんなものが実装された!」という類のものは少なくなっています。
その代わりパフォーマンス面などは2.1/2.2に比べると大きく向上している部分もあり、PHP自体の高速化も相まってより多くのトラフィックを処理できるようになってきています。

インストール時の注意点

2.4.6では、OpenSearchとElasticsearch 8.x対応が行われたため、インストール時のコマンドに一部変更が生じています。
2.4系ではWebブラウザからのインストーラーは廃止されたため、コマンドでのインストールのみとなっています。

2.4.5までは特に注意は必要なかったのですが、2.4.6では「search-engine」パラメータを指定する必要があります。
2.4.5までもこのパラメータは存在したのですが、Elasticsearchがデフォルト値で、OpenSearchはサポート外だったため、特段問題はありませんでした。
2.4.6ではOpenSearchがサポート対象となり、このパラメータのデフォルト値が「opensearch」に変わりました。
Elasticsearch 7.x/8.xを利用する場合は、明示的に「search-engine」パラメータを指定する必要があります。

セキュリティアップデートバージョンについて

2.4.5-p2と2.4.4-p3については名前の通りセキュリティアップデートです。
両バージョンに対して行われた修正については、 Adobe Security Bulletin で公開されています。以下の4件です。

  • XMLインジェクション
  • クロス・サイト・スクリプティング(XSS)
  • 不適切な権限定義
  • 不適切な認証

レベルとしてはXMLインジェクションが最も深刻となっており、XSSと不適切な権限定義の2件は重要となっています。
特にXMLインジェクションについてはMagentoフレームワークが多用しているXML定義ファイルにおけるバリデーション不備を突くもののようです。
2.4.5-p2も2.4.4-p3も修正箇所はさほど多くないようなので、早めにアップデートしておくと良いでしょう。

アップデートに役立つ情報

今に始まった話ではないのですが、Adobe Commerce / Magento Open Source をアップデートしようとすると、毎回の変更点が多いために後方互換性のない変更点を把握し切ることが困難でした。
そのため、テスト工程が非常に大変な作業になり、見落としや実装漏れが多発していました。

最近のExperience Leagueには「後方互換性の無い変更」に関する専用のページが設けられています。
そのインターフェイスやクラス、メソッドで後方互換性のない仕様変更が行われたかがリストされているので、アップデート先バージョン別に確認ができるようになっています。

こういった情報も以前よりも多く提供されるようになった点は喜ばしいことだと思われます。