gentoo.ru
python
python@conference.gentoo.ru
Суббота, 26 мая 2012< ^ >
maksbotan установил(а) тему: ЯП Python || https://gist.github.com/289467 || Логи: http://tinyurl.com/gentoo-py-logs || "Python's a drop-in replacement for BASIC in the sense that Optimus Prime is a drop-in replacement for a truck." || Создан список рассылки python@lists.gentoo.org
Конфигурация комнаты
Участники комнаты

GMT+4
[00:17:12] <krigstask> Контора в Копенгагене ищет работника. Ну прямо в точности меня (-%Е
[00:19:07] <maksbotan> http://moving-innovations.com/blog/2012/05/25/ruby_targets-default-now-changed-to-include-both-ruby18-and-ruby19
[00:19:10] <maksbotan> прям в тему :)
[00:26:36] lk4d4 вышел(а) из комнаты
[00:29:33] <krigstask> Ты там собрал клиента?
[00:29:53] <maksbotan> я же сказал пока хром не соберется не смогу
[00:30:04] <maksbotan> у меня клавс-майл стоит, но как-то не работает
[00:30:40] <krigstask> Настроил криво, небось
[00:30:57] <maksbotan> ну я создаю учетку при запуске, а он дальше ничего
[00:31:01] <maksbotan> и полменю неактивно
[00:34:18] <krigstask> Мн-да
[00:34:22] <krigstask> Не осилил
[00:34:36] <maksbotan> а как надо было?
[00:34:44] <krigstask> Чтоб я помнил
[00:34:58] <krigstask> Я не меньше года назад её настраивал
[00:36:03] <krigstask> И вот я перебираю uwsgi из-за новых RUBY_TARGETS
[00:36:12] <krigstask> При том, что у меня ruby вообще нету
[00:36:14] <maksbotan> хаха =)
[00:49:38] maksbotan вышел(а) из комнаты
[02:37:19] ymr1 вышел(а) из комнаты
[08:34:14] lk4d4 вошёл(а) в комнату
[11:17:36] maksbotan вошёл(а) в комнату
[12:59:25] <krigstask> maksbotan: и где твоё письмо?
[12:59:37] <maksbotan> так и не пришло?
[12:59:38] <maksbotan> дерьмо
[12:59:46] <maksbotan> сейчас настрою клиент
[13:01:56] <maksbotan> этот клавс какой-то стремный все же
[13:04:46] <maksbotan> krigstask: ну вроде отправил
[13:09:56] <krigstask> Как-то не очень
[13:11:04] <maksbotan> да блин
[13:11:07] <maksbotan> я же из клиента отправлял
[13:13:46] <krigstask> С какого адреса?
[13:14:03] <maksbotan> [13:04:26] SMTP< 250 2.1.0 Ok
[13:04:26] SMTP> RCPT TO:<gentoo-python@lists.gentoo.org>
[13:04:26] SMTP< 250 2.1.5 Ok
[13:04:26] SMTP> DATA
[13:04:26] SMTP< 354 End data with <CR><LF>.<CR><LF>
[13:04:26] SMTP> . (EOM)
[13:04:27] SMTP< 250 2.0.0 Ok: queued as F3BF564928
[13:04:27] * message: Почта отправлена успешно.
[13:14:07] <maksbotan> maksbotan@gentoo.org
[13:14:58] <krigstask> Хм
[13:15:12] <maksbotan> может что-то с самой рассылкой?
[13:15:23] <maksbotan> потому что раньше тоже в -python не отправлялось
[13:15:29] <maksbotan> а в -dev всегда нормально было
[13:21:56] <krigstask> У меня всегда нормально было
[13:22:08] <krigstask> Поспрошай в IRC
[13:24:17] <maksbotan> уже спрашиваю
[13:24:19] <maksbotan> в -infra
[13:27:30] <maksbotan> krigstask: мне тут говорят что я не подписан о_О
[13:27:42] <krigstask> (-%Е
[13:28:43] <krigstask> Ботан не читатель
[13:31:20] <maksbotan> krigstask: ага, я другим адресом случайно подписался
[13:31:26] <maksbotan> дурак я :(
[13:33:03] <maksbotan> krigstask: вот теперь должно дойти
[13:45:13] <krigstask> Ну наконец-то
[13:45:38] <maksbotan> отлично
[13:45:44] <maksbotan> надо мне быть внимательнее
[13:56:13] <krigstask> Отвечают, но что-то не очень внятное
[13:59:30] <maksbotan> мда
[13:59:35] <maksbotan> и что вот мне ответить
[14:00:40] <krigstask> Я сам ввяжусь
[14:01:14] <maksbotan> давай
[14:01:20] <maksbotan> видел новый баг от горного?
[14:04:01] <krigstask> Наверное, нет
[14:04:16] <maksbotan> https://bugs.gentoo.org/show_bug.cgi?id=417601
[14:06:18] <krigstask> Разумно
[14:06:54] <maksbotan> ага
[14:07:00] <maksbotan> в ruby-ng такое есть :)
[14:30:05] <krigstask> Итак, для угорающих по декораторам
[14:30:08] <krigstask> Есть https://bitbucket.org/skrattaren/scripties/src/d6784afe6e5c/inotify_watcher.py#cl-35
[14:30:44] <krigstask> Почему, если вставить перед return f(...) какой-нибудь print('test'), он не выполняется?
[14:32:09] <maksbotan> krigstask: что ж ты не ввязался? :)
[14:32:28] <krigstask> В обсуждалово?
[14:32:31] <maksbotan> да
[14:32:33] <krigstask> Ещё ввяжусь
[14:34:22] <maksbotan> krigstask: мне кажется name = name or f.__name__ надо внести в def register_...
[14:35:04] <maksbotan> krigstask: если ты применяешь этот декоратор с параметрами по умолчанию, то надо писать
[14:35:09] <maksbotan> @register_action()
[14:35:13] <maksbotan> а не @register_action
[14:36:37] <krigstask> > мне кажется name = name or f.__name__ надо внести в def register_...
В определение функции, что ли?
[14:37:04] <maksbotan> в тело
[14:37:13] <krigstask> А где оно сейчас?
[14:37:15] <maksbotan> в register_action переменной f ещё нет
[14:37:19] <maksbotan> def register_action(name=None, catalogue=implemented_actions):
    ''' Registration decorator, maintaining dict of implemented actions'''
    name = name or f.__name__
    def register_closure(f):
        catalogue[name] = f
[14:37:30] <maksbotan> у тебя f используется до того как определено
[14:37:43] <maksbotan> в register_closure то есть внести
[14:37:49] <krigstask> А, тьфу
[14:37:52] <krigstask> Хе-хе
[14:38:19] <krigstask> Прохлопал ушами
[14:38:33] <maksbotan> бывает :)
[14:40:47] <krigstask> Про "@register_action(), а не @register_action" тоже не понял
[14:40:53] <maksbotan> ну типа
[14:41:01] <maksbotan> @register_action()
def blablabla
[14:41:15] <maksbotan> а не
@register_action
def blablabla
[14:41:33] <krigstask> А где у меня второй вариант?
[14:41:50] <maksbotan> я дальше-то код не читал, просто предположил почему может не выполнятьс
[14:42:05] <krigstask> Мн-да
[14:42:50] <maksbotan> значит return f(..) выполняется, а print нет
[14:42:52] <maksbotan> так что ли?
[14:43:26] <krigstask> Похоже на то
[14:43:39] <maksbotan> а ты stdout нигде не перенаправляешь?
[14:43:50] <krigstask> Ботан, там скрипт на страницу
[14:44:03] <maksbotan> ну может в консоли
[14:44:05] <krigstask> Может, ты поглядишь в код?
[14:44:12] <maksbotan> гляжу я
[14:44:30] <krigstask> Остальные print'ы срабатывают
[14:44:30] <maksbotan> сейчас inotifyx поставлю
[14:48:38] <maksbotan> и правда не срабатывает oO
[14:49:28] <maksbotan> krigstask: tmp вообще не выполняется
[14:49:47] <maksbotan> и понятно почему
[14:49:58] <maksbotan> потому что оно там не надо :)
[14:51:34] <krigstask> Потому что запускается сама f из словаря, вот что
[14:51:55] <maksbotan> я уже понял
[14:51:59] <maksbotan> убери def tmp()
[14:52:02] <maksbotan> и сделай return f
[14:52:19] <maksbotan> http://paste.pound-python.org/show/22504/
[14:52:40] <krigstask> Да, сам подумал
[14:52:55] <maksbotan> ладно
[14:53:34] <krigstask> Плохо, что тогда я не знаю, как мне отлавливать первый запуск функции
[14:54:26] <krigstask> Собственно, там даже `return f` не нужен
[14:54:41] <krigstask> О! Мысль!
[14:54:42] <maksbotan> будет ли оно так работать?
[14:55:26] <maksbotan> а, видимо когда декоратор возвращает None питон ничего не делает
[14:55:45] <krigstask> Просто я не вызываю функцию по имени
[14:55:51] <krigstask> А только из словаря
[14:55:56] <maksbotan> а
[14:56:17] <maksbotan> можно в словарь tmp добавлять, например
[14:56:46] <krigstask> Уже пробую
[14:56:55] <krigstask> (то и была мысль)
[14:57:02] <maksbotan> :)
[14:57:06] <maksbotan> так оно работает
[14:57:52] <maksbotan> кстати мне кажется правильнее будет сделать два декоратора. один регистрирует, а второй добавляет принты
[14:58:19] <krigstask> print'ы мне не нужны сами по себе, это я отладку отлаживал
[14:58:34] <maksbotan> а, ну тогда ладно
[15:05:38] <krigstask> У меня такое впечатление, что lodgeit сломался
[15:06:11] <krigstask> Тогда так:
        def tmp(*args, **kwargs):
            print(first_time)
            #first_time = False
            return f(*args, **kwargs)
[15:06:31] <krigstask> Ну и строчкой выше
        first_time = True
[15:06:53] <krigstask> Так всё работает, но если раскомментировать first_time = False, то валится
[15:06:58] <krigstask> Хрень какая-то
[15:07:58] <krigstask> maksbotan: а знаешь, почему lk4d4 молчит?
[15:08:12] <maksbotan> сломался, да
[15:08:14] <maksbotan> krigstask: почему?
[15:08:29] <maksbotan> krigstask: с какой ошибкой валится?
[15:08:34] <krigstask> Потому что у него свадьба
[15:08:41] <maksbotan> вау
[15:09:01] <krigstask> Если я в датах не запутался, конечно
[15:09:07] <maksbotan> krigstask: оно вроде так и должно валиться
[15:09:14] <maksbotan> потому что referenced before assignment
[15:09:25] <maksbotan> используй f.__first_time
[15:11:12] <krigstask> Уверен? Как-то странно. Да и не работает (-%Е
[15:11:24] <maksbotan> ,kby
[15:11:26] <maksbotan> блин
[15:11:31] <krigstask> Ну так если я не присваиваю, оно же исправно работает
[15:11:41] <krigstask> Ибо из верхней области берётся
[15:13:16] <maksbotan> http://paste.pound-python.org/show/22506/
[15:13:18] <maksbotan> так работает
[15:15:26] <krigstask> Чиорная магия областей видимости
[15:15:30] <maksbotan> ага
[15:15:30] <krigstask> Надо перечитать
[15:15:53] <maksbotan> он видимо вперед сканирует и если видит что переменная будет присвоена, то кидает ошибку
[15:16:03] <maksbotan> обходится либо так, либо через global
[15:16:06] <maksbotan> что есть костыль
[15:18:29] <krigstask> Вообще жонглировать так переменными внутри другой функции — тоже костыль
[15:18:54] <maksbotan> ты знаешь решение лучше? :)
[15:19:19] <maksbotan> можешь не f._first_time, а tmp._first_time использовать
[15:19:51] <krigstask> Я подумаю ещё
[15:20:20] <maksbotan> если придумаешь лучше, расскажи мне пожалуйста
[15:20:28] <krigstask> Есть ещё мысль пожонглировать с kwargs
[15:20:46] <krigstask> А ты бы зарегистрировался на BB и следил 3-:Е
[15:20:51] <krigstask> За полётом мысли
[15:20:59] <maksbotan> не думаю что стоит лезть в аргументы функции
[15:21:54] <krigstask> А по-моему, очень даже стоит
[15:22:20] <maksbotan> ну попробуй
[15:23:23] <krigstask> maksbotan: https://bitbucket.org/skrattaren/scripties/rss
[17:02:47] <krigstask> maksbotan: написал
[17:02:59] <maksbotan> ща заценю
[17:08:52] <maksbotan> я не понял горного
[17:09:45] <krigstask> Я тоже
[17:11:05] <krigstask> …о чём незамедлительно написал
[17:32:45] krigstask вышел(а) из комнаты
[17:33:18] krigstask вошёл(а) в комнату
[21:15:54] maksbotan вышел(а) из комнаты
[21:18:38] maksbotan вошёл(а) в комнату
[21:50:12] <maksbotan> --- Comment #1 from Krzysztof Pawlik <nelchael@gentoo.org> ---
Like I've pointed out on ML: feel free to implement.
[21:50:13] <maksbotan> офигенно
[21:50:19] <maksbotan> а он как бы и не при делах
[21:51:03] <krigstask> Во-во
[21:51:34] <maksbotan> пойти что ли и implement...
[21:57:34] maksbotan вышел(а) из комнаты
[22:06:03] maksbotan вошёл(а) в комнату
[22:09:39] maksbotan вышел(а) из комнаты
[22:15:04] maksbotan вошёл(а) в комнату
[22:23:56] <krigstask> maksbotan: http://www.gentoo.ru/node/25406
[22:23:59] <krigstask> Что скажешь?
[22:32:07] <krigstask> В рассылке намечается повальный срачик
[22:46:39] <maksbotan> krigstask: ничего не скажу, я не понял ничерта
[22:46:56] <krigstask> «ни черта»
[22:47:06] <maksbotan> ладно
[22:51:55] <maksbotan> krigstask: видел мой ответ в рассылке?
[23:01:32] <krigstask> Ага, молодец
[23:04:05] <krigstask> А я потерял телефон парикмахерши )-:Е
Powered by ejabberd Powered by Erlang Valid XHTML 1.0 Transitional Valid CSS!