Я работаю над проектом, который использует несколько библиотек Java с открытым исходным кодом. Когда выходят обновления для этих библиотек, мы склонны следовать консервативной стратегии:
- если он не сломался, не чините
- если у него нет новых функций, которые мы хотим, игнорируйте его
Мы придерживаемся этой стратегии, потому что обычно у нас нет времени, чтобы вставить новую библиотеку и тщательно протестировать приложение в целом. (Как и многие команды разработчиков программного обеспечения, мы всегда отставали от запланированных функций, которые мы обещали несколько месяцев назад.)
Но я иногда задаюсь вопросом, разумна ли эта стратегия, учитывая, что некоторые улучшения производительности и большое количество исправлений ошибок обычно идут с обновлениями библиотеки. (т.е. "Кто знает, может быть, все будет работать лучше, чем мы не предвидим ...")
Какие критерии вы используете, когда принимаете подобные решения в своем проекте?