title | issue | author | author_email |
---|---|---|---|
Public api rules |
NEXT-25424 |
Oliver Skroblin |
- Changed class hierarchy of flow events, to not extend the basic
FlowEventAware
. You should implement the interface by yourself now. Following interfaces are affected and will no longer extend theFlowEventAware
interface with v6.6:CustomerRecoveryAware
MessageAware
NewsletterRecipientAware
OrderTransactionAware
CustomerAware
CustomerGroupAware
MailAware
OrderAware
ProductAware
SalesChannelAware
UserAware
LogAware
- Added new domain exception classes:
CustomerException
PromotionException
- Removed
EventSubscriberInterface
ofFlowIndexer
and introducedFlowIndexerSubscriber
instead. - Added
ResetInterface
toImportExport\AbstractEntitySerializer
- Added
ImportExport\AbstractMediaSerializer
to define all public functions in an abstract class - Removed
EventSubscriberInterface
fromImportExport\MediaSerializer
and introducedMediaSerializerSubscriber
instead. - Deprecated
ImportExport\PriceFieldSerializer::isValidPrice
, function will be private in v6.6 - Deprecated
CsvReader::loadConfig
, function will be private in v6.6 - Deprecated
NewsletterSubscribeRoute.php
, function will be private in v6.6 - Added
AbstractProductStreamUpdater
to define all public functions in an abstract class - Added
ResetInterface
toAbstractProductPriceCalculator
- Removed
EventSubscriberInterface
fromRuleIndexer
and introducedRuleIndexerSubscriber
instead. - Added missing public function of
Translator
class toAbstractTranslator
- Added
ResetInterface
toAbstractTokenFilter
- Deprecated
AbstractIncrementer::getDecorated
, increment are not designed for decoration pattern - Deprecated
MySQLIncrementer
, implementation will be private, use abstract class for type hints - Deprecated
RedisIncrementer
, implementation will be private, use abstract class for type hints - Removed
getDecorated
from internal classAbstractBaseContextFactory
- Removed
getDecorated
from internal classBaseContextFactory
- Removed
getDecorated
from internal classCachedBaseContextFactory
- Removed
@internal
annotation from all elastic search admin indexers (Elasticsearch\Admin\Indexer\*
)
- Deprecated
AbstractIncrementer::getDecorated
, increment are not designed for decoration pattern - Deprecated
MySQLIncrementer
, implementation will be private, use abstract class for type hints - Deprecated
RedisIncrementer
, implementation will be private, use abstract class for type hints - Deprecated
ImportExport\PriceFieldSerializer::isValidPrice
, function will be private in v6.6 - Deprecated
CsvReader::loadConfig
, function will be private in v6.6 - Deprecated
NewsletterSubscribeRoute.php
, function will be private in v6.6
With v6.6 we change the class hierarchy of the following flow event interfaces:
CustomerRecoveryAware
MessageAware
NewsletterRecipientAware
OrderTransactionAware
CustomerAware
CustomerGroupAware
MailAware
OrderAware
ProductAware
SalesChannelAware
UserAware
LogAware
When you have implemented one of these interfaces in one of your own event classes, you should now also implement the FlowEventAware
interface by yourself.
This is necessary to ensure that your event class is compatible with the new flow event system.
Before:
<?php declare(strict_types=1);
namespace App\Event;
use Shopware\Core\Framework\Log\LogAware;
class MyEvent implements LogAware
{
// ...
}
After:
<?php declare(strict_types=1);
namespace App\Event;
use Shopware\Core\Framework\Event\FlowEventAware;
class MyEvent implements FlowEventAware, LogAware
{
// ...
}