Przeglądaj źródła

Document datalog linter introduced in #4503

Gabriel Horner 3 lat temu
rodzic
commit
320fbea9b9
1 zmienionych plików z 7 dodań i 0 usunięć
  1. 7 0
      docs/dev-practices.md

+ 7 - 0
docs/dev-practices.md

@@ -51,6 +51,13 @@ scripts/large_vars.clj
 
 To configure the linter, see its `config` var.
 
+### Datalog linting
+
+We use [datascript](https://github.com/tonsky/datascript)'s datalog to power our modeling and querying layer. Since datalog is concise, it is easy to write something invalid. To avoid typos and other preventable mistakes, we lint our queries and rules. Our queries are linted through clj-kondo and [datalog-parser](https://github.com/lambdaforge/datalog-parser). clj-kondo will error if it detects an invalid query. Our rules are linted through a script that also uses the datalog-parser. To run this linter:
+```
+scripts/lint_rules.clj
+```
+
 ## Testing
 
 We have unit and end to end tests.