Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[4.2] ComposerApi をコールする際は symfony/flex を無効化する #5416

Merged
merged 1 commit into from
Jul 1, 2022

Conversation

nanasess
Copy link
Contributor

@nanasess nanasess commented Jun 30, 2022

概要(Overview・Refs Issue)

Web API プラグイン等、 Symfony bundle に依存するプラグインをインストールした場合、 symfony/flex によって app/config/eccube/bundles.php に bundle のクラスが追加される。
しかし、プラグイン削除時、 bundle によっては app/config/eccube/bundles.php の設定が削除されず残ってしまう場合がある。

これを防ぐため、 EC-CUBE から ComposerAPI をコールする際は一時的に symfony/flex を無効化する

方針(Policy)

ComposerApiService でComposerAPI をコールする際、 composer config allow-plugins.symfony/flex false を実行する。
finally 句で composer config allow-plugins.symfony/flex true を実行する

実装に関する補足(Appendix)

Web API プラグインは以下のPRの取り込みも必要
EC-CUBE/eccube-api4#130

テスト(Test)

plugin-test GitHub Actions の Bundle 関連のテストを修正

相談(Discussion)

マイナーバージョン互換性保持のための制限事項チェックリスト

  • 既存機能の仕様変更はありません
  • フックポイントの呼び出しタイミングの変更はありません
  • フックポイントのパラメータの削除・データ型の変更はありません
  • twigファイルに渡しているパラメータの削除・データ型の変更はありません
  • Serviceクラスの公開関数の、引数の削除・データ型の変更はありません
  • 入出力ファイル(CSVなど)のフォーマット変更はありません

レビュワー確認項目

  • 動作確認
  • コードレビュー
  • E2E/Unit テスト確認(テストの追加・変更が必要かどうか)
  • 互換性が保持されているか
  • セキュリティ上の問題がないか
    • 権限を超えた操作が可能にならないか
    • 不要なファイルアップロードがないか
    • 外部へ公開されるファイルや機能の追加ではないか
    • テンプレートでのエスケープ漏れがないか

- WebAPI プラグインなど, 依存する bundle が存在する場合, app/config/eccube/bundles.php に自動登録されてしまうのを防ぐ
- プラグイン削除時 bundle によっては自動削除されないためエラーになってしまう
nanasess added a commit to nanasess/eccube-api4 that referenced this pull request Jun 30, 2022
正常に動作させるためには以下の PR が取り込まれている必要がある
EC-CUBE/ec-cube#5416
@nanasess nanasess force-pushed the flex-disallow branch 2 times, most recently from 10d17c9 to 1b5a576 Compare June 30, 2022 19:22
@chihiro-adachi chihiro-adachi added this to the 4.2.0 milestone Jul 1, 2022
@chihiro-adachi chihiro-adachi merged commit e5642d2 into EC-CUBE:4.2 Jul 1, 2022
@nanasess nanasess deleted the flex-disallow branch October 3, 2022 07:55
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants