Есть хук скрип на python. Вот его главная функция:
def main(repos):
log_cmd = '%s log "%s"' % (SVNLOOK, repos)
log_msg = os.popen(log_cmd, 'r').readline().rstrip('n')
rev_number_cmd = '%s info "%s"' % (SVNLOOK, repos)
out = subprocess.Popen(rev_number_cmd, stdout=subprocess.PIPE, shell=True)
revs = out.stdout.read().decode('UTF-8')
own_key = check_commit_message(log_msg, jira)
comment_jira_ticket(jira, own_key, revs)
if __name__ == '__main__':
main(sys.argv[1])
Данный скрипт выполняет команду svnlook info и берет инфо последнего коммита в репозитории. При использовании команды в linux shell вся информация выводится верно и корректно:
username
2020-05-07 20:53:48 +0300 (Thu, 07 May 2020)
53
ISSUE-148 Win В первом раунде
При вызове команды скриптом и декода из utf-8 получается:
username
2020-05-07 20:53:48 +0300 (Thu, 07 May 2020)
53
ISSUE-148 Win {U+0412} {U+043F}{U+0435}{U+0440}{U+0432}{U+043E}{U+043C} {U+0440}{U+0430}{U+0443}{U+043D}{U+0434}{U+0435}
Не могу справится с этим: пробовал декоды из различных кодировок. Заранее спасибо за помощь!