[>]
Re: Стандарт
idec.talks
revoltech(spnet, 4) — shaos
2024-10-29 01:27:32
shaos> А где /x/features ?
Нафиг /x/features, как по мне. Если слайсы не поддерживаются, нода просто отдаст всё из указанных эх.
[>]
Re: Стандарт
idec.talks
revoltech(spnet, 4) — ahamai
2024-10-29 02:27:43
ahamai> проблема в том, что этот запрос выглядит, как эха, я не уверен, что на моей станции это сработает.
Это в каких таких эхах есть двоеточия в названии?
[>]
Re: Стандарт
idec.talks
revoltech(spnet, 4) — shaos
2024-10-29 02:29:28
shaos> Там же точки нету - там двоеточие
shaos> Значит проверку на соответствие имени эхи оно пройти не должно ;)
Вот именно. Тоже хотел добавить.
[>]
Re: Стандарт
idec.talks
revoltech(spnet, 4) — shaos
2024-10-29 10:10:53
shaos> это как так? перечисляемые расширения были основной фишкой IDEC :(
Ну а теперь три из них являются частью стандарта, а остальные — нет. Вообще нет. Если я всё правильно понял.
[>]
Re: Стандарт
idec.talks
revoltech(spnet, 4) — revoltech
2024-10-29 10:12:16
revoltech> три из них являются частью стандарта
Пардон, /u/push не увидел. В таком варианте — даже четыре.
[>]
Re: Аутентификация поинтов через несекьюрное соединение
idec.talks
revoltech(spnet, 4) — shaos
2024-10-29 12:47:04
shaos> Да - в /x/features поддерживаемые кодировки можно перечислить таким макаром
Вот это в стандарт точно тащить не надо. Кому в 2024 году нужно что-то, кроме UTF-8? А всякие кои и 1251 за пределами постсовка и раньше никому не нужны были.
По передаче паролей — ума не приложу, как люди с паролями по plain http раньше жили. Конечно, времена поменялись, но зачем городить огород с хэшами? Не проще ли сделать что-то типа HOTP/TOTP и использовать одноразовый код в качестве authstring, если уж так приспичило? Но опять же, это вопрос реализации, в стандарт это тоже тащить не стоит, имхо.
[>]
Re: Станции ii/IDEC в .onion (Tor)
idec.talks
revoltech(spnet, 4) — tuple
2024-10-29 12:48:20
tuple> > На официальном сайте сказано о наличии “филиала” IDEC в сети Tor по адресу mtgbjhifvi4sl773.onion, но сейчас он не работает (закрыт по причине непопулярности)
Это очень старый onion-адрес, сейчас они гораздо длиннее. Такие уже даже давно не резолвятся вроде бы.
[>]
Re: Аутентификация поинтов через несекьюрное соединение
idec.talks
revoltech(spnet, 4) — shaos
2024-10-29 19:19:50
shaos> HOTP потяжелее наверное - и там ведь ещё больший «огород с хешами» ?
Нет, не больший. И преимущество оного в том, что можно в случае с TOTP вынести этот нюанс в какой-нибудь Aegis/Authy/гугловский аутентификатор, а в случае с HOTP — вообще в отдельный аппаратный ключ. И не нагружать бедный ретроклиент.
[>]
Re: Аутентификация поинтов через несекьюрное соединение
idec.talks
revoltech(spnet, 4) — shaos
2024-10-29 19:56:26
shaos> Кстати - если этот номер перехватить, то его ведь можно тут же зареюзать пока время не прощло?
Нельзя. Ну как минимум сервер должен такие попытки пресекать и заставлять пользователя ждать следующее 30-секундное окно. Это в случае TOTP.
Легитимный пользователь в пределах 30 секунд 2 сообщения не отправит. А если надо, пусть отправляет через /u/push.
[>]
Re: Аутентификация поинтов через несекьюрное соединение
idec.talks
revoltech(spnet, 4) — shaos
2024-10-29 19:58:29
shaos> " All the communications SHOULD take place over a secure channel, e.g.,
shaos> Secure Socket Layer/Transport Layer Security (SSL/TLS) [RFC5246] or
shaos> IPsec connections [RFC4301]."
shaos>
shaos> Это show stopper...
Это should, а не must, а на самом деле пофигу вообще. Между клиентом и сервером только начальная регистрация ключа должна быть секьюрной.
[>]
Re: Срез
idec.talks
revoltech(spnet, 4) — ahamai
2024-10-30 12:05:47
ahamai> А какой вообще формат срезов: /u/m/эха/срез/эха/срез или как?
Кстати, да, присоединяюсь к вопросу. Как в одном запросе слайсить сразу несколько эх с разными смещениями и лимитами? Например, мы запрашиваем содержимое трёх эх и выяснили, что из первой надо забрать только 3 последних сообщения, из второй — 10, а из третей — 50. И что, здесь три отдельных запроса городить придётся?
[>]
Re: Срез
idec.talks
revoltech(spnet, 4) — hugeping
2024-10-30 12:07:07
hugeping> ahamai> А какой вообще формат срезов: /u/m/эха/срез/эха/срез или как?
hugeping>
hugeping> Например: https://club.hugeping.ru/u/e/idec.talks/-1:1
Вопрос в том, что делать, когда в запросе НЕСКОЛЬКО эх. Можно ли указать диапазоны отдельно для каждой?
[>]
Re: игры в эхах
idec.talks
revoltech(spnet, 4) — ahamai
2024-10-30 16:09:35
ahamai> а какие бывают текстовые игры, применимые в эхах?
ahamai>
ahamai> помню в ru.golovolomka в данетки играли. в vga.planets, вроде, только нетмейлом играли, как там эхи использовались, не вспомню. кто ещё что может вспомнить?
В быки-коровы можно играть везде, где есть запрос-ответ, хоть морзянкой.
[>]
Re: игры в эхах
idec.talks
revoltech(spnet, 4) — tuple
2024-10-30 21:34:45
tuple> А ещё можно передавать сохранения игр, проходя их по очереди. Те же дварфы (dwarf fortress). Много чего можно сочинить.
Можно передавать уровни сокобана в plaintext-формате (.sok).
[>]
Re: Разбор idec
idec.talks
revoltech(spnet, 4) — ahamai
2024-10-31 09:00:09
ahamai> Складывается впечатление, что idec это пример плохого проектирования.
На это я пытался намекнуть чуть ли не с первого дня появления здесь.
ahamai> MSGID? по логике вроде бы да.
Нет, в msgid тоже двоеточий быть не может. И длина должна быть 20 символов.
Но в целом согласен, текущий формат слайсов какой-то недоработанный. Не то чтобы его сложно реализовать, но задачи экономить трафик при запросе большого количества эх он действительно не решает.
Я ещё могу понять, почему всё через / — это проще парсить, чем отдельно компоненты пути и компоненты HTTP query, особенно учитывая, что от HTTP в общем случае можно (и нужно) отходить. Но я не могу понять, почему бы не сделать в запросе такую же железобетонную структуру ключ-значение, как и в тегах бандла ii/ok/repto/blabla:
/u/e/echo.1/all/echo.2/-3:3/echo.3/-10:10
Этот формат (после удаления первого слэша) однозначно парсится в ключ-значение, на тикле он вообще одним сплитом преобразуется в список, читающийся через dict. И тогда и дополнительных проверок на то, где название эхи, а где диапазон, делать не нужно. Первый ключ — u со значением e, второй ключ — echo.1 со значением all и так далее. А сейчас всё как-то дико контекстозависимо получается, потенциал допустить ошибку куда выше.
[>]
Re: Разбор idec
idec.talks
revoltech(spnet, 4) — revoltech
2024-10-31 09:03:54
revoltech> /u/e/echo.1/all/echo.2/-3:3/echo.3/-10:10
И да, в моём варианте вместо диапазона легко подставить msgid, и так же легко на стороне сервера проверить, что именно там стоит. Если диапазон, берём диапазон, если msgid, берём от этого msgid.
[>]
Дополнения к стандарту
idec.talks
revoltech(spnet, 4) — revoltech
2024-10-31 09:14:34
Предлагаю ввести общий слайсинг вида «ключ-значение», в котором вместо диапазона можно писать all или же msgid (в таком случае берётся содержимое эхо от него):
/u/e/echo.1/all/echo.2/some_msgid_blablabla/echo.3/-10:10
А ещё предлагаю ввести /u/mc, возвращающий число, чтобы клиент знал максимум сообщений, который нода может ему отдать за один GET-запрос /u/m.
[>]
Re: Разбор idec
idec.talks
revoltech(spnet, 4) — Andrew Lobanov
2024-10-31 09:31:53
AL> И это ломает поддержку стандарта.
Ладно. Ломает, так ломает, будем контекстозависимые парсеры городить. А что насчёт /u/mc?
revoltech> А ещё предлагаю ввести /u/mc, возвращающий число, чтобы клиент знал максимум сообщений, который нода может ему отдать за один GET-запрос /u/m.
Сейчас у меня в фетчере это значение по умолчанию равно 12, пока явно не указано обратное. Было бы неплохо, если бы станция сообщала эту информацию клиенту для оптимального выкачивания мессаг.
[>]
Re: Дополнения к стандарту
idec.talks
revoltech(spnet, 4) — shaos
2024-10-31 09:48:09
shaos> ну разве что если /x/e/...
Да пофигу, раз упростить алгоритмически всё равно ничего не получится, пусть будет так, как есть. Меня больше про /u/mc вопрос интересует.
[>]
Re: Дополнения к стандарту
idec.talks
revoltech(spnet, 4) — shaos
2024-10-31 10:05:06
shaos> насколько длинный урл можно скормить вебсерверу это настройка вебсервера - сама нода может про это и не знать
Но её админ должен об этом знать. И выставить в урлу /u/mc. Иначе при перефетче придётся брутфорсить на стороне клиента: ага, 10000 айдишников — отлуп, 1000 айдишников — отлуп, 500 — отлуп, 389 — норм... Запишем, что в этой станции 389.
[>]
Re: Дополнения к стандарту
idec.talks
revoltech(spnet, 4) — Andrew Lobanov
2024-10-31 13:02:02
AL> Зачем? Усложнение ради усложнения? Так IDEC не про это, а про дубовую простоту.
Это как раз и было бы про дубовую простоту парсинга. Ключ-значение. Всё однозначно.
[>]
Re: Дополнения к стандарту
idec.talks
revoltech(spnet, 4) — hugeping
2024-10-31 13:09:58
hugeping> Например, в данном случае, в один запрос запиханы разные лимиты слайсов для разных эх. Зачем?
Чтобы не качать лишнее.
hugeping> Видимо, предполагается что "умный" админ будет настраивать фетч таким образом под станцию, что задаст разные лимиты для эх разной наполненности? Зачем этот ужас? Придумайте, как в реальности вы будете это использовать?
В реальности — точно так же, как и твой адаптивный фетч сейчас это делает, только без необходимости предварительно мурыжить каждую эху отдельно.
hugeping> По 16 msgid забирать чистоплюство не позволяет?
Накладные расходы не позволяют. Когда станция тормозит, это особо заметно.
Сейчас у меня в stations.txt напротив каждой ноды стоит число. Если непонятно, сколько сообщений нода позволяет забрать за раз, ставлю 12, ибо это случай с tgi и его ограничением 256 символов на гет. Андрей не озвучивал ограничение spline-online, поэтому там тоже стоит 12, и делать полный перефетч — это боль с такой-то скоростью отдачи. А бывает, что надо. Например, когда я внутренний формат базы поменял, добавив поле.
hugeping> Моё мнение -- надо замораживать вариант драфта Андрея.
Я-то не против, просто предлагаю вещи, которые облегчат жизнь, пока не поздно.
[>]
Re: Дополнения к стандарту
idec.talks
revoltech(spnet, 4) — Andrew Lobanov
2024-10-31 14:53:10
AL> Зачем ему это понимать?
Да блин. Моделируем ситуацию. Клиент пришёл в сеть. Без готовой базы сообщений, без ничего. Выкачивает список эх по /list.txt. Выкачивает по /u/e/[список_эх] айдишники сообщений. Их овердофига. Дальше как ему знать, по сколько айдишников группировать для посыла одного GET /u/m, если ни станция, ни стандарт об этом ничего не говорят? Он может сгруппировать по 16 и получить ошибку на tgi, каковы дальнейшие действия?
[>]
Re: Дополнения к стандарту
idec.talks
revoltech(spnet, 4) — Andrew Lobanov
2024-10-31 16:03:23
AL> Пинать сисопа своего аплинка. Потому что такие короткие урлы это издевательство.
Хорошо. Какие — не издевательство? Сколько айдишников скачивать по умолчанию? Где проходит граница между «слишком жирно» и «пора пинать сисопа»?
Может, в стандарте хотя бы рекомендованное число указать в таком случае? Опытным путём вот выяснилось, что апачу 389 айдишников можно скормить в /u/m на дефолтных настройках. А на spline-online сколько, например?
[>]
Re: Дополнения к стандарту
idec.talks
revoltech(spnet, 4) — hugeping
2024-10-31 16:06:15
hugeping> It is RECOMMENDED that all senders and recipients support, at a minimum, URIs with lengths of 8000 octets in protocol elements.
Так, может, тогда и в стандарте прописать |(8000 - 5) / 21| = 380 айдишников рекомендованным максимумом для отдачи через /u/m?
[>]
Re: Дополнения к стандарту
idec.talks
revoltech(spnet, 4) — hugeping
2024-10-31 16:39:44
hugeping> Всё-таки, это не аксиома. Тут мы зависим от внешнего фактора.
Не аксиома, но вполне разумное значение по умолчанию. Сисопа проще пнуть на документальном уровне и пусть объясняет, почему приём 380 айдишников в /u/m для него проблема.
hugeping> Я бы вообще > 16 или 32 не ставил бы никогда.
Ну вот для случая полного перефетча это как раз издевательство, но пусть, лишь бы нода и 380 поддерживала.
[>]
Re: Дополнения к стандарту
idec.talks
revoltech(spnet, 4) — shaos
2024-10-31 20:52:05
shaos> Лучше написать не больше 380 т.к. вебсервер может такое не пережувать
Ну я о том же, можно сказать, что 380 — максимум, который нужно поддерживать, а дальше уже на усмотрение владельца сервера.
shaos> И наверное надо метод POST добавить (я у себя добавлю)
Только за, но здесь почему-то нашлись принципиальные противники этой идеи.
[>]
Re: Дополнения к стандарту
idec.talks
revoltech(spnet, 4) — shaos
2024-10-31 21:05:42
shaos> Рекомендовать 32 т.к. оно вообще не через http-сервер может идти, а через самописный (кстати bottle.py какое ограничение имеет?)
Да у самописных вообще ограничений нет обычно.
[>]
Re: Что такое iii
iii.nizya
revoltech(spnet, 4) — shaos
2024-10-27 09:15:56
shaos> да - и поиск :)
И животноводство!
Что мешает искать уже оффлайн среди выкачанного?
На самом деле, получается, в tiifetch и tiix я уже реализую некоторые элементы iii:
* проверка целостности (content_id хранится в той же строке базы, что и msgid, осталось только предупреждение рядом с сообщением вывести, если они не совпадают);
* для постинга — только POST;
* никаких файлэх;
* фильтрация входящих сообщений по типа-regexp (хотя больше SQL-type wildcard). Так же и поиск реализован.
> никаких отправок паролей вовсе через несекьюрное соединение
А откуда ты знаешь, секьюрное у меня соединение или нет? Я могу и http через torsocks заворачивать, вай бы и нот?
> гибкая система наказания поинтов и узлов (модерирование, игнор, временный бан и т.д.);
Ну это уже форумное вахтёрство. Всегда найдётся узел, где такого не будет.
[>]
Re: Что такое iii
iii.nizya
revoltech(spnet, 4) — shaos
2024-10-28 19:52:04
shaos> Ретроклиенты без винтов
...пусть общаются с сетью через гофер-гейты с винтами, а то сама распределённая суть ii/IDEC теряется.
shaos> секьюрить надо настоклько насколько можно дотянуться - если дальний старый узел будет замечен в подтасовках (подписывании сообщений с фейковыми хедерами например), то работаем с сисадмином либо отгораживаемся от такого узла
Для /u/push — не вопрос, хотя тоже нюансы есть. Для честных пользователей тора требовать HTTPS — зло. Так и так на уровне TCP от и до шифровано. Особенно если сама станция находится там же. Как ты сертификат для .onion сгенеришь и, главное, зачем?
shaos> ну а как иначе?
Решать проблемы по мере их поступления. Народ в смолнеты как раз от этого всего кармодрочерства и бежит.
[>]
Re: Дополнения к стандарту
idec.talks
revoltech(spnet, 4) — Andrew Lobanov
2024-10-31 23:21:27
AL> 10+ лет качаем по 40. Полёт нормальный.
Ну а мне откуда было это знать? Нигде о 40 не было написано. А tgi уже на 13 посылает куда подальше, например.
AL> Хорошо. Я укажу в стандарте 40. Все, кто качает больше или предоставляют меньше, не соблюдают стандарт.
Ну вот так бы сразу.
[>]
Re: Разбор idec №2
idec.talks
revoltech(spnet, 4) — ahamai
2024-10-31 23:39:32
Уважаемый, я вот вроде тебя и понимаю, и не понимаю одновременно. Например, я пришёл сюда совсем недавно. Старую ii-документацию в этих ваших интернетах уже не сыскать, все старые сайты протухли. Откуда мне было знать про «эмпирическим путём найденный» лимит в 40 мессаг, про /z/get и прочие босфоры?
ahamai> И уж если планируются расширения, совершенно точно не надо вешать какие-то костыли, чтобы вопрос "а как задать срез для каждой эхи" не имел ответа.
Здесь согласен.
ahamai> Про key/value. У босфора был такой интерфейс, /bb/key1/value1/key2/value2. Это было удобно сначала парсить в словарик, а потом с этим словариком работать, минимумом кода достигались красивые вещи, можно было делать разные запросы. Если что-то расширяешь, нужно сразу делать формат, который можно расширять, но который при этом фалбакается, если расширение не поддерживается. Зачем нагромождение ненужных сущностей, которые потом надо ещё прописывать? Когда можно сделать единый урл, единый словарик, а любой фильтр прописывать ровно одной строкой кода, и те системы, которые его не поддерживают, просто не будут по этому критерию фильтровать.
И здесь согласен.
ahamai> и что самое ужасное, при этом изменяя поведение базовых.
А здесь не согласен. Здесь прав товарищ AL, который говорит, что поведение остаётся прежним, нужно только подкорректировать логику парсера. Ну, типа, старые /u/e никуда не деваются, нужно только посмотреть, есть ли двоеточие в последнем элементе и привет.
Другое дело, что логику парсера можно было бы упростить в разы, приняв концепцию железобетонной структуры key/value/key/value/..., но уже имеем то, что имеем.
[>]
Re: Дополнения к стандарту
idec.talks
revoltech(spnet, 4) — ahamai
2024-10-31 23:45:25
ahamai> если ты предоставишь бенчмарки, что выгрузка всех сообщений единым блоком хотя бы в 2 раза быстрее, чем чанками по 20 сообщений, тогда это будет интересно. тогда мож и /get вернётся.
Это зависит от местоположения клиента и ноды. В стерильных тестовых условиях, может, и не вдвое быстрее будет. А вот в реальных время установки TCP/TLS-соединения тоже существенно добавляет к общей картине. Могу на днях замерять перефетч с shaos-а после уменьшения чанка с 389 сообщений до 40. Или с ping после уменьшения с 10000 до 40... Если интересно.
[>]
Re: Разбор idec №2
idec.talks
revoltech(spnet, 4) — ahamai
2024-11-01 00:11:59
ahamai> это полностью ломает единость формата. /u/e должна быть везде, и должна реализовываться в 3 строках.
Так она и реализуется в 3-5 строках, если нормальные ЯП юзать. И поведение от запроса со слайсом на ноду, которая слайсы не реализует, меняться не будет: этот последний компонент просто не является валидным именем эхи. Нода, которая не умеет слайсить, должна его просто отбросить. Если она так не делает, чини реализацию.
[>]
Re: Разбор idec №2
idec.talks
revoltech(spnet, 4) — ahamai
2024-11-01 08:37:41
ahamai> 1.
ahamai> > ВЕСЬ ЗАПРОС СПИСОК ЭХ
ahamai> > ПОЛУЧИЛИ СПИСКИ
ahamai> > ЕСЛИ ЕСТЬ ЛИМИТ, УСТАНОВИЛИ
ahamai> > становится
ahamai> > ПОЛУЧИЛИ СПИСОК ЭХ
ahamai> > ПРОВЕРИЛИ ПОСЛЕДНЮЮ
ahamai> > ЕСЛИ ЭТО СРЕЗ, ТО РАСПАРСИЛИ СРЕЗ
ahamai> > СОХРАНИЛИ ЛИМИТ
ahamai> > УДАЛИЛИ ПОСЛЕДНЮЮ ЭХУ
ahamai> > ПОЛУЧИЛИ СПИСКИ
ahamai> > УСТАНОВИЛИ ЛИМИТ, ЕСЛИ ЕСТЬ
Немного не так. Точнее, совсем не так. То, что ты написал — это манипуляция. «ЕСЛИ ЕСТЬ ЛИМИТ, УСТАНОВИЛИ» тоже не из одного пункта состоит, его тоже надо где-то взять и распарсить. Это раз. Два — «распарсили срез» — это одна операция. Правильнее было бы слегка иначе:
1. Получили список эх (сохранили путь, разделив его по /).
2. Взяли последнюю.
3. Если там есть двоеточие, сохранили всё до него в смещение и всё после него в лимит.
4. Удалили из списка ВСЕ невалидные имена эх (u и e тоже таковыми являются, не только слайс).
5. Выгребли списки из базы по уже установленному лимиту.
Пять шагов. Корректных.
[>]
Re: Разбор idec №2
idec.talks
revoltech(spnet, 4) — Andrew Lobanov
2024-11-01 08:50:23
AL> ЗЫЖ А где посмотреть на ноду на шелле.
Могу сделать хоть на busybox sh (+ busybox nc + busybox sed, возможно), но зачем? Это будет лютый тормоз. Как и связка busybox awk + busybox nc.
Если брать продвинутый шелл вроде bash или oksh, всё можно сделать непосредственно в нём, кроме самой отдачи по TCP. Я, блин, гофер-клиента на чистом баше не так давно делал (Bopher-NG), вопрос только, что это решает.
AL> А то Рома бьёт себя пяткой в грудь
Это от неосиляторства инструментов, не более. Я вот довольно быстро согласился и с 40 айдишниками вместо 380, и с контекстным парсингом /u/e вместо ключ/значение, поскольку принципиально это мало что меняет (алгоритмически тут можно всё тотально упростить, но для этого надо отказаться от обратной совместимости, иначе смысла немного). Те же вещи, на которых настаивает Рома, предложены даже не с позиции оптимизации, а с позиции «лишь бы существующий кривой код не чинить». Противно.
[>]
Re: Разбор idec №2
idec.talks
revoltech(spnet, 4) — ahamai
2024-11-01 09:07:20
ahamai> Можно вопрос. На каких вещах я настаиваю. Хоть на одной. Хоть на одной единственной,?
На изменении формата срезов, например. Как минимум на выносе оных из /u/e.
В моём варианте реализации /u/e (из 5 пунктов) нода, которая не умеет срезы, просто их проигнорирует как невалидное имя эхи, и отдаст все сообщения из запрошенных эх. Это так сложно?
[>]
Re: Рома порвался
idec.talks
revoltech(spnet, 4) — ahamai
2024-11-01 09:09:05
ahamai> Зато у вас новый стандарт будет. Ура!
А старый (до IDEC) где почитать-то? Или опять в ИМХОдники будут тыкать?
[>]
Re: Разбор idec №2
idec.talks
revoltech(spnet, 4) — ahamai
2024-11-01 09:14:01
ahamai> У меня тогда две. Там три строки понятного прозрачного кода.
Ну скинь эти три строки тогда. Почему-то уверен, что всего необходимого там не будет.
[>]
Re: Рома порвался
idec.talks
revoltech(spnet, 4) — ahamai
2024-11-01 09:21:20
ahamai> Потому что вы не делали Дизайна проекта, принимая много решений "как поступить", а базируетесь на уже готовой реализации, когда те решения, которые есть, кажутся уже сами собой разумеющимися.
С моей колокольни стороннего наблюдателя и имплементатора мне важны чётко документированные элементы протокола и как бы всё. С точки же зрения дизайна здесь, как говорится, есть два стула: либо ломаем вообще всю обратную совместимость и радикально упрощаем протокол (а упрощать и правда есть куда даже после выпиливания кучи эндпоинтов из стандарта), либо же проще оставить как есть, т.к. любые оптимизации ПРИ сохранении обратной совместимости приведут только к усложнению.
А почему так криво задизайнили в 2014 — это уж точно вопрос не ко мне. Но сейчас это приходится принимать как данность. Или же ломать совместимость полностью и делать как следует. Но тогда это уже будет другая сеть.
[>]
Re: Рома порвался
idec.talks
revoltech(spnet, 4) — ahamai
2024-11-01 09:39:22
ahamai> Проблема собственно только в том что вы проблемы не видите. Только и всего.
С /u/e проблемы действительно нет. Невалидные имена эх должны отбрасываться, даже если нода не умеет слайсы, она просто этот последний пункт выкинет и отдаст содержимое всего остального.
Если у тебя это не так, чини ноду.
[>]
Re: Рома порвался
idec.talks
revoltech(spnet, 4) — ahamai
2024-11-01 09:57:43
ahamai> вот смотри - есть какие-то данные, всё из которых, кроме несколько строк, выбираются простым фильтром. один будет писать крутой усложнённый фильтр, чтобы он отфильтровал все данные. второй применит простой фильтр а потом удалит данные вручную. это не разные программы, это разные ПОДХОДЫ.
В современном мире применителя второго подхода взломают за считанные дни. Забывать о таком подходе надо.
[>]
Re: Разбор idec №2
idec.talks
revoltech(spnet, 4) — ahamai
2024-11-01 10:02:59
ahamai> > Ну скинь эти три строки тогда. Почему-то уверен, что всего необходимого там не будет.
ahamai>
ahamai> url.split('/')
ahamai> for ea on this
ahamai> out.append([ea] + open('e/ea').splitlines()]
Даже не вчитываясь в on вместо in... А где здесь проверка на то, что тебе валидные имена эх подсунули? Хотя бы на наличие точки и длину от 3 до 120 символов?
В общем, как раз то, о чём я и говорил.
ahamai> вот парсер со срезами я сейчас на sh/bash и не напишу
А я напишу, но зачем?
ahamai> Но зато сейчас ты знаешь историю в ретроспективе, подумай об этом :) Ну или может кто ещё зайдёт и подумает.
Не понимаю, чем это знание мне поможет в плане грядущей реализации своей ноды. Вот если вообще свой протокол буду пилить, то, естественно, учту ваш опыт.
[>]
Re: Разбор idec №2
idec.talks
revoltech(spnet, 4) — ahamai
2024-11-01 10:31:19
ahamai> я не помню, есть echo_flt в том коде, но это вообще неважно.
Важно. Поскольку это уже не три строчки.
ahamai> лишнего оно не запросит а на неккоректное просто упадёт.
А надо, чтобы не падало, а игнорировало такие имена.
ahamai> оформление полиси, соглашений, стандартов и прочего - это вообще не технология.
Ну дык. Без чёткого ТЗ результат всегда ХЗ.
ahamai> Я не добавил фразу "как эту задачу решают программист и непрограммист"
Непрограммисты (хотя ХЗ, что ты в это слово вкладываешь) обычно в такие вещи просто не лезут.
ahamai> я, например. не программист
Я тоже. По профессии я вообще девопс, а по образованию криптограф. Но вот почему-то приходится программистам нод очевидные вещи втолковывать.