Merge branch '1.7'

* 1.7:
  [Maintenance] Remove memory swap
  [Maintenance] Lower Sylius\ThemeBundle to 1.5
  [Maintenance] Lower Sylius\FixtureBundle to 1.4
  [Maintenance] Lower Sylius\Registry to 1.4 & Sylius\Mailer to 1.4
  [Maintenance] Upgrade packages to Sylius ^1.6
  Attempting to create swap space to accomodate composer's memory issues
  Refactored unit test for the order items subtotal calculator test
  Removed doc from constructor
  Update src/Sylius/Bundle/ShopBundle/Twig/OrderItemsSubtotalExtension.php
  Also triggering user deprecation "error"
  Changed todo into deprecation comment
  Made injection of calculator in twig extension optional
  Enabling psalm plugin
  Added mockery plugin for psalm
  Separated order items subtotal calculation logic from twig extension
  Use only empty function to check property path
  Check is null
  Check if PropertyPath is empty for add error to form
This commit is contained in:
Kamil Kokot 2020-04-10 13:06:10 +02:00
commit f5564d0ed6
No known key found for this signature in database
GPG key ID: 7BD76F7054D93C89
49 changed files with 605 additions and 122 deletions

View file

@ -126,6 +126,7 @@
"phpstan/phpstan-doctrine": "0.12.3",
"phpstan/phpstan-webmozart-assert": "0.12.0",
"phpunit/phpunit": "^8.0",
"psalm/plugin-mockery": "^0.3",
"psr/event-dispatcher": "^1.0",
"sspooky13/yaml-standards": "^5.0",
"stripe/stripe-php": "^4.1",

View file

@ -225,4 +225,8 @@
<stubs>
<file name="etc/psalm/ZendPriorityQueueStub.php" />
</stubs>
<plugins>
<pluginClass class="Psalm\MockeryPlugin\Plugin" />
</plugins>
</psalm>

View file

@ -23,8 +23,8 @@
"php": "^7.3",
"stof/doctrine-extensions-bundle": "^1.2",
"sylius/addressing": "^1.2",
"sylius/resource-bundle": "^1.2",
"sylius/addressing": "^1.6",
"sylius/resource-bundle": "^1.6",
"symfony/framework-bundle": "^4.4",
"symfony/intl": "^4.4"
},

View file

@ -23,7 +23,7 @@
"php": "^7.3",
"friendsofsymfony/oauth-server-bundle": "^1.6",
"sylius/core-bundle": "^1.2",
"sylius/core-bundle": "^1.6",
"symfony/form": "^4.4",
"symfony/framework-bundle": "^4.4",
"symfony/validator": "^4.4"

View file

@ -22,8 +22,8 @@
"require": {
"php": "^7.3",
"sylius/core-bundle": "^1.2",
"sylius/ui-bundle": "^1.2",
"sylius/core-bundle": "^1.6",
"sylius/ui-bundle": "^1.6",
"symfony/framework-bundle": "^4.4",
"twig/intl-extra": "^2.12",
"twig/twig": "^2.12"

View file

@ -24,8 +24,8 @@
"ramsey/uuid": "^3.7",
"stof/doctrine-extensions-bundle": "^1.2",
"sylius/attribute": "^1.2",
"sylius/resource-bundle": "^1.2",
"sylius/attribute": "^1.6",
"sylius/resource-bundle": "^1.6",
"symfony/framework-bundle": "^4.4"
},
"require-dev": {

View file

@ -22,8 +22,8 @@
"require": {
"php": "^7.3",
"sylius/channel": "^1.2",
"sylius/resource-bundle": "^1.2",
"sylius/channel": "^1.6",
"sylius/resource-bundle": "^1.6",
"symfony/framework-bundle": "^4.4"
},
"require-dev": {

View file

@ -28,27 +28,27 @@
"knplabs/gaufrette": "^0.8",
"knplabs/knp-gaufrette-bundle": "^0.7",
"swiftmailer/swiftmailer": "^6.0",
"sylius/addressing-bundle": "^1.2",
"sylius/attribute-bundle": "^1.2",
"sylius/core": "^1.2",
"sylius/currency-bundle": "^1.2",
"sylius/customer-bundle": "^1.2",
"sylius/fixtures-bundle": "^1.2",
"sylius/inventory-bundle": "^1.2",
"sylius/locale-bundle": "^1.2",
"sylius/money-bundle": "^1.2",
"sylius/order-bundle": "^1.2",
"sylius/payment-bundle": "^1.2",
"sylius/payum-bundle": "^1.2",
"sylius/product-bundle": "^1.2",
"sylius/promotion-bundle": "^1.2",
"sylius/resource-bundle": "^1.2",
"sylius/review-bundle": "^1.2",
"sylius/shipping-bundle": "^1.2",
"sylius/taxation-bundle": "^1.2",
"sylius/taxonomy-bundle": "^1.2",
"sylius/theme-bundle": "^1.2",
"sylius/user-bundle": "^1.2",
"sylius/addressing-bundle": "^1.6",
"sylius/attribute-bundle": "^1.6",
"sylius/core": "^1.6",
"sylius/currency-bundle": "^1.6",
"sylius/customer-bundle": "^1.6",
"sylius/fixtures-bundle": "^1.4",
"sylius/inventory-bundle": "^1.6",
"sylius/locale-bundle": "^1.6",
"sylius/money-bundle": "^1.6",
"sylius/order-bundle": "^1.6",
"sylius/payment-bundle": "^1.6",
"sylius/payum-bundle": "^1.6",
"sylius/product-bundle": "^1.6",
"sylius/promotion-bundle": "^1.6",
"sylius/resource-bundle": "^1.6",
"sylius/review-bundle": "^1.6",
"sylius/shipping-bundle": "^1.6",
"sylius/taxation-bundle": "^1.6",
"sylius/taxonomy-bundle": "^1.6",
"sylius/theme-bundle": "^1.5",
"sylius/user-bundle": "^1.6",
"sylius-labs/association-hydrator": "^1.1",
"symfony/framework-bundle": "^4.4",
"symfony/intl": "^4.4",

View file

@ -22,8 +22,8 @@
"require": {
"php": "^7.3",
"sylius/currency": "^1.2",
"sylius/resource-bundle": "^1.2",
"sylius/currency": "^1.6",
"sylius/resource-bundle": "^1.6",
"symfony/framework-bundle": "^4.4",
"symfony/intl": "^4.4",
"symfony/templating": "^4.4"

View file

@ -36,8 +36,8 @@
"doctrine/orm": "^2.5",
"egulias/email-validator": "~2.0",
"sylius/customer": "^1.2",
"sylius/resource-bundle": "^1.2",
"sylius/customer": "^1.6",
"sylius/resource-bundle": "^1.6",
"symfony/framework-bundle": "^4.4",
"webmozart/assert": "^1.0"
},

View file

@ -22,8 +22,8 @@
"require": {
"php": "^7.3",
"sylius/inventory": "^1.2",
"sylius/resource-bundle": "^1.2",
"sylius/inventory": "^1.6",
"sylius/resource-bundle": "^1.6",
"symfony/framework-bundle": "^4.4",
"symfony/templating": "^4.4",
"symfony/validator": "^4.4"

View file

@ -22,8 +22,8 @@
"require": {
"php": "^7.3",
"sylius/locale": "^1.2",
"sylius/resource-bundle": "^1.2",
"sylius/locale": "^1.6",
"sylius/resource-bundle": "^1.6",
"symfony/framework-bundle": "^4.4",
"symfony/templating": "^4.4"
},

View file

@ -22,7 +22,7 @@
"require": {
"php": "^7.3",
"sylius/resource-bundle": "^1.2",
"sylius/resource-bundle": "^1.6",
"symfony/framework-bundle": "^4.4",
"symfony/intl": "^4.4",
"symfony/templating": "^4.4",
@ -33,7 +33,7 @@
"phpspec/phpspec": "^5.0",
"phpunit/phpunit": "^7.0",
"twig/twig": "^2.0",
"sylius/currency-bundle": "^1.2",
"sylius/currency-bundle": "^1.6",
"symfony/form": "^4.4",
"symfony/browser-kit": "^4.4",
"symfony/dependency-injection": "^4.4",

View file

@ -227,7 +227,11 @@ class OrderItemController extends ResourceController
protected function getAddToCartFormWithErrors(ConstraintViolationListInterface $errors, FormInterface $form): FormInterface
{
foreach ($errors as $error) {
$form->get('cartItem')->get($error->getPropertyPath())->addError(new FormError($error->getMessage()));
$formSelected = empty($error->getPropertyPath())
? $form->get('cartItem')
: $form->get('cartItem')->get($error->getPropertyPath());
$formSelected->addError(new FormError($error->getMessage()));
}
return $form;

View file

@ -23,9 +23,9 @@
"php": "^7.3",
"stof/doctrine-extensions-bundle": "^1.2",
"sylius/money-bundle": "^1.2",
"sylius/order": "^1.2",
"sylius/resource-bundle": "^1.2",
"sylius/money-bundle": "^1.6",
"sylius/order": "^1.6",
"sylius/resource-bundle": "^1.6",
"symfony/framework-bundle": "^4.4",
"symfony/templating": "^4.4"
},

View file

@ -22,14 +22,14 @@
"require": {
"php": "^7.3",
"sylius/payment": "^1.2",
"sylius/resource-bundle": "^1.2",
"sylius/payment": "^1.6",
"sylius/resource-bundle": "^1.6",
"symfony/framework-bundle": "^4.4"
},
"require-dev": {
"doctrine/orm": "^2.5",
"phpspec/phpspec": "^5.0",
"sylius/locale-bundle": "^1.2",
"sylius/locale-bundle": "^1.6",
"phpunit/phpunit": "^7.0",
"symfony/browser-kit": "^4.4",
"symfony/dependency-injection": "^4.4",

View file

@ -29,10 +29,10 @@
"payum/payum": "^1.4",
"payum/payum-bundle": "^2.2",
"php-http/guzzle6-adapter": "^1.1",
"sylius/core": "^1.2",
"sylius/currency": "^1.2",
"sylius/order-bundle": "^1.2",
"sylius/payment-bundle": "^1.2",
"sylius/core": "^1.6",
"sylius/currency": "^1.6",
"sylius/order-bundle": "^1.6",
"sylius/payment-bundle": "^1.6",
"sylius/resource-bundle": "^1.0"
},
"require-dev": {

View file

@ -23,10 +23,10 @@
"php": "^7.3",
"stof/doctrine-extensions-bundle": "^1.2",
"sylius/attribute-bundle": "^1.2",
"sylius/product": "^1.2",
"sylius/locale-bundle": "^1.2",
"sylius/resource-bundle": "^1.2",
"sylius/attribute-bundle": "^1.6",
"sylius/product": "^1.6",
"sylius/locale-bundle": "^1.6",
"sylius/resource-bundle": "^1.6",
"symfony/framework-bundle": "^4.4"
},
"require-dev": {

View file

@ -23,10 +23,10 @@
"php": "^7.3",
"stof/doctrine-extensions-bundle": "^1.2",
"sylius/money-bundle": "^1.2",
"sylius/promotion": "^1.2",
"sylius/registry": "^1.2",
"sylius/resource-bundle": "^1.2",
"sylius/money-bundle": "^1.6",
"sylius/promotion": "^1.6",
"sylius/registry": "^1.4",
"sylius/resource-bundle": "^1.6",
"symfony/framework-bundle": "^4.4"
},
"require-dev": {

View file

@ -35,10 +35,10 @@
"php": "^7.3",
"stof/doctrine-extensions-bundle": "^1.2",
"sylius/mailer-bundle": "^1.2",
"sylius/resource-bundle": "^1.2",
"sylius/review": "^1.2",
"sylius/user-bundle": "^1.2",
"sylius/mailer-bundle": "^1.4",
"sylius/resource-bundle": "^1.6",
"sylius/review": "^1.6",
"sylius/user-bundle": "^1.6",
"symfony/framework-bundle": "^4.4"
},
"require-dev": {

View file

@ -23,9 +23,9 @@
"php": "^7.3",
"stof/doctrine-extensions-bundle": "^1.2",
"sylius/money-bundle": "^1.2",
"sylius/resource-bundle": "^1.2",
"sylius/shipping": "^1.2",
"sylius/money-bundle": "^1.6",
"sylius/resource-bundle": "^1.6",
"sylius/shipping": "^1.6",
"symfony/framework-bundle": "^4.4"
},
"require-dev": {

View file

@ -0,0 +1,22 @@
<?php
declare(strict_types=1);
namespace Sylius\Bundle\ShopBundle\Calculator;
use Sylius\Component\Core\Model\OrderInterface;
use Sylius\Component\Core\Model\OrderItemInterface;
final class OrderItemsSubtotalCalculator implements OrderItemsSubtotalCalculatorInterface
{
public function getSubtotal(OrderInterface $order): int
{
return array_reduce(
$order->getItems()->toArray(),
static function (int $subtotal, OrderItemInterface $item): int {
return $subtotal + $item->getSubtotal();
},
0
);
}
}

View file

@ -0,0 +1,12 @@
<?php
declare(strict_types=1);
namespace Sylius\Bundle\ShopBundle\Calculator;
use Sylius\Component\Core\Model\OrderInterface;
interface OrderItemsSubtotalCalculatorInterface
{
public function getSubtotal(OrderInterface $order): int;
}

View file

@ -46,5 +46,9 @@
<service id="sylius.grid_filter.shop_string" class="Sylius\Component\Grid\Filter\StringFilter">
<tag name="sylius.grid_filter" type="shop_string" form-type="Sylius\Bundle\GridBundle\Form\Type\Filter\StringFilterType" />
</service>
<service id="sylius.calculator.order_items_subtotal" class="Sylius\Bundle\ShopBundle\Calculator\OrderItemsSubtotalCalculator" />
<service id="Sylius\Bundle\ShopBundle\Calculator\OrderItemsSubtotalCalculatorInterface" alias="sylius.calculator.order_items_subtotal" />
</services>
</container>

View file

@ -20,6 +20,7 @@
</service>
<service id="sylius.twig.extension.subtotal" class="Sylius\Bundle\ShopBundle\Twig\OrderItemsSubtotalExtension" public="false">
<argument type="service" id="sylius.calculator.order_items_subtotal" />
<tag name="twig.extension" />
</service>
</services>

View file

@ -0,0 +1,84 @@
<?php
/*
* This file is part of the Sylius package.
*
* (c) Paweł Jędrzejewski
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
declare(strict_types=1);
namespace Sylius\Bundle\ShopBundle\Tests\Calculator;
use Mockery;
use Mockery\Adapter\Phpunit\MockeryTestCase;
use Sylius\Bundle\ShopBundle\Calculator\OrderItemsSubtotalCalculator;
use Sylius\Bundle\ShopBundle\Calculator\OrderItemsSubtotalCalculatorInterface;
use Sylius\Component\Core\Model\OrderInterface;
use Sylius\Component\Core\Model\OrderItemInterface;
final class OrderItemsSubtotalCalculatorTest extends MockeryTestCase
{
/**
* @test
*/
public function it_can_be_instantiated(): OrderItemsSubtotalCalculator
{
$calculator = new OrderItemsSubtotalCalculator();
$this->assertInstanceOf(OrderItemsSubtotalCalculatorInterface::class, $calculator);
return $calculator;
}
/**
* @test
* @depends it_can_be_instantiated
* @param OrderItemsSubtotalCalculator $calculator
*/
public function it_can_calculate_the_subtotal_of_order_items(OrderItemsSubtotalCalculator $calculator): void
{
$subTotal = $calculator->getSubtotal($this->getOrderMock([
$this->getOrderItemMock(1000),
$this->getOrderItemMock(1000)
]));
$this->assertEquals(2000, $subTotal);
}
/**
* @test
* @depends it_can_be_instantiated
* @param OrderItemsSubtotalCalculator $calculator
*/
public function it_can_calculate_a_subtotal_if_there_are_no_order_items(
OrderItemsSubtotalCalculator $calculator
): void {
$subTotal = $calculator->getSubtotal($this->getOrderMock([]));
$this->assertEquals(0, $subTotal);
}
private function getOrderItemMock(int $subTotal): OrderItemInterface
{
$orderItem = Mockery::mock(OrderItemInterface::class);
$orderItem
->shouldReceive('getSubTotal')
->once()
->andReturn($subTotal)
;
return $orderItem;
}
private function getOrderMock(array $orderItems): OrderInterface
{
$order = Mockery::mock(OrderInterface::class);
$order
->shouldReceive('getItems->toArray')
->once()
->andReturn($orderItems);
return $order;
}
}

View file

@ -13,13 +13,31 @@ declare(strict_types=1);
namespace Sylius\Bundle\ShopBundle\Twig;
use Sylius\Bundle\ShopBundle\Calculator\OrderItemsSubtotalCalculator;
use Sylius\Bundle\ShopBundle\Calculator\OrderItemsSubtotalCalculatorInterface;
use Sylius\Component\Core\Model\OrderInterface;
use Sylius\Component\Core\Model\OrderItemInterface;
use Twig\Extension\AbstractExtension;
use Twig\TwigFunction;
class OrderItemsSubtotalExtension extends AbstractExtension
{
/** @var OrderItemsSubtotalCalculatorInterface */
private $calculator;
public function __construct(?OrderItemsSubtotalCalculatorInterface $calculator = null)
{
if (null === $calculator) {
$calculator = new OrderItemsSubtotalCalculator();
@trigger_error(
'Not passing a calculator is deprecated since 1.6. Argument will no longer be optional from 2.0.',
\E_USER_DEPRECATED
);
}
$this->calculator = $calculator;
}
public function getFunctions(): array
{
return [
@ -29,12 +47,6 @@ class OrderItemsSubtotalExtension extends AbstractExtension
public function getSubtotal(OrderInterface $order): int
{
return array_reduce(
$order->getItems()->toArray(),
static function (int $subtotal, OrderItemInterface $item) {
return $subtotal + $item->getSubtotal();
},
0
);
return $this->calculator->getSubtotal($order);
}
}

View file

@ -28,8 +28,8 @@
"require": {
"php": "^7.3",
"sylius/core-bundle": "^1.2",
"sylius/ui-bundle": "^1.2",
"sylius/core-bundle": "^1.6",
"sylius/ui-bundle": "^1.6",
"symfony/framework-bundle": "^4.4",
"symfony/security-bundle": "^4.4",
"twig/intl-extra": "^2.12",

View file

@ -23,9 +23,9 @@
"php": "^7.3",
"stof/doctrine-extensions-bundle": "^1.2",
"sylius/registry": "^1.2",
"sylius/resource-bundle": "^1.2",
"sylius/taxation": "^1.2",
"sylius/registry": "^1.4",
"sylius/resource-bundle": "^1.6",
"sylius/taxation": "^1.6",
"symfony/framework-bundle": "^4.4"
},
"require-dev": {

View file

@ -23,8 +23,8 @@
"php": "^7.3",
"stof/doctrine-extensions-bundle": "^1.2",
"sylius/resource-bundle": "^1.2",
"sylius/taxonomy": "^1.2",
"sylius/resource-bundle": "^1.6",
"sylius/taxonomy": "^1.6",
"symfony/framework-bundle": "^4.4"
},
"require-dev": {

View file

@ -26,7 +26,7 @@
"knplabs/knp-menu": "^3.1",
"knplabs/knp-menu-bundle": "^3.0",
"sonata-project/block-bundle": "^4.0",
"sylius/grid-bundle": "^1.2",
"sylius/grid-bundle": "^1.6",
"symfony/framework-bundle": "^4.4",
"symfony/security": "^4.4",
"symfony/security-bundle": "^4.4",

View file

@ -36,9 +36,9 @@
"doctrine/orm": "^2.5",
"egulias/email-validator": "~2.0",
"sylius/mailer-bundle": "^1.2",
"sylius/resource-bundle": "^1.2",
"sylius/user": "^1.2",
"sylius/mailer-bundle": "^1.4",
"sylius/resource-bundle": "^1.6",
"sylius/user": "^1.6",
"symfony/framework-bundle": "^4.4",
"webmozart/assert": "^1.0"
},

View file

@ -22,8 +22,8 @@
"require": {
"php": "^7.3",
"sylius/registry": "^1.2",
"sylius/resource": "^1.2",
"sylius/registry": "^1.4",
"sylius/resource": "^1.6",
"symfony/intl": "^4.4"
},
"require-dev": {

View file

@ -23,8 +23,8 @@
"php": "^7.3",
"doctrine/collections": "^1.3",
"sylius/registry": "^1.2",
"sylius/resource": "^1.2",
"sylius/registry": "^1.4",
"sylius/resource": "^1.6",
"symfony/validator": "^4.4"
},
"require-dev": {

View file

@ -22,7 +22,7 @@
"require": {
"php": "^7.3",
"sylius/resource": "^1.2",
"sylius/resource": "^1.6",
"symfony/form": "^4.4",
"symfony/http-foundation": "^4.4",
"zendframework/zend-stdlib": "^3.1"

View file

@ -25,24 +25,24 @@
"knplabs/gaufrette": "^0.8",
"payum/payum": "^1.3",
"php-http/guzzle6-adapter": "^1.1",
"sylius/addressing": "^1.2",
"sylius/attribute": "^1.2",
"sylius/channel": "^1.2",
"sylius/currency": "^1.2",
"sylius/customer": "^1.2",
"sylius/inventory": "^1.2",
"sylius/locale": "^1.2",
"sylius/order": "^1.2",
"sylius/payment": "^1.2",
"sylius/product": "^1.2",
"sylius/promotion": "^1.2",
"sylius/registry": "^1.2",
"sylius/resource": "^1.2",
"sylius/review": "^1.2",
"sylius/shipping": "^1.2",
"sylius/taxation": "^1.2",
"sylius/taxonomy": "^1.2",
"sylius/user": "^1.2",
"sylius/addressing": "^1.6",
"sylius/attribute": "^1.6",
"sylius/channel": "^1.6",
"sylius/currency": "^1.6",
"sylius/customer": "^1.6",
"sylius/inventory": "^1.6",
"sylius/locale": "^1.6",
"sylius/order": "^1.6",
"sylius/payment": "^1.6",
"sylius/product": "^1.6",
"sylius/promotion": "^1.6",
"sylius/registry": "^1.4",
"sylius/resource": "^1.6",
"sylius/review": "^1.6",
"sylius/shipping": "^1.6",
"sylius/taxation": "^1.6",
"sylius/taxonomy": "^1.6",
"sylius/user": "^1.6",
"symfony/http-foundation": "^4.4",
"webmozart/assert": "^1.0",
"zendframework/zend-stdlib": "^3.1"

View file

@ -22,7 +22,7 @@
"require": {
"php": "^7.3",
"sylius/resource": "^1.2",
"sylius/resource": "^1.6",
"symfony/intl": "^4.4",
"zendframework/zend-stdlib": "^3.1"
},

View file

@ -22,7 +22,7 @@
"require": {
"php": "^7.3",
"sylius/resource": "^1.2",
"sylius/resource": "^1.6",
"webmozart/assert": "^1.0"
},
"require-dev": {

View file

@ -22,7 +22,7 @@
"require": {
"php": "^7.3",
"sylius/resource": "^1.2",
"sylius/resource": "^1.6",
"symfony/intl": "^4.4",
"zendframework/zend-stdlib": "^3.1"
},

View file

@ -23,7 +23,7 @@
"php": "^7.3",
"webmozart/assert": "^1.1",
"sylius/resource": "^1.2",
"sylius/resource": "^1.6",
"zendframework/zend-stdlib": "^3.1"
},
"require-dev": {

View file

@ -22,7 +22,7 @@
"require": {
"php": "^7.3",
"sylius/registry": "^1.2",
"sylius/registry": "^1.4",
"sylius/resource": "^1.0"
},
"require-dev": {

View file

@ -23,8 +23,8 @@
"php": "^7.3",
"behat/transliterator": "^1.1",
"sylius/attribute": "^1.2",
"sylius/resource": "^1.2",
"sylius/attribute": "^1.6",
"sylius/resource": "^1.6",
"symfony/polyfill-iconv": "^1.6",
"webmozart/assert": "^1.0"
},

View file

@ -23,7 +23,7 @@
"php": "^7.3",
"doctrine/orm": "^2.5",
"sylius/registry": "^1.2",
"sylius/registry": "^1.4",
"sylius/resource": "^1.0"
},
"require-dev": {

View file

@ -34,7 +34,7 @@
"require": {
"php": "^7.3",
"sylius/resource": "^1.2",
"sylius/resource": "^1.6",
"doctrine/collections": "^1.3"
},
"require-dev": {

View file

@ -22,8 +22,8 @@
"require": {
"php": "^7.3",
"sylius/resource": "^1.2",
"sylius/registry": "^1.2",
"sylius/resource": "^1.6",
"sylius/registry": "^1.4",
"symfony/options-resolver": "^4.4"
},
"require-dev": {

View file

@ -22,7 +22,7 @@
"require": {
"php": "^7.3",
"sylius/registry": "^1.2",
"sylius/registry": "^1.4",
"sylius/resource": "^1.0"
},
"require-dev": {

View file

@ -23,7 +23,7 @@
"php": "^7.3",
"behat/transliterator": "^1.1",
"sylius/resource": "^1.2",
"sylius/resource": "^1.6",
"webmozart/assert": "^1.0"
},
"require-dev": {

View file

@ -31,7 +31,7 @@
"php": "^7.3",
"doctrine/collections": "^1.1",
"sylius/resource": "^1.2",
"sylius/resource": "^1.6",
"symfony/polyfill-mbstring": "^1.6",
"symfony/security": "^4.4"
},

View file

@ -37,15 +37,354 @@
"php": {
"version": "7.3"
},
"php-cs-fixer/diff": {
"version": "v1.3.0"
},
"php-http/client-common": {
"version": "1.7.0"
},
"php-http/discovery": {
"version": "1.4.0"
},
"php-http/guzzle6-adapter": {
"version": "v1.1.1"
},
"php-http/httplug": {
"version": "v1.1.0"
},
"php-http/message": {
"version": "1.7.0"
},
"php-http/message-factory": {
"version": "v1.0.2"
},
"php-http/promise": {
"version": "v1.0.0"
},
"phpcollection/phpcollection": {
"version": "0.5.0"
},
"phpdocumentor/reflection-common": {
"version": "1.0.1"
},
"phpdocumentor/reflection-docblock": {
"version": "4.3.0"
},
"phpdocumentor/type-resolver": {
"version": "0.4.0"
},
"phpoption/phpoption": {
"version": "1.5.0"
},
"phpspec/php-diff": {
"version": "v1.1.0"
},
"phpspec/phpspec": {
"version": "4.3.1"
},
"phpspec/prophecy": {
"version": "1.8.0"
},
"phpstan/phpstan-doctrine": {
"version": "0.10"
},
"phpstan/phpstan-shim": {
"version": "0.10.3"
},
"phpstan/phpstan-webmozart-assert": {
"version": "0.10"
},
"phpunit/php-code-coverage": {
"version": "5.3.2"
},
"phpunit/php-file-iterator": {
"version": "1.4.5"
},
"phpunit/php-text-template": {
"version": "1.2.1"
},
"phpunit/php-timer": {
"version": "1.0.9"
},
"phpunit/php-token-stream": {
"version": "2.0.2"
},
"phpunit/phpunit": {
"version": "4.7",
"recipe": {
"repo": "github.com/symfony/recipes",
"branch": "master",
"version": "4.7",
"ref": "c276fa48d4713de91eb410289b3b1834acb7e403"
}
},
"polishsymfonycommunity/symfony-mocker-container": {
"version": "v1.0.2"
},
"psalm/plugin-mockery": {
"version": "0.3.0"
},
"psr/cache": {
"version": "1.0.1"
},
"psr/container": {
"version": "1.0.0"
},
"psr/event-dispatcher": {
"version": "1.0.0"
},
"psr/http-message": {
"version": "1.0.1"
},
"psr/link": {
"version": "1.0.0"
},
"psr/log": {
"version": "1.0.2"
},
"psr/simple-cache": {
"version": "1.0.1"
},
"ramsey/uuid": {
"version": "3.8.0"
},
"sebastian/code-unit-reverse-lookup": {
"version": "1.0.1"
},
"sebastian/comparator": {
"version": "2.1.3"
},
"sebastian/diff": {
"version": "2.0.1"
},
"sebastian/environment": {
"version": "3.1.0"
},
"sebastian/exporter": {
"version": "3.1.0"
},
"sebastian/global-state": {
"version": "2.0.0"
},
"sebastian/object-enumerator": {
"version": "3.0.3"
},
"sebastian/object-reflector": {
"version": "1.1.1"
},
"sebastian/recursion-context": {
"version": "3.0.0"
},
"sebastian/resource-operations": {
"version": "1.0.0"
},
"sebastian/type": {
"version": "1.1.3"
},
"sebastian/version": {
"version": "2.0.1"
},
"sensiolabs/security-checker": {
"version": "4.0",
"recipe": {
"repo": "github.com/symfony/recipes",
"branch": "master",
"version": "4.0",
"ref": "421933bf8f0e75546ac8e00cb3eb12904fa2ac1a"
}
},
"slevomat/coding-standard": {
"version": "4.6.3"
},
"sonata-project/block-bundle": {
"version": "3.12.1"
},
"sonata-project/cache": {
"version": "2.0.1"
},
"sonata-project/core-bundle": {
"version": "3.9",
"recipe": {
"repo": "github.com/symfony/recipes-contrib",
"branch": "master",
"version": "3.9",
"ref": "2f69bd1995730b73a5211a9707622fb25a925df7"
}
},
"sonata-project/datagrid-bundle": {
"version": "2.3.1"
},
"sonata-project/intl-bundle": {
"version": "2.5.0"
},
"squizlabs/php_codesniffer": {
"version": "3.3.1"
},
"sspooky13/yaml-standards": {
"version": "5.0.0"
},
"stof/doctrine-extensions-bundle": {
"version": "1.2",
"recipe": {
"repo": "github.com/symfony/recipes-contrib",
"branch": "master",
"version": "1.2",
"ref": "6c1ceb662f8997085f739cd089bfbef67f245983"
}
},
"stripe/stripe-php": {
"version": "v4.13.0"
},
"swiftmailer/swiftmailer": {
"version": "v6.1.2"
},
"sylius-labs/association-hydrator": {
"version": "v1.1.0"
},
"sylius-labs/coding-standard": {
"version": "v2.0.0"
},
"sylius-labs/sensio-distribution-bundle": {
"version": "v6.0.1"
},
"sylius/fixtures-bundle": {
"version": "v1.4.1"
},
"sylius/registry": {
"version": "v1.4.0"
},
"sylius/theme-bundle": {
"version": "v1.4.2"
},
"symfony/asset": {
"version": "v4.1.3"
},
"symfony/browser-kit": {
"version": "v4.1.3"
},
"symfony/cache": {
"version": "v4.1.3"
},
"symfony/class-loader": {
"version": "v3.4.14"
},
"symfony/config": {
"version": "v4.1.3"
},
"symfony/console": {
"version": "3.3",
"recipe": {
"repo": "github.com/symfony/recipes",
"branch": "master",
"version": "3.3",
"ref": "e3868d2f4a5104f19f844fe551099a00c6562527"
}
},
"symfony/css-selector": {
"version": "v4.1.3"
},
"symfony/debug": {
"version": "v4.1.3"
},
"symfony/debug-bundle": {
"version": "4.1",
"recipe": {
"repo": "github.com/symfony/recipes",
"branch": "master",
"version": "4.1",
"ref": "f8863cbad2f2e58c4b65fa1eac892ab189971bea"
}
},
"symfony/dependency-injection": {
"version": "v4.1.3"
},
"symfony/doctrine-bridge": {
"version": "v4.1.3"
},
"symfony/dom-crawler": {
"version": "v4.1.3"
},
"symfony/dotenv": {
"version": "v4.1.3"
},
"symfony/event-dispatcher": {
"version": "v4.1.3"
},
"symfony/expression-language": {
"version": "v4.1.3"
},
"symfony/filesystem": {
"version": "v4.1.3"
},
"symfony/finder": {
"version": "v4.1.3"
},
"symfony/flex": {
"version": "1.0",
"recipe": {
"repo": "github.com/symfony/recipes",
"branch": "master",
"version": "1.0",
"ref": "e921bdbfe20cdefa3b82f379d1cd36df1bc8d115"
}
},
"symfony/form": {
"version": "v4.1.3"
},
"symfony/framework-bundle": {
"version": "3.3",
"recipe": {
"repo": "github.com/symfony/recipes",
"branch": "master",
"version": "3.3",
"ref": "87c585d24de9f43bca80ebcfd5cf5cb39445d95f"
}
},
"symfony/http-foundation": {
"version": "v4.1.3"
},
"symfony/http-kernel": {
"version": "v4.1.3"
},
"symfony/inflector": {
"version": "v4.1.3"
},
"symfony/intl": {
"version": "v4.1.3"
},
"symfony/monolog-bridge": {
"version": "v4.1.3"
},
"symfony/monolog-bundle": {
"version": "3.1",
"recipe": {
"repo": "github.com/symfony/recipes",
"branch": "master",
"version": "3.1",
"ref": "18ebf5a940573a20de06f9c4060101eeb438cf3d"
}
},
"symfony/options-resolver": {
"version": "v4.1.3"
},
"symfony/polyfill-ctype": {
"version": "v1.9.0"
},
"symfony/polyfill-iconv": {
"version": "v1.9.0"
},
"symfony/polyfill-intl-icu": {
"version": "v1.9.0"
},
"symfony/polyfill-mbstring": {
"version": "v1.9.0"
},
"symfony/polyfill-php56": {
"version": "v1.15.0"
},
"symfony/polyfill-php70": {
"version": "v1.9.0"
},
"symfony/polyfill-php80": {
"version": "v1.15.0"
},