Fix publishing udfs that use backticks in identifiers (#4225)

* Fix publishing udfs that use backticks in identifiers

* Update bigquery_etl/routine/parse_routine.py

Co-authored-by: Sean Rose <1994030+sean-rose@users.noreply.github.com>

---------

Co-authored-by: Sean Rose <1994030+sean-rose@users.noreply.github.com>
This commit is contained in:
Anna Scholtz 2023-08-31 16:00:44 -07:00 коммит произвёл GitHub
Родитель 13d7a690b1
Коммит f1f552ef47
Не найден ключ, соответствующий данной подписи
Идентификатор ключа GPG: 4AEE18F83AFDEB23
1 изменённых файлов: 6 добавлений и 1 удалений

Просмотреть файл

@ -191,7 +191,12 @@ class RawRoutine:
routines = get_routines(project)
dependencies = []
for udf in routines:
if udf["name"] in "\n".join(definitions):
udf_re = re.compile(
r"\b"
+ r"\.".join(f"`?{name}`?" for name in udf["name"].split("."))
+ r"\("
)
if udf_re.search("\n".join(definitions)):
dependencies.append(udf["name"])
dependencies.extend(re.findall(TEMP_UDF_RE, "\n".join(definitions)))