Snusmumriken
Карочи, имхо, из-за непонятного кода происходит больше ошибок чем плюшек.
Anonymous
Да, я тоже так считаю
Anonymous
чем больше дерьма тем больше лопата
Snusmumriken
Anonymous
Anonymous
Ребята, есть кто-нибудь кто в убунту патчи слал?
Anonymous
Там сложны процесс вообще?
Anonymous
я прочитал там вроде просто debuild -S делаешь со своим обновленным сорсом
Anonymous
но потом непонятно - этот debdiff каждый может на трекере прикрепить?
Anonymous
А, ну соответственно забыл сказать про дебдифф. Это команда debdiff с двумя сорс-деб пакетами в виде аргументов
Anonymous
просто я недогоняю где гит, контроль версий все дела?
Snusmumriken
Хз, обычно работает "открыть исьюшку, мол, пофиксите это вот так вот, потому что потому"
Anonymous
наоборот, я хочу патчи слать с кодом
Anonymous
там на трекера баги-то есть
Anonymous
аа, понял про что ты
Anonymous
там довольно много бюрократии кстати
Snusmumriken
Не удивительно. Приходит какой-нибудь чел и говорит: "Ваша убунта неправильная", и всё ломает.
Anonymous
так она и так сломанная
Anonymous
убунта самый бажный дистрибутив
Snusmumriken
Потому что её постоянно развивает куча народу, мало связанного между собой?
Anonymous
наверное)
Anonymous
не знаю
Anonymous
может политика овнера неправильная
Roman
А я тут изучаю postgREST - супер штука, которая мапит http запросы в sql по проанализированной схеме базы, имхо у этого все шансы постепенно вытеснить все другие подходы, за этим будущее. 10 минут и у тебя есть апи для всей базы на все случаи жизни. И тут есть стартер-кит с опенрестей и прочими свистелками! Приятно удивлен, значит и луа будущее есть кроме мелких игрулек.
Anonymous
генерирует SQL на основе полей HTTP запроса?
Anonymous
или я не понял..
Anonymous
зато я понял почему убунта бажная))
Roman
генерирует SQL на основе полей HTTP запроса?
Прямо по урлу! Похоже на graphQL, но мне даже больше нравится
Anonymous
это не взлетит
Roman
Слишком круто, чтобы быть правдой, но правда
Roman
там уже и продакшн проекты, и комьюнити боьшое, и куча форков
Roman
не форков то есть, а дополнений всяких и библиотек
Anonymous
не взлетит
Snusmumriken
Да ладно, тот же sql в чуть другом формате. Но да, придётся обращаться к этой штуке только из бекенда, потому что юзеры чего только не пришлют совершенно самостоятельно, и разграничение прав тут не очень поможет.
Snusmumriken
Юзеры тебе организуют миллиард запросов туда, куда они не имеют права ломиться, пожалей базу. Это же всё проверять нужно.
Roman
Одна из фундаментальных идей - у постгреса встроена обалденная система прав
Anonymous
была уже такая история
Anonymous
couchdb
Anonymous
похоронили
Snusmumriken
https://ru.wikipedia.org/wiki/CouchDB > Состояние: активное Или похоронили == перестали использовать?
Anonymous
ну хайп был приличный
Anonymous
да и база сама неплохая
Anonymous
но не взлетело так чтобы как монга
Roman
потому что ноускл не нужен
Anonymous
АААААА
Anonymous
все в голове перемешалось
Anonymous
полная убунта
Roman
ну нужен иногда редко, но по возможностям и надежности SQL слишком долго слишком умными людьми пилится
vvzvlad
Ну такое себе занятие. Функции которые реагируют на то, кто их вызвал - странные. Не проще написать пару функций/методов под разные цели?
я именно для логгинга и хочу. Сейчас я передаю в функцию имя того, кто ее вызвал, а хочется без этого
Snusmumriken
Мне немножко кажется, что ты чем-то не тем занимаешься : ) Правда, я сам обычно логирую примерно так: function foo(a, b) logging:debug('Foo s: '..render{a, b}) a = a + b logging:debug('Foo e: '..render(a)) return a end function bar() x, y = 10, 20 logging:debug('Bar s: %d, %d', x, y) v = foo(x, y) logging:debug('Bar e: %d', v) return v end print(bar()) --> 30 И получаю такой листинг: Bar s: 10, 20 Foo s: {10, 20} Foo e: 30 Bar e: 30
Anonymous
нет, задача вполне реальна
Anonymous
просто у питона например есть getcurrentframe
Anonymous
в смысле стекфрейма
Snusmumriken
Ну типа ориентируемся в логах на тему "Где у нас там функция bar? Опа, вот она, а вот то как она вызвала foo".
Anonymous
и там можно итерироваться по трейсбеку
Snusmumriken
Подозреваю что у луёв этого нема потому что замедляет процесс/усложняет. Или нет.
Roman
Это кстати все есть, но надо ошибку вызывать
Snusmumriken
Это кстати все есть, но надо ошибку вызывать
Нет, я давал тебе пример "как это сделать без ошибки"
Snusmumriken
Snusmumriken
Тут нет ошибок. Это просто текст трейсбека. А вот когда дёргается ошибка - эта фигня вызывается самим интерпретатором.
Roman
оу, сор, правда есть, так а почему не подходит?
Snusmumriken
Ну, тут только имена функций, а не ссылки на их самих.
Snusmumriken
Плюс проблемы с методами, только имена методов, не указано "какой класс вызвал" (из какой таблицы метод).
Snusmumriken
На boot.lua не обращай внимания, это love2d-шная оболочка.
Roman
У дебага есть метод getinfo, он много чего показывает
Roman
для логгинга хватит с лихвой
Roman
есть ключевое отличие от питона: jit! Из стак трейса много чего выкинется просто потому что много чего инлайнится
Roman
ладно, не знаю питон, может там так же
Anonymous
jit да, это существенно
Anonymous
но в дотнете например jit поддерживает компиляцию в дебуге
ShadoWalkeR
Кстати, @Snusmumriken есть вопрос - почему такая вещь не отрабатывается, если нет файла правильно? extensions[v].include(assert(dofile(GLOBALS.ETC .. "LUA_"..v..".lua"),"No file")); Пришлось сделать проверку существования файла "LUA_"..v..".lua" через попытку его открыть на чтение
Snusmumriken
Ну да, типа можно через getinfo
Roman
из этого можно даже полноценный отладчик собрать, уверен что они и так есть, там и upvalues можно получить, и все что хочется
Snusmumriken
Roman
интроспекция интроспекция размышлял отделяя суп от специй я
Anonymous
отладчик все же подразумевает определенную инструменттацию
Anonymous
т.е. не только на чтение