Skip to content

EC-CUBE 4.3 Roadmap #6069

Description

@chihiro-adachi

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

基本方針

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

  1. Symfony 6.4 へのアップデートを行う
  2. セキュリティ強化を中心に不具合改修および機能改善を実施
  3. 既存プラグイン/デザインテンプレートとの互換性の担保については要調査

開発スケジュール

2024年夏頃を想定

主要な対応内容

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

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

互換性についての情報

対応方針

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

データベースの変更(テーブルやカラムの追加・変更)は予定していません。

プラグインに関する影響

4.2/4.3で互換性を担保します。
両方のバージョンに対応するには、プラグインの改修が必要になる場合があります。詳細はマイグレーションガイドを参照してください。

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

フロント画面のデザイン変更は予定していません。
機能追加や不具合修正に伴うhtmlのDOMの変更が発生します

Symfony6対応状況

#6073 にて対応を進めています。

システム要件

Middleware 4.2 4.3 eol 備考
Apache 2.4 2.4 TBD
PHP 7.4 〜 8.1 8.1 〜 8.3 2026年11月 RHEL: PHP8.0(2032年まで) / Ubuntu: PHP8.1(2027年まで)
PostgreSQL 10 〜 14 12 〜 16 2028年11月
MySQL 5.7 〜 8.0 8.0 2026年4月

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

FW 4.2 4.3 eol 備考
Symfony 5.4 6.4 2027年11月
Doctrine/ORM 2.x 2.x 2025年10月〜 ※少なくとも2年間かそれ以上、の記述有り
Doctrine/DBAL 3.x 3.x TBD
Twig 2.x 3.x TBD
Bootstrap 5.0 5.3 TBD
jQuery 3.6 3.7 TBD

テスト

FW 4.2 4.3 eol 備考
Codeception 4 5 TBD
PHPUnit 9 9 TBD 余裕があれば10へ移行

廃止・終了予定のライブラリ

  • symfony/security-guard
  • symfony/inflector
  • easycorp/easy-log-handler
    • devのログははprodと同等の出力に変更
  • codeception/phpunit-wrapper

Feedback

ご意見・ご要望等お待ちしております。
EC-CUBE4.3について、本Issueにぜひコメントください。

Activity

  1. changed the title [-]EC-CUBE 4.3 Roadmap[/-] [+][WIP] EC-CUBE 4.3 Roadmap[/+] on Nov 28, 2023
  2. added this to the 4.3.0 milestone on Nov 28, 2023
  3. chihiro-adachi commented on Nov 28, 2023

    @chihiro-adachi
    ContributorAuthor

    PHP/Symfonyのサポート状況まとめ

    • Symfony6はPHP 8.1〜
    • EC-CUBEとしてはPHP8.1〜8.3でシステム要件とするのがよさそう

    PHPサポート

    https://www.php.net/supported-versions.php

    Version  Security Support Until
    7.4 28 Nov 2022
    8.0 26 Nov 2023
    8.1 25 Nov 2024
    8.2 8 Dec 2025
    8.3 23 Nov 2026

    Symfony Roadmap

    https://symfony.com/releases
    https://github.com/symfony/symfony/blob/6.4/UPGRADE-6.0.md

    Version  Requires PHP End of security fixes
    5.4 7.4+ November 2025
    6.3 8.1+ January 2024
    6.4 8.1+ November 2027
  4. chihiro-adachi commented on Nov 28, 2023

    @chihiro-adachi
    ContributorAuthor

    Docreineのサポート状況まとめ

    • doctrine/orm は2系を採用するのがよさそう
    • 非推奨コードの修正はいれたほうがよさそう

    ORM 2は少なくとも2年はサポートされるとのこと
    https://www.doctrine-project.org/2023/10/11/orm3-beta1-dbal4-rc1-future-plans.html

    将来的なORM 3への移行を見据えて、非推奨コードの修正はいれたほうがよいかもしれない
    https://github.com/doctrine/deprecations#usage-from-consumer-perspective

  5. chihiro-adachi commented on Nov 28, 2023

    @chihiro-adachi
    ContributorAuthor

    Databaseのサポート状況まとめ

    • PostgreSQL
      • 12〜16
    • MySQL
      • 8.0

    PostgreSQL

    https://www.postgresql.org/support/versioning/

    Version Current minor Supported First Release Final Release
    16 16.1 Yes September 14, 2023 November 9, 2028
    15 15.5 Yes October 13, 2022 November 11, 2027
    14 14.2 Yes September 30, 2021 November 12, 2026
    13 13.6 Yes September 24, 2020 November 13, 2025
    12 12.1 Yes October 3, 2019 November 14, 2024
    11 11.15 Yes October 18, 2018 November 9, 2023
    10 10.2 Yes October 5, 2017 November 10, 2022
    • 10/11がサポート終了
    • EC-CUBEとしては12以上?

    MySQL

    https://www.mysql.com/support/
    https://www.oracle.com/us/support/library/lifetime-support-technology-069183.pdf

    Version GA Date Premier Support End Extended Support End
    MySQL Database 5.7 Oct 2015 Oct 2020 Oct 2023
    MySQL Database 8.0 Apr 2018 Apr 2023 Apr 2026

    Doctine/DBAL対応状況

    • PostgreSQL: 9.4, 15, 16
    • MySQL: 5.7, 8.0,8.2

    https://github.com/doctrine/dbal/blob/3.7.2/.github/workflows/continuous-integration.yml

  6. chihiro-adachi commented on Nov 28, 2023

    @chihiro-adachi
    ContributorAuthor

    JS/CSSライブラリまとめ

    Bootstrap

    5.xがLTSとして提供中。現時点の最新は5.3
    https://getbootstrap.jp/docs/versions/
    https://endoflife.date/bootstrap

    jQuery

    3.xが提供中。現時点の最新は3.7.1
    https://jquery.com/download/
    https://endoflife.date/jquery

    その他JSライブラリ

    4.2での利用ライブラリは以下の通り。
    マイナーバージョンアップの範囲でアップデートする。

    $ npm list
    /path/to/ec-cube
    ├── @babel/core@7.18.2
    ├── @babel/polyfill@7.12.1
    ├── @babel/preset-env@7.18.2
    ├── @popperjs/core@2.11.5
    ├── ace-builds@1.5.1
    ├── autoprefixer@9.8.8
    ├── babel-loader@8.2.5
    ├── bootstrap@5.1.3
    ├── browser-sync@2.28.3
    ├── chart.js@3.8.2
    ├── cross-env@7.0.3
    ├── css-loader@6.7.1
    ├── css-mqpacker@7.0.0
    ├── file-loader@6.2.0
    ├── filepond-plugin-file-validate-size@2.2.7
    ├── filepond-plugin-file-validate-type@1.2.8
    ├── filepond-plugin-image-preview@4.6.11
    ├── filepond@4.30.4
    ├── gulp-clean-css@4.3.0
    ├── gulp-notify@3.2.0
    ├── gulp-plumber@1.2.1
    ├── gulp-postcss@8.0.0
    ├── gulp-rename@1.4.0
    ├── gulp-sass@5.1.0
    ├── gulp@4.0.2
    ├── husky@8.0.3
    ├── jquery-ui@1.13.2
    ├── jquery.qrcode@1.0.3
    ├── jquery@3.6.0
    ├── ladda@2.0.3
    ├── lint-staged@13.2.1
    ├── normalize.css@5.0.0
    ├── postcss-import@12.0.1
    ├── process@0.11.10
    ├── sass@1.49.0
    ├── slick-carousel@1.8.1
    ├── sort-css-media-queries@1.5.4
    ├── spin.js@4.1.1
    ├── style-loader@3.3.1
    ├── url-loader@4.1.1
    ├── webpack-cli@4.9.2
    ├── webpack-stream@7.0.0
    └── webpack@5.76.0
    
  7. nanasess commented on Nov 28, 2023

    @nanasess
    Contributor

    PHPのベンダーサポート状況として、長期サポート(LTS)対象のバージョンは以下の模様です

    • RHEL: PHP8.0(2032年まで)
    • Ubuntu: PHP8.1(2027年まで)

    RHEL系で長期サポート対象のバージョンから外れるのは懸念事項ですね。。。

  8. chihiro-adachi commented on Nov 28, 2023

    @chihiro-adachi
    ContributorAuthor

    @nanasess
    ありがとうございます。
    Symfony6が8.1〜なのでちょっと厳しいですね。。

    ちなみにRHELはこちらかなと思うんですが、UbuntuのPHPサポート状況はどこで確認できますでしょうか?
    https://access.redhat.com/support/policy/updates/rhel-app-streams-life-cycle

  9. nanasess commented on Nov 29, 2023

    @nanasess
    Contributor

    @chihiro-adachi
    以下にあるように、Ubuntu の標準パッケージでしたら、 Ubuntu の各リリースの EOL(22.04 なら 2027年4月) までサポートされる模様です。
    https://wiki.ubuntu.com/SecurityTeam/FAQ#Standard_Support
    https://zenn.dev/naco/articles/e441918209d765

  10. chihiro-adachi commented on Nov 29, 2023

    @chihiro-adachi
    ContributorAuthor

    いったん現時点でのシステム要件(案)
    2024年夏頃にサポートされているバージョンを下限としてます。

    システム要件

    Middleware 4.2 4.3 補足・懸念等
    Apache 2.4.x 2.4.x  
    PHP 7.4 〜 8.1 8.1 〜 8.3 symfony6が8.1〜。RHELの長期サポートから外れる
    PostgreSQL 10 〜 14 12 〜 16  
    MySQL 5.7 〜 8.0 8.0 8.0がLTSのため、8.2は特に対応不要?

    フレームワーク

    FW 4.2 4.3 補足・懸念等
    Symfony 5.4 6.4  
    Doctrine/ORM 2.14 2.17 v2がサポート継続のためv2を採用。ただし将来的なv3への移行のため、非推奨コードの修正は行っておいたほうがよさげ
    Doctrine/DBAL 3.5 3.7  
    Twig 2.x 3.x  メジャーバージョンの変更
    Bootstrap 5.0 5.3  
    jQuery 3.6 3.7  
    Codeception 4 5 メジャーバージョンの変更 

    TODO この一覧でeolがわかるように

  11. chihiro-adachi commented on Nov 29, 2023

    @chihiro-adachi
    ContributorAuthor

    codeception4はsymfony6非対応のため、codeception5へのアップデートが必要
    https://packagist.org/packages/codeception/codeception#4.2.2

    UPGRADING FROM CODECEPTION 4
    https://codeception.com/07-28-2022/codeception-5.html

  12. nanasess commented on Nov 30, 2023

    @nanasess
    Contributor

    Twig のバージョンが現状維持(^2.15)で問題なさそうでしょうか。
    3.x に変更する場合は TemplateEvent が動作しなくなってしまうので対応が必要そうです。
    641140e

  13. chihiro-adachi commented on Nov 30, 2023

    @chihiro-adachi
    ContributorAuthor

    @nanasess
    ありがとうございます。

    https://github.com/twigphp/Twig/tree/2.x

    Twig version 2 end of maintainance is scheduled for end of December 2023. Please, upgrade at your earliest convenience.

    とのことなので3.xへ移行が必要そうですね。

  14. nanasess commented on Nov 30, 2023

    @nanasess
    Contributor

    @chihiro-adachi 以前 Twig3 に対応しようと挑んだ時は、一筋縄にいかず、 2.x に戻したと記憶しているので、結構工数大きいかもしれません🤔

  15. 4 remaining items

  16. changed the title [-][WIP] EC-CUBE 4.3 Roadmap[/-] [+]EC-CUBE 4.3 Roadmap[/+] on Dec 25, 2023
  17. chihiro-adachi commented on Dec 25, 2023

    @chihiro-adachi
    ContributorAuthor

    @nanasess
    composerのv3ってどこに情報あるかご存知でしょうか?
    ぱっと見つけられずで。

  18. nanasess commented on Dec 25, 2023

    @nanasess
    Contributor

    @chihiro-adachi
    公式には以下ですが、まだ何も決まってないみたいですね...
    https://github.com/composer/composer/milestone/28

    3.0 で消えるよーっていう deprecated が出てたので気にしていたのですが、調べてみると少ないので、まだそれほど気にしなくても良いかもですね。
    https://github.com/search?q=repo%3Acomposer%2Fcomposer+%22removed+in+3.0%22&type=code

  19. chihiro-adachi commented on Dec 25, 2023

    @chihiro-adachi
    ContributorAuthor

    @nanasess
    なるほど、ありがとうございます!

  20. chihiro-adachi commented on Dec 27, 2023

    @chihiro-adachi
    ContributorAuthor

    twigのv3対応について、#6077 で検証しています。

  21. leluan2047 commented on Jan 24, 2024

    @leluan2047

    How to run the project ? I cannot use "php bin/console server:run" anymore. Thank you so much !!

  22. tao-s commented on Apr 12, 2024

    @tao-s
    Contributor

    地味にfontawesomeもアップデートして欲しい...

  23. tao-s commented on Apr 12, 2024

    @tao-s
    Contributor

    @leluan2047 You wrote in wrong issue. Please read dev document, also slack will be a help for you.

  24. shinya commented on Jun 19, 2024

    @shinya
    Contributor

    今後のスケジュールについて共有

    4.3のリリース日が当初の予定よりも変更になったので共有です。

    RC版のリリース予定日

    2024/07/16(火)

    ※ソースコードの凍結も行います

    正式版のリリース予定日

    2024/07/29(月)


    RC版のリリース後、特に大きなバグ等なければそのままRC版の版を改めて正式版としてリリースいたします。

  25. unpinned this issue on Jun 20, 2024
  26. pinned this issue on Jun 20, 2024
  27. shinya commented on Jul 16, 2024

    @shinya
    Contributor

    ソースコード凍結宣言

    RC版のリリースが本日無事行えたため、正式版のリリースまではソースコードを凍結いたします。
    (緊急性の高いバグなどが発見されない限り新たにマージしません)

  28. dotani1111 commented on Jul 31, 2024

    @dotani1111
    Contributor

    4.3は無事にリリースされたため、クローズしたいと思います。

  29. unpinned this issue on Jul 31, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    documentImprovements or additions to documentation

    Type

    No type

    Projects

    No projects

      Milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions