-
Notifications
You must be signed in to change notification settings - Fork 530
cover ExtendedMethodReflection by bc-promise #1913
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Type::class, | ||
ReflectionProvider::class, | ||
], true)) { | ||
if (in_array($extendedInterfaceReflection->getName(), BcUncoveredInterface::CLASSES, true)) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I am re-using the same constant as in ApiClassImplementsRule
.. thats how I understand the todo.
since we are now ignoring 5 classes here instead of only 2, I could add more tests.
but I wasn't sure whether I should DRY only Type::class, ReflectionProvider::class
or all 5 class-strings..?
@@ -14,6 +14,8 @@ | |||
* and its methods in their code. | |||
* | |||
* Methods on ExtendedMethodReflection are subject to change. | |||
* | |||
* @api |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
above this interface is this big comment, mentioning that this interface is not meant for re-use. I guess it should be dropped now?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'll rewrite it after merge.
This pull request has been marked as ready for review. |
1d468d8
to
37ae358
Compare
use PHPStan\Reflection\ReflectionProvider; | ||
use PHPStan\Type\Type; | ||
|
||
final class BcUncoveredInterface |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
A food for thought - in the future we could add a new annotation like @api-interface-forbid-implements
. That would allow us not to maintain these lists and also BackwardCompatibilityCheck with each new interface.
Thank you! |
as requested in #1899 (comment)
requires ondrejmirtes/BackwardCompatibilityCheck#23