gentoo.ru
Официальная конференция Direct Connect клиента EiskaltDC++
eiskaltdc@conference.gentoo.ru
Суббота, 15 июня 2013< ^ >
Tehnick установил(а) тему: Конференция разработчиков EiskaltDC++ | Conference of EiskaltDC++ developers
Site: https://code.google.com/p/eiskaltdc/
Logs: http://gentoo.ru/jabber/logs/eiskaltdc@conference.gentoo.ru/2013/
Bug tracker: https://code.google.com/p/eiskaltdc/issues/list
Notes for developers: https://code.google.com/p/eiskaltdc/wiki/notes_for_developers
How To Ask Questions The Smart Way: http://catb.org/%7Eesr/faqs/smart-questions.html
Как правильно задавать вопросы: http://parallel.ru/cluster/smart-questions-ru.html
Last stable release: 2.2.7 (2012-05-29)
Release schedule:
* 2013-06-16 Release EiskaltDC++ 2.2.8
Конфигурация комнаты
Участники комнаты

GMT+4
[00:05:46] dhamp вошёл(а) в комнату
[00:54:29] Diger вошёл(а) в комнату
[01:05:29] dhamp вышел(а) из комнаты
[01:12:45] Diger вышел(а) из комнаты
[01:25:45] soulhunter вышел(а) из комнаты
[01:59:58] Кирилл вышел(а) из комнаты
[07:57:30] dhamp вошёл(а) в комнату
[09:27:30] dhamp вышел(а) из комнаты
[09:56:04] Alexey вошёл(а) в комнату
[11:38:10] Alexey вышел(а) из комнаты
[12:40:07] soulhunter вошёл(а) в комнату
[13:27:57] pavelvat вошёл(а) в комнату
[13:36:04] <pavelvat> dhamp: http://pastebin.com/viBkU5ma
bDaemon определена для всего кроме win32: http://pastebin.com/JZdAAN7p
но в то же время bDaemon используется в том числе и для случаев #ifdef _WIN32
[13:59:59] <pavelvat> и это только часть проблем с eiskaltdcpp-daemon, он собирается (если определить bDaemon для случая #ifdef _WIN32) только gcc-4.7, чуть позже скину ссылку на ошибки при сборке gcc-4.6 (ему там требуется что-то из c++11 а в 4.6 этого ещё не было).
[14:04:17] <pavelvat> но eiskaltdcpp-qt.exe не запускается если его собирать gcc-4.7 http://code.google.com/p/eiskaltdc/issues/detail?id=1406 , возможно тут проблема в том что Qt собран не gcc-4.7 а более ранней версией (поддерживается сборка Qt-4.8.x только gcc<=4.6.x)
[14:10:01] <pavelvat> tehnick: http://pastebin.com/rKJ8GUZV
-- Boost version: 1.53.0
-- Found the following Boost libraries:
--   system
-- Boost version: 1.53.0
-- Found the following Boost libraries:
--   thread
но для запуска требуется только этот dll из boost - libboost_system-mgw46-mt-1_53.dll
спрашивается зачем тогда при конфигурации cmake требовать ещё и thread?
[14:12:44] <soulhunter> tehnick: еще есть проблема при сборке под маком: некорректно включается unordered_set
[14:13:57] <soulhunter> pavelat: а threads из системы тоже подтягиваются? может он берет их просто не из системы а из буста, у меня на маке, например, он треды берет из маковского SDK, а про буст пишет только system
[14:15:13] <soulhunter> pavelvat: см выше, неправильно твой ник написал (
[14:16:53] Кирилл вошёл(а) в комнату
[14:19:20] <pavelvat> tehnick: и теперь поскольку одних только заголовков от boost уже не достаточно для сборки и требуется dll для system то придётся тогда наверное для win32 мне выложить ещё и boost собранный mingw-gcc-4.6, но там требуется только одна библиотека - libboost_system-mgw46-mt-1_53.dll, так что я думаю выложить архив boost 1.53 в котором в папке include/ будут заголовки а папке lib/ будет файл libboost_system-mgw46-mt-1_53.dll
[14:22:25] <pavelvat> soulhunter: не понял о чём ты, проблема в том что при конфигурации cmake требует thread библиотеку из boost, в то время как после сборки программа запускается и без этой библиотеки.
[14:26:25] <pavelvat> tehnick: кстати, eiskaltdcpp-qt.exe перестал работать под wine - при запуске в консоли он останавливается после вывода двух строк "Loading:", и далее просто висит в процессах бесконечно.
[14:32:50] mars1an вошёл(а) в комнату
[14:40:37] <pavelvat> tehnick: можно ли обновить пакеты в уже вышедших ubuntu с исправлением падения на выходе при включённом DHT? https://github.com/eiskaltdcpp/eiskaltdcpp/commit/f80aa748c3a88782f3eff35a7d95182b13f4aa48
[14:52:22] <pavelvat> dhamp: вот что выдаёт при сборке mingw-gcc-4.6: http://pastebin.com/TJYzzqv4
у нас сменились минимальные требования к gcc? теперь нужен как минимум gcc-4.7? или это только mingw версия gcc-4.6 не знает что такое
std::stoi
std::stoul
std::stoll
std::stoull
std::stod
std::stof
[15:02:31] <pavelvat> tehnick: снова ширина стобцов в виджетах "Завершённые раздачи" и "Завершённые загрузки" перестала сохраняться, но в отсальных виджетах сохраняется.
[15:08:24] <soulhunter> pavelvat: а ты под мак ось не собирал?
[15:10:17] <pavelvat> soulhunter: нет
[15:11:47] Tehnick вошёл(а) в комнату
[15:12:49] <Tehnick> pavelvat, а зачем тебе свежий буст? Можешь использовать тот, который у нас на гуглокоде лежит. С ним библиотека буста не потребуется.
[15:15:24] <pavelvat> Tehnick: https://github.com/eiskaltdcpp/eiskaltdcpp/commit/9b369e4499763712a7ce1dc2e5a4216de406ba3d#commitcomment-3114259
[15:15:37] <pavelvat> этот фикс требует свежий boost
[15:15:57] <pavelvat> https://github.com/eiskaltdcpp/eiskaltdcpp/commit/8621e160dbc260eec89f0cffdd889769451024f3
[15:16:16] <Tehnick> Ясно.
[15:16:21] <Tehnick> Забыл уже.
[15:17:04] <Tehnick> [14:12:44] <soulhunter> tehnick: еще есть проблема при сборке под маком: некорректно включается unordered_set
Лог будет?
[15:17:13] <pavelvat> а так это dhamp добавил требование в cmake для thread из boost
[15:17:38] <pavelvat> https://github.com/eiskaltdcpp/eiskaltdcpp/commit/8621e160dbc260eec89f0cffdd889769451024f3
      176     +    if (WIN32)
      177     +  find_package(Boost COMPONENTS thread REQUIRED)
      178     +    endif ()
[15:18:57] <Tehnick> pavelvat, ты уверен, что эта библиотека не требуется в работе программы?
[15:19:10] <pavelvat> Tehnick: уверен
[15:19:48] <Tehnick> Судя по коммиту из последней ссылке это не так.
[15:20:00] <pavelvat> Tehnick: при запуске бигарника если какой-то dll-ки не хватает Windows выдаёт окошко с именем отсутствующей dll-ки.
[15:20:28] <Tehnick> Здесь не все так просто.
[15:21:48] <Tehnick> pavelvat, надо бы проверить чем-нибудь вроде Dependency Walker.
[15:26:01] <Tehnick> pavelvat, выложить отдельный архив с бустом у нас можно, но не вместо основного, а рядом с ним. И в комментарии нужно будет указать, что он для win32.
[15:28:56] <Tehnick> [14:26:25] <pavelvat> tehnick: кстати, eiskaltdcpp-qt.exe перестал работать под wine - при запуске в консоли он останавливается после вывода двух строк "Loading:", и далее просто висит в процессах бесконечно.
gdb под винду существует? Чтобы прогу прервать и посмотреть в бекстрейсе на каком месте она затыкается.
[15:30:09] <Tehnick> [14:40:37] <pavelvat> tehnick: можно ли обновить пакеты в уже вышедших ubuntu с исправлением падения на выходе при включённом DHT?
Нет, это слишком минорный фикс, такие в уже вышедшие релизы не принимают. Но для убунту-юзеров есть PPA, так что они ничем не обделены.
[15:32:38] <pavelvat> Tehnick: gdb естественно существует под Windows иначе для чего я выкладываю сборки под Windows с отладочной информацией, но под Windows то всё прекрасно запускается и работает, а под wine просто останавливается а не крашится, процесс висит в списке процессов.
[15:32:41] <Tehnick> [14:52:22] <pavelvat> dhamp: вот что выдаёт при сборке mingw-gcc-4.6: http://pastebin.com/TJYzzqv4
Напомни, разве наш демон под виндой имел управление по json?
[15:33:02] <pavelvat> да,
[15:33:36] <Tehnick> pavelvat, ну так под вайном и нужно проверить в gdb.
[15:34:03] <pavelvat> Tehnick: программа не виснет, что можно проверить если не было остановки?
[15:34:05] <Tehnick> pavelvat, а вот опции для запуска в виде демона в нем раньше не было.
[15:34:14] <Tehnick> По какой-то причине.
[15:35:03] <Tehnick> pavelvat, ctrl+c жмешь и процесс прибивается. А затем смотрим, какие функции вызывались последними.
[15:35:15] <pavelvat> Tehnick: под Haiku я смотрю тоже самое и что и под wine:
[15:35:17] <pavelvat> http://gentoo.ru/jabber/logs/eiskaltdc@conference.gentoo.ru/2013/06/13.html#15:35:24.785693
[15:38:03] <pavelvat> Tehnick: http://i47.fastpic.ru/big/2013/0615/d5/9289b8ddcb1213036e54a89a67daded5.png
[15:39:30] <Tehnick> pavelvat, странно. Но раз так, то можно убрать...
[15:39:53] <pavelvat> ok
[16:03:42] <pavelvat> Tehnick: помнится перед релизом ubuntu 12.04 я у тебя спрашивал насчёт маленьких фиксов после релиза и ты сказал что в ubuntu это разрешается, например, 2.2.6-1, 2.2.6-2, 2.2.6-3, ...
[16:04:51] <Tehnick> Обновления пакетов без увеличения версии программы возможны.
[16:05:34] <pavelvat> Tehnick: так обнови
[16:05:44] <Tehnick> Но нужно получить на них разрешение от Ubuntu Stable Release Team.
[16:06:08] <pavelvat> этот баг со 100% падением на выходе очень мешает.
[16:07:06] <Tehnick> А если баг-фикс не касается безопасности программы или какого-нибудь другого серьезного бага, то разрешение они вряд ли дадут.
[16:08:02] <Tehnick> Но даже если дадут разрешение, то потом еще нужно найти разработчика убунту, который зальет обновленный пакет в архив.
[16:08:09] <pavelvat> Tehnick: у eiskaltdcpp низкие оценки в Ubuntu Software Center и комментарии что программа очень падучая, если исправить этот баг с DHT стабильность улучшится.
[16:08:25] <Tehnick> Улучшится, да.
[17:42:11] mars1an вышел(а) из комнаты: Replaced by new connection
[17:42:21] mars1an вошёл(а) в комнату
[17:54:49] Tehnick вышел(а) из комнаты
[18:17:23] mars1an вышел(а) из комнаты: Replaced by new connection
[18:17:33] mars1an вошёл(а) в комнату
[18:23:51] mars1an вышел(а) из комнаты: Replaced by new connection
[18:24:01] mars1an вошёл(а) в комнату
[18:28:32] mars1an вышел(а) из комнаты
[18:28:48] pavelvat вышел(а) из комнаты
[18:30:51] mars1an вошёл(а) в комнату
[18:31:01] mars1an вышел(а) из комнаты
[18:31:03] mars1an вошёл(а) в комнату
[18:34:44] mars1an вышел(а) из комнаты: Replaced by new connection
[18:34:55] mars1an вошёл(а) в комнату
[18:39:28] mars1an вышел(а) из комнаты
[18:46:25] mars1an вошёл(а) в комнату
[18:50:50] <soulhunter> dhamp, пинг
[19:41:23] pavelvat вошёл(а) в комнату
[19:42:40] <pavelvat> tehnick: gdb.exe под wine только запускается, но никакие команды в нём не работают.
[19:53:29] <pavelvat> tehnick: ещё одна проблема обнаружилась с этим boost - я его собрал под Windows и когда использовал собранное при кросс-компиляции в  Linux то собралось, но вот при запуске в Windows выдаёт: "Точка входа в процедуру __gxx_personality_v0 не найдена в библиотеке DLL libstdc++-6.dll" это потому что  libstdc++-6.dll из пакета mingw в Ubuntu отличается от  libstdc++-6.dll из mingw для Windows, и по всей видимости файл libboost_system-mgw46-mt-1_53.dll когда собирался слинковался с Windows версией  libstdc++-6.dll. Если заменить кросс-версию  libstdc++-6.dll на Windows-версию  libstdc++-6.dll то выдаёт похожее сообщение:  "Точка входа в процедуру __gxx_personality_sj0 не найдена в библиотеке DLL libstdc++-6.dll" так что получается теперь надо будет выложить два архива boost - один собранный в Windows, а второй собранный кросс-компиляцией в Linux - соответственно для двух способов сборки - под Windows или под linux.
[19:54:53] <pavelvat> tehnick: нельзя ли вообще вернуть всё как было и собирать только с заголовками от старых boost?
[19:56:42] <pavelvat> tehnick: я за отмену этого коммита для случая WIN32 https://github.com/eiskaltdcpp/eiskaltdcpp/commit/9b369e4499763712a7ce1dc2e5a4216de406ba3d#commitcomment-3114259
[19:57:14] <pavelvat> т.е. https://github.com/eiskaltdcpp/eiskaltdcpp/commit/9b369e4499763712a7ce1dc2e5a4216de406ba3d
[20:17:19] pavelvat вышел(а) из комнаты
[20:17:36] pavelvat вошёл(а) в комнату
[20:19:11] mars1an вышел(а) из комнаты: Replaced by new connection
[20:19:21] mars1an вошёл(а) в комнату
[20:23:52] mars1an вышел(а) из комнаты
[20:26:11] <flylinkdc> по моему более разумно собирать вин32 статически
[20:30:37] <Nikoli> +1
[20:31:47] <Nikoli> pavelvat: что про статику думаешь?
[20:32:03] <pavelvat> flylinkdc: нет, это не удобно qt поставляется только в виде dll,, надо самому пересобирать, никаких выгод статическая сборка не даёт а возня с самостоятельной сборкой компонент будет
[20:32:15] <pavelvat> Nikoli: ^^
[20:34:17] <flylinkdc> ты ведь сказалчто собрал статически без проблем
[20:34:53] <flylinkdc> под мак ведь тоже все принято статически линковать
[20:35:40] <pavelvat> tehnick: ну да точно libboost_system-mgw46-mt-1_53.dll линкуется с версией libstdc++-6.dll из того окружения в котором собирается:
http://i47.fastpic.ru/big/2013/0615/d5/9289b8ddcb1213036e54a89a67daded5.png
[20:36:00] <flylinkdc> имхо трах с зависимостями обходиться дороже
[20:36:08] <flylinkdc> пусть это делаю в линуксе
[20:36:41] <flylinkdc> для винды это имхо лишнее
[20:36:59] <flylinkdc> также мелкая верятность счто либы буду шарятся
[20:41:33] <pavelvat> flylinkdc: Qt не поставляется в статическом виде, надо будет каждый раз самому собирать новую версию статически и выкладывать в Downloads, лишняя возня.
[20:41:54] Tehnick вошёл(а) в комнату
[20:42:22] <pavelvat> flylinkdc: под Mac OS собирается динамически всё
[20:42:22] <Tehnick> pavelvat, тебе не обязательно все линковать статически. Можно только отдельные библиотеки.
[20:42:49] <Tehnick> [20:34:53] <flylinkdc> под мак ведь тоже все принято статически линковать
Неправда же.
[20:42:49] <pavelvat> Tehnick: причём статически или нет, это не решит проблему с boost
[20:43:09] <Tehnick> flylinkdc, расковыряй любой бандл и посмотри структуру.
[20:43:12] <pavelvat> Tehnick: никакой выгоды от статики нет, одни лишние телодвижения
[20:43:23] <Nikoli> pavelvat: размер меньше
[20:43:31] <Tehnick> flylinkdc, там обычные разделяемые библиотеки. Просто каждая прога их с собой носит...
[20:43:59] <pavelvat> Nikoli: он меньше примерно на 2MB - не стоит усилий.
[20:44:11] <Nikoli> мерил?
[20:44:14] <pavelvat> да
[20:44:20] <Nikoli> именно для льда?
[20:44:31] <pavelvat> да для EiskaltDC++
[20:44:45] <Tehnick> [19:48:03] <pavelvat> Tehnick: причём статически или нет, это не решит проблему с boost
Почему не решит? Я предложил бы именно эту либу буста линковать статически.
[20:45:15] <Nikoli> pavelvat: а размер общий какой? 5-10% - тоже весьма неплохо
[20:45:26] <pavelvat> Tehnick: потому не решит, что теперь требуется библиотека dll из boost
[20:45:37] <pavelvat> Nikoli: 60MB
[20:45:42] <Tehnick> Nikoli, он сравнивал для линковки с Qt либами.
[20:46:43] <Nikoli> 3,3% получается
[20:46:52] <Tehnick> [19:50:40] <pavelvat> Tehnick: потому не решит, что теперь требуется библиотека dll из boost
Ты меня не понял? Этот код можно выдрать из буста и статически слинковать.
[20:47:40] <Tehnick> Кстати.
[20:47:56] <pavelvat> Tehnick: по-моему гораздо проще отменить коммит https://github.com/eiskaltdcpp/eiskaltdcpp/commit/9b369e4499763712a7ce1dc2e5a4216de406ba3d
ну или отменить его хотя бы для win32
[20:48:06] <Tehnick> flylinkdc, у вас как и у DC++ весь буст в репе хранится?
[20:49:08] <Tehnick> flylinkdc, вы буст линкуете статически?
[20:49:09] <flylinkdc> я пока прочитал что маковские проги самодостатчоны
[20:49:37] <flylinkdc> да флай линкуется статически
[20:49:42] <Tehnick> flylinkdc, самодостаточны --- да. Потому что таскают все необходимые библиотеки с собой.
[20:50:17] <flylinkdc> размер бинаря в 10 м никого не напрягает
[20:50:21] <Tehnick> flylinkdc, а еще в макоси каша из смешанных 32- и 64-битных программ и библиотек.
[20:51:34] <flylinkdc> также статичкеская линковка дает бонус при разборе крешей
[20:59:04] <pavelvat> Tehnick: релиз будет в эти выходные?
[21:00:38] <flylinkdc> по поводу коммита - с последнего урла - я  задал вопрос. но ответа не было
[21:01:53] <flylinkdc> там очень круто сделали возврат Lock через значение
[21:02:39] <pavelvat> flylinkdc: хм, при включённом noscript в Firefox твой вопрос в коммите https://github.com/eiskaltdcpp/eiskaltdcpp/commit/9b369e4499763712a7ce1dc2e5a4216de406ba3d не отображается.
[21:02:40] <flylinkdc> 2техник ты понимаешь что сделали в томи коммите?
[21:04:22] <pavelvat> flylinkdc: смотрю там даже два твоих комментария есть
[21:05:27] <flylinkdc> на оба коммента положен х )
[21:06:32] <pavelvat> flylinkdc: автор коммита dhamp, вот пусть он и отвечает.
[21:06:56] <flylinkdc> это было 2 месяуа назад
[21:07:37] <flylinkdc> у вас координатор кто?
[21:10:19] <Tehnick> [20:04:18] <pavelvat> Tehnick: релиз будет в эти выходные?
Можно сделать бету. Раз уж столько проблем внезапно открылось. В линуксе-то сейчас все хорошо со сборкой...
[21:11:51] <pavelvat> Tehnick: так что с коммитом https://github.com/eiskaltdcpp/eiskaltdcpp/commit/9b369e4499763712a7ce1dc2e5a4216de406ba3d
отменишь или через #ifdef отменишь только для WIN32?
[21:14:23] <Tehnick> flylinkdc, я не разбирался детально, что там сделал dhamp. Главное, что работает не хуже. Я вообще был бы рад, если бы мы совсем от буста избавились, используя код из c++11.
[21:15:07] <Tehnick> pavelvat, так много надо менять. Можешь сжато сформулировать, чем тебя текущий код не устраивает? Он же работает...
[21:19:33] <pavelvat> Tehnick: тем что он требует библиотеки dll из boost а эта библиотека когда её собираешь линкуется с Windows версией libstdc++.dll, поэтому собранный мной boost годится только для сборки под Windows, для кросс-компиляции мне надо ещё один экзепляр boost-а собирать, соответственно в инструкциях сборки надо будет привести ссылки для загрузки для двух версий boost - Windows и кросс.
[21:20:18] <Tehnick> pavelvat, а без этого изменения ты смог бы использовать старый буст?
[21:20:29] <pavelvat> Tehnick: да
[21:21:23] <Tehnick> pavelvat, ладно. Сейчас посмотрю.
[21:24:08] <pavelvat> Tehnick: проблема с json всё равно останется
http://gentoo.ru/jabber/logs/eiskaltdc@conference.gentoo.ru/2013/06/15.html#14:52:22.262994
mingw-gcc-4.6 не может собрать его, а Linux версия gcc-4.6 почему то собирает.
[21:24:41] <pavelvat> mingw-gcc-4.7 собирает json успешно.
[21:24:59] <Tehnick> pavelvat, а нужен ли демон под винду?..
[21:25:42] Diger вошёл(а) в комнату
[21:26:23] <pavelvat> Tehnick: может кому то нужен, по крайней мере раньше он был в установщике EiskaltDC++ под Windows.
[21:27:16] <Tehnick> pavelvat, только благодаря тебе.
[21:27:40] <Tehnick> pavelvat, лично я сомневаюсь, что кто-либо кроме тебя его вообще запускал.
[21:28:47] <pavelvat> Tehnick: причём тут я, я всего лишь включил при сборке три опции:
-DNO_UI_DAEMON=ON -DJSONRPC_DAEMON=ON -DUSE_CLI_JSONRPC=ON
[21:29:22] <Tehnick> pavelvat, при том, что это была твоя идея добавить его в установщик.
[21:29:36] <flylinkdc> тогда какой смысл в кросплатформенности кют
[21:29:49] <Tehnick> flylinkdc, демон не использует Qt.
[21:29:50] <flylinkdc> прога должна работать хорошо везде
[21:30:16] <flylinkdc> а кто юзает демон
[21:30:26] <pavelvat> Tehnick: идея была сделать кроссплатформенный клиент, так чтобы всё работало на всех ОС, мы же именно поэтому отказались от xmlrpc.
[21:30:34] <flylinkdc> 10 краснглазых?
[21:30:54] <Tehnick> pavelvat, от него до сих пор не отказались как ни странно.
[21:31:08] <soulhunter> flylinkdc: я использую )
[21:31:25] <flylinkdc> ок. 9
[21:31:30] <pavelvat> Tehnick: ну тогда так: именно поэтому добавили jsonrpc когда уже был xmlrpc.
[21:31:32] <Tehnick> pavelvat, dhamp, например, синхронизировал доступные методы. И через xmlrpc доступно почти все.
[21:33:31] <pavelvat> Tehnick: там json не собирается mingw-gcc-4.6 а не демон, видимо dhamp обновил копию json в репе айскальта.
[21:33:33] <soulhunter> не ну насчет необходимости демона под винду я тоже сомневаюсь, а под линукс вещь нужная безусловно
[21:33:47] <Tehnick> pavelvat, обновил, да. И не один раз.
[21:34:01] <soulhunter> я вообще не думал что он под винду работает )
[21:34:36] <Tehnick> soulhunter, ты единственный активный пользователь, который про него спрашивал.
[21:36:10] <soulhunter> ну я точно знаю что не один использую, так как мне порекомендовали айскальт как клиент с адекватным демоном, остальные клиенты консольные либо дерьмовые, либо не поддерживают весь необходимый функционал
[21:36:21] <Tehnick> Хотя, если верить статистике, то в дебиане он установлен более чем у 32 человек, а в убунте --- у 934:
http://qa.debian.org/popcon-png.php?packages=eiskaltdcpp-daemon&show_installed=1&show_vote=0&show_old=0&show_recent=0&show_nofiles=0&want_percent=0&want_legend=1&want_ticks=0&date_fmt=%25Y-%25m
http://ubuntu-popcon.43-1.org/cgi-bin/graph.pl?name=eiskaltdcpp-daemon
[21:37:10] <Tehnick> soulhunter, нука-нука, а кто тебе его рекомендовал?
[21:37:19] <soulhunter> правда в версии 2.2.7 он был практически неюзабелен из-за багов ) но сейчас уже все хорошо, все проработали
[21:37:39] <soulhunter> ну знакомые инженеры из Интерзета
[21:37:55] <soulhunter> они там его испоьзовали на файловых серверах
[21:38:33] <soulhunter> ну вернее сказать юзабелен, но багов было много
[21:38:50] <Tehnick> pavelvat, пинг
[21:39:03] <soulhunter> я просто очень придирчив к качеству
[21:39:09] <Tehnick> pavelvat, напомни, какая там версия буста в нашем тарболе?
[21:39:43] <pavelvat> soulhunter:
"мне порекомендовали айскальт как клиент с адекватным демоном, остальные клиенты консольные"
вообще-то eiskaltdcpp-daemon тоже только консольный как и отсальные консольные клиенты, подключится к демону интрфейсом на Qt или на GTK+ невозмоно.
[21:40:10] <pavelvat> Tehnick: я не знаю, я не пользуюсь тарболлом с boost
[21:40:49] <Tehnick> pavelvat, он имел в виду, что они с консольным UI.
[21:40:59] <Tehnick> pavelvat, например, на qtcurve.
[21:41:07] <pavelvat> Tehnick: вроде бы с boost-1.49 все собиралось только с заголовками.
[21:41:25] <Tehnick> Тьфу.
[21:42:00] <Tehnick> s/qtcurve/ncurses/
[21:42:45] <soulhunter> pavelvat: я знаю что невозможно, мне и не надо, им управляет мною написанная прога через jsonrpc, именно это мне и надо было, управляемые через API клиент под линукс
[21:43:07] <pavelvat> Tehnick: так в чём тогда преимущество eiskaltdcpp-daemon над другими консольными клиентами?
[21:44:18] <Tehnick> pavelvat, нормальное ядро, управление через cli и т.д.
[21:44:30] <soulhunter> в том что они не развиваются сто лет ) либо не поддерживают многопоточную скачку, например, как ncdc, либо не имеют api для управления
[21:44:58] <soulhunter> короче другого реально рабочего просто нету
[21:45:16] <pavelvat> Tehnick: ты выше написал что у других консольных клиентов тоже есть UI на ncurses.
[21:45:47] <Tehnick> pavelvat, CLI --- это не UI.
[21:45:53] <soulhunter> ага, а как им управлять? я не вручную им управляю, мне, например, важно API
[21:46:17] <soulhunter> парсить вывод ncurses регулярками? дело неблагодарное
[21:46:33] <Tehnick> pavelvat, там же обычный интерфейс, как у mc, например.
[21:46:53] <pavelvat> Tehnick: так наверно у них не UI есть, а как раз CLI
[21:47:08] <Tehnick> pavelvat, нет, блин. Нет у них cli/
[21:47:17] <Tehnick> pavelvat, десять раз уже написали.
[21:47:30] <pavelvat> Tehnick: как у mc? не знал.
[21:49:34] <Tehnick> pavelvat, например: http://dev.yorhel.nl/ncdc/scr
[21:50:18] <soulhunter> ncdc тока в интерактивном режиме работает, у него нету режима демона и api для посылки команд
[21:51:07] <Tehnick> [20:45:23] <pavelvat> Tehnick: я не знаю, я не пользуюсь тарболлом с boost
Даже не пробовал с ним собрать что ли?
[21:51:45] <pavelvat> Tehnick: не пробывал.
[21:52:02] <Tehnick> pavelvat, попробуй.
[21:52:12] <pavelvat> Tehnick: зачем?
[21:53:26] <pavelvat> Tehnick: разрабы boost начали компанию по навязыванию своих библиотек искуственно изменив код так тобы одних только заголовков перестало хватать для сборки, кажется это началось с версии boost-1.50
[21:53:39] <Tehnick> Чтобы библиотеку libboost_system не тащить.
[21:54:16] <Tehnick> pavelvat, не думаю, что это специальная компания. Но да, или многое в версии 1.50 перетрясли.
[21:54:47] <pavelvat> Tehnick: а каким образом сборка с нашим тарболом boost избавит нас от зависимоти от самой свежей версии boost 1.53 ?
[21:55:12] <Tehnick> pavelvat, тебе будет не нужен libboost_system.
[21:56:57] <Tehnick> pavelvat, я не буду откатывать тот коммит dhamp, но могу сделать так, чтобы при использовании винды и -DLOCAL_BOOST=True использовался старый код.
[21:57:11] <Tehnick> pavelvat, тебя это устроит?
[21:57:12] <pavelvat> Tehnick: https://github.com/eiskaltdcpp/eiskaltdcpp/commit/8621e160dbc260eec89f0cffdd889769451024f3
этот коммит содержит строки:
+#ifdef _WIN32
+#include <boost/thread/lock_guard.hpp>
+#include <boost/thread/recursive_mutex.hpp>
этих заголовков нет в старых версиях
[21:57:40] <Tehnick> pavelvat, прочти, что я написал.
[21:58:52] <pavelvat> Tehnick: а зачем мне сдался отот обрезок boost от dhamp-а, я просто использую официальную старую версию boost до 1.50
[22:00:07] <pavelvat> Tehnick: ты собираешся что-то там править в нашей локальной копии boost чтобы не требовалась dll из boost? ты уверен что этот так просто?
[22:06:50] <pavelvat> Tehnick: так что ты решил делать?
[22:07:22] <Tehnick>     if (Boost_VERSION VERSION_LESS 105000)
        add_definitions(-DFIX_FOR_OLD_BOOST)
    endif()
[22:07:27] <Tehnick> И старый код.
[22:08:14] <Tehnick> Но только под винду.
[22:08:39] <flylinkdc> старый код чей?
[22:08:48] <Tehnick> Хотя мб потом и под гайку понадобится.
[22:08:59] <Tehnick> Увидите, короче.
[22:09:06] <Tehnick> Только отвлекаюсь на чат.
[22:09:14] <Tehnick> flylinkdc, код до коммита.
[22:09:37] <flylinkdc> ок. только потестите хорошо
[22:10:30] <flylinkdc> у вас куча платформ
[22:10:31] <pavelvat> Tehnick: а почему то что сделал dhamp в этом коммите
https://github.com/eiskaltdcpp/eiskaltdcpp/commit/9b369e4499763712a7ce1dc2e5a4216de406ba3d
лучше того что там было до этого?
[22:10:38] <flylinkdc> опасно
[22:11:36] <pavelvat> Tehnick: проще всего будет просто отменить этот коммит и всё.
[22:12:00] <Tehnick> pavelvat, тем что используется код из стандартной библиотеки вместо велосипеда.
[22:12:41] <pavelvat> Tehnick: ещё не известно что лучше работает.
[22:12:44] <Tehnick> pavelvat, проще --- не значит лучше.
[22:13:41] <flylinkdc> вы смотрели мои комменты к коммиту?
[22:14:33] <pavelvat> Tehnick: все проблемы создал dhamp своим использованием фич из c++11 и обновлением локальной копии json, видимо разрабы json тоже фанаты c++11.
[22:18:54] <pavelvat> Tehnick: можно просто отменить эти коммиты для mutex и json, и релиз можно хоть завтра делать. Просто надо подождать какое-то время пока выйдет Qt-5.1 чтобы можно было собирать клиент под Windows mingw-gcc-4.7, до этого времени надо отложить переход на mutex и на новую версию json.
[22:22:26] <flylinkdc> зачем отиненять в гит есть ветки
[22:23:06] <pavelvat> Tehnick: что скажешь, отложим mutex и json до выхода Qt-5.1 ?
[22:23:47] <Tehnick> pavelvat, я тут кое-что проверил.
[22:23:53] <Tehnick> pavelvat, http://www.boost.org/doc/libs/1_31_0/boost/thread/recursive_mutex.hpp
[22:24:03] <Tehnick> pavelvat, обрати внимание на версию.
[22:25:31] <pavelvat> Tehnick: и что?
[22:25:41] <Tehnick> А вот второй файл действительно недавно появился.
[22:25:49] <Tehnick> Сейчас смотрю, что было до него.
[22:26:06] <Tehnick> pavelvat, а то, что возможно даже переделывать код не придется.
[22:26:27] <pavelvat> Tehnick:
"[22:28:24] <pavelvat> Tehnick: что скажешь, отложим mutex и json до выхода Qt-5.1 ?"
что скажешь - это самый простой вариант, и все будет собираться как и рнаьше.
[22:27:18] <Tehnick> Откатывать mutex я не буду. Максимум --- приделаю костыль для винды и гайки.
[22:27:30] <Tehnick> С json разберемся позже.
[22:27:42] <Tehnick> Не вижу проблемы его откатить.
[22:27:49] <Tehnick> Временная мера.
[22:28:41] <pavelvat> Tehnick: не вижу проблемы откатить mutex - это ничего не изменит кроме того что будет собираться под Windows.
[22:28:58] <Tehnick> pavelvat, это затронет другие платформы.
[22:29:30] <pavelvat> Tehnick: этот коммит был сделан недавно, до этого всё работало и на других платформах.
[22:31:19] <Tehnick> pavelvat, этот коммит был сделан почти год назад. А за ним следовали еще другие, трогающие этот код.
[22:31:29] <pavelvat> что?
[22:31:58] <Tehnick> pavelvat, текущая реализация лучше, чем старый велосипед. Единственная проблема --- сборка под винду.
[22:33:48] <pavelvat> Tehnick:
Core: use mutex
    master
commit 9b369e4499763712a7ce1dc2e5a4216de406ba3d 1 parent 038f466
dhamp authored 11 months ago
но на github в списке коммитов он отмечен Apr 26, 2013
[22:34:22] <pavelvat> Tehnick: да чем она лучше, быстрее? стабильнее? всё осталось как было.
[22:39:00] pavelvat вышел(а) из комнаты
Powered by ejabberd Powered by Erlang Valid XHTML 1.0 Transitional Valid CSS!