Error Identifier: methodTag.deprecatedTrait
Every error reported by PHPStan has an error identifier. Here’s a list of all error identifiers. In PHPStan Pro you can see the error identifier next to each error and filter errors by their identifiers.
This error is reported by the phpstan-deprecation-rules extension.
Code example #
<?php declare(strict_types = 1);
/** @deprecated Use NewHelper instead */
trait OldHelper
{
public function help(): void {}
}
/**
* @method OldHelper getHelper()
*/
class Service
{
}
Why is it reported? #
A @method PHPDoc tag references a deprecated trait in its type declaration. The trait has been marked with a @deprecated PHPDoc tag, indicating it should no longer be used. PHPDoc annotations should not reference deprecated types as they are planned for removal in a future version.
How to fix it #
Update the @method tag to use the replacement type:
<?php declare(strict_types = 1);
/**
- * @method OldHelper getHelper()
+ * @method NewHelper getHelper()
*/
class Service
{
}
How to ignore this error #
You can use the identifier methodTag.deprecatedTrait to ignore this error using a comment:
// @phpstan-ignore methodTag.deprecatedTrait
codeThatProducesTheError();
You can also use only the identifier key to ignore all errors of the same type in your configuration file in the ignoreErrors parameter:
parameters:
ignoreErrors:
-
identifier: methodTag.deprecatedTrait
Rules that report this error #
- PHPStan\Rules\Deprecations\RestrictedDeprecatedClassNameUsageExtension [1] phpstan/phpstan-deprecation-rules