Roave / BetterReflection

:crystal_ball: Better Reflection is a reflection API that aims to improve and provide more features than PHP's built-in reflection API.
MIT License
1.19k stars 131 forks source link

CI tools moved to special composer.json #1391

Closed kukulich closed 8 months ago

Ocramius commented 9 months ago

Seems like this bit needs some polyfilling or such :thinking:

https://github.com/Roave/infection-static-analysis-plugin/blob/975adabcbbdbd6c550159d3203a7336fd82cedb7/bin/roave-infection-static-analysis-plugin#L54-L60

Ocramius commented 8 months ago

Release of other tool going up right now 👍

kukulich commented 8 months ago

I’m sorry - there was “approved” so I merged it.

Ocramius commented 8 months ago

That's fine: it doesn't currently affect downstream, and we can always go back: I just thought this was splitting out a couple tools, but I misread from my phone, so I was too quick 😬

Let's see how this works out meanwhile 👍

kukulich commented 8 months ago

Just another idea - would it be possible to prepare phar for https://github.com/Roave/infection-static-analysis-plugin ? Dependencies will be packed in the Phar

Ocramius commented 8 months ago

IMO no:

  1. Maintaining phar is a massive pain in the royal butt
  2. I prefer people to rely on an explicit composer.lock that they maintain, like we do here

Also, the tool sharing memory space with the program is a problem, when used from a phar: that's why I still firmly believe that using tools like phpunit from a phar is a mistake.

Ocramius commented 8 months ago

BTW, it would be fine if address space wasn't shared (most static analysis tools), but not for this

kukulich commented 8 months ago

Hmm, it looks the PR was not successful.

We are still not able to upgrade PhpParser: https://github.com/Roave/BetterReflection/pull/1387

PhpParser is used in tests so if we upgrade it we will have problem with Psalm and Infection dependencies again :(