Уведомления

Группа в Telegram: @pythonsu

#1 Окт. 16, 2009 18:22:51

sober
От:
Зарегистрирован: 2009-07-17
Сообщения: 17
Репутация: +  0  -
Профиль   Отправить e-mail  

проблема с выводом в stdout в хуке для SVN

Доброго времени суток;

необходимо в хуке для svn сделать вывод в sys.stdout либо sys.stderr в зависимости от результата выполнения метода, например:

def execute():
"""returns True or False"""
...
return succeed

if __name__ == "__main__":

# if succeed
if (execute()):
sys.stdout.write("Hook execution succeed!")
return 0
else:
sys.stderr.write('Hook execution failed!')
return 1
проблема в том, что аутпут виден только в том случае, когда хук пишет в stderr и возвращает единицу; в случае когда хук успешно отрабатывает, все что пишеться в stdout пользователь не видит; подскажите, пожалуйста, в чем может быть проблема.

Простите если это оффтопик и совсем не про python :)



Офлайн

#2 Окт. 16, 2009 18:34:29

pasaranax
От:
Зарегистрирован: 2009-06-13
Сообщения: 574
Репутация: +  0  -
Профиль   Отправить e-mail  

проблема с выводом в stdout в хуке для SVN

вставляй в нужных местах sys.stdout.flush(), чтобы скинуть буфер



Офлайн

#3 Окт. 19, 2009 10:18:39

sober
От:
Зарегистрирован: 2009-07-17
Сообщения: 17
Репутация: +  0  -
Профиль   Отправить e-mail  

проблема с выводом в stdout в хуке для SVN

pasaranax, спасибо за совет;
К сожалению, флаш буфера не помог; =(

пробовал так:

import sys
import logging

if __name__ == '__main__':

logger = logging.getLogger(__name__)
stream_hdlr = logging.StreamHandler()
logger.addHandler(stream_hdlr)
logger.setLevel(logging.INFO)

logger.info('starting hook')
stream_hdlr.flush()

sys.stdout.write('writing to stdout')
sys.stdout.flush()
Буду рад любым советам и замечаниям.



Отредактировано (Окт. 19, 2009 10:19:02)

Офлайн

#4 Окт. 20, 2009 08:05:06

sober
От:
Зарегистрирован: 2009-07-17
Сообщения: 17
Репутация: +  0  -
Профиль   Отправить e-mail  

проблема с выводом в stdout в хуке для SVN

никто не знает, в чем может быть проблема?



Офлайн

#5 Окт. 20, 2009 10:31:23

kmet
От:
Зарегистрирован: 2009-10-20
Сообщения: 6
Репутация: +  0  -
Профиль   Отправить e-mail  

проблема с выводом в stdout в хуке для SVN

судя по этому http://svnbook.red-bean.com/en/1.1/ch05s02.html для хуков start-commit и pre-commit клиенту передается только вывод stderr



Офлайн

#6 Окт. 21, 2009 10:51:44

sober
От:
Зарегистрирован: 2009-07-17
Сообщения: 17
Репутация: +  0  -
Профиль   Отправить e-mail  

проблема с выводом в stdout в хуке для SVN

действительно, судя по документации, клиент не получает вывод хуков в stdout;
kmet и pasaranax, благодарю за помощь! :)



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version