这是indexloc提供的服务,不要输入任何密码
Skip to content

Conversation

@benr77
Copy link

@benr77 benr77 commented Feb 26, 2021

The Symplify project is from Tomas Votruba who is also the maintainer of RectorPhp and Easy Coding Standard. I feel this extension would be a useful extension to the toolbox.

Feel free to disagree as obviously it can also be installed manually by users that need it.

@jakzal
Copy link
Owner

jakzal commented Feb 26, 2021

I'm not against it if you think it's well maintained.

One thing to consider is the dependencies an extension brings. These might conflict with dependencies on your project. We recently had problems with the larastan extension that locked Symfony components in an older version. I think this is one of the reasons why phpstan's recommended installation method is to include it in your composer file.

Before installing the symplify extension:

ergebnis/phpstan-rules            0.15.3  Provides additional rules for phpstan/phpstan.
nikic/php-parser                  v4.10.4 A PHP parser written in PHP
pepakriz/phpstan-exception-rules  v0.11.6 Exception rules for PHPStan
phpstan/phpstan                   0.12.79 PHPStan - PHP Static Analysis Tool
phpstan/phpstan-beberlei-assert   0.12.6  PHPStan beberlei/assert extension
phpstan/phpstan-deprecation-rules 0.12.6  PHPStan rules for detecting usage of deprecated classes, methods, properties, constants and traits.
phpstan/phpstan-doctrine          0.12.32 Doctrine extensions for PHPStan
phpstan/phpstan-phpunit           0.12.17 PHPUnit extensions and rules for PHPStan
phpstan/phpstan-strict-rules      0.12.9  Extra strict and opinionated rules for PHPStan
phpstan/phpstan-symfony           0.12.20 Symfony Framework extensions and rules for PHPStan
phpstan/phpstan-webmozart-assert  0.12.12 PHPStan webmozart/assert extension

After:

ergebnis/phpstan-rules             0.15.3  Provides additional rules for phpstan/phpstan.
nette/finder                       v2.5.2  🔍 Nette Finder: find files and directories with an intuitive API.
nette/neon                         v3.2.1  🍸 Nette NEON: encodes and decodes NEON file format.
nette/robot-loader                 v3.3.1  🍀 Nette RobotLoader: high performance and comfortable autoloader that will search and autoload classes within your application.
nette/utils                        v3.2.1  🛠  Nette Utils: lightweight utilities for string & array manipulation, image handling, safe JSON encoding/decoding, validation, ...
nikic/php-parser                   v4.10.4 A PHP parser written in PHP
pepakriz/phpstan-exception-rules   v0.11.6 Exception rules for PHPStan
phpstan/phpdoc-parser              0.4.11  PHPDoc parser with support for nullable, intersection and generic types
phpstan/phpstan                    0.12.79 PHPStan - PHP Static Analysis Tool
phpstan/phpstan-beberlei-assert    0.12.6  PHPStan beberlei/assert extension
phpstan/phpstan-deprecation-rules  0.12.6  PHPStan rules for detecting usage of deprecated classes, methods, properties, constants and traits.
phpstan/phpstan-doctrine           0.12.32 Doctrine extensions for PHPStan
phpstan/phpstan-phpunit            0.12.17 PHPUnit extensions and rules for PHPStan
phpstan/phpstan-strict-rules       0.12.9  Extra strict and opinionated rules for PHPStan
phpstan/phpstan-symfony            0.12.20 Symfony Framework extensions and rules for PHPStan
phpstan/phpstan-webmozart-assert   0.12.12 PHPStan webmozart/assert extension
psr/container                      1.0.0   Common Container Interface (PHP FIG PSR-11)
psr/event-dispatcher               1.0.0   Standard interfaces for event handling.
psr/log                            1.1.3   Common interface for logging libraries
sebastian/diff                     4.0.4   Diff implementation
symfony/config                     v5.2.3  Helps you find, load, combine, autofill and validate configuration values of any kind
symfony/console                    v5.2.3  Eases the creation of beautiful and testable command line interfaces
symfony/dependency-injection       v5.2.3  Allows you to standardize and centralize the way objects are constructed in your application
symfony/deprecation-contracts      v2.2.0  A generic function and convention to trigger deprecation notices
symfony/error-handler              v5.2.3  Provides tools to manage errors and ease debugging PHP code
symfony/event-dispatcher           v5.2.3  Provides tools that allow your application components to communicate with each other by dispatching events and listening to them
symfony/event-dispatcher-contracts v2.2.0  Generic abstractions related to dispatching event
symfony/filesystem                 v5.2.3  Provides basic utilities for the filesystem
symfony/finder                     v5.2.3  Finds files and directories via an intuitive fluent interface
symfony/http-client-contracts      v2.3.1  Generic abstractions related to HTTP clients
symfony/http-foundation            v5.2.3  Defines an object-oriented layer for the HTTP specification
symfony/http-kernel                v5.2.3  Provides a structured process for converting a Request into a Response
symfony/polyfill-ctype             v1.22.1 Symfony polyfill for ctype functions
symfony/polyfill-intl-grapheme     v1.22.1 Symfony polyfill for intl's grapheme_* functions
symfony/polyfill-intl-normalizer   v1.22.1 Symfony polyfill for intl's Normalizer class and related functions
symfony/polyfill-mbstring          v1.22.1 Symfony polyfill for the Mbstring extension
symfony/polyfill-php73             v1.22.1 Symfony polyfill backporting some PHP 7.3+ features to lower PHP versions
symfony/polyfill-php80             v1.22.1 Symfony polyfill backporting some PHP 8.0+ features to lower PHP versions
symfony/service-contracts          v2.2.0  Generic abstractions related to writing services
symfony/string                     v5.2.3  Provides an object-oriented API to strings and deals with bytes, UTF-8 code points and grapheme clusters in a unified way
symfony/var-dumper                 v5.2.3  Provides mechanisms for walking through any arbitrary PHP variable
symfony/yaml                       v5.2.3  Loads and dumps YAML files
symplify/astral                    9.2.1   Toolking for smart daily work with AST
symplify/autowire-array-parameter  9.2.1   Autowire array parameters for your Symfony applications
symplify/composer-json-manipulator 9.2.1   Package to load, merge and save composer.json file(s)
symplify/console-package-builder   9.2.1   Package to speed up building command line applications
symplify/easy-testing              9.2.1   Testing made easy
symplify/markdown-diff             9.2.1   Package to print diffs for Markdown
symplify/package-builder           9.2.1   Dependency Injection, Console and Kernel toolkit for Symplify packages.
symplify/php-config-printer        9.2.1   Print Symfony services array with configuration to to plain PHP file format thanks to this simple php-parser wrapper
symplify/phpstan-rules             9.2.1   Set of Symplify rules for PHPStan
symplify/rule-doc-generator        9.2.1   Documentation generator for coding standard or static analysis rules
symplify/smart-file-system         9.2.1   Sanitized FileInfo with safe getRealPath() and other handy methods
symplify/symplify-kernel           9.2.1   Internal Kernel for Symplify packages

@benr77
Copy link
Author

benr77 commented Feb 26, 2021

Yes, I was a little concerned about the dependencies when I was putting together the PR. I would say it's well maintained, but regardless all these extra packages could well cause headaches in the future.

Maybe in this case it's better to keep this extension out of the package? I can just build it in myself should I want to...

Anyway, you're the maintainer - feel free to use the PR or not it was only a few minutes work so doesn't really matter either way.

Cheers.

This pull request was closed.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants