Как долго устаревшая функция живет в ядре?

21

Мне любопытно узнать процесс / философию удаления устаревших функций из ядра.

Кодекс говорит это :

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

Поскольку «может быть удалено» немного зловеще и несколько неясно, у меня есть следующие вопросы.

  1. Каковы критерии удаления устаревшей функции? (то есть разрыв версии, временные рамки, риск безопасности и т. д.)
  2. Официально ли обнародовано удаление функции?

Например: get_postdata()устарел с 1.5.1 и не имеет официальной страницы Кодекса. Есть ли причина, по которой это все еще существует, кроме поддержки старых версий WordPress?

Брайан Фегтер
источник
WordPress четко заявляет, что он не имеет обратной совместимости (или, по крайней мере, не заботится об этом). Единственная причина, которую я могу себе представить, заключается в том, что они не хотят ломать все эти устаревшие плагины.
Кайзер
Пару лет назад велась некоторая дискуссия о том, чтобы установить количество выпусков между устареванием и удалением, но в то время устаревание было плохо обработано. Существовал ряд функций, в которых не был @deprecatedуказан номер версии, некоторые функции широко использовались плохо поддерживаемыми плагинами и так далее. Не похоже, чтобы было какое-то реальное решение вопроса.
SickHippie
@SickHippie Можете ли вы сделать свой комментарий ответом?
Брайан Фегтер
@BrianFegter - конечно!
SickHippie

Ответы:

12

Насколько я знаю, и, услышав, как Нацин сказал это прямо, до сих пор ни одна устаревшая функция не была удалена из WordPress.

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

эфирное масло
источник
Это именно то, что я хотел знать. Спасибо за вклад.
Брайан Фегтер
Видеть? Вот и ты. :)
Дугал Кэмпбелл
5

Там нет "критериев" или что-то

... как и в большинстве других мест.

кайзер
источник
Я знаю, что это не задокументировано. Я надеялся, что кто-то, у кого были эти дискуссии по разработке ядра, зазвонит здесь. :)
Брайан Фегтер
1
Вы можете найти это интересное чтение .
Кайзер
1
Ну, это звучит правдоподобно, учитывая код позади WP. Они больше заботятся о совместимости, чем о любых других факторах, таких как производительность, расширяемость и т. Д.
onetrickpony
3

Не воспринимайте это как что-то официальное, но я, кажется, вспоминаю, как один из основных разработчиков говорил что-то о том, что у них нет планов навсегда удалить какие-либо устаревшие функции в обозримом будущем. Это не значит, что в конечном итоге этого не произойдет. Если вы видите функцию, у которой нет страницы Кодекса, добавьте ее!

Дугал Кэмпбелл
источник
Отличный ответ. :) Имя Нацин стало решающим ответом. Спасибо за ваш вклад.
Брайан Фегтер
2

Пару лет назад велась некоторая дискуссия о том, чтобы установить количество выпусков между устареванием и удалением, но в то время устаревание было плохо обработано. Существовал ряд функций, в которых не указывался @deprecated номер версии, некоторые функции широко использовались плохо поддерживаемыми плагинами и так далее. Не похоже, чтобы было какое-то реальное решение вопроса.

SickHippie
источник