Skip to content
This repository has been archived by the owner on Dec 3, 2023. It is now read-only.

[ECS] Call to undefined method Symplify\EasyCodingStandard\EasyCodingStandardBundle::getParent() #1872

Closed
ostrolucky opened this issue Apr 29, 2020 · 8 comments

Comments

@ostrolucky
Copy link
Contributor

This is a Symfony 3.4 project and ECS 7 global installation. It looks like ECS is trying to execute project's code?

$ ecs --version
PHP Fatal error:  Uncaught Error: Call to undefined method Symplify\EasyCodingStandard\EasyCodingStandardBundle::getParent() in /Users/gostrolucky/PhpstormProjects/everlution-github-repo-backup/everlution_enrola/project/vendor/symfony/symfony/src/Symfony/Component/HttpKernel/Kernel.php:495
Stack trace:
#0 /Users/gostrolucky/PhpstormProjects/everlution-github-repo-backup/everlution_enrola/project/vendor/symfony/symfony/src/Symfony/Component/HttpKernel/Kernel.php(132): Symfony\Component\HttpKernel\Kernel->initializeBundles()
#1 /Users/gostrolucky/.composer/vendor/symplify/easy-coding-standard/bin/ecs(85): Symfony\Component\HttpKernel\Kernel->boot()
#2 {main}
  thrown in /Users/gostrolucky/PhpstormProjects/everlution-github-repo-backup/everlution_enrola/project/vendor/symfony/symfony/src/Symfony/Component/HttpKernel/Kernel.php on line 495

Fatal error: Uncaught Error: Call to undefined method Symplify\EasyCodingStandard\EasyCodingStandardBundle::getParent() in /Users/gostrolucky/PhpstormProjects/everlution-github-repo-backup/everlution_enrola/project/vendor/symfony/symfony/src/Symfony/Component/HttpKernel/Kernel.php on line 495

Error: Call to undefined method Symplify\EasyCodingStandard\EasyCodingStandardBundle::getParent() in /Users/gostrolucky/PhpstormProjects/everlution-github-repo-backup/everlution_enrola/project/vendor/symfony/symfony/src/Symfony/Component/HttpKernel/Kernel.php on line 495

Call Stack:
    0.0007     423816   1. {main}() /Users/gostrolucky/.composer/vendor/symplify/easy-coding-standard/bin/ecs:0
    0.0477    2365488   2. Symplify\EasyCodingStandard\HttpKernel\EasyCodingStandardKernel->boot() /Users/gostrolucky/.composer/vendor/symplify/easy-coding-standard/bin/ecs:85
    0.0477    2365488   3. Symplify\EasyCodingStandard\HttpKernel\EasyCodingStandardKernel->initializeBundles() /Users/gostrolucky/PhpstormProjects/everlution-github-repo-backup/everlution_enrola/project/vendor/symfony/symfony/src/Symfony/Component/HttpKernel/Kernel.php:132

$ cd ..
$ ecs --version
EasyCodingStandard v7.2.20
@TomasVotruba
Copy link
Member

ECS is only designed as composer dependency or prefixed phar. Global won't work.

@ostrolucky
Copy link
Contributor Author

ostrolucky commented Apr 29, 2020

Well how about docker image? Same issue there

$ docker run --rm -v $(PWD):/project -w /project jakzal/phpqa ecs --version

Fatal error: Uncaught Error: Call to undefined method Symplify\EasyCodingStandard\EasyCodingStandardBundle::getParent() in /project/vendor/symfony/symfony/src/Symfony/Component/HttpKernel/Kernel.php:495
Stack trace:
#0 /project/vendor/symfony/symfony/src/Symfony/Component/HttpKernel/Kernel.php(132): Symfony\Component\HttpKernel\Kernel->initializeBundles()
#1 /tools/EasyCodingStandard/bin/ecs(85): Symfony\Component\HttpKernel\Kernel->boot()
#2 {main}
  thrown in /project/vendor/symfony/symfony/src/Symfony/Component/HttpKernel/Kernel.php on line 495

Where can I download prefixed ECS phars?

@TomasVotruba
Copy link
Member

Docker won't help you with 2 version of Symfony. Just with PHP version.

https://www.google.com/search?q=ecs+phar&oq=ecs+phar&aqs=chrome..69i57j69i61l2j69i60l3j69i63j69i61.735j0j7&sourceid=chrome&ie=UTF-8

@TomasVotruba
Copy link
Member

TomasVotruba commented Apr 29, 2020

If you'd like to understand why, here I explain it: https://getrector.org/blog/2020/01/20/how-to-install-rector-despite-composer-conflicts
(different tool, but same issue; same reason PHPStan needs prefixed phar)

@ostrolucky
Copy link
Contributor Author

Looks like your project cannot be even scoped. I have opened humbug/php-scoper#389. What changed in ECS 7 though? This issue is not present in ECS 6, so you should be able to fix it.

@TomasVotruba
Copy link
Member

TomasVotruba commented Apr 29, 2020

Looks like your project cannot be even scoped.

I don't understand. What do you mean?
ECS is already prefixed and works. I use it on older projects.

What changed in ECS 7 though?

We've moved to using bundles recently, to prevent path errors in phar and dependency installs.

@ostrolucky
Copy link
Contributor Author

I don't understand. What do you mean?

See issue I linked. If you don't understand, it doesn't make sense to close issue though, so I don't understand why that was done here.

ECS is already prefixed and works. I use it on older projects.

So where can I find it? I asked about it here:

Where can I download prefixed ECS phars?

@TomasVotruba
Copy link
Member

TomasVotruba commented Apr 29, 2020

I replied it here:
#1872 (comment)

@deprecated-packages deprecated-packages locked as resolved and limited conversation to collaborators Nov 2, 2020
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Development

No branches or pull requests

2 participants