На бумаге изменение мелкое. Сейчас в библиотеке есть label(String value), а следующий релиз оставляет его и добавляет label(Integer value).
Уже скомпилированным вызовам ничего не грозит. В их class-файлах записана сигнатура String, её они и продолжают вызывать. С пересборкой всё иначе. Нетронутый label(null) против новой пары перестаёт компилироваться, потому что null подходит обеим перегрузкам и ни одна не специфичнее другой. И для этого исходному методу вовсе не нужно было меняться.
Выходит, у заметки к релизу две аудитории. Тем, кто остаётся на старых бинарниках, её можно пропустить. Тем, кто пересобирает из исходников, возможно, придётся править строку только ради того, чтобы код значил то же, что вчера. Я не против перегрузок, но это реальная цена для людей, которые ничего не просили.
Что должна говорить инструкция по миграции, и в какой момент новое имя метода просто бережнее к пользователям?