Miranda NG русскоязычный форум > Разработка

портирование обновлённых протоколов (из ночных сборок) в miranda-ng 0.95.3

(1/2) > >>

lokapal:
Добрый день, джентельмены!

Если (что вполне допустимо) протоколы из 0.95.3 в ночную версию не перетащишь, тогда встречный вопрос - как с минимальными усилиями сделать backport, то есть втащить в 0.95.3 последние "ночнушки", в частности, icq.dll? Можно и jabber, не помешает, но icq обязательно. Это не делается малой кровью типа заменить файлы protocol.cpp и/или protocol.h в директории? Или, скажем, заменить все файлы КРОМЕ? Я бы сам занялся экспериментами, но в директории icq ровно 50 .cpp файлов. Эксперименты могу неоправданно подзатянуться :)
Мне необходимо чтобы сменилась только логика работы с серверами, а интерфейс работы с ядром миранды остался старый. Дело в том, что миранда
0.95.3 ОЧЕНЬ часто крашится в модуле icq.dll, и совершенно точно виноват в этом майлру, потому что pidgin, конечно, не крашится, но сообщает о "неизвестной команде" и соединяться с серверами просто отказывается. Перейти на последнюю "ночную" или "стабильную" миранду, увы, не могу.
Диагностика от pidgin: "Received unexpected response from https://api.icq.net/aim/startOSCARSession: Invalid Request.  statusDetailCode 1015"

Mikalair:
lokapal, а почему именно 0.95.3 ? Насколько я помню аську не меняли уже ооочень давно.

lokapal:
Потому что в 0.95.3 чудесно работает skype.dll
Который был ДО classic, и ДО web  ::)

Elzor:
lokapal, единственный реальный способ адаптировать протоколы для работы в 0.95.3 - это взять исходники протоколов на момент релиза 0.95.3 и выборочно накатывать на них коммиты из свн и гит, которые были сделаны за это время (2 года и 9 месяцев, между прочим). Каждый коммит придется оценивать для чего он - для совместимости с ядром или это правка багов/изменение функционала самого протокола. Не исключено, что некоторые коммиты делались и с той и с другой целью, тогда придется руками отделять одно от другого. Не исключено, что какие-то изменения в ядре/других плагинах сделаны были из-за изменений в протоколах. Короче, нетривиальная работа. За это время в ICQ было сделано 144 коммита, в Jabber - 344. Сами решайте, реально ли адаптировать текущие версии плагинов к старому ядру.

lokapal:
По поводу ручного накатывания коммитов я понял, спасибо. Просто как вариант меня интересовало - не структурирован ли для удобства код протоколов по файлам. То есть "файлы типа А отвечают за общение с базой", "файлы типа B отвечают за UI", "файлы типа C отвечают за общение с серверами". Видимо, ничего такого нет, придётся ковырять вручную, как будет время.

Navigation

[0] Message Index

[#] Next page

There was an error while thanking
Thanking...
Go to full version