Danil
Alexander
Для совсем простых случаев я использовал https://github.com/sasbury/mini
Anonymous
Использовать для конфигов json - не уважать пользователей. Использую TOML:
https://github.com/BurntSushi/toml
Daniel
в стандартной либе есть парсер xml, кстати
Sebor▂▅▇█▓▒░
я вот тоже json не очень люблю для конфигов
Daniel
и он прям хороший (хоть и медленноват слегка)
Sebor▂▅▇█▓▒░
xml как по мне - еще хуже)
Sebor▂▅▇█▓▒░
toml выглядит неплохо
Daniel
в json нет комментариев, и это сразу делает его непригодным для конфигов
Daniel
toml ничего, но комментарии не попадают в структуру после парсинга, и нет возможности выплюнуть конфиг обратно с комментами
Daniel
в реальнрости полнофункционален только xml. но писать его руками - невыносимо :(
Daniel
итого - хорошего формата для конфигов нет не только в go, но и вообще
🏳️ Phil
🏳️ Phil
Глазами в смысле
Daniel
https://golang.org/src/encoding/xml/read.go?s=5406:5454#L116
If the XML element contains comments, they are accumulated in
the first struct field that has tag ",comment". The struct
field may have type []byte or string. If there is no such
field, the comments are discarded.
Mikhail
Видимо проще доку написать, чем упражняться с конфигами
Sebor▂▅▇█▓▒░
конкретно в моем случае сгодился бы и и ini формат)
Alexander
Еще я использовал какую-то реализацию dotenv для go (не могу сейчас прислать ссылку - не у компьютера). Как раз в стиле 12-factor app. Там и формат простой и комментарии есть. Но структура исключительно линейная по понятным причинам
Aleksandr
Alexander
только ini, только хардкор
Viktor
А чем ini плох? Ну, в простейших случаях .
Andrey
Andrey
xml наше всё!
Anonymous
Anonymous
xml наше всё!
Нее, бинарный encoding/asn1 рулит! Байты экономить надо!
Alexander
Alexander
и toml с yaml тоже
Alexander
xml - редко могу себе представить, но могу. json - для конфигов, это ппц.
Sebor▂▅▇█▓▒░
xml - у джавистов в почете)
Vladimir
Собственно toml это попытка стандартизовать то что принято называть ini
Roman
Nikita
TOML ты не видел, да?
Они там раз в неделю по новому появляются, можно постареть пока все пересмотришь
Vladimir
Vladimir
Vladimir
в котором всякий никому не нужный шлак
Roman
jsonc посмотрите, с комментариями он
Vladimir
Vladimir
можно еще до кучи сразу логи в protobuf писать :D
Andrey
Vladimir
Daniel
Спинным мозгом
Anonymous
А почему бы не сделать файл .install или .recommends заданного формата?
Anonymous
Это разве сложно?
Daniel
а?!
Daniel
зачем?
Daniel
которые ini
Viktor
Это с чего это они ini?
Viktor
Похожи но нет.
Viktor
На них кстати спека есть
Viktor
Почти..
Wingman
Может кто подскажет: делаю свой телнет-демон ; есть ли какие-нибудь либы для autocomplete и вот этого всего?
Anonymous
Всем привет, подскажите кто-то уже работал с rtmp протоколом ? Если да то какую либу используете ?
Anonymous
Wingman
John
может кто чатик подскажет телеграмный по базам данных? конкретно интересуют нереляционки, еще более конкретно aerospike
Daniel
Чата не знаю
Daniel
На вопросы попробую ответить
John
На вопросы попробую ответить
спасибо, есть необходимость отправить запрос в аэроспайк, там или lua скриптом или какими-то встроенными механизмами ожидать что запись появилась, после этого только возвращать ответ. собственно, способен ли аэроспайк сделать это сам? если нет, может есть реальные примеры как это реализовано?
Nafania
Nafania
Есть @dba_ru такая группа, но там больше про реляционные
John
Эм, так если он ответил что ок, то значит появилась
ну по сути да, я хочу чтобы запрос в аэроспайке висел до тех пор пока не появится запись, а запись появится только тогда когда ее загонит другой сервер, отличный от того что делал изначальный запрос. Общаться между серверами накладно
Daniel
я тут
John
по сути пробовал ковырять lua
`function get_session_address(rec)
local found = false
repeat
if aerospike:exists(rec) then
found = true
else
ffi.C.sleep(5)
end
until found
return rec["smth"]
end`
John
но в итоге получается запрос блокирующий для остальных коннектов в пуле(
Daniel
John
если есть какие-то альтернативы я с радостью рассмотрю
Daniel
почему ожидание появления записи нельза сделать на стороне клиента?
Daniel
смотрите