April 16th, 2014

Mr. Twister

Как интересно живут программисты

В связи с хартблидом почитал release notes амазоновского AMI Linux 2014.03 - ну, выглядит разумно, почему бы и нет. Накатил на свой EC2 instance этот релиз поверх предыдущего (2013.09).

Перестало работать абсолютно всё!!! Ни одного целого куска функциональности. Оказывается, новенький Перл. Perl has been updated from 5.10 to 5.16, bringing in many fixes and enhancements my ass.

Во-первых, отвалились все скомпилированные модули сколько их есть. Тыщи штук. В каждом такое:
/usr/local/lib64/perl5/auto/Crypt/Eksblowfish/Eksblowfish.so: undefined symbol: Perl_Istack_sp_ptr
Лечится двойным циклом: запустить все имеющиеся скрипты по очереди и для каждого из них force install каждый отвалившийся модуль по очереди (cpan, видимо, не умеет просто переустановить всё, что у него есть).

Во-вторых, после того, как все скомпилировалось и прошло свои десятки тысяч тестов, выясняется, что юникод перестал просто работать: вся кириллица печатается в виде ÐxÐyÐzÐt, а все вызовы функций падают с сообщением "wide character in input".
Лечится вставлением повсюду мусора в виде
use utf8;
use Encode qw(encode);
binmode(STDOUT, ":utf8");
и заменой f($x) на f(encode('UTF-8', $x)) для всех функций f и всех значений параметров $x.

Такое впечатление, что это какие-то школьники делают.
Mr. Twister

Обращаемость

Вместе с фотоматериалами умирают и чудаческие советские названия для них. Например, слайдовская пленка называлась пленкой обращаемой. Узнают ли об этом люди будущего? А если не узнают, то смогут ли понять нас?
  • Current Mood
    thoughtful thoughtful