phpcheckstyle icon indicating copy to clipboard operation
phpcheckstyle copied to clipboard

--exclude is being ignored

Open roflo1 opened this issue 2 years ago • 3 comments

I'm setting up a test environment for my upcoming project (in CodeIgniter4, if it's relevant) and stumbled upon this weird behavior. I execute the following (in my CI4 project folder):

php /path/to/run.php --config /path/to/my.cfg.xml --src app/Views/ --exclude app/Views/welcome_message.php

But the excluded file is still parsed: image

If I exclude the relative path portion of the exclusion, it does skip the file (but I assume it would also exclude other unintended files):

php /path/to/run.php --config /path/to/my.cfg.xml --src app/Views/ --exclude welcome_message.php

After searching the reported issues, I thought it could have something to do with Issue 78, so I tried executing from the installation directory:

php run.php --config /path/to/my.cfg.xml --src /full/path/to/app/Views/ --exclude /full/path/to/app/Views/welcome_message.php

And it still fails to exclude the indicated file.

Tested in:

  • Version 0.14.8
  • Commit b16777125e2023efbf47e5576cda32443091a9fd

With PHP 8.0.25. Manual installation.

roflo1 avatar Dec 06 '22 17:12 roflo1

Hello,

It's probably not clearly documented, but yes the "--exclude" il relative to the "--src" path. So the correct way to exclure "welcome_message" is as you guessed : php /path/to/run.php --config /path/to/my.cfg.xml --src app/Views/ --exclude welcome_message.php

But you are correct, it could exclude some files named "welcome_message.php" in any subdirectory. I've just made a few tests and I can reproduce the problem. I think a cleaner way to this would be to accept regular expressions (with **/*.php as ANT would do), but i'm not sure to have the time to investigate further.

tchule avatar Dec 07 '22 13:12 tchule

Thanks for the reply. That explains a lot.

Though now I'm curious: if multiple --src are used, would --exclude be relative to any of the --src or just the last one?

roflo1 avatar Dec 08 '22 18:12 roflo1

Good question, it should work with every src, but I havn't tried.

tchule avatar Dec 09 '22 07:12 tchule