There is currently a hidden dependency on Magento_Multishipping even though it's not defined in the composer.json. This causes build issues for projects that do not include Multishipping or have it replaced.
Issue
When running the compile command (bin/magento setup:di:compile) build will fail on multiple files:
Model/PlaceMultiShippingOrder.php references Magento\Multishipping\Model\Checkout\Type\Multishipping\PlaceOrderInterface which doesn't exist
Controller/Checkout/Finish.php references Magento\Multishipping\Model\Checkout\Type\Multishipping\State which doesn't exist
You should be able to replicate it by adding a replace section to your project's root composer.json:
Running rm -f vendor/paynl/magento2-plugin/Model/PlaceMultiShippingOrder.php in the post install script of composer
Patching the line in Finish.php: use Magento\Framework\DataObject as State; # PATCHED | Nasty... | Removed dependency on Magento\Multishipping\Model\Checkout\Type\Multishipping\State
Would love to see this handled as an actual soft dependency. Thanks in advance!
There is currently a hidden dependency on
Magento_Multishipping
even though it's not defined in thecomposer.json
. This causes build issues for projects that do not include Multishipping or have it replaced.Issue
When running the compile command (
bin/magento setup:di:compile
) build will fail on multiple files:Magento\Multishipping\Model\Checkout\Type\Multishipping\PlaceOrderInterface
which doesn't existMagento\Multishipping\Model\Checkout\Type\Multishipping\State
which doesn't existYou should be able to replicate it by adding a replace section to your project's root
composer.json
:Fix
We've "fixed" it by:
rm -f vendor/paynl/magento2-plugin/Model/PlaceMultiShippingOrder.php
in the post install script of composerFinish.php
:use Magento\Framework\DataObject as State; # PATCHED | Nasty... | Removed dependency on Magento\Multishipping\Model\Checkout\Type\Multishipping\State
Would love to see this handled as an actual soft dependency. Thanks in advance!