Verified Commit 045dfe1b authored by Alex Pott's avatar Alex Pott
Browse files

Issue #3420990 by godotislate, smustgrave, alexpott, kim.pepper, longwave:...

Issue #3420990 by godotislate, smustgrave, alexpott, kim.pepper, longwave: Convert Constraint plugin discovery to attributes
parent f21bb25c
Loading
Loading
Loading
Loading
Loading
+4 −0
Original line number Diff line number Diff line
@@ -27,6 +27,10 @@
# testing using \Symfony\Component\ErrorHandler\DebugClassLoader.
%The "Twig\\Environment::getTemplateClass\(\)" method is considered internal\. It may change without further notice\. You should not extend it from "Drupal\\Core\\Template\\TwigEnvironment"\.%

# Skip deprecations warning for overriding Symfony properties in validation
# constraints. See https://www.drupal.org/project/drupal/issues/3425150.
%The "Symfony\\Component\\Validator\\Constraints\\[^"]+::\$[^"]+" property is considered final. You should not override it in "[^"]+"%

# Drupal 11.
%Drupal\\Core\\Form\\FormBuilder::getForm\(\).* will require a new "mixed \.\.\. \$args" argument in the next major version of its interface%
%Drupal\\Core\\Form\\FormBuilder::submitForm\(\).* will require a new "mixed \.\.\. \$args" argument in the next major version of its interface%
+1 −1
Original line number Diff line number Diff line
@@ -2299,7 +2299,7 @@ function hook_config_schema_info_alter(&$definitions) {
 *   The array of validation constraint definitions, keyed by plugin ID.
 *
 * @see \Drupal\Core\Validation\ConstraintManager
 * @see \Drupal\Core\Validation\Annotation\Constraint
 * @see \Drupal\Core\Validation\Attribute\Constraint
 */
function hook_validation_constraint_alter(array &$definitions) {
  $definitions['Null']['class'] = '\Drupal\my_module\Plugin\Validation\Constraints\MyClass';
+8 −7
Original line number Diff line number Diff line
@@ -4,17 +4,18 @@

namespace Drupal\Core\Config\Plugin\Validation\Constraint;

use Symfony\Component\Validator\Constraint;
use Drupal\Core\StringTranslation\TranslatableMarkup;
use Drupal\Core\Validation\Attribute\Constraint;
use Symfony\Component\Validator\Constraint as SymfonyConstraint;

/**
 * Checks that the value is the name of an existing config object.
 *
 * @Constraint(
 *   id = "ConfigExists",
 *   label = @Translation("Config exists", context = "Validation")
 * )
 */
class ConfigExistsConstraint extends Constraint {
#[Constraint(
  id: 'ConfigExists',
  label: new TranslatableMarkup('Config exists', [], ['context' => 'Validation'])
)]
class ConfigExistsConstraint extends SymfonyConstraint {

  /**
   * The error message.
+8 −7
Original line number Diff line number Diff line
@@ -4,17 +4,18 @@

namespace Drupal\Core\Config\Plugin\Validation\Constraint;

use Symfony\Component\Validator\Constraint;
use Drupal\Core\StringTranslation\TranslatableMarkup;
use Drupal\Core\Validation\Attribute\Constraint;
use Symfony\Component\Validator\Constraint as SymfonyConstraint;

/**
 * Checks that config dependencies contain specific types of entities.
 *
 * @Constraint(
 *   id = "RequiredConfigDependencies",
 *   label = @Translation("Required config dependency types", context = "Validation")
 * )
 */
class RequiredConfigDependenciesConstraint extends Constraint {
#[Constraint(
  id: 'RequiredConfigDependencies',
  label: new TranslatableMarkup('Required config dependency types', [], ['context' => 'Validation'])
)]
class RequiredConfigDependenciesConstraint extends SymfonyConstraint {

  /**
   * The error message.
+9 −8
Original line number Diff line number Diff line
@@ -2,21 +2,22 @@

namespace Drupal\Core\Entity\Plugin\Validation\Constraint;

use Symfony\Component\Validator\Constraint;
use Drupal\Core\StringTranslation\TranslatableMarkup;
use Drupal\Core\Validation\Attribute\Constraint;
use Symfony\Component\Validator\Constraint as SymfonyConstraint;

/**
 * Checks if a value is a valid entity type.
 *
 * This differs from the `EntityBundleExists` constraint in that checks that the
 * validated value is an *entity* of a particular bundle.
 *
 * @Constraint(
 *   id = "Bundle",
 *   label = @Translation("Bundle", context = "Validation"),
 *   type = { "entity", "entity_reference" }
 * )
 */
class BundleConstraint extends Constraint {
#[Constraint(
  id: 'Bundle',
  label: new TranslatableMarkup('Bundle', [], ['context' => 'Validation']),
  type: ['entity', 'entity_reference']
)]
class BundleConstraint extends SymfonyConstraint {

  /**
   * The default violation message.
Loading