When the bin script is loading, it performs certain operations which need to be run before the full CliOptions objects can be safely created and validated. Notably, it needs to scan for valid filenames and, if the -i option was provided, it needs to create a shell to ask phpcs for its installed standards.
However, currently both these operations can fail because they both require creating a CliOptions object when it might not be valid.
This PR makes it so that the CliOptions object is not validated when it would likely be invalid. Specifically, it changes the filename validation to use the raw --extensions data and it creates a new mode, INFO_ONLY, that can be used to safely run the -i option.
When the bin script is loading, it performs certain operations which need to be run before the full
CliOptions
objects can be safely created and validated. Notably, it needs to scan for valid filenames and, if the-i
option was provided, it needs to create a shell to ask phpcs for its installed standards.However, currently both these operations can fail because they both require creating a
CliOptions
object when it might not be valid.This PR makes it so that the
CliOptions
object is not validated when it would likely be invalid. Specifically, it changes the filename validation to use the raw--extensions
data and it creates a new mode,INFO_ONLY
, that can be used to safely run the-i
option.Fixes https://github.com/sirbrillig/phpcs-changed/issues/94