synalog 0.2.0__tar.gz → 2.0.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (229) hide show
  1. {synalog-0.2.0 → synalog-2.0.0}/Cargo.lock +45 -4
  2. {synalog-0.2.0 → synalog-2.0.0}/Cargo.toml +3 -2
  3. synalog-2.0.0/NOTICE +22 -0
  4. {synalog-0.2.0 → synalog-2.0.0}/PKG-INFO +209 -136
  5. {synalog-0.2.0 → synalog-2.0.0}/README.md +203 -129
  6. synalog-2.0.0/docs/assertions.md +197 -0
  7. synalog-2.0.0/docs/assets/synalog-dark.svg +11 -0
  8. synalog-2.0.0/docs/assets/synalog-light.svg +11 -0
  9. synalog-2.0.0/docs/assets/synalog_favicon.png +0 -0
  10. {synalog-0.2.0 → synalog-2.0.0}/docs/benchmark/summary.md +3 -3
  11. synalog-2.0.0/docs/benchmark/summary.png +0 -0
  12. {synalog-0.2.0 → synalog-2.0.0}/docs/benchmark.md +4 -4
  13. synalog-2.0.0/docs/cli.md +263 -0
  14. {synalog-0.2.0 → synalog-2.0.0}/docs/development.md +6 -2
  15. synalog-2.0.0/docs/differences-datalog.md +125 -0
  16. {synalog-0.2.0 → synalog-2.0.0}/docs/differences.md +15 -5
  17. {synalog-0.2.0 → synalog-2.0.0}/docs/engines.md +2 -2
  18. {synalog-0.2.0 → synalog-2.0.0}/docs/examples/aggregation.l +4 -7
  19. {synalog-0.2.0 → synalog-2.0.0}/docs/examples/aggregation.log +60 -60
  20. synalog-2.0.0/docs/examples/axioms.l +122 -0
  21. synalog-2.0.0/docs/examples/axioms.log +13203 -0
  22. synalog-2.0.0/docs/examples/axioms.ttl +68 -0
  23. {synalog-0.2.0 → synalog-2.0.0}/docs/examples/directives.l +1 -4
  24. {synalog-0.2.0 → synalog-2.0.0}/docs/examples/functions.l +3 -6
  25. {synalog-0.2.0 → synalog-2.0.0}/docs/examples/functions.log +7 -7
  26. {synalog-0.2.0 → synalog-2.0.0}/docs/examples/functors.l +4 -7
  27. {synalog-0.2.0 → synalog-2.0.0}/docs/examples/functors.log +21 -21
  28. {synalog-0.2.0 → synalog-2.0.0}/docs/examples/getting_started.l +0 -2
  29. {synalog-0.2.0 → synalog-2.0.0}/docs/examples/getting_started.log +7 -7
  30. synalog-2.0.0/docs/examples/knowledge_graphs.l +49 -0
  31. {synalog-0.2.0 → synalog-2.0.0}/docs/examples/knowledge_graphs.log +107 -107
  32. {synalog-0.2.0 → synalog-2.0.0}/docs/examples/recursion.l +3 -6
  33. synalog-2.0.0/docs/examples/recursion.log +732 -0
  34. {synalog-0.2.0 → synalog-2.0.0}/docs/examples/run.py +47 -2
  35. synalog-2.0.0/docs/examples/shop/concepts/Customer.l +9 -0
  36. synalog-2.0.0/docs/examples/shop/concepts/OrderStatus.l +8 -0
  37. synalog-2.0.0/docs/examples/shop/data/orders.csv +6 -0
  38. synalog-2.0.0/docs/examples/shop/rules/CustomerRevenue.l +11 -0
  39. synalog-2.0.0/docs/examples/shop/rules/OrdersByStatus.l +9 -0
  40. synalog-2.0.0/docs/examples/shop/rules/TopCustomers.l +10 -0
  41. synalog-2.0.0/docs/examples/shop/synalog.toml +3 -0
  42. synalog-2.0.0/docs/examples/shop/tables/Orders.l +7 -0
  43. synalog-2.0.0/docs/examples/shop.log +50 -0
  44. synalog-2.0.0/docs/examples/smoke/concepts/Device.l +8 -0
  45. synalog-2.0.0/docs/examples/smoke/concepts/TestStatus.l +8 -0
  46. synalog-2.0.0/docs/examples/smoke/rules/FailuresByDevice.l +11 -0
  47. synalog-2.0.0/docs/examples/smoke/rules/RunsPerDay.l +10 -0
  48. synalog-2.0.0/docs/examples/smoke/synalog.toml +3 -0
  49. synalog-2.0.0/docs/examples/smoke/tables/SmokeTests.l +7 -0
  50. synalog-2.0.0/docs/examples/smoke.log +48 -0
  51. {synalog-0.2.0 → synalog-2.0.0}/docs/examples/syntax.l +5 -8
  52. {synalog-0.2.0 → synalog-2.0.0}/docs/examples/syntax.log +22 -22
  53. {synalog-0.2.0 → synalog-2.0.0}/docs/examples/temporal.l +4 -7
  54. {synalog-0.2.0 → synalog-2.0.0}/docs/examples/temporal.log +20 -20
  55. synalog-2.0.0/docs/examples/temporal_graph.l +87 -0
  56. synalog-2.0.0/docs/examples/temporal_graph.log +836 -0
  57. synalog-2.0.0/docs/getting-started.md +219 -0
  58. synalog-2.0.0/docs/index.md +61 -0
  59. {synalog-0.2.0 → synalog-2.0.0}/docs/javascripts/playground.js +112 -10
  60. synalog-2.0.0/docs/knowledge-graphs.md +427 -0
  61. synalog-2.0.0/docs/language/aggregation.md +115 -0
  62. synalog-2.0.0/docs/language/directives.md +98 -0
  63. synalog-2.0.0/docs/language/functions.md +126 -0
  64. {synalog-0.2.0 → synalog-2.0.0}/docs/language/functors.md +2 -2
  65. synalog-2.0.0/docs/language/index.md +152 -0
  66. synalog-2.0.0/docs/language/recursion.md +85 -0
  67. synalog-2.0.0/docs/language/syntax.md +153 -0
  68. {synalog-0.2.0 → synalog-2.0.0}/docs/language/temporal.md +19 -17
  69. {synalog-0.2.0 → synalog-2.0.0}/docs/playground.md +2 -2
  70. synalog-2.0.0/docs/python-api.md +206 -0
  71. {synalog-0.2.0 → synalog-2.0.0}/docs/stylesheets/extra.css +74 -1
  72. synalog-2.0.0/docs/verification.md +140 -0
  73. synalog-2.0.0/docs/why.md +122 -0
  74. synalog-2.0.0/img/synalog-dark.svg +11 -0
  75. synalog-2.0.0/img/synalog-light.svg +11 -0
  76. {synalog-0.2.0 → synalog-2.0.0}/pyproject.toml +19 -8
  77. synalog-2.0.0/python/synalog/__init__.py +47 -0
  78. synalog-2.0.0/python/synalog/checking.py +170 -0
  79. {synalog-0.2.0 → synalog-2.0.0}/python/synalog/cli.py +202 -170
  80. {synalog-0.2.0 → synalog-2.0.0}/python/synalog/config.py +2 -2
  81. synalog-2.0.0/python/synalog/execution.py +76 -0
  82. {synalog-0.2.0 → synalog-2.0.0}/python/synalog/introspect.py +118 -27
  83. synalog-2.0.0/python/synalog/project.py +361 -0
  84. synalog-2.0.0/python/synalog/runners.py +716 -0
  85. synalog-2.0.0/skills/synalog/SKILL.md +363 -0
  86. synalog-2.0.0/skills/synalog/examples/company/concepts/Department.l +8 -0
  87. synalog-2.0.0/skills/synalog/examples/company/concepts/Person.l +9 -0
  88. synalog-2.0.0/skills/synalog/examples/company/concepts/WorksIn.l +15 -0
  89. synalog-2.0.0/skills/synalog/examples/company/data/departments.csv +3 -0
  90. synalog-2.0.0/skills/synalog/examples/company/data/employees.csv +4 -0
  91. synalog-2.0.0/skills/synalog/examples/company/rules/TeamMate.l +18 -0
  92. synalog-2.0.0/skills/synalog/examples/company/synalog.toml +3 -0
  93. synalog-2.0.0/skills/synalog/examples/company/tables/Departments.l +6 -0
  94. synalog-2.0.0/skills/synalog/examples/company/tables/Employees.l +6 -0
  95. synalog-2.0.0/skills/synalog/examples/org/concepts/AllManagers.l +18 -0
  96. synalog-2.0.0/skills/synalog/examples/org/data/employees.csv +5 -0
  97. synalog-2.0.0/skills/synalog/examples/org/synalog.toml +3 -0
  98. synalog-2.0.0/skills/synalog/examples/org/tables/Employees.l +6 -0
  99. synalog-2.0.0/skills/synalog/examples/sales/concepts/Region.l +8 -0
  100. synalog-2.0.0/skills/synalog/examples/sales/rules/MonthlySales.l +12 -0
  101. synalog-2.0.0/skills/synalog/examples/sales/rules/TopRegion.l +10 -0
  102. synalog-2.0.0/skills/synalog/examples/sales/rules/TotalByRegion.l +10 -0
  103. synalog-2.0.0/skills/synalog/examples/sales/synalog.toml +3 -0
  104. synalog-2.0.0/skills/synalog/examples/sales/tables/Sales.l +6 -0
  105. synalog-2.0.0/src/assertion/mod.rs +86 -0
  106. synalog-2.0.0/src/assertion/parse.rs +580 -0
  107. synalog-2.0.0/src/assertion/report.rs +97 -0
  108. synalog-2.0.0/src/assertion/translate.rs +992 -0
  109. {synalog-0.2.0 → synalog-2.0.0}/src/compiler/annotations.rs +212 -145
  110. {synalog-0.2.0 → synalog-2.0.0}/src/compiler/annotations_test.rs +6 -5
  111. {synalog-0.2.0 → synalog-2.0.0}/src/compiler/concertina.rs +2 -1
  112. synalog-2.0.0/src/compiler/dialects.rs +1549 -0
  113. {synalog-0.2.0 → synalog-2.0.0}/src/compiler/dialects_test.rs +176 -23
  114. {synalog-0.2.0 → synalog-2.0.0}/src/compiler/expr_translate.rs +1002 -62
  115. {synalog-0.2.0 → synalog-2.0.0}/src/compiler/expr_translate_test.rs +21 -16
  116. {synalog-0.2.0 → synalog-2.0.0}/src/compiler/functors.rs +315 -30
  117. {synalog-0.2.0 → synalog-2.0.0}/src/compiler/functors_test.rs +17 -4
  118. {synalog-0.2.0 → synalog-2.0.0}/src/compiler/mod.rs +6 -33
  119. {synalog-0.2.0 → synalog-2.0.0}/src/compiler/program.rs +13 -8
  120. {synalog-0.2.0 → synalog-2.0.0}/src/compiler/program_test.rs +2 -1
  121. {synalog-0.2.0 → synalog-2.0.0}/src/compiler/rule_translate.rs +285 -114
  122. {synalog-0.2.0 → synalog-2.0.0}/src/compiler/rule_translate_test.rs +3 -1
  123. {synalog-0.2.0 → synalog-2.0.0}/src/compiler/type_inference/builder.rs +60 -20
  124. {synalog-0.2.0 → synalog-2.0.0}/src/compiler/type_inference/built_in.rs +14 -39
  125. {synalog-0.2.0 → synalog-2.0.0}/src/compiler/type_inference/edge.rs +2 -1
  126. {synalog-0.2.0 → synalog-2.0.0}/src/compiler/type_inference/expression.rs +2 -1
  127. {synalog-0.2.0 → synalog-2.0.0}/src/compiler/type_inference/graph.rs +53 -63
  128. synalog-2.0.0/src/compiler/type_inference/inference.rs +321 -0
  129. {synalog-0.2.0 → synalog-2.0.0}/src/compiler/type_inference/intersection.rs +2 -1
  130. {synalog-0.2.0 → synalog-2.0.0}/src/compiler/type_inference/types.rs +2 -1
  131. {synalog-0.2.0 → synalog-2.0.0}/src/compiler/universe.rs +795 -199
  132. {synalog-0.2.0 → synalog-2.0.0}/src/compiler/universe_test.rs +176 -100
  133. synalog-2.0.0/src/errors.rs +387 -0
  134. {synalog-0.2.0 → synalog-2.0.0}/src/lib.rs +1 -0
  135. {synalog-0.2.0 → synalog-2.0.0}/src/parser/json.rs +5 -2
  136. {synalog-0.2.0 → synalog-2.0.0}/src/parser/mod.rs +4 -1
  137. synalog-2.0.0/src/parser/names.rs +115 -0
  138. {synalog-0.2.0 → synalog-2.0.0}/src/parser/parse.rs +273 -148
  139. {synalog-0.2.0 → synalog-2.0.0}/src/parser/parse_test.rs +154 -0
  140. {synalog-0.2.0 → synalog-2.0.0}/src/parser/rewrite.rs +2 -1
  141. {synalog-0.2.0 → synalog-2.0.0}/src/parser/span.rs +36 -2
  142. {synalog-0.2.0 → synalog-2.0.0}/src/parser/traverse.rs +120 -2
  143. {synalog-0.2.0 → synalog-2.0.0}/src/parser/traverse_test.rs +69 -0
  144. synalog-2.0.0/src/python.rs +413 -0
  145. {synalog-0.2.0 → synalog-2.0.0}/src/verifier/arity.rs +91 -2
  146. synalog-2.0.0/src/verifier/assertions.rs +593 -0
  147. synalog-2.0.0/src/verifier/contradiction.rs +238 -0
  148. synalog-2.0.0/src/verifier/directives.rs +349 -0
  149. synalog-2.0.0/src/verifier/front_matter.rs +148 -0
  150. synalog-2.0.0/src/verifier/functors.rs +155 -0
  151. {synalog-0.2.0 → synalog-2.0.0}/src/verifier/mod.rs +109 -4
  152. synalog-2.0.0/src/verifier/orderby.rs +104 -0
  153. synalog-2.0.0/src/verifier/positional.rs +295 -0
  154. {synalog-0.2.0 → synalog-2.0.0}/src/verifier/reserved.rs +24 -7
  155. synalog-2.0.0/src/verifier/safety.rs +554 -0
  156. {synalog-0.2.0 → synalog-2.0.0}/src/verifier/sqlexpr.rs +9 -8
  157. synalog-2.0.0/src/verifier/undefined.rs +547 -0
  158. {synalog-0.2.0 → synalog-2.0.0}/src/verifier/vars.rs +107 -7
  159. {synalog-0.2.0 → synalog-2.0.0}/src/wasm.rs +40 -7
  160. {synalog-0.2.0 → synalog-2.0.0}/uv.lock +1707 -1610
  161. {synalog-0.2.0 → synalog-2.0.0}/zensical.toml +2 -1
  162. synalog-0.2.0/docs/assets/synalog-light.svg +0 -12
  163. synalog-0.2.0/docs/assets/synalog_favicon.png +0 -0
  164. synalog-0.2.0/docs/benchmark/summary.png +0 -0
  165. synalog-0.2.0/docs/cli.md +0 -235
  166. synalog-0.2.0/docs/differences-datalog.md +0 -112
  167. synalog-0.2.0/docs/examples/doid_excerpt.txt +0 -24
  168. synalog-0.2.0/docs/examples/knowledge_graphs.l +0 -54
  169. synalog-0.2.0/docs/examples/loading_csv.l +0 -29
  170. synalog-0.2.0/docs/examples/loading_csv.log +0 -75
  171. synalog-0.2.0/docs/examples/ontology.l +0 -54
  172. synalog-0.2.0/docs/examples/ontology.log +0 -585
  173. synalog-0.2.0/docs/examples/ontology.owl +0 -66
  174. synalog-0.2.0/docs/examples/ontology.ttl +0 -32
  175. synalog-0.2.0/docs/examples/program_structure.l +0 -34
  176. synalog-0.2.0/docs/examples/program_structure.log +0 -306
  177. synalog-0.2.0/docs/examples/recursion.log +0 -495
  178. synalog-0.2.0/docs/getting-started.md +0 -207
  179. synalog-0.2.0/docs/img/protege/active-ontology-tab.png +0 -0
  180. synalog-0.2.0/docs/img/protege/entities-tab.png +0 -0
  181. synalog-0.2.0/docs/index.md +0 -58
  182. synalog-0.2.0/docs/knowledge-graphs.md +0 -118
  183. synalog-0.2.0/docs/language/aggregation.md +0 -75
  184. synalog-0.2.0/docs/language/directives.md +0 -77
  185. synalog-0.2.0/docs/language/functions.md +0 -82
  186. synalog-0.2.0/docs/language/index.md +0 -153
  187. synalog-0.2.0/docs/language/recursion.md +0 -74
  188. synalog-0.2.0/docs/language/syntax.md +0 -118
  189. synalog-0.2.0/docs/ontologies.md +0 -112
  190. synalog-0.2.0/docs/python-api.md +0 -83
  191. synalog-0.2.0/docs/verification.md +0 -69
  192. synalog-0.2.0/img/synalog-dark.svg +0 -12
  193. synalog-0.2.0/img/synalog-light.svg +0 -12
  194. synalog-0.2.0/python/synalog/__init__.py +0 -22
  195. synalog-0.2.0/python/synalog/ontology.py +0 -360
  196. synalog-0.2.0/python/synalog/runners.py +0 -436
  197. synalog-0.2.0/python/synalog/template/.agents/skills/synalog/SKILL.md +0 -202
  198. synalog-0.2.0/python/synalog/template/.env.template +0 -39
  199. synalog-0.2.0/python/synalog/template/.gitignore +0 -5
  200. synalog-0.2.0/python/synalog/template/AGENTS.md +0 -29
  201. synalog-0.2.0/python/synalog/template/CLAUDE.md +0 -1
  202. synalog-0.2.0/python/synalog/template/example.l +0 -25
  203. synalog-0.2.0/python/synalog/template/lib/metrics.l +0 -6
  204. synalog-0.2.0/src/compiler/dialects.rs +0 -954
  205. synalog-0.2.0/src/compiler/type_inference/inference.rs +0 -355
  206. synalog-0.2.0/src/errors.rs +0 -1294
  207. synalog-0.2.0/src/python.rs +0 -189
  208. synalog-0.2.0/src/verifier/safety.rs +0 -246
  209. {synalog-0.2.0 → synalog-2.0.0}/.gitignore +0 -0
  210. {synalog-0.2.0 → synalog-2.0.0}/LICENSE +0 -0
  211. {synalog-0.2.0 → synalog-2.0.0}/docs/benchmark/results.json +0 -0
  212. {synalog-0.2.0 → synalog-2.0.0}/docs/benchmark/speedup_by_engine.png +0 -0
  213. {synalog-0.2.0 → synalog-2.0.0}/docs/benchmark/speedup_distribution.png +0 -0
  214. {synalog-0.2.0 → synalog-2.0.0}/docs/benchmark/time_comparison.png +0 -0
  215. {synalog-0.2.0 → synalog-2.0.0}/docs/benchmark/verify_by_engine.png +0 -0
  216. {synalog-0.2.0 → synalog-2.0.0}/docs/examples/directives.log +0 -0
  217. {synalog-0.2.0/docs/examples → synalog-2.0.0/docs/examples/smoke/data}/smoke_tests.csv +0 -0
  218. {synalog-0.2.0 → synalog-2.0.0}/docs/examples/verification.l +0 -0
  219. {synalog-0.2.0 → synalog-2.0.0}/docs/examples/verification.log +0 -0
  220. {synalog-0.2.0 → synalog-2.0.0}/docs/javascripts/summarize.js +0 -0
  221. {synalog-0.2.0 → synalog-2.0.0}/docs/playground/vendor/codemirror.js +0 -0
  222. {synalog-0.2.0 → synalog-2.0.0}/python/synalog/__main__.py +0 -0
  223. {synalog-0.2.0/python/synalog/template → synalog-2.0.0/skills/synalog/examples/sales}/data/sales.csv +0 -0
  224. {synalog-0.2.0 → synalog-2.0.0}/src/compiler/type_inference/mod.rs +0 -0
  225. {synalog-0.2.0 → synalog-2.0.0}/src/parser/json_test.rs +0 -0
  226. {synalog-0.2.0 → synalog-2.0.0}/src/parser/rewrite_test.rs +0 -0
  227. {synalog-0.2.0 → synalog-2.0.0}/src/parser/span_test.rs +0 -0
  228. {synalog-0.2.0 → synalog-2.0.0}/src/verifier/recursion.rs +0 -0
  229. {synalog-0.2.0 → synalog-2.0.0}/src/verifier/stratification.rs +0 -0
@@ -66,6 +66,12 @@ dependencies = [
66
66
  "derive_arbitrary",
67
67
  ]
68
68
 
69
+ [[package]]
70
+ name = "arraydeque"
71
+ version = "0.5.1"
72
+ source = "registry+https://github.com/rust-lang/crates.io-index"
73
+ checksum = "7d902e3d592a523def97af8f317b08ce16b7ab854c1985a0c671e6f15cebc236"
74
+
69
75
  [[package]]
70
76
  name = "arrayvec"
71
77
  version = "0.7.6"
@@ -533,7 +539,7 @@ dependencies = [
533
539
  "cast",
534
540
  "fallible-iterator 0.3.0",
535
541
  "fallible-streaming-iterator",
536
- "hashlink",
542
+ "hashlink 0.10.0",
537
543
  "libduckdb-sys",
538
544
  "num-integer",
539
545
  "rust_decimal",
@@ -629,6 +635,12 @@ version = "0.1.5"
629
635
  source = "registry+https://github.com/rust-lang/crates.io-index"
630
636
  checksum = "d9c4f5dac5e15c24eb999c26181a6ca40b39fe946cbe4c263c7209467bc83af2"
631
637
 
638
+ [[package]]
639
+ name = "foldhash"
640
+ version = "0.2.0"
641
+ source = "registry+https://github.com/rust-lang/crates.io-index"
642
+ checksum = "77ce24cb58228fbb8aa041425bb1050850ac19177686ea6e0f41a70416f56fdb"
643
+
632
644
  [[package]]
633
645
  name = "foreign-types"
634
646
  version = "0.3.2"
@@ -791,7 +803,7 @@ version = "0.15.5"
791
803
  source = "registry+https://github.com/rust-lang/crates.io-index"
792
804
  checksum = "9229cfe53dfd69f0609a49f65461bd93001ea1ef889cd5529dd176593f5338a1"
793
805
  dependencies = [
794
- "foldhash",
806
+ "foldhash 0.1.5",
795
807
  ]
796
808
 
797
809
  [[package]]
@@ -800,6 +812,15 @@ version = "0.16.1"
800
812
  source = "registry+https://github.com/rust-lang/crates.io-index"
801
813
  checksum = "841d1cc9bed7f9236f321df977030373f4a4163ae1a7dbfe1a51a2c1a51d9100"
802
814
 
815
+ [[package]]
816
+ name = "hashbrown"
817
+ version = "0.17.1"
818
+ source = "registry+https://github.com/rust-lang/crates.io-index"
819
+ checksum = "ed5909b6e89a2db4456e54cd5f673791d7eca6732202bbf2a9cc504fe2f9b84a"
820
+ dependencies = [
821
+ "foldhash 0.2.0",
822
+ ]
823
+
803
824
  [[package]]
804
825
  name = "hashlink"
805
826
  version = "0.10.0"
@@ -809,6 +830,15 @@ dependencies = [
809
830
  "hashbrown 0.15.5",
810
831
  ]
811
832
 
833
+ [[package]]
834
+ name = "hashlink"
835
+ version = "0.12.2"
836
+ source = "registry+https://github.com/rust-lang/crates.io-index"
837
+ checksum = "a596f1b20ed2cc5ecac41a164aaebc7258057060f06c0cf7a2ba3991ee7990fb"
838
+ dependencies = [
839
+ "hashbrown 0.17.1",
840
+ ]
841
+
812
842
  [[package]]
813
843
  name = "heck"
814
844
  version = "0.5.0"
@@ -1988,7 +2018,7 @@ dependencies = [
1988
2018
  "bitflags",
1989
2019
  "fallible-iterator 0.3.0",
1990
2020
  "fallible-streaming-iterator",
1991
- "hashlink",
2021
+ "hashlink 0.10.0",
1992
2022
  "libsqlite3-sys",
1993
2023
  "smallvec",
1994
2024
  ]
@@ -2318,7 +2348,7 @@ dependencies = [
2318
2348
 
2319
2349
  [[package]]
2320
2350
  name = "synalog"
2321
- version = "0.2.0"
2351
+ version = "2.0.0"
2322
2352
  dependencies = [
2323
2353
  "anyhow",
2324
2354
  "duckdb",
@@ -2332,6 +2362,7 @@ dependencies = [
2332
2362
  "serde_json",
2333
2363
  "thiserror",
2334
2364
  "wasm-bindgen",
2365
+ "yaml-rust2",
2335
2366
  ]
2336
2367
 
2337
2368
  [[package]]
@@ -3132,6 +3163,16 @@ dependencies = [
3132
3163
  "rustix",
3133
3164
  ]
3134
3165
 
3166
+ [[package]]
3167
+ name = "yaml-rust2"
3168
+ version = "0.13.0"
3169
+ source = "registry+https://github.com/rust-lang/crates.io-index"
3170
+ checksum = "57e5b818a27a4cd30884ea380857a5e56f7ec3ba24a3990a3cc0b95af3238e18"
3171
+ dependencies = [
3172
+ "arraydeque",
3173
+ "hashlink 0.12.2",
3174
+ ]
3175
+
3135
3176
  [[package]]
3136
3177
  name = "yoke"
3137
3178
  version = "0.8.1"
@@ -1,8 +1,8 @@
1
1
  [package]
2
2
  name = "synalog"
3
- version = "0.2.0"
3
+ version = "2.0.0"
4
4
  edition = "2024"
5
- description = "Logic programming for AI agents — Datalog-family language compiling to optimized SQL"
5
+ description = "Logic programming for AI agents: Datalog-family language compiling to optimized SQL"
6
6
  license = "Apache-2.0"
7
7
  repository = "https://github.com/synalinks/synalog"
8
8
  readme = "README.md"
@@ -35,6 +35,7 @@ rusqlite = { version = "0.34", optional = true, features = ["bundled"] }
35
35
  duckdb = { version = "1.2", optional = true, features = ["bundled"] }
36
36
  postgres = { version = "0.19", optional = true }
37
37
  reqwest = { version = "0.12", optional = true, features = ["blocking", "json"] }
38
+ yaml-rust2 = { version = "0.13.0", default-features = false }
38
39
 
39
40
  [dev-dependencies]
40
41
  regex = "1.12.3"
synalog-2.0.0/NOTICE ADDED
@@ -0,0 +1,22 @@
1
+ Synalog
2
+ Copyright 2025-2026 Yoan Sallami (Synalinks Team)
3
+
4
+ This product includes software derived from Logica
5
+ (https://github.com/EvgSkv/logica), the logic programming language created by
6
+ Evgeny Skvortsov and the Logica team at Google LLC.
7
+
8
+ Logica
9
+ Copyright 2020 Google LLC
10
+
11
+ Logica is licensed under the Apache License, Version 2.0. Portions of Synalog's
12
+ parser, compiler, and type-inference engine are derived from Logica's Python
13
+ implementation and have been rewritten in Rust. Files containing such derived
14
+ code carry a header identifying the original Logica source, the original
15
+ copyright, and a description of the modifications, as required by Section 4 of
16
+ the Apache License, Version 2.0.
17
+
18
+ This software is licensed under the Apache License, Version 2.0 (the "License");
19
+ you may not use these files except in compliance with the License. You may
20
+ obtain a copy of the License at
21
+
22
+ http://www.apache.org/licenses/LICENSE-2.0