На CPAN'е есть такой модуль -
XML::WBXML. Нужен для работы с бинарным форматом XML. Этот модуль используется у нас в проекте.
К сожалению, модуль обновлялся в последний раз в 2006 году, т.е. 9 лет назад. С тех пор от автора ни слуху, ни духу, багрепорты висят неотвеченные, баги, соответственно - неисправленные.
В частности, один из багов заключается в том, что при установке не проходят тесты (make test выдает ошибку) и установка прерывается. Ошибка же проистекает из того, что за последние 9 лет произошли изменения в библиотеке libwbxml2, которая используется в самом модуле. Библиотека выдает теперь ответ немного в другом виде и тест из-за этого ломается. Для исправления этой ошибки достаточно исправить одну строчку в самом тесте.
Действие элементарное, но из-за него ломается вся стройная процедура автоматической установки. Нужно скачать исходники модуля, наложить патч, собрать модуль... Неудобно. Правильным решением было бы отправить патч самому автору модуля, но - как уже было сказано выше - автор пропал 9 лет назад и на бегрепорты не реагирует.
В связи с этим я решил попробовать сделать свой модуль для CPAN, с блэкджеком и шлюхами.
Форкнул исходный модуль и выложил новый модуль на CPAN под названием
XML::WB. Плюс к этому, репозиторий с новым модулем
разместил на Гитхабе. Ну и, конечно, исправил ошибку в тестах. Теперь модуль XML::WB можно поставить стандартным образом прямо из CPAN'а, без ручных манипуляций с исходниками.
Но теперь меня терзает мысль, что всё-таки я не совсем по фен-шую сделал. По хорошему, надо бы не делать новый модуль, а стать мейнтейнером оригинального и исправить ошибку прямо в оригинальноми модуле, чтобы тем, кто его использует, не нужно было ничего менять и переключаться на новый модуль.
Для получения контроля над чужим модулем есть более-менее стандартизированная процедура. В основном всё сводится к "Попытайтесь связаться с автором всеми возможными способами, а уж если не получится, тогда, может быть, модуль будет передан вам".
И вот, для начала, я написал автору письмо на все его емейлы, какие нашел. Жду ответа. Но перспективы, мне кажется, сомнительные (если уж чувак 9 лет не появлялся). Так что пока, если вдруг кому надо - юзайте
XML::WB :)
UPD: Я таки связался с автором и стал мейнтейнером модуля. Юзайте
XML::WBXML, я его исправил.