Skip to content

[WIP] EC-CUBE 4.4 Roadmap #6762

Description

@dotani1111

4.4のリリース内容・計画のまとめや目安箱Issueです。

基本方針

メジャーバージョンとして以下の方針で開発を行います。

  • Symfony 6.4のEOSL(2027年11月)対策およびミドルウェアの最新バージョン対応のためのSymfony 7.4へのバージョンアップを実施予定です。
  • AIフレンドリーな機能構築として、AI(Agentic Commerce、AEO)に対応するための機能(情報フィード機能)やMCPサーバ機能、skillsなどを実装予定です。

開発スケジュール

2026年8月下旬にα版リリース、正式版は10月下旬を想定しております。

主要な対応内容

  • フレームワーク・ミドルウェア対応

    • Symfony 7.4 対応
    • PHP 新バージョン(8.4 / 8.5)対応
    • PostgreSQL 新バージョン(18.*)対応
  • 機能取り込み・追加

    • 開発コミュニティのPull Request対応(バグFIX、脆弱性対応、改善など)
    • UX向上および運用業務負荷を軽減する機能拡充(管理画面の一覧表示制御、注文履歴の配送番号表示など)
    • AI機能の追加(ACP/UCP対応のサイト・商品フィード、リードオンリーのMCP機能、各種インデックス・定義ファイルの配置)
  • その他

    • 公式プラグイン(14プラグイン)のバージョン追従
    • 公式ドキュメントの更新

詳細は以下から確認できます。

※EC-CUBE 4.4 で取り込む予定の改修一覧
https://github.com/EC-CUBE/ec-cube/milestone/54

マイルストーンは現時点の予定で、変更になる可能性があります。

システム要件

Middleware 4.3 4.4 EOL 備考
Apache 2.4 2.4 TBD
PHP 8.1 〜 8.3 8.2 〜 8.5 8.5: 2029年12月(Security Support) PHP 8.1 は 2025年12月に EOL のためサポート対象外とする。RHEL: PHP 8.3 は 2029年5月まで/Ubuntu: PHP 8.5 は 2031年4月まで
PostgreSQL 12 〜 16 13 〜 18 v18: 2030年11月14日 PostgreSQL 12 は 2024年11月 EOL のため対象外
MySQL 8.0 ~ 8.4 LTS 8.4 LTS 8.0: Premier 2025年4月/8.4: Premier 2029年4月 premierは無償サポート期間、extendedで3年追加の有償サポートがあり

フレームワーク・ライブラリ

FW / ライブラリ 4.3(Symfony 6.4) 4.4(Symfony 7.4) EOL(セキュリティパッチ終了) 備考
Symfony 6.4 7.4 6.4: 2027年11月/7.4: 2029年11月 PHP 8.2 以上が必須要件
Doctrine ORM 2.x 3.x 2.x: 2027年2月以降/3.x: 未定 Annotation 廃止、PHP Attribute 必須
Doctrine DBAL 3.x 4.x 3.x: 未定/4.x: 未定 旧 Result fetching API 等が削除
Twig 3.x 3.x 3.x: 未定 (Active)
Bootstrap 5.3 5.3 5.x: 未定 (Active)
jQuery 3.7.x 4.x 3.x: 致命的なバグ修正のみ/4.x: 未定 (Active) 余裕があれば削除する可能性あり

テスト

FW 4.3 4.4 EOL 備考
Codeception 5 5 TBD Playwright への移行を計画中
PHPUnit 9 11 9: 2025年2月
11:TBD

※その他のミドルウェア・ソフトウェア構成の詳細(追加・変更点)については要件定義にて確定します。

互換性についての情報

対応方針

データベースに関する影響

  • PostgreSQL 18.* に対応します。MySQLについては最新バージョンに対応済みのため、新バージョン対応は行いません。
  • PostgreSQL 12 は 2024年11月14日に EOL を迎えているため、4.4 でのサポート対象外を予定しています。

プラグインに関する影響

  • 公式プラグイン(14プラグイン)は EC-CUBE 新バージョンに合わせて更新します。
  • コミュニティプラグインの移行支援として、Rector 設定(リポジトリ同梱の rector.php)を用意しています。Symfony / Doctrine / PHP のメジャー更新でのご活用が可能です。
  • Entity 周辺で型変更 や Listener 移行が入っているため、Entity 拡張・イベント購読を行っているプラグインは修正が必要になります。詳細は後述の Breaking Changes セクションを参照ください。
  • 詳しい移行手順は、別途公開する 「EC-CUBE 4.3 → 4.4 アップグレードガイド」 に記載します。

デザインテンプレートに関する影響

  • 開発コミュニティ PR の体裁・表示修正の取り込みや、Enterprise 機能のフィードバック実装に伴う変更が入る見込みです(詳細は要件定義で確定)。
  • jQuery 4.x への更新で、廃止 API(.bind() / .unbind()など)を使っているテンプレートは修正が必要になる場合があります。お手数ですが、事前のご確認をお願いします。

テスト品質要求

  • 機能の正確性:単体・結合試験、シナリオ試験等を実施し、リリース後6ヶ月間での不具合「0」を目指す。
  • セキュリティの維持:セキュリティチェックツールを用いた試験や負荷試験を実施し、セキュリティホール「0」を目指す。
  • 保守容易性の維持:プログラム・デザインソースのリファクタリングを実施。

Breaking Changes(プラグイン・テーマ開発者向け)

4.4 では主要ライブラリのメジャーバージョンが上がります。プラグインやカスタマイズコードに影響が出る箇所をまとめましたので、開発者の方は事前確認をお願いします。

Symfony 6.4 → 7.x

  • Doctrine Annotation 形式での設定は非推奨。PHP 8 Attribute への移行が必要。
  • HttpKernel / Form / Validator など多数のコンポーネントで型宣言が厳格化。
  • 一部の Deprecated API が削除。

Doctrine ORM 2.x → 3.x

  • Annotation 形式の Mapping は廃止。PHP Attribute への移行が必要(コア側は対応済み)。
  • Native types 化により、戻り値・引数の型が厳格化。
  • EntityRepository / QueryBuilder の戻り値型変更。
    • EC-CUBE 側の対応として、Order / OrderItem などの DECIMAL 型プロパティを ?string に統一
    • プラグインやカスタマイズで Order::getTotal() 等の戻り値を int / float として扱っているコードは修正が必要。
  • 金額計算は浮動小数点演算を避け bcmath 関数に置き換え。プラグイン側で金額計算を行っている箇所は確認が必要。
  • Result Cache の API は setResultCacheLifetime()enableResultCache() に変更。
  • EventSubscriber 形式の Doctrine リスナは廃止し、#[AsDoctrineListener] を用いる形に変更。

Doctrine DBAL 3.x → 4.x

  • 旧 Result fetching API(fetch(), fetchAll() 等)は削除。
  • Connection 周りの API が変更。
  • Platform::getName() は廃止のため、instanceof チェックでの判定に変更。

PHPUnit 9 → 11

  • DataProvider のメソッドシグネチャ変更(static 必須)。
  • Annotation(@dataProvider 等)が非推奨となり、 PHP Attribute(#[DataProvider] への移行が必須。また、PHPUnit12にて削除予定。
  • 一部のアサーション・Mock API の振る舞いが変更。

jQuery 3.7 → 4.x

  • 廃止 API: .bind() / .unbind() / .delegate() / .undelegate() / .size() / .parseJSON() 等。
  • $.ajax のオプション・コールバックの一部仕様が変更。

移行支援

  • リポジトリ同梱の rector.php を使えば、Symfony / Doctrine / PHP の機械的な書き換えはほぼ自動化できますので、まずはこちらをお試しください。
  • 詳しい移行手順とチェックリストは「アップグレードガイド」で別途公開します。

リリースサポート

  • 4.4 リリース後、4.3 系はセキュリティパッチのみの提供となる予定です。

AI 機能(4.4 新規)

4.4 では Agentic Commerce / AEO 対応として、以下を新しく追加する予定です。

  • ACP / UCP 対応のサイト・商品フィード:AI エージェントが商品情報を取得・提示するためのフィード出力機能。
  • リードオンリーの MCP(Model Context Protocol)サーバ機能:外部 AI から商品・在庫などを参照するためのインターフェース。※書き込み系の操作は対象外とする。
  • 各種インデックス・定義ファイルの配置。

参照仕様(ACP / UCP / MCP のどのバージョンに準拠するか等)や認証・認可モデルの詳細は、要件定義が固まり次第追記いたします。

コミュニティへのお願い

気になる点・ご要望があれば、お気軽にコメントください!

参考リンク

Metadata

Metadata

Assignees

Labels

documentImprovements or additions to documentation

Type

No type

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions