Другой вариант - записать во временный файл, чтобы предотвратить блокировку stdout вместо необходимости опроса с помощью функции connect (). Это работало для меня, где другие ответы не делали; например, на окнах.
outFile = tempfile.SpooledTemporaryFile()
errFile = tempfile.SpooledTemporaryFile()
proc = subprocess.Popen(args, stderr=errFile, stdout=outFile, universal_newlines=False)
wait_remaining_sec = timeout
while proc.poll() is None and wait_remaining_sec > 0:
time.sleep(1)
wait_remaining_sec -= 1
if wait_remaining_sec <= 0:
killProc(proc.pid)
raise ProcessIncompleteError(proc, timeout)
# read temp streams from start
outFile.seek(0);
errFile.seek(0);
out = outFile.read()
err = errFile.read()
outFile.close()
errFile.close()
TracMercurial интегрирует Trac с Подвижным. Assembla предоставляет бесплатному Подвижному хостингу интеграцию Trac.
идея состоит в том, что Вы имеете центральный репозиторий как свое ведущее устройство и загружаете все вспомогательные изменения от локальных репозиториев в основной.
FogBugz имеет трудный интеграция с Подвижным через их Печь для обжига продукт.
Существует также плагин для интеграции Подвижный с Jira. Посмотрите веб-страница для плагина.
Я также хотел бы добавить Redmine к списку. Я запустил с Trac, но я нашел, что подвижная поддержка (и интерфейс администрирования для всего) была намного лучше в Redmine.
BugTracker.NET теперь поддерживает интеграцию Mercurial так же, как он поддерживает Subversion и git. BugTracker.NET - это бесплатная система отслеживания ошибок ASP.NET с открытым исходным кодом .
Другие бесплатные средства отслеживания ошибок с открытым исходным кодом, поддерживающие Mercurial:
Ошибки Everywhere - это распределенная система отслеживания ошибок, поддерживающая Mercurial.
Если вы открыты для другого предложения, вы можете попробовать Artemis .
Хоть я и не использовал его, но выглядит достаточно просто.
Jira интегрируется с помощью плагина. Это отличный инструмент.
Есть BugzillaExtension для добавления комментария к ошибке Bugzilla каждый раз, когда вы указываете ее номер.
Mantis имеет бета-интеграцию для Mercurial: сообщение в блоге и код .
Я только что собрал баг-трекер командной строки под названием b для Mercurial, который, хотя он и не такой мощный, как Trac и тому подобное, является именно тем, что требуется во многих ситуациях. Его лучшая особенность в том, что его легко настроить - установите расширение Mercurial, и все ваши репозитории получат в свое распоряжение трекер ошибок. Я нахожу это невероятно полезным для небольших проектов, которые я не могу/не хочу настраивать с полноценным трекером, живущим где-то на сервере, просто hg b
и вперёд.
Недавно я разработал подключаемый модуль Trac, который объединяет некоторые функции Mercurial, которые еще не поддерживаются подключаемым модулем TracMercurial. Он называется TracMercurialChangesetPlugin. Это позволяет вам выполнять поиск в ваших наборах изменений, синхронизировать кеш, просматривать журнал изменений в ваших связанных заявках...
Вы можете прочитать об этом на http://tumblr.com/x8tg5xbsh