|
@@ -51,6 +51,13 @@ scripts/large_vars.clj
|
|
|
|
|
|
To configure the linter, see its `config` var.
|
|
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
|
|
## Testing
|
|
|
|
|
|
We have unit and end to end tests.
|
|
We have unit and end to end tests.
|