~AreEnn
~R4SAS
~acetone
~orignal
~villain
&N00B
DUHOVKIN_
Gamma
Guest7184
Most2
Nausicaa
Nikat
Ruskoye_911
Vort
Xeha
`
anon3
b3t4f4c3
fidoid
hypn--direct
karamba_i2p
nemiga
not_bob_afk
plap
poriori
profetikla
qend
segfault
soos
teeth
tensor
tetrimer_
uis
un
unlike
user
whothefuckami_
Vort
по ченжлогу: опечатки: requsted, hight; тоже стоит поменять: dependancy; русская С: С++11
Vort
странная формулировка: "- Low bandwidth router as first peer ...": неясно из фразы, что поменялось в этом отношении
Vort
это пока что только то, что в глаза бросилось. постараюсь позже глянуть внимательнее
orignal
поправлю
orignal
ничего добавить не надо?
R4SAS
еще не залил?
R4SAS
я отрубаю сборку хп на гх
orignal
ты почиатал тоже проект?
orignal
через полачса залюь
R4SAS
еще не читал, сначала пробегусь по сборщикам
orignal
залил
orignal
давай правь если что то упустил
R4SAS
ок
Vort
там буст на xp стал несовместим?
orignal
да
orignal
я предлагаю собрать старый вручную
Vort
так можно же наверно зафиксировать версию буста
orignal
и с ним слинковаться
orignal
нее MSYS2 это не умеет
Vort
как я понимаю там для XP и так много чего "вручную" собиралось и в кеш клалось
orignal
тут я не знаю
orignal
но я бы лично сделал так
orignal
просто собрал старую версиб и все
R4SAS
я вижу что для буста патчи добавляли
R4SAS
сейчас посмотрю чего там делали
orignal
кто?
Vort
orignal: requsted опечатку не поправил
R4SAS
msys2-цы
orignal
счас
R4SAS
но они тупо разбирались с context на arm64
R4SAS
попробую еще один тулчейн собрать для xp и в нем проверить локально
orignal
поправил
orignal
давайте лучше подумаем как boost::program_options выпилить
orignal
я предлагаю использовать парсер из boost::ptree
orignal
Transit: 838.35 GiB (4209.86 KiB/s)
orignal
что то сильно много
R4SAS
эту штуку полистрен ждала
orignal
а зачем?
orignal
у нас же конфиги тоннелей уже через boost::ptree пасятся
R4SAS
так и от него можно будет избавиться
orignal
то есть надо передеать i2pd.conf и командную строку на getopt и все
R4SAS
пробую собрать буст 1.85.0 с последними crt + headers + winpthreads
R4SAS
и вроде как получается
R4SAS
значит точно в 1.86.0 вырезали
orignal
именно
orignal
кстати вопрос так и повис с воздхуе что с 20 под виндой?
R4SAS
а что с ней?
R4SAS
обычный msys2 собирает с ней
orignal
включить там 20 или отсавить 17?
R4SAS
там уже 20 включилось
R4SAS
на cmake по крайней мере
R4SAS
а на make я гляну попозже
orignal
я про makefile.mingw
R4SAS
я понял
R4SAS
собралось без проблем с 20
orignal
это я знаю я собирал
R4SAS
подожду туннели и проверю
orignal
вопрос можно ли везде
R4SAS
а разница?
R4SAS
оно ведь внутри, не зависит от системы
orignal
ну может есть какие то сборки типа xp где нельзя
R4SAS
хп по своему живет
R4SAS
и там не должно быть разницы
R4SAS
поздравляю того, кто ковырялся в FS.cpp
R4SAS
хорошая работа
R4SAS
Vort: камень в твой огород
Vort
во-первых, можно по-нормальному сказать
orignal
а что чинить то надо?
R4SAS
да я просто говорил что там есть ньюансы
Vort
во-вторых, не факт, что мои изменения имеют к этому отношение
orignal
тем более что это XP
R4SAS
сейчас проверим со старым кодом
orignal
а в FS.cpp много кто ковырялся
orignal
если касается толлько XP то есдлать #ifdef и все
R4SAS
придется
R4SAS
сейчас везде проверю
Vort
скорее всего, причина в различиях буста и std
orignal
я проверял на 11 ой проблем не было
orignal
если что то в FS.h там выбор буст или std
orignal
#if (!TARGET_OS_SIMULATOR && __has_include(<filesystem>)) // supports std::filesystem
orignal
эта строчка
orignal
там добиавть проркеу на XP
Vort
ещё система сборки может влиять
Vort
маловеротяно, что в XP какие-то особенности по работе с путями
orignal
в XP там проблемы с UTF8 были изначально
orignal
там CP1251 был
orignal
полноценный UTF8 стал только в семерке для русского
orignal
и пока он не стал стандартным вот такая хрень с кракозябрами везде вылазила
Vort
и XP и 7ка по дефолту поддерживают CP_ACP для A + UTF-16 для W функций
Vort
теоретически, CP_ACP может быть UTF-8, но я такого не видел. у меня win-1251 скорее всего
Vort
но суть проблемы там, похоже, в другом. в W переменную попадает UTF-8
Vort
какого фига - загадка
orignal
я ничего не скажу
orignal
я просто рассказываю что было во времена XP
orignal
пока не перешли взеде на UTF8
Vort
по моим ощущениям вообще ничего не поменялось в этом плане с XP до 7ки
Vort
те, кто перешёл на UTF-8, или сами преобразовывают самодельными алгоритмами или используют двойное преобразование A -> W -> A
orignal
ну x3
R4SAS
старый код работает
segfault
а разве кодировки это не проблема gettext?
segfault
зачем об этом думать в i2pd?
R4SAS
при чет здесь gettext?
Vort
поспорить о необходимости втуливания ещё одной либы можно потом
R4SAS
чем*
segfault
gettext в i2pd уже есть
orignal
ну значит верни старый для винды
R4SAS
gettext вообще из набора i18n, из-за которого бинарник жирнееет в 7 раз. уже проходили
segfault
gettext при том, что это его геморой, как показать локализованный текст
orignal
и в ту строчку где я сказал проверку #ifdef _WIN32
R4SAS
я от gettext открестился когда локализацию писал для морды
segfault
R4SAS: сейчас там нет его? раньше был.
orignal
эта проблема только для XP или везде на винде?
R4SAS
сейчас везде проверю
R4SAS
еще не знаю
Vort
orignal: у меня было нормально
orignal
у меня тоже на 11
Vort
но я студией собирал
Vort
может в msys2 особенности
segfault
не ascii текст нужен же только в веб морде?
R4SAS
win7 - аналогично
Vort
проверку если делать наугад, так чётко версию XP проверять
Vort
может, реально msys2 фигню творит. сейчас в виртуалке проверю
Vort
R4SAS: что аналогично?
Vort
и бинарник какой проверял? самособранный?
Vort
я сейчас из GHA возьму проверю
R4SAS
самособранный, через make
segfault
R4SAS: зачем ты заставляешь переходить на сайт, который не работает без js?
R4SAS
уверен что с конвеера так же будет
R4SAS
segfault: берешь pbincli и не ноешь
Vort
R4SAS: проверь вот этот бинарь у себя github.com/PurpleI2P/i2pd/actions/runs/11202352583/artifacts/2020758091
R4SAS
clang
R4SAS
шланговые то работают, это я знаю
R4SAS
не знаю, каким образом эта коверсия так ломает путь
Vort
" <~R4SAS> шланговые то работают, это я знаю" так значит винда не при чём
R4SAS
так я не говорю что винда при чем то
Vort
а что тогда?
Vort
причину то не нашли ещё
R4SAS
я говорю что под g++ эта конверсия как то не так отрабатывает
Vort
там нету конверсии. или не должно быть точнее
Vort
сейчас вот этот проверю github.com/PurpleI2P/i2pd/actions/runs/11202352583/artifacts/2020759163
R4SAS
вот это? github.com/PurpleI2P/i2pd/commit/e87ace0c3d013a5fff9473741983af545ad7672e#diff-16fed8df3cd571665e0d23d8ca779671f932f14e8b3bbdae099c678389833157R66
Vort
R4SAS: я же говорил, что этот код скорее всего не при чём
Vort
ошибка вываливается до того, как этот код будет вызван
R4SAS
почему это?
R4SAS
i2p::fs::DetectDataDir(datadir, IsService());
Vort
а detect я не трогал вообще
Vort
в общем, я подтверждаю, что gcc собирает какую-то фигню
R4SAS
у меня только тут подозрение вылезает
R4SAS
#if ((BOOST_VERSION >= 108500) || STD_FILESYSTEM) dataDir = fs_lib::path(commonAppData).string() + "\\" + appName;
Vort
i2pd-cmake-x64-ucrt.exe.zip фейлится у меня в виртуалке
R4SAS
при том что мы до этого получаем путь через SHGetFolderPathW
Vort
то есть, значит, std виноват
Vort
в исполнении gcc
Vort
clang и студия нормально себя ведут
Vort
ох уж эти GNU
orignal
но под лиукнсом нет проблемы
Vort
там вообще преобразований кодировок нету
Vort
а там где есть - GNU косячит. ну или в сборке какие-то проблемы
Vort
может ему дефайн какой-то надо подсунуть
orignal
ну давайте вернем старый код и boost::filesystem для винды
R4SAS
есть дефайн UNICODE
R4SAS
только он одни проблемы вызовет
R4SAS
про него тоже знаю
orignal
дело то на 10 минут
R4SAS
погоди
Vort
R4SAS: я про специфику GCC говорю
R4SAS
и я про нее
orignal
годю
Vort
R4SAS: да и вообще при чём тут он? думаешь, где-то путаница с A / W функциями?
R4SAS
вероятно что да
Vort
напутав A / W UTF-8 вообще не получить
R4SAS
ибо мы берем wchar
R4SAS
и почему то пытаемся впихнуть в char
Vort
кракозяблы не те по-моему
Vort
сейчас проверю
R4SAS
как раз те
R4SAS
смотри последний скрин с win10
R4SAS
С. = т
R4SAS
2 байта
Vort
а, так они разные под XP и 7/10
R4SAS
нет, одинаковые
R4SAS
там
R4SAS
в кракозябрах "Рабочий стол"
R4SAS
СГ = с
R4SAS
С. - т
R4SAS
и так далее
Vort
Рабочий стол
orignal
думаю справитесь без меня. я отойду
R4SAS
вот, такой же рабочий стол на 10
Vort
вот эти Р - это 0xD0
R4SAS
а сюда u8path не подходит?
Vort
D0 BB = 11010000 10111011. чтобы декодировать, надо выкинуть 110 в первой группе и 10 во второй. получается 10000 111011 то есть, U+043B
Vort
там не должно быть UTF-8 вообще!
Vort
это какая-то самодеятельность GCC
R4SAS
ну, не забывай что в окошках изначально UTF-16
Vort
вот там он быть и должен
Vort
попробуй таки убрать std::filesystem для сборок с MSYS2+GCC
Vort
а детально разобраться с причинами можно будет позже
Vort
если конечно это поможет. но, вроде, больше ломаться там нечему
R4SAS
ладно, так и сделал пока что
R4SAS
но надо будет понять че за хрень там опять...
orignal
буст не забудь в линковку
R4SAS
тегаю
R4SAS
в линковку добавил сразу же, в cmake уже было
orignal
давай
orignal
я под виндой проверил все пашет
orignal
счас макось соберу
orignal
на новой виртуальной машине кстати
R4SAS
а я забил на ковыряние виртуалки
R4SAS
почему то вообще они не хотят ставиться
R4SAS
мб опять народ придул обход, но сидеть изучать некогда
R4SAS
придумал*
R4SAS
драфт на релиз создал, залил туда винду
orignal
у меня Monterey нормально пашет
R4SAS
на амд?
orignal
да
R4SAS
ну это уже старая
orignal
для сборки хватит
orignal
залил макось
orignal
проверил все работает кстати
R4SAS
наконец бубунта собралась
orignal
я кстати гоняю на 24.04 собранный с 20
orignal
нормально все раболтает
R4SAS
а мне надо будет сервера обновить
R4SAS
с деб 10
R4SAS
но видать не сегодня
orignal
давно пора
orignal
я может тоже