Estoy usando Symfony 4.3.8 y no puedo encontrar ninguna información sobre estos desaprobaciones:
Usuario obsoleto: la creación de Doctrine \ ORM \ Mapping \ UnderscoreNamingStrategy sin que su número sea consciente está en desuso y se eliminará en Doctrine ORM 3.0.
La creación de Doctrine \ ORM \ Mapping \ UnderscoreNamingStrategy sin que sea consciente del número está en desuso y se eliminará en Doctrine ORM 3.0.
Busqué en stacktrace y encontré esto:
class UnderscoreNamingStrategy implements NamingStrategy
{
private const DEFAULT_PATTERN = '/(?<=[a-z])([A-Z])/';
private const NUMBER_AWARE_PATTERN = '/(?<=[a-z0-9])([A-Z])/';
/**
* Underscore naming strategy construct.
*
* @param int $case CASE_LOWER | CASE_UPPER
*/
public function __construct($case = CASE_LOWER, bool $numberAware = false)
{
if (! $numberAware) {
@trigger_error(
'Creating ' . self::class . ' without making it number aware is deprecated and will be removed in Doctrine ORM 3.0.',
E_USER_DEPRECATED
);
}
$this->case = $case;
$this->pattern = $numberAware ? self::NUMBER_AWARE_PATTERN : self::DEFAULT_PATTERN;
}
En esta clase, el constructor siempre se llama sin parámetros, por lo que $ numberAware siempre es falso.
Esta clase se llama en un archivo que ha sido generado automáticamente por la Inyección de dependencia de Symfony, por lo que no puedo "editarlo" ...
Pensé que tal vez estaba en doctrine.yaml:
doctrine:
orm:
auto_generate_proxy_classes: true
naming_strategy: doctrine.orm.naming_strategy.underscore
auto_mapping: true
mappings:
App:
is_bundle: false
type: annotation
dir: '%kernel.project_dir%/src/Entity'
prefix: 'App\Entity'
alias: App
Pero no he encontrado ninguna opción para permitir que el número sea consciente :(