Дайте предупреждение для определенного синтаксиса - PullRequest
0 голосов
/ 30 августа 2018

У меня был опыт работы с медленным подзапросом sqlalchemy с использованием синтаксиса Query.select_from(). Основываясь на этом опыте, я хочу получать предупреждения каждый раз, когда в нашей кодовой базе используется определенный синтаксис. Например, когда программисты добавляют этот код ниже, я хочу получать предупреждения.

q = session.query(Address).select_from(User).\
    join(User.addresses).\
    filter(User.name == 'ed')

Есть ли линтер или инструменты, которые могут это сделать?

1 Ответ

0 голосов
/ 30 августа 2018

В идеале вы должны установить ловушку предварительного получения на удаленном хост-сервере Git-репо, , как этот , чтобы прочитать отправленные файлы и grep для "query.*\.select_from": если обнаружено, этот крюк отклонит толчок.

Если у вас нет доступа к удаленному серверу (например, GitHub), вам нужно будет установить вместо него webhook .

Альтернатива состоит в том, чтобы развернуть pre-push hook на всех клиентах и ​​выполнить проверку там, но это можно обойти или не развернуть для всех.
Хук / webhook на стороне сервера безопаснее.

...