Если кто-то еще не знает, это правило звучит так:
Работает – не трожь!
Теперь собственно сама история. Когда-то у меня стояла OpenSUSE 10.3, в которой был Perl 5.8.8. С выходом OpenSUSE 11 я решил сделать апгрейд, который на первый взгляд прошел удачно. Все было хорошо, пока я не попробовал запустить несколько своих ботов.
Выяснилось, что в 11-й версии Perl проапгрейдился до версии 5.8.10, и основные модули по работе тоже подвергались апгрейду. Все товарищи, кто прямо или косвенно пользовался модулем HTTP::Message скорее всего в логах увидили нечто подобное:
HTTP::Message content not bytes
и после этого долго ломали голову над своим кодом. А на самом деле бага в коде была на стороне мантайнера HTTP::Message, версия libwww-perl-5.810 оказалась глючной до безобразия. И самое интересное, эта версия оказалась в дистрибутиве OpenSUSE 11, поэтому совсем безболезненно апгрейд не прошел.
Да, эта проблема решается апгрейдом libwww-perl до более свежей версии, что собственно я и сделал. Сейчас это libwww-perl-5.814, и пока багов в ней не заметил.
Вот и думай после этого, а нужен ли был апгрейд, если он принес столько геморроя?
Ох и точно, когда то тоже со мной такой казус случился. На фирме бухи работали в клиент банке (версию не помню) но там был какойто глюк с отчётностью (не конвертилась или ещё что то – не суть)… Работать можно было, но им не нравилось что пару строчек нужно было руками напечатать )) Ну я скачал новый релиз для теста поставил себе, так всё заработало нормально итд. Ставлю на клиентов, перезагружаюсь, и бац. Вообще всё пропало (базы старых версий не поддерживает-тока конвертером) ну я ессно ни про какой конв не знал. И у меня даже сердце приостановилось, сразу представил как стою перед начальником и тупые тётки меня отчитывают. Стало не по себе как то… Поехал в банк за старой версией, они мне там рассказали про конвертер, но я взял на всякий пожарный старую версию оболочки. Приехал поставил всё работает. А бухам я программку намаздырил которая строку добавляет в memo при нажатии на ктрл+д… Да уж и правду говорят – РАБОТАЕТ – НЕ ТРОЖЬ!!!