From 672050727f836374f05f6fa3aa12f0150407ad8d Mon Sep 17 00:00:00 2001 From: jack1142 <6032823+jack1142@users.noreply.github.com> Date: Sun, 8 Dec 2019 01:31:43 +0100 Subject: [PATCH] [Downloader] Ensure consistent output from git commands (#3160) * fix(downloader): ensure consistent output from git commands * chore(changelog): add towncrier entry --- changelog.d/downloader/3160.misc.rst | 1 + redbot/cogs/downloader/repo_manager.py | 6 ++++++ 2 files changed, 7 insertions(+) create mode 100644 changelog.d/downloader/3160.misc.rst diff --git a/changelog.d/downloader/3160.misc.rst b/changelog.d/downloader/3160.misc.rst new file mode 100644 index 000000000..1093dc0ee --- /dev/null +++ b/changelog.d/downloader/3160.misc.rst @@ -0,0 +1 @@ +Ensure consistent output from git commands for purpose of parsing. \ No newline at end of file diff --git a/redbot/cogs/downloader/repo_manager.py b/redbot/cogs/downloader/repo_manager.py index 255ca8d67..51a01ae37 100644 --- a/redbot/cogs/downloader/repo_manager.py +++ b/redbot/cogs/downloader/repo_manager.py @@ -513,6 +513,12 @@ class Repo(RepoJSONMixin): """ env = os.environ.copy() env["GIT_TERMINAL_PROMPT"] = "0" + # attempt to force all output to plain ascii english + # some methods that parse output may expect it + # according to gettext manual both variables have to be set: + # https://www.gnu.org/software/gettext/manual/gettext.html#Locale-Environment-Variables + env["LC_ALL"] = "C" + env["LANGUAGE"] = "C" kwargs["env"] = env async with self._repo_lock: p: CompletedProcess = await self._loop.run_in_executor(