Мой код использует Apache Commons Lang v.2 (commons-lang
). Если я обновлю свой код, чтобы вместо него использовать v.3 (commons-lang3
), я должен беспокоиться о том, что мой код может начать работать по-другому (конечно, за исключением различий из-за исправленных ошибок и возможных новых ошибок, что было бы нормально и не т считать)?
Другими словами, могут ли lang3
иметь методы, которые были также в lang
(с точно такой же сигнатурой), но которые могли бы возвращать разные результаты в двух версиях?
Apache действительно упоминает обратные несовместимости, и очень ясно, но я всегда понимал эти несовместимости в том смысле, что они нарушают компиляцию, а не в том смысле, что один и тот же метод может возвращать разные результаты.
Я спрашиваю об этом, потому что мне было заявлено, что некоторые из обратных несовместимостей, которые побудили Apache переименовать пакет с lang
на lang3
, являются методами, которые могут возвращать разные результаты.
Я считаю, что это неправильное утверждение, и для меня это важно, потому что я всегда с радостью заменяю lang
на lang3
во всех import
s, на которые я наткнулся, и я только проверяю, что он все еще компилируется, и я действительно думаю, что я справа, но теперь, из-за этих претензий, мне сказали прекратить, что я считаю неправильным, но у меня нет информации, которую я могу использовать, чтобы противостоять этим претензиям и получить разрешение на продолжение.