aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorasmyasnikov <asmyasnikov@ydb.tech>2024-08-15 00:28:07 +0300
committerasmyasnikov <asmyasnikov@ydb.tech>2024-08-15 00:39:45 +0300
commit8fbad371206713c1a4e15a89dc2b43d99e0e64c9 (patch)
tree6ec2814225c591c358af6f58e925e78e17660451
parentfc4a0dd6c5b8c0c8bb25546e9bf08394b8752ee8 (diff)
downloadydb-8fbad371206713c1a4e15a89dc2b43d99e0e64c9.tar.gz
supported #DOUBLE_QUOTE# and #BACKSLASH# placeholders
Данный PR - это выжимка из [PR](https://github.com/ydb-platform/ydb/pull/2977) внешнего [контрибьютора](https://github.com/OrlovPavel ). Ему для решения основной задачи (перевод грамматики YQL с ANTLRv3 на ANTLRv4) пришлось поправить файл build/scripts/configure_file.py в проекте github.com/ydb-platform/ydb. Собственно, в проекте YDB запрещено вносить правки в build/..., т.к. эта папка синкается ТОЛЬКО из Аркадии в гитхаб, в обратную сторону синка нет. Из-за этого мы не можем принять PR от внешнего контрибьютора. В качестве решения - я хочу занести данный фикс в Аркадию и дождаться синка из Аркадии в гитхаб, по-rebase-ить PR контрибьютора и тогда его уже можно будет мерджить. Сама проблема, которую решает данный фикс, описана в тикете 158ceea6282b8df7c8b62a43ffece62a8d9f70ca
-rwxr-xr-xbuild/scripts/configure_file.py7
1 files changed, 6 insertions, 1 deletions
diff --git a/build/scripts/configure_file.py b/build/scripts/configure_file.py
index 66f425ec8d..5ab7467391 100755
--- a/build/scripts/configure_file.py
+++ b/build/scripts/configure_file.py
@@ -53,7 +53,12 @@ if __name__ == "__main__":
usage()
varDict = {}
for x in sys.argv[3:]:
- key, value = str(x).split('=', 1)
+ try:
+ key, value = str(x).split('=', 1)
+ value = value.replace("#BACKSLASH#", "\\\\")
+ value = value.replace("#DOUBLE_QUOTE#", '"')
+ except Exception:
+ continue
varDict[key] = value
main(sys.argv[1], sys.argv[2], varDict)