webgriffe/sylius-upgrade-plugin

帮助您将 Sylius 应用程序升级到新版本。

安装量: 77,409

依赖项: 0

建议者: 0

安全: 0

星标: 12

关注者: 4

分支: 1

公开问题: 4

类型:sylius-plugin


README

升级插件

此插件帮助您将 Sylius 应用程序升级到新版本。

Build Status

目录

需求

  • PHP ^8.0
  • Sylius ^1.11.2 || ^1.12 || ^1.13

安装

  1. 运行 composer require --dev webgriffe/sylius-upgrade-plugin

  2. 将插件添加到 config/bundles.php 文件中

    Webgriffe\SyliusUpgradePlugin\WebgriffeSyliusUpgradePlugin::class => ['dev' => true, 'test' => true],

使用

所有功能都作为 控制台命令 实现。

模板更改

bin/console webgriffe:upgrade:template-changes <from-version> <to-version> [--theme=PATH_TO_YOUR_THEME] [--legacy] 

打印出在两个指定的 Sylius 版本之间发生更改的模板文件(扩展名为 .html.twig)的列表,以及您项目中已覆盖的文件:在根目录 "templates" 文件夹中,以及在自定义主题中。

您必须指定要计算更改的 版本。

有两个可选参数

  • --theme=PATH_TO_YOUR_THEME,指定要搜索更改文件的主题文件夹。路径必须是相对于您的项目的 kernel.project_dir。您可以通过重复使用 --theme 参数指定多个主题,请参阅下面相关部分的示例;
  • --legacy,使用旧版主题文件夹结构。从 SyliusThemeBundle 的 v2.0 版本开始,主题文件夹结构已更改。旧结构已被弃用,并在 v3.0 版本中删除,如 此处 所述。

示例

  • 在 Sylius v1.8.4 和 v1.8.8 之间发生更改的模板列表,这些模板已覆盖在您的根 templates 文件夹中

    bin/console webgriffe:upgrade:template-changes v1.8.4 v1.8.8
  • 在 Sylius v1.8.8 和 v1.9.3 之间发生更改的模板列表,这些模板已覆盖在您的根 templates 文件夹中,以及您的 my-website-theme 文件夹中

    bin/console webgriffe:upgrade:template-changes v1.8.8 v1.9.3 --theme=themes/my-website-theme
  • 与上一个示例类似,但它为多个主题计算更改,其中一个是位于供应商文件夹中的

    bin/console webgriffe:upgrade:template-changes v1.8.8 v1.9.3 --theme=themes/my-website-theme --theme=themes/my-other-theme --theme=vendor/acme/my-vendor-theme

装饰服务更改

bin/console webgriffe:upgrade:service-changes <from-version> <to-version> [--theme=PATH_TO_YOUR_THEME] [--legacy] 

打印出在两个指定的 Sylius 版本之间发生更改的服务列表,以及您项目中已装饰/覆盖的服务。

您必须指定要计算更改的 版本。

有两个可选参数

  • --namespace-prefix=NAMESPACE-PREFIX,您的应用程序服务的命名空间的第一部分,如 "App" 在 "App\Calculator\PriceCalculator" 中。默认值:"App"。
  • --alias-prefix=ALIAS-PREFIX,您的应用程序服务的别名的前一部分,如 "app" 在 "app.calculator.price" 中。默认值:"app"。

示例

  • 在 Sylius v1.11.0 和 v1.13.0 之间发生更改的服务列表,这些服务已在您的项目中装饰

    bin/console webgriffe:upgrade:service-changes v1.11.0 v1.13.0
  • 在 Sylius v1.11.0 和 v1.13.0 之间发生更改的服务列表,这些服务已在您的项目中装饰,但具有自定义命名空间和别名前缀

    bin/console webgriffe:upgrade:service-changes v1.11.0 v1.13.0 --namespace-prefix="Webgriffe" --alias-prefix="webgriffe"

贡献

要为此插件做出贡献,请克隆此存储库,为您的功能或错误修复创建分支,进行更改,然后确保所有测试都通过。

```bash
$ (cd tests/Application && yarn install)
$ (cd tests/Application && yarn build)
$ (cd tests/Application && APP_ENV=test bin/console assets:install public)

$ (cd tests/Application && APP_ENV=test bin/console doctrine:database:create)
$ (cd tests/Application && APP_ENV=test bin/console doctrine:schema:create)
```

要能够设置插件数据库,请记住在 tests/Application/.envtests/Application/.env.test 中配置您的数据库凭据。

运行插件测试

  • PHPUnit

    vendor/bin/phpunit
  • PHPSpec

    vendor/bin/phpspec run
  • 静态分析

    • Psalm

      vendor/bin/psalm
    • PHPStan

      vendor/bin/phpstan analyse
  • 编码标准

    vendor/bin/ecs check

许可

此插件遵循MIT许可协议。请参阅LICENSE文件中的完整许可协议。

致谢

Webgriffe®开发。