#98 remove StubClassSourceLocator
from default setup
#100
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This effectively reverts #74 without introducing a BC break: the class
is now deprecated, but still exists in the codebase.
The idea of the
StubClassSourceLocator
was that it should be possibleto analyse code even if dependency holes are present, but that is now
solved by skipping BC break checks for any reflection-based exception.
This massively simplifies things, as any missing dependency will simply
lead to a skipped error and a non-zero exit code, much like it happens
in
maglnet/composer-require-checker
(https://github.com/maglnet/ComposerRequireChecker).This also fixes weird scenarios where a pre-existing class is being
looked up in a new codebase that doesn't contain it. Assuming that
following was deleted across two breaking versions:
Before this change, this breakage would not be located, because the
StubClassSourceLocator
would create an implicitFoo\Bar
stub, whichwould therefore be considered as "not a change".