[4.2] ComposerApi をコールする際は symfony/flex を無効化する #5416
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
概要(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)
マイナーバージョン互換性保持のための制限事項チェックリスト
レビュワー確認項目