IRCaBot 2.1.0
GPLv3 © acetone, 2021-2022
#dev
/2024/08/29
~R4SAS
~orignal
~villain
@onon
&N00B
+Xeha
+r00tobo
+relaybot
+whothefuckami
AreEnn
HackerMan
KabaOS
Leastr
Most2
Nausicaa
Vort
WayBest
`
acetone
anon2
b3t4f4c3
karamba_i2p
nemiga
not_bob
osoznayka
poriori
profetikla
segfault
soos
teeth
tolik
un
unwr
weko
Vort разобрался с жирными файлами в студии. это побочный эффект красивой подсветки кода
orignal счас там шлаг фейлится
Vort MS считают что 5 гигабайт мусора рядом с каждым проектом - это нормально
orignal добавлю проверку
orignal пиздец
Vort каждый подсвеченный файл в i2pd создаёт 300 меговый кеш )
Vort но к счастью можно сделать мусорку общей для всех проектов
Vort и размер ей подкрутить
Vort облом с std::filesystem :(
Vort надо разбираться, что за фигня
Vort FS.cpp(69,28): error C2039: 'imbue': is not a member of 'std::filesystem::path'
Vort ну да, нету такого
Vort так что это не ошибка компилятора
Vort надо разбираться в различиях std и boost
Vort правда, разработчики стандарта C++ с кодировками не дружат, так что, возможно, сделать по-нормальному будет непросто
Vort а я пока что пойду спать
orignal я пока это отключил для шланга
orignal gcc нормадльно
orignal почему в gcc есть а в шланге нету?
segfault orignal: обнаружился неприятный баг. если в веб интерфейсе нажать reload tunnels configuration, при этом новый конфиг будет неправильным, то i2pd перестанет нормально работать. надо сделать проверку конфига перед фактическими изменениями и писать что новый конфиг
segfault неверный
Vort "<~orignal> почему в gcc есть а в шланге нету?" небось в gcc просто скопипастили из буста не разбираясь
Vort ну и я же тебе скинул точно такую же ошибку из студии 2019
orignal Vort ну тогда надо и там отключать
orignal segfault reload tunnels вообще работает плохо
tetrimer Почему "плохо"? Комментируем туннель, делаем релоад, раскомментируем, еще раз релоад. В таком режиме все работает.
onon Тоже так делаю
Vort orignal: почему не сделать по стандарту?
orignal Vort а как по стандарту ты знаешь?
orignal я же не разбирался просто расмонетировал и все
orignal даже не знаю кто там этот код написал
Vort у меня только подозрение, что авторы стандарта сделали какую-то гадость
Vort ну сейчас погуглю
Vort кстати, раз там #ifdef _WIN32, то можно вообще без boost/std обойтись
Vort ну это на случай гадости от авторов стандарта
Vort пока что поищу, можно ли сделать нормально
orignal а для чего тогда тот код?
Vort тупо для преобразования из системной кодировки в utf-8
Vort ну мне так кажется
orignal ну да
Vort на входе std::string, на выходе - std::string
Vort в общем, я переделал преобразование в UTF-8 для винды. теперь жду пока сборка гитхабом потестируется
Vort обнаружил ещё одну связанную странность в коде
Vort когда искал, где вообще GetUTF8DataDir используется
Vort нашёл вызов в Win32App.cpp перед ShellExecute. но схрена ли ShellExecute ожидать UTF-8? я проверил - так не работает. поэтому переделал на простой GetDataDir
Vort в итоге, вызов GetUTF8DataDir всего в одном месте - в вебконсоли
orignal давай тогда или код чтобы поставить или PR сделай
orignal кстати возвращаясь к теме тора
orignal походу на эту тему даже пропозала не было
orignal я потребовал у деда ткнуть меня в него носом
orignal либо я креведко либо его правда не было
Vort в GHA clang фейлится из-за std::chrono::clock_cast. но там я уже не при чём
Vort и мне отойти надо. но код вот
orignal я тоже отойду на пару часов
Vort короч поспешил я с включением std::filesystem для винды
Vort а что за херня с clock_cast происходит - надо разбираться - из-за этого не только clang на винде фейлится, но и FreeBSD сборка
Vort orignal: потестируй пожалуйста когда сможешь: github.com/PurpleI2P/i2pd/pull/2096
Vort orignal: по поводу не связанной с UTF-8 проблемы: предлагаю проверку для clang переделать из общей для std::filesystem на конкретную для clock_cast
Vort C++20 - это оказывается слишком мудрёно даже для современных компиляторов. но VS2019, похоже, на C++20 переводить можно. у меня бинарник нормально собрался с
Vort set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /Zc:__cplusplus /std:c++20")
onon Вот. Название переменной лично гипн придумывал, значит должно работать.
onon Пока это последняя версия, там ещё есть что поправить. Но мне, похоже, нужно немного отдохнуть.
orignal погляжу
orignal смержил
orignal и там сделаю проверку для шланга
segfault orignal: нафига это всё?
orignal что?
segfault boost и c++11 нормально работают
orignal переход на std::filesystem?
orignal нет в бусте слишном много багов
orignal C++11 уже мало где остался
orignal а код писать надо дальше
segfault а зачем вообще filesystem? почему нельзя просто в конфиг пути до файлов прописать?
segfault и просто fopen открывать
segfault может это не так красиво, как анализ каталогов с точки зрения пользователя
orignal потому что в разных ОС работа с директориями организована по разному
segfault но зато проблем нет
orignal i2pd кросс плаформенный
Vort проблемы пока что я только вижу в недоделанной поддержке C++20
Vort придётся хренову тучу проверок городить для каждой недоделки
Vort segfault: нужно делать анализ потребностей юзеров. надо ли кому-то обязательно C++11 поддержку и не выше
segfault есть 2 платформы: posix и winapi (boost тоже поддерживает только их). не лучше ли написать 1 функцию с #ifdef, чем страдать от boost::filesystem или std::filesystem?
Vort segfault: платформенно зависимый код обычно громоздкий. глянь к примеру как я поддержку перевода в UTF-8 для винды сделал
Vort ты предлагаешь по сути влить буст в i2pd
Vort это будет жопа. ну, то есть, конечно, можно, но не нужно
segfault utf-8 это жопа
segfault Vort: кстати, а зачем utf-8 в i2pd?
segfault Vort: от того, что iso решил полбуста в stl затолкать легче не станет. видел "c++20 modules"? видел "c++20 coroutines"?
segfault они под какой наркотой эту хуйню придумывали?
orignal а заченм нам эта хрень
orignal от 20 нам нужны новые функции в структурах данных
onon Наехал на RN она там сидит, плачет
segfault а затем, что очередная либа будет эту хуйню использовать. и придётся дебажить эту хрень. а написана она через жопу, потому что стандарт новый.
orignal разве я на нее наехал?
onon А, это значит ещё и не начинал
orignal onon ты главную претензию то понял?>
orignal грубо говоря "где пропозал суки?"
orignal а его нет
onon В общем да
onon Но масштабы катастрофы, на мой взгляд, преувеличены
segfault orignal: в java i2p опять какая-то жесть?
orignal все тот же
orignal я хочу с деда ответы получить поскольку он явно собрался соскочить с темы
orignal onon масштабы катастфоры тут как обычно у них делать втихую
onon Просто недопонимание произошло
orignal а потом еще и меня обвинять в том почему я сразу не высказывл возвражений
onon Когда обсуждали это в мае
onon или когда там
orignal недопонимние что на каждый чих требовать пропозал а тут раз и нет пропозала?
orignal так не было никакого обсуждения
onon Ты себе механизм блокировки представлял по-своему, а дед по-своему
orignal я специально логи смотрел
orignal они где то обсуждали между собой
onon Просто договрились, что блокировать можно, а конкретные механизмы не обсудили
orignal только меня забыли спросить
orignal причем о моем методе они знали с самого начала
orignal пусть дурочку не валяют
Vort "<segfault> Vort: кстати, а зачем utf-8 в i2pd?" чтобы в вебконсоль вывести путь без кракозябл
Vort "<segfault> Vort: от того, что iso решил полбуста в stl затолкать легче не станет" как минимум, будет выбор из нескольких реализаций
Vort "<segfault> они под какой наркотой эту хуйню придумывали?" да я вообще кроме самых основ в C++ ничего не знаю. всё, что надо - подгугливаю. так что без понятия что они там навертели
segfault Vort: а в чём проблема просто в html указать, что надо условный koi8-r принимать?
segfault Vort: boost предлагается заменять на std, чтобы выпилить c++11
Vort к примеру, из-за локализации, которая вся в utf-8
orignal вроде переделал с 20
orignal везде тепреь собирается
Vort ага. теперь только ждать, не начнёт ли кто-нибудь с чуть-чуть не таким компилятором жаловаться
orignal посмотрим
orignal вот у меня баунсер с 20 собран вроде порядок
orignal ведро кстати тоже собралось
Vort ну если собралось, то, обычно, работает нормально
Vort хотя бывает всякое
Vort попробую на всякий случай сейчас свежий бинарник сделанный clang`ом запустить
Vort вроде нормально всё
orignal ну пока порядок значит
orignal с макосью там просто у меня билд машина старая
orignal onon как изменение называется?
onon Это сложно
onon Там много чего поменяно
onon Типа улучшение всего =)
onon Основное там
orignal так не пойдет давай конкретно
onon Это изменение алгоритма увеличения окна
onon Ну ещё плавный сброс окна
onon Что там ещё добавил
orignal вот нормально
orignal то есть касается расчета размера окна
onon Ну да
onon И коэффициент сделал как ты просил
onon Чтобы агрессивность настраивать
onon А так по алгоритму вопросы есть?
onon Пока у меня ещё всё в оперативке лежит
orignal я еще не смотрел