Feature: #83094 - Replace @ignorevalidation with @TYPO3\CMS\Extbase\Annotation\IgnoreValidation

See forge#83094

Description

As a successor to the @ignorevalidation annotation, the doctrine annotation @TYPO3\CMS\Extbase\Annotation\IgnoreValidation has been introduced.

Example:

/**
 * @TYPO3\CMS\Extbase\Annotation\IgnoreValidation("param")
 */
public function method($param)
{
}

Doctrine annotations are actual defined classes, therefore you can also use the annotation with a use statement.

Example:

use TYPO3\CMS\Extbase\Annotation\IgnoreValidation;
/**
 * @IgnoreValidation("param")
 */
public function method($param)
{
}

Used annotations can also be aliased which the core will most likely be using a lot in the future.

Example:

use TYPO3\CMS\Extbase\Annotation as Extbase;
/**
 * @Extbase\IgnoreValidation("param")
 */
public function method($param)
{
}

Tip

Please mind that @TYPO3\CMS\Extbase\Annotation\IgnoreValidation does no longer accept parameter names prepended with dollar signs $. Example: @ignorevalidation $foo becomes @Extbase\IgnoreValidation("foo")

Impact

In 9.x there is no actual impact. Both the simple @ignorevalidation and @TYPO3\CMS\Extbase\Annotation\IgnoreValidation can be used side by side. However, @ignorevalidation is deprecated in 9.x and will be removed in version 10.