egglog 6.0.0__tar.gz → 6.1.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.

Potentially problematic release.


This version of egglog might be problematic. Click here for more details.

Files changed (106) hide show
  1. {egglog-6.0.0 → egglog-6.1.0}/.pre-commit-config.yaml +1 -1
  2. {egglog-6.0.0 → egglog-6.1.0}/Cargo.lock +40 -47
  3. {egglog-6.0.0 → egglog-6.1.0}/Cargo.toml +13 -12
  4. {egglog-6.0.0 → egglog-6.1.0}/PKG-INFO +14 -14
  5. {egglog-6.0.0 → egglog-6.1.0}/docs/changelog.md +12 -1
  6. {egglog-6.0.0 → egglog-6.1.0}/docs/conf.py +1 -1
  7. egglog-6.1.0/docs/explanation/2024_03_17_community_talk.ipynb +9538 -0
  8. egglog-6.1.0/docs/explanation/2024_03_17_map.svg +15 -0
  9. {egglog-6.0.0 → egglog-6.1.0}/pyproject.toml +32 -2
  10. {egglog-6.0.0 → egglog-6.1.0}/python/egglog/bindings.pyi +25 -4
  11. egglog-6.1.0/python/egglog/builtins.py +463 -0
  12. {egglog-6.0.0 → egglog-6.1.0}/python/egglog/declarations.py +11 -2
  13. {egglog-6.0.0 → egglog-6.1.0}/python/egglog/egraph.py +66 -99
  14. {egglog-6.0.0 → egglog-6.1.0}/python/egglog/examples/bool.py +1 -2
  15. {egglog-6.0.0 → egglog-6.1.0}/python/egglog/examples/eqsat_basic.py +5 -8
  16. {egglog-6.0.0 → egglog-6.1.0}/python/egglog/examples/fib.py +2 -2
  17. {egglog-6.0.0 → egglog-6.1.0}/python/egglog/examples/lambda_.py +14 -26
  18. {egglog-6.0.0 → egglog-6.1.0}/python/egglog/examples/matrix.py +2 -2
  19. {egglog-6.0.0 → egglog-6.1.0}/python/egglog/examples/ndarrays.py +15 -28
  20. {egglog-6.0.0 → egglog-6.1.0}/python/egglog/examples/resolution.py +1 -0
  21. {egglog-6.0.0 → egglog-6.1.0}/python/egglog/examples/schedule_demo.py +1 -0
  22. {egglog-6.0.0 → egglog-6.1.0}/python/egglog/exp/array_api.py +158 -307
  23. {egglog-6.0.0 → egglog-6.1.0}/python/egglog/exp/array_api_numba.py +9 -12
  24. {egglog-6.0.0 → egglog-6.1.0}/python/egglog/exp/array_api_program_gen.py +21 -44
  25. {egglog-6.0.0 → egglog-6.1.0}/python/egglog/exp/program_gen.py +1 -0
  26. {egglog-6.0.0 → egglog-6.1.0}/python/egglog/runtime.py +1 -1
  27. {egglog-6.0.0 → egglog-6.1.0}/python/egglog/type_constraint_solver.py +1 -0
  28. egglog-6.1.0/python/tests/__init__.py +1 -0
  29. {egglog-6.0.0 → egglog-6.1.0}/python/tests/conftest.py +3 -2
  30. {egglog-6.0.0 → egglog-6.1.0}/python/tests/test_array_api.py +15 -17
  31. {egglog-6.0.0 → egglog-6.1.0}/python/tests/test_bindings.py +35 -11
  32. {egglog-6.0.0 → egglog-6.1.0}/python/tests/test_convert.py +13 -29
  33. {egglog-6.0.0 → egglog-6.1.0}/python/tests/test_high_level.py +112 -147
  34. {egglog-6.0.0 → egglog-6.1.0}/python/tests/test_modules.py +16 -11
  35. {egglog-6.0.0 → egglog-6.1.0}/python/tests/test_program_gen.py +11 -19
  36. {egglog-6.0.0 → egglog-6.1.0}/python/tests/test_py_object_sort.py +5 -7
  37. egglog-6.1.0/python/tests/test_runtime.py +143 -0
  38. {egglog-6.0.0 → egglog-6.1.0}/python/tests/test_type_constraint_solver.py +14 -13
  39. {egglog-6.0.0 → egglog-6.1.0}/src/conversions.rs +56 -39
  40. {egglog-6.0.0 → egglog-6.1.0}/src/egraph.rs +27 -16
  41. {egglog-6.0.0 → egglog-6.1.0}/src/py_object_sort.rs +81 -97
  42. {egglog-6.0.0 → egglog-6.1.0}/src/serialize.rs +0 -1
  43. {egglog-6.0.0 → egglog-6.1.0}/src/utils.rs +1 -1
  44. {egglog-6.0.0 → egglog-6.1.0}/stubtest_allow +2 -0
  45. egglog-6.0.0/python/egglog/builtins.py +0 -579
  46. egglog-6.0.0/python/tests/test_runtime.py +0 -143
  47. {egglog-6.0.0 → egglog-6.1.0}/.github/workflows/CI.yml +0 -0
  48. {egglog-6.0.0 → egglog-6.1.0}/.gitignore +0 -0
  49. {egglog-6.0.0 → egglog-6.1.0}/.readthedocs.yaml +0 -0
  50. {egglog-6.0.0 → egglog-6.1.0}/LICENSE +0 -0
  51. {egglog-6.0.0 → egglog-6.1.0}/README.md +0 -0
  52. {egglog-6.0.0 → egglog-6.1.0}/conftest.py +0 -0
  53. {egglog-6.0.0 → egglog-6.1.0}/docs/.gitignore +0 -0
  54. {egglog-6.0.0 → egglog-6.1.0}/docs/_templates/comments.html +0 -0
  55. {egglog-6.0.0 → egglog-6.1.0}/docs/environment.yml +0 -0
  56. {egglog-6.0.0 → egglog-6.1.0}/docs/explanation/.gitignore +0 -0
  57. {egglog-6.0.0 → egglog-6.1.0}/docs/explanation/2023_07_presentation.ipynb +0 -0
  58. {egglog-6.0.0 → egglog-6.1.0}/docs/explanation/2023_11_09_portland_state.ipynb +0 -0
  59. {egglog-6.0.0 → egglog-6.1.0}/docs/explanation/2023_11_17_pytensor.ipynb +0 -0
  60. {egglog-6.0.0 → egglog-6.1.0}/docs/explanation/2023_11_pydata_lightning_talk.ipynb +0 -0
  61. {egglog-6.0.0 → egglog-6.1.0}/docs/explanation/2023_12_02_congruence_closure-1.png +0 -0
  62. {egglog-6.0.0 → egglog-6.1.0}/docs/explanation/2023_12_02_congruence_closure-2.png +0 -0
  63. {egglog-6.0.0 → egglog-6.1.0}/docs/explanation/2023_12_02_congruence_closure.md +0 -0
  64. {egglog-6.0.0 → egglog-6.1.0}/docs/explanation/big_graph.svg +0 -0
  65. {egglog-6.0.0 → egglog-6.1.0}/docs/explanation/define_and_define.md +0 -0
  66. {egglog-6.0.0 → egglog-6.1.0}/docs/explanation/ecosystem-graph.png +0 -0
  67. {egglog-6.0.0 → egglog-6.1.0}/docs/explanation/egg.png +0 -0
  68. {egglog-6.0.0 → egglog-6.1.0}/docs/explanation/indexing_pushdown.ipynb +0 -0
  69. {egglog-6.0.0 → egglog-6.1.0}/docs/explanation/moa.png +0 -0
  70. {egglog-6.0.0 → egglog-6.1.0}/docs/explanation/optional_values.md +0 -0
  71. {egglog-6.0.0 → egglog-6.1.0}/docs/explanation/pldi_2023_presentation.ipynb +0 -0
  72. {egglog-6.0.0 → egglog-6.1.0}/docs/explanation.md +0 -0
  73. {egglog-6.0.0 → egglog-6.1.0}/docs/how-to-guides.md +0 -0
  74. {egglog-6.0.0 → egglog-6.1.0}/docs/index.md +0 -0
  75. {egglog-6.0.0 → egglog-6.1.0}/docs/reference/bindings.md +0 -0
  76. {egglog-6.0.0 → egglog-6.1.0}/docs/reference/contributing.md +0 -0
  77. {egglog-6.0.0 → egglog-6.1.0}/docs/reference/egglog-translation.md +0 -0
  78. {egglog-6.0.0 → egglog-6.1.0}/docs/reference/high-level.md +0 -0
  79. {egglog-6.0.0 → egglog-6.1.0}/docs/reference/python-integration.md +0 -0
  80. {egglog-6.0.0 → egglog-6.1.0}/docs/reference/usage.md +0 -0
  81. {egglog-6.0.0 → egglog-6.1.0}/docs/reference.md +0 -0
  82. {egglog-6.0.0 → egglog-6.1.0}/docs/tutorials/getting-started.ipynb +0 -0
  83. {egglog-6.0.0 → egglog-6.1.0}/docs/tutorials/screenshot-1.png +0 -0
  84. {egglog-6.0.0 → egglog-6.1.0}/docs/tutorials/screenshot-2.png +0 -0
  85. {egglog-6.0.0 → egglog-6.1.0}/docs/tutorials/sklearn.ipynb +0 -0
  86. {egglog-6.0.0 → egglog-6.1.0}/docs/tutorials.md +0 -0
  87. {egglog-6.0.0 → egglog-6.1.0}/python/egglog/__init__.py +0 -0
  88. {egglog-6.0.0 → egglog-6.1.0}/python/egglog/config.py +0 -0
  89. {egglog-6.0.0 → egglog-6.1.0}/python/egglog/examples/README.rst +0 -0
  90. {egglog-6.0.0 → egglog-6.1.0}/python/egglog/examples/__init__.py +0 -0
  91. {egglog-6.0.0 → egglog-6.1.0}/python/egglog/exp/__init__.py +0 -0
  92. {egglog-6.0.0 → egglog-6.1.0}/python/egglog/exp/array_api_jit.py +0 -0
  93. {egglog-6.0.0 → egglog-6.1.0}/python/egglog/graphviz_widget.py +0 -0
  94. {egglog-6.0.0 → egglog-6.1.0}/python/egglog/ipython_magic.py +0 -0
  95. {egglog-6.0.0 → egglog-6.1.0}/python/egglog/py.typed +0 -0
  96. {egglog-6.0.0 → egglog-6.1.0}/python/egglog/widget.css +0 -0
  97. {egglog-6.0.0 → egglog-6.1.0}/python/egglog/widget.js +0 -0
  98. {egglog-6.0.0 → egglog-6.1.0}/python/tests/__snapshots__/test_array_api/TestLDA.test_optimize.py +0 -0
  99. {egglog-6.0.0 → egglog-6.1.0}/python/tests/__snapshots__/test_array_api/TestLDA.test_source_optimized.py +0 -0
  100. {egglog-6.0.0 → egglog-6.1.0}/python/tests/__snapshots__/test_array_api/TestLDA.test_trace.py +0 -0
  101. {egglog-6.0.0 → egglog-6.1.0}/python/tests/__snapshots__/test_program_gen/test_to_string.py +0 -0
  102. {egglog-6.0.0 → egglog-6.1.0}/python/tests/test_typing.py +0 -0
  103. {egglog-6.0.0 → egglog-6.1.0}/rust-toolchain +0 -0
  104. {egglog-6.0.0 → egglog-6.1.0}/src/error.rs +0 -0
  105. {egglog-6.0.0 → egglog-6.1.0}/src/lib.rs +0 -0
  106. {egglog-6.0.0 → egglog-6.1.0}/test-data/unit/check-high-level.test +0 -0
@@ -5,7 +5,7 @@ ci:
5
5
  skip: [mypy, docs, stubtest]
6
6
  repos:
7
7
  - repo: https://github.com/astral-sh/ruff-pre-commit
8
- rev: v0.2.0
8
+ rev: v0.2.1
9
9
  hooks:
10
10
  - id: ruff
11
11
  args: [--fix, --exit-non-zero-on-fix]
@@ -285,16 +285,17 @@ checksum = "675e35c02a51bb4d4618cb4885b3839ce6d1787c97b664474d9208d074742e20"
285
285
  [[package]]
286
286
  name = "egglog"
287
287
  version = "0.1.0"
288
- source = "git+https://github.com/egraphs-good/egglog?rev=ceed816e9369570ffed9feeba157b19471dda70d#ceed816e9369570ffed9feeba157b19471dda70d"
288
+ source = "git+https://github.com/egraphs-good/egglog?rev=0113af1d6476b75d4319591cc3d675f96a71cdc5#0113af1d6476b75d4319591cc3d675f96a71cdc5"
289
289
  dependencies = [
290
290
  "clap",
291
291
  "egraph-serialize",
292
292
  "env_logger",
293
+ "generic_symbolic_expressions",
293
294
  "hashbrown 0.14.1",
294
295
  "indexmap",
295
296
  "instant",
296
297
  "lalrpop",
297
- "lalrpop-util 0.20.0",
298
+ "lalrpop-util",
298
299
  "lazy_static",
299
300
  "log",
300
301
  "num-integer",
@@ -306,17 +307,16 @@ dependencies = [
306
307
  "serde_json",
307
308
  "smallvec",
308
309
  "symbol_table",
309
- "symbolic_expressions",
310
310
  "thiserror",
311
311
  ]
312
312
 
313
313
  [[package]]
314
314
  name = "egglog-python"
315
- version = "6.0.0"
315
+ version = "6.1.0"
316
316
  dependencies = [
317
317
  "egglog",
318
318
  "egraph-serialize",
319
- "lalrpop-util 0.19.12",
319
+ "lalrpop-util",
320
320
  "log",
321
321
  "num-rational",
322
322
  "ordered-float",
@@ -329,7 +329,7 @@ dependencies = [
329
329
  [[package]]
330
330
  name = "egraph-serialize"
331
331
  version = "0.1.0"
332
- source = "git+https://github.com/saulshanabrook/egraph-serialize?rev=95a5b802c662a1036b5549b0c5c7b4586dee211c#95a5b802c662a1036b5549b0c5c7b4586dee211c"
332
+ source = "git+https://github.com/egraphs-good/egraph-serialize?rev=5838c036623e91540831745b1574539e01c8cb23#5838c036623e91540831745b1574539e01c8cb23"
333
333
  dependencies = [
334
334
  "graphviz-rust",
335
335
  "indexmap",
@@ -416,6 +416,11 @@ dependencies = [
416
416
  "version_check",
417
417
  ]
418
418
 
419
+ [[package]]
420
+ name = "generic_symbolic_expressions"
421
+ version = "5.0.3"
422
+ source = "git+https://github.com/oflatt/symbolic-expressions?rev=655b6a4c06b4b3d3b2300e17779860b4abe440f0#655b6a4c06b4b3d3b2300e17779860b4abe440f0"
423
+
419
424
  [[package]]
420
425
  name = "getrandom"
421
426
  version = "0.2.10"
@@ -493,9 +498,9 @@ dependencies = [
493
498
 
494
499
  [[package]]
495
500
  name = "indoc"
496
- version = "1.0.9"
501
+ version = "2.0.4"
497
502
  source = "registry+https://github.com/rust-lang/crates.io-index"
498
- checksum = "bfa799dd5ed20a7e349f3b4639aa80d74549c81716d9ec4f994c9b5815598306"
503
+ checksum = "1e186cfbae8084e513daff4240b4797e342f988cecda4fb6c939150f96315fd8"
499
504
 
500
505
  [[package]]
501
506
  name = "instant"
@@ -566,7 +571,7 @@ dependencies = [
566
571
  "ena",
567
572
  "is-terminal",
568
573
  "itertools",
569
- "lalrpop-util 0.20.0",
574
+ "lalrpop-util",
570
575
  "petgraph",
571
576
  "pico-args",
572
577
  "regex",
@@ -577,15 +582,6 @@ dependencies = [
577
582
  "unicode-xid",
578
583
  ]
579
584
 
580
- [[package]]
581
- name = "lalrpop-util"
582
- version = "0.19.12"
583
- source = "registry+https://github.com/rust-lang/crates.io-index"
584
- checksum = "d3c48237b9604c5a4702de6b824e02006c3214327564636aef27c1028a8fa0ed"
585
- dependencies = [
586
- "regex",
587
- ]
588
-
589
585
  [[package]]
590
586
  name = "lalrpop-util"
591
587
  version = "0.20.0"
@@ -625,9 +621,9 @@ dependencies = [
625
621
 
626
622
  [[package]]
627
623
  name = "log"
628
- version = "0.4.19"
624
+ version = "0.4.20"
629
625
  source = "registry+https://github.com/rust-lang/crates.io-index"
630
- checksum = "b06a4cde4c0f271a446782e3eff8de789548ce57dbc8eca9292c27f4a42004b4"
626
+ checksum = "b5e6163cb8c49088c2c36f57875e58ccd8c87c7427f7fbd50ea6710b2f3f2e8f"
631
627
 
632
628
  [[package]]
633
629
  name = "memchr"
@@ -637,9 +633,9 @@ checksum = "2dffe52ecf27772e601905b7522cb4ef790d2cc203488bbd0e2fe85fcb74566d"
637
633
 
638
634
  [[package]]
639
635
  name = "memoffset"
640
- version = "0.8.0"
636
+ version = "0.9.0"
641
637
  source = "registry+https://github.com/rust-lang/crates.io-index"
642
- checksum = "d61c719bcfbcf5d62b3a09efa6088de8c54bc0bfcd3ea7ae39fcc186108b8de1"
638
+ checksum = "5a634b1c61a95585bd15607c6ab0c4e5b226e695ff2800ba0cdccddf208c406c"
643
639
  dependencies = [
644
640
  "autocfg",
645
641
  ]
@@ -825,9 +821,9 @@ dependencies = [
825
821
 
826
822
  [[package]]
827
823
  name = "pyo3"
828
- version = "0.18.3"
824
+ version = "0.20.2"
829
825
  source = "registry+https://github.com/rust-lang/crates.io-index"
830
- checksum = "e3b1ac5b3731ba34fdaa9785f8d74d17448cd18f30cf19e0c7e7b1fdb5272109"
826
+ checksum = "9a89dc7a5850d0e983be1ec2a463a171d20990487c3cfcd68b5363f1ee3d6fe0"
831
827
  dependencies = [
832
828
  "cfg-if",
833
829
  "indoc",
@@ -842,9 +838,9 @@ dependencies = [
842
838
 
843
839
  [[package]]
844
840
  name = "pyo3-build-config"
845
- version = "0.18.3"
841
+ version = "0.20.2"
846
842
  source = "registry+https://github.com/rust-lang/crates.io-index"
847
- checksum = "9cb946f5ac61bb61a5014924910d936ebd2b23b705f7a4a3c40b05c720b079a3"
843
+ checksum = "07426f0d8fe5a601f26293f300afd1a7b1ed5e78b2a705870c5f30893c5163be"
848
844
  dependencies = [
849
845
  "once_cell",
850
846
  "target-lexicon",
@@ -852,9 +848,9 @@ dependencies = [
852
848
 
853
849
  [[package]]
854
850
  name = "pyo3-ffi"
855
- version = "0.18.3"
851
+ version = "0.20.2"
856
852
  source = "registry+https://github.com/rust-lang/crates.io-index"
857
- checksum = "fd4d7c5337821916ea2a1d21d1092e8443cf34879e53a0ac653fbb98f44ff65c"
853
+ checksum = "dbb7dec17e17766b46bca4f1a4215a85006b4c2ecde122076c562dd058da6cf1"
858
854
  dependencies = [
859
855
  "libc",
860
856
  "pyo3-build-config",
@@ -862,9 +858,9 @@ dependencies = [
862
858
 
863
859
  [[package]]
864
860
  name = "pyo3-log"
865
- version = "0.8.3"
861
+ version = "0.9.0"
866
862
  source = "registry+https://github.com/rust-lang/crates.io-index"
867
- checksum = "f47b0777feb17f61eea78667d61103758b243a871edc09a7786500a50467b605"
863
+ checksum = "4c10808ee7250403bedb24bc30c32493e93875fef7ba3e4292226fe924f398bd"
868
864
  dependencies = [
869
865
  "arc-swap",
870
866
  "log",
@@ -873,25 +869,26 @@ dependencies = [
873
869
 
874
870
  [[package]]
875
871
  name = "pyo3-macros"
876
- version = "0.18.3"
872
+ version = "0.20.2"
877
873
  source = "registry+https://github.com/rust-lang/crates.io-index"
878
- checksum = "a9d39c55dab3fc5a4b25bbd1ac10a2da452c4aca13bb450f22818a002e29648d"
874
+ checksum = "05f738b4e40d50b5711957f142878cfa0f28e054aa0ebdfc3fd137a843f74ed3"
879
875
  dependencies = [
880
876
  "proc-macro2",
881
877
  "pyo3-macros-backend",
882
878
  "quote",
883
- "syn 1.0.109",
879
+ "syn 2.0.32",
884
880
  ]
885
881
 
886
882
  [[package]]
887
883
  name = "pyo3-macros-backend"
888
- version = "0.18.3"
884
+ version = "0.20.2"
889
885
  source = "registry+https://github.com/rust-lang/crates.io-index"
890
- checksum = "97daff08a4c48320587b5224cc98d609e3c27b6d437315bd40b605c98eeb5918"
886
+ checksum = "0fc910d4851847827daf9d6cdd4a823fbdaab5b8818325c5e97a86da79e8881f"
891
887
  dependencies = [
888
+ "heck",
892
889
  "proc-macro2",
893
890
  "quote",
894
- "syn 1.0.109",
891
+ "syn 2.0.32",
895
892
  ]
896
893
 
897
894
  [[package]]
@@ -1106,18 +1103,14 @@ checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623"
1106
1103
 
1107
1104
  [[package]]
1108
1105
  name = "symbol_table"
1109
- version = "0.2.0"
1110
- source = "git+https://github.com/mwillsey/symbol_table?rev=acddcf8938d1b4ed2fce048c9d83c30203d404b9#acddcf8938d1b4ed2fce048c9d83c30203d404b9"
1106
+ version = "0.3.0"
1107
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1108
+ checksum = "828f672b631c220bf6ea8a1d3b82c7d0fc998e5ba8373383d8604bc1e2a6245a"
1111
1109
  dependencies = [
1112
1110
  "ahash 0.7.6",
1113
1111
  "hashbrown 0.12.3",
1114
1112
  ]
1115
1113
 
1116
- [[package]]
1117
- name = "symbolic_expressions"
1118
- version = "5.0.3"
1119
- source = "git+https://github.com/oflatt/symbolic-expressions?rev=4c0ea5ca008f972450b2af72387e64d2c1c6a791#4c0ea5ca008f972450b2af72387e64d2c1c6a791"
1120
-
1121
1114
  [[package]]
1122
1115
  name = "syn"
1123
1116
  version = "1.0.109"
@@ -1234,9 +1227,9 @@ checksum = "f962df74c8c05a667b5ee8bcf162993134c104e96440b663c8daa176dc772d8c"
1234
1227
 
1235
1228
  [[package]]
1236
1229
  name = "unindent"
1237
- version = "0.1.11"
1230
+ version = "0.2.3"
1238
1231
  source = "registry+https://github.com/rust-lang/crates.io-index"
1239
- checksum = "e1766d682d402817b5ac4490b3c3002d91dfa0d22812f341609f97b08757359c"
1232
+ checksum = "c7de7d73e1754487cb58364ee906a499937a0dfabd86bcb980fa99ec8c8fa2ce"
1240
1233
 
1241
1234
  [[package]]
1242
1235
  name = "utf8parse"
@@ -1246,9 +1239,9 @@ checksum = "711b9620af191e0cdc7468a8d14e709c3dcdb115b36f838e601583af800a370a"
1246
1239
 
1247
1240
  [[package]]
1248
1241
  name = "uuid"
1249
- version = "1.5.0"
1242
+ version = "1.7.0"
1250
1243
  source = "registry+https://github.com/rust-lang/crates.io-index"
1251
- checksum = "88ad59a7560b41a70d191093a945f0b87bc1deeda46fb237479708a1d6b6cdfc"
1244
+ checksum = "f00cc9702ca12d3c81455259621e676d0f7251cec66a21e98fe2e9a37db93b2a"
1252
1245
  dependencies = [
1253
1246
  "getrandom",
1254
1247
  ]
@@ -1,6 +1,6 @@
1
1
  [package]
2
2
  name = "egglog-python"
3
- version = "6.0.0"
3
+ version = "6.1.0"
4
4
  edition = "2021"
5
5
 
6
6
  # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
@@ -9,24 +9,25 @@ name = "egglog_python"
9
9
  crate-type = ["cdylib"]
10
10
 
11
11
  [dependencies]
12
- pyo3 = { version = "0.18.1", features = ["extension-module"] }
13
- # TODO: Upgrade we can test type analysis for
12
+ pyo3 = { version = "0.20.2", features = ["extension-module"] }
13
+
14
14
  # https://github.com/egraphs-good/egglog/compare/ceed816e9369570ffed9feeba157b19471dda70d...main
15
- egglog = { git = "https://github.com/egraphs-good/egglog", rev = "ceed816e9369570ffed9feeba157b19471dda70d" }
15
+ egglog = { git = "https://github.com/egraphs-good/egglog", rev = "0113af1d6476b75d4319591cc3d675f96a71cdc5" }
16
16
  # egglog = { git = "https://github.com/oflatt/egg-smol", branch = "oflatt-fast-terms" }
17
17
  # egglog = { git = "https://github.com/saulshanabrook/egg-smol", rev = "38b3014b34399cc78887ede09c845b2a5d6c7d19" }
18
- egraph-serialize = { git = "https://github.com/saulshanabrook/egraph-serialize", rev = "95a5b802c662a1036b5549b0c5c7b4586dee211c" }
18
+ egraph-serialize = { git = "https://github.com/egraphs-good/egraph-serialize", rev = "5838c036623e91540831745b1574539e01c8cb23" }
19
19
  serde_json = "*"
20
- pyo3-log = "0.8.1"
21
- log = "0.4.17"
22
- lalrpop-util = { version = "0.19.8", features = ["lexer"] }
20
+ pyo3-log = "0.9.0"
21
+ log = "0.4.20"
22
+ lalrpop-util = { version = "0.20.0", features = ["lexer"] }
23
23
  ordered-float = "*"
24
- uuid = { version = "1.5.0", features = ["v4"] }
24
+ uuid = { version = "1.7.0", features = ["v4"] }
25
25
  num-rational = "*"
26
+
26
27
  [package.metadata.maturin]
27
28
  name = "egglog.bindings"
28
29
 
29
- [patch.'https://github.com/egraphs-good/egraph-serialize']
30
-
31
- egraph-serialize = { git = "https://github.com/saulshanabrook/egraph-serialize", rev = "95a5b802c662a1036b5549b0c5c7b4586dee211c" }
30
+ # Use unreleased version of egraph-serialize in egglog as well
31
+ [patch.crates-io]
32
+ egraph-serialize = { git = "https://github.com/egraphs-good/egraph-serialize", rev = "5838c036623e91540831745b1574539e01c8cb23" }
32
33
  # egraph-serialize = { path = "../egraph-serialize" }
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: egglog
3
- Version: 6.0.0
3
+ Version: 6.1.0
4
4
  Classifier: Environment :: MacOS X
5
5
  Classifier: Environment :: Win32 (MS Windows)
6
6
  Classifier: Intended Audience :: Developers
@@ -19,15 +19,22 @@ Classifier: Typing :: Typed
19
19
  Requires-Dist: typing-extensions
20
20
  Requires-Dist: black
21
21
  Requires-Dist: graphviz
22
- Requires-Dist: scikit-learn; extra == 'array'
23
- Requires-Dist: array_api_compat; extra == 'array'
24
- Requires-Dist: numba==0.59.0rc1; extra == 'array'
25
- Requires-Dist: llvmlite==0.42.0rc1; extra == 'array'
26
22
  Requires-Dist: pre-commit; extra == 'dev'
27
23
  Requires-Dist: ruff; extra == 'dev'
28
24
  Requires-Dist: mypy; extra == 'dev'
29
25
  Requires-Dist: anywidget[dev]; extra == 'dev'
30
26
  Requires-Dist: egglog[docs,test]; extra == 'dev'
27
+ Requires-Dist: pytest; extra == 'test'
28
+ Requires-Dist: mypy; extra == 'test'
29
+ Requires-Dist: syrupy; extra == 'test'
30
+ Requires-Dist: egglog[array]; extra == 'test'
31
+ Requires-Dist: pytest-codspeed; extra == 'test'
32
+ Requires-Dist: pytest-benchmark; extra == 'test'
33
+ Requires-Dist: pytest-xdist; extra == 'test'
34
+ Requires-Dist: scikit-learn; extra == 'array'
35
+ Requires-Dist: array_api_compat; extra == 'array'
36
+ Requires-Dist: numba==0.59.0rc1; extra == 'array'
37
+ Requires-Dist: llvmlite==0.42.0rc1; extra == 'array'
31
38
  Requires-Dist: pydata-sphinx-theme; extra == 'docs'
32
39
  Requires-Dist: myst-nb; extra == 'docs'
33
40
  Requires-Dist: sphinx-autodoc-typehints; extra == 'docs'
@@ -40,17 +47,10 @@ Requires-Dist: egglog[array]; extra == 'docs'
40
47
  Requires-Dist: line-profiler; extra == 'docs'
41
48
  Requires-Dist: sphinxcontrib-mermaid; extra == 'docs'
42
49
  Requires-Dist: ablog; extra == 'docs'
43
- Requires-Dist: pytest; extra == 'test'
44
- Requires-Dist: mypy; extra == 'test'
45
- Requires-Dist: syrupy; extra == 'test'
46
- Requires-Dist: egglog[array]; extra == 'test'
47
- Requires-Dist: pytest-codspeed; extra == 'test'
48
- Requires-Dist: pytest-benchmark; extra == 'test'
49
- Requires-Dist: pytest-xdist; extra == 'test'
50
- Provides-Extra: array
51
50
  Provides-Extra: dev
52
- Provides-Extra: docs
53
51
  Provides-Extra: test
52
+ Provides-Extra: array
53
+ Provides-Extra: docs
54
54
  License-File: LICENSE
55
55
  Summary: e-graphs in Python built around the the egglog rust library
56
56
  License: MIT
@@ -2,7 +2,18 @@
2
2
 
3
3
  _This project uses semantic versioning_
4
4
 
5
- ## Unreleased
5
+ ## UNRELEASED
6
+
7
+ ## 6.1.0 (2024-03-06)
8
+
9
+ - Upgrade [egglog](https://github.com/egraphs-good/egglog/compare/4cc011f6b48029dd72104a38a2ca0c7657846e0b...0113af1d6476b75d4319591cc3d675f96a71cdc5)
10
+ - Adds subsume action
11
+ - Makes all objects besides EGraphs "sendable" aka threadsafe ([#129](https://github.com/egraphs-good/egglog-python/pull/129))
12
+
13
+ ## 6.0.1 (2024-02-28)
14
+
15
+ - Upgrade dependencies, including [egglog](https://github.com/egraphs-good/egglog/compare/ceed816e9369570ffed9feeba157b19471dda70d...4cc011f6b48029dd72104a38a2ca0c7657846e0b)
16
+ - Fix bug where saturate wasn't properly getting translated.
6
17
 
7
18
  ## 6.0.0 (2024-02-06)
8
19
 
@@ -44,7 +44,7 @@ presentation_file = cwd / "explanation" / "pldi_2023_presentation.ipynb"
44
44
  output_dir = cwd / "presentations"
45
45
 
46
46
  subprocess.run(
47
- [ # noqa: S607, S603
47
+ [ # noqa: S607
48
48
  "jupyter",
49
49
  "nbconvert",
50
50
  str(presentation_file),