Issue
I do get a warning whenever I throw an exception in my code without explicitly stating it in the docblocs:
I know this can be fixed by adding @throw
tags, but the warning is actually not 100% true, as I do handle the exception in /app/Exceptions/Handler.php
. I would like to disable the warning for this single exception. Is this possible in PHPStan? I have not found anything in the docs, but in this blog post https://phpstan.org/blog/bring-your-exceptions-under-control it seems that one can have unchecked & checked exceptions, and I believe unchecked exceptions do not need to be declared. However, marking my exception unchecked in phpstan.neon
does not get rid of the error:
exceptions:
uncheckedExceptionClasses:
- 'app\Exceptions\AuthenticationException'
I also noticed that the Symfony\Component\HttpKernel\Exception\NotFoundHttpException
exception does not trigger the warning. I am not sure why, but it seems there is already a set of exceptions where no @throw
is needed.
How can I suppress the warning for my exception?
Solution
As Bob has correctly stated this comes from PhpStorm itself and not PHPStan.
You can add any exception to the Unchecked Exception list so it will be ignored by PhpStorm at Settings/Preferences | PHP | Analysis
https://www.jetbrains.com/help/phpstorm/php-missing-throws-tag-s.html
As to why Symfony\Component\HttpKernel\Exception\NotFoundHttpException
is not reported -- they have different parents:
NotFoundHttpException
extendsHttpException
extends\RuntimeException
(which is in unchecked list)AuthenticationException
extends\Exception
Answered By - LazyOne Answer Checked By - Marilyn (PHPFixing Volunteer)
0 Comments:
Post a Comment
Note: Only a member of this blog may post a comment.