- Add firewall protection to the
/address-bookand/meroutes in thesecurity.yaml
access_control:
- { path: "%sylius_shop_api.security.regex%/address-book", role: ROLE_USER}
- { path: "%sylius_shop_api.security.regex%/me", role: ROLE_USER}
- The forgot password function now doesn't return an error if the user with this email is not found. It might give a potential attacker information about which users are registered in the shop.
- Add proper constraint to composer.json
{
"require": {
"sylius/shop-api-plugin": "^1.0"
}
}- Run
composer update
- The following files changed their namespaces and folders:
src/Factory/Taxon/ImageViewFactory.php->src/Factory/ImageViewFactory.phpsrc/Factory/Taxon/ImageViewFactoryInterface.php->src/Factory/ImageViewFactoryInterface.phpsrc/View/Taxon/ImageView.php->src/View/ImageView.php
Because these classes are used outside of Taxon context as well.
- Path of images is served as absolute instead of relative.
-
The configuration key for the shop api is now
sylius_shop_api. -
Plugin name has been changed from
ShopApiPlugintoSyliusShopApiPlugin. As a result all resources which were loaded with this prefix:@ShopApiPluginshould be prefixed with@SyliusShopApiPlugin -
The route names of the address book and the order are now renames to fit the schema
sylius_shop_api... -
The commands have been moved to the appropriate directories depending on the context.
-
The requests have been moved to the appropriate directories depending on the context.
-
The views have been moved to the appropriate directories depending on the context.
- This might require changing the serializer settings in your application
-
Tactician has been replaced with Symfony Messenger.
- Used
League\Tactician\CommandBushas been replaced withSymfony\Component\Messenger\MessageBusInterface - The commands are now dispatched using
dispatch()method instead ofhandle() - The method name in handlers has been changed from
handle()to__invoke()
- Used
-
The product routes have been changed:
Old Route New route products/{code}products/by-code/{code}products-by-slug/{slug}products/by-slug/{slug}products/{code}/reviewsproducts/by-code/{code}/reviewsproducts-reviews-by-slug/{slug}products/by-slug/{slug}/reviewstaxon-products/{code}taxon-products/by-code/{taxonCode}taxon-products-by-slug/{taxonSlug}taxon-products/by-slug/{taxonSlug}product/by-slug/{slug}/reviewsproducts/by-slug/{slug}/reviews -
The channel code has been removed from routes:
Old Route New route {channelCode}/address-book/*address-book/*{channelCode}/carts/*carts/*{channelCode}/checkout/*checkout/*{channelCode}/meme{channelCode}/orders/*orders/*{channelCode}/password-reset/*password-reset/*{channelCode}/product-latestproduct-latest{channelCode}/products/*products/*{channelCode}/registerorders/*{channelCode}/request-password-resetrequest-password-reset{channelCode}/resend-verification-linkresend-verification-link{channelCode}/verify-accountverify-account{channelCode}/taxon-products/*taxon-products/*{channelCode}/taxons/*taxons/* -
The channel code has been added as a second argument to
AddProductReviewByCodeRequest,AddProductReviewBySlugRequest,ResendVerificationTokenRequestandRegisterCustomerRequestclasses. -
The argument in constructor of
PickupCartRequestclass has been changed fromRequest $requesttostring channelCode. -
The address-book create route has been changed :
Old Route New route address-bookaddress-book/
-
Customer registration payload changed:
{ - "user": { - "plainPassword": { - "first": "foobar", - "second": "foobar" - } - } + "plainPassword": "foobar", + "channel": "CHANNEL_CODE" }