Можно ли отключить определенные предупреждения об устаревании в Symfony 3.4? - PullRequest
0 голосов
/ 11 января 2019

Я работаю над переносом существующего проекта Symfony 2.8 на Symfony 3.4. При тестировании проекта 3.4 в режиме dev панель инструментов Symfony очень помогает.

Однако Symfony / панель инструментов всегда регистрирует / показывает все предупреждения и уведомления, независимо от того, относятся они ко мне или нет.

Например, я знаю, что сторонний комплект XY не готов к Symfony 4 и поэтому включает некоторые устаревшие методы. Я не могу изменить это, и на данный момент это не имеет значения.

Тем не менее, я все еще хотел бы знать, использует ли мой собственный код устаревшие методы, чтобы исправить это сейчас, так как я все равно рефакторинг кода.

Я нашел разные темы по этому вопросу, но единственным решением было отключить предупреждения в целом ( например, здесь ).

Это сработает, чтобы вообще не видеть предупреждений об устаревании, но, как описано, я хотел бы удалить / заставить замолчать только определенные предупреждения.

Возможно ли как-то отключить предупреждения от BundleA или ClassB, пока они видят предупреждения из CodeC?

Я знаю, что PHP сам по себе не может этого сделать, но, может быть, есть какой-то способ настроить панель инструментов dev для этого?

Ответы [ 2 ]

0 голосов
/ 11 января 2019

Это невозможно, потому что предупреждения об устаревании в Symfony называются trigger_error('Deprecation message', E_USER_DEPRECATED).

Например, посмотрите это Twig DebugCommand .

0 голосов
/ 11 января 2019

Временное решение, обновление описания методов должно быть в порядке.

/**
 * Function
 * @deprecated it is deprecated.  <- remove
 */
function a() {
  return 'hi';
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...