lean-interact 0.9.2__tar.gz → 0.9.3__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 (50) hide show
  1. {lean_interact-0.9.2 → lean_interact-0.9.3}/PKG-INFO +2 -2
  2. {lean_interact-0.9.2 → lean_interact-0.9.3}/README.md +1 -1
  3. {lean_interact-0.9.2 → lean_interact-0.9.3}/docs/index.md +1 -1
  4. {lean_interact-0.9.2 → lean_interact-0.9.3}/pyproject.toml +1 -1
  5. {lean_interact-0.9.2 → lean_interact-0.9.3}/src/lean_interact/utils.py +1 -1
  6. {lean_interact-0.9.2 → lean_interact-0.9.3}/tests/test_server.py +10 -10
  7. {lean_interact-0.9.2 → lean_interact-0.9.3}/.devcontainer/devcontainer.json +0 -0
  8. {lean_interact-0.9.2 → lean_interact-0.9.3}/.github/ISSUE_TEMPLATE/bug_report.md +0 -0
  9. {lean_interact-0.9.2 → lean_interact-0.9.3}/.github/copilot-instructions.md +0 -0
  10. {lean_interact-0.9.2 → lean_interact-0.9.3}/.github/workflows/ci.yml +0 -0
  11. {lean_interact-0.9.2 → lean_interact-0.9.3}/.github/workflows/docs.yml +0 -0
  12. {lean_interact-0.9.2 → lean_interact-0.9.3}/.github/workflows/publish-to-pypi.yml +0 -0
  13. {lean_interact-0.9.2 → lean_interact-0.9.3}/.gitignore +0 -0
  14. {lean_interact-0.9.2 → lean_interact-0.9.3}/LICENSE +0 -0
  15. {lean_interact-0.9.2 → lean_interact-0.9.3}/docs/.nojekyll +0 -0
  16. {lean_interact-0.9.2 → lean_interact-0.9.3}/docs/api/config.md +0 -0
  17. {lean_interact-0.9.2 → lean_interact-0.9.3}/docs/api/interface.md +0 -0
  18. {lean_interact-0.9.2 → lean_interact-0.9.3}/docs/api/project.md +0 -0
  19. {lean_interact-0.9.2 → lean_interact-0.9.3}/docs/api/server.md +0 -0
  20. {lean_interact-0.9.2 → lean_interact-0.9.3}/docs/api/sessioncache.md +0 -0
  21. {lean_interact-0.9.2 → lean_interact-0.9.3}/docs/api/utils.md +0 -0
  22. {lean_interact-0.9.2 → lean_interact-0.9.3}/docs/contributing.md +0 -0
  23. {lean_interact-0.9.2 → lean_interact-0.9.3}/docs/generate_changelog.py +0 -0
  24. {lean_interact-0.9.2 → lean_interact-0.9.3}/docs/theme/main.html +0 -0
  25. {lean_interact-0.9.2 → lean_interact-0.9.3}/docs/user-guide/basic-usage.md +0 -0
  26. {lean_interact-0.9.2 → lean_interact-0.9.3}/docs/user-guide/custom-lean-configuration.md +0 -0
  27. {lean_interact-0.9.2 → lean_interact-0.9.3}/docs/user-guide/data-extraction.md +0 -0
  28. {lean_interact-0.9.2 → lean_interact-0.9.3}/docs/user-guide/examples.md +0 -0
  29. {lean_interact-0.9.2 → lean_interact-0.9.3}/docs/user-guide/getting-started.md +0 -0
  30. {lean_interact-0.9.2 → lean_interact-0.9.3}/docs/user-guide/installation.md +0 -0
  31. {lean_interact-0.9.2 → lean_interact-0.9.3}/docs/user-guide/performance.md +0 -0
  32. {lean_interact-0.9.2 → lean_interact-0.9.3}/docs/user-guide/set-options.md +0 -0
  33. {lean_interact-0.9.2 → lean_interact-0.9.3}/docs/user-guide/tactic-mode.md +0 -0
  34. {lean_interact-0.9.2 → lean_interact-0.9.3}/docs/user-guide/troubleshooting.md +0 -0
  35. {lean_interact-0.9.2 → lean_interact-0.9.3}/examples/beq_plus.py +0 -0
  36. {lean_interact-0.9.2 → lean_interact-0.9.3}/examples/extract_mathlib_decls.py +0 -0
  37. {lean_interact-0.9.2 → lean_interact-0.9.3}/examples/multi_processing.py +0 -0
  38. {lean_interact-0.9.2 → lean_interact-0.9.3}/examples/proof_generation_and_autoformalization.py +0 -0
  39. {lean_interact-0.9.2 → lean_interact-0.9.3}/examples/type_check.py +0 -0
  40. {lean_interact-0.9.2 → lean_interact-0.9.3}/mkdocs.yml +0 -0
  41. {lean_interact-0.9.2 → lean_interact-0.9.3}/src/lean_interact/__init__.py +0 -0
  42. {lean_interact-0.9.2 → lean_interact-0.9.3}/src/lean_interact/config.py +0 -0
  43. {lean_interact-0.9.2 → lean_interact-0.9.3}/src/lean_interact/interface.py +0 -0
  44. {lean_interact-0.9.2 → lean_interact-0.9.3}/src/lean_interact/project.py +0 -0
  45. {lean_interact-0.9.2 → lean_interact-0.9.3}/src/lean_interact/py.typed +0 -0
  46. {lean_interact-0.9.2 → lean_interact-0.9.3}/src/lean_interact/server.py +0 -0
  47. {lean_interact-0.9.2 → lean_interact-0.9.3}/src/lean_interact/sessioncache.py +0 -0
  48. {lean_interact-0.9.2 → lean_interact-0.9.3}/tests/test_concurrency.py +0 -0
  49. {lean_interact-0.9.2 → lean_interact-0.9.3}/tests/test_git_functionality.py +0 -0
  50. {lean_interact-0.9.2 → lean_interact-0.9.3}/tests/test_utils.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: lean-interact
3
- Version: 0.9.2
3
+ Version: 0.9.3
4
4
  Summary: LeanInteract is a Python package that allows you to interact with the Lean theorem prover.
5
5
  Author-email: Auguste Poiroux <auguste.poiroux@epfl.ch>
6
6
  License: MIT License
@@ -53,7 +53,7 @@ Check the [documentation](https://augustepoiroux.github.io/LeanInteract/) for de
53
53
  - **🔗 Interactivity**: Execute Lean code and files directly from Python.
54
54
  - **🚀 Ease of Use**: LeanInteract abstracts the complexities of Lean setup and interaction.
55
55
  - **💻 Cross-platform**: Works on Windows, macOS, and Linux operating systems.
56
- - **🔧 Compatibility**: Supports all Lean versions between `v4.8.0-rc1` and `v4.25.0-rc2`.
56
+ - **🔧 Compatibility**: Supports all Lean versions between `v4.8.0-rc1` and `v4.25.0`.
57
57
  - We backport the latest features of Lean REPL to older versions of Lean (see [fork](https://github.com/augustepoiroux/repl)).
58
58
  - **📦 Temporary Projects**: Easily instantiate temporary Lean environments.
59
59
  - Useful for experimenting with benchmarks depending on [Mathlib](https://github.com/leanprover-community/mathlib4) like [ProofNet#](https://huggingface.co/datasets/PAug/ProofNetSharp) and [MiniF2F](https://github.com/yangky11/miniF2F-lean4).
@@ -15,7 +15,7 @@ Check the [documentation](https://augustepoiroux.github.io/LeanInteract/) for de
15
15
  - **🔗 Interactivity**: Execute Lean code and files directly from Python.
16
16
  - **🚀 Ease of Use**: LeanInteract abstracts the complexities of Lean setup and interaction.
17
17
  - **💻 Cross-platform**: Works on Windows, macOS, and Linux operating systems.
18
- - **🔧 Compatibility**: Supports all Lean versions between `v4.8.0-rc1` and `v4.25.0-rc2`.
18
+ - **🔧 Compatibility**: Supports all Lean versions between `v4.8.0-rc1` and `v4.25.0`.
19
19
  - We backport the latest features of Lean REPL to older versions of Lean (see [fork](https://github.com/augustepoiroux/repl)).
20
20
  - **📦 Temporary Projects**: Easily instantiate temporary Lean environments.
21
21
  - Useful for experimenting with benchmarks depending on [Mathlib](https://github.com/leanprover-community/mathlib4) like [ProofNet#](https://huggingface.co/datasets/PAug/ProofNetSharp) and [MiniF2F](https://github.com/yangky11/miniF2F-lean4).
@@ -17,7 +17,7 @@ hide:
17
17
  - **🔗 Interactivity**: Execute Lean code and files directly from Python
18
18
  - **🚀 Ease of Use**: LeanInteract abstracts the complexities of Lean setup and interaction
19
19
  - **💻 Cross-platform**: Works on Windows, macOS, and Linux operating systems
20
- - **🔧 Compatibility**: Supports all Lean versions between `v4.8.0-rc1` and `v4.25.0-rc2`
20
+ - **🔧 Compatibility**: Supports all Lean versions between `v4.8.0-rc1` and `v4.25.0`
21
21
  - We backport the latest features of Lean REPL to older versions of Lean (see [fork](https://github.com/augustepoiroux/repl)).
22
22
  - **📦 Temporary Projects**: Easily instantiate temporary Lean environments
23
23
  - Useful for experimenting with benchmarks depending on [Mathlib](https://github.com/leanprover-community/mathlib4) like [ProofNet#](https://huggingface.co/datasets/PAug/ProofNetSharp) and [MiniF2F](https://github.com/yangky11/miniF2F-lean4)
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "lean-interact"
3
- version = "0.9.2"
3
+ version = "0.9.3"
4
4
  description = "LeanInteract is a Python package that allows you to interact with the Lean theorem prover."
5
5
  keywords = ["Lean", "theorem proving", "autoformalization", "REPL"]
6
6
  license = { file = "LICENSE" }
@@ -22,7 +22,7 @@ logger.addHandler(handler)
22
22
  ROOT_DIR = Path(__file__).resolve().parent
23
23
  DEFAULT_CACHE_DIR = ROOT_DIR / "cache"
24
24
  DEFAULT_REPL_GIT_URL = "https://github.com/augustepoiroux/repl"
25
- DEFAULT_REPL_VERSION = "v1.3.6"
25
+ DEFAULT_REPL_VERSION = "v1.3.7"
26
26
 
27
27
  os.makedirs(DEFAULT_CACHE_DIR, exist_ok=True)
28
28
 
@@ -60,7 +60,7 @@ class TestLeanServer(unittest.TestCase):
60
60
  # Pre-run configs for all available versions to get the cache
61
61
  lean_versions = LeanREPLConfig(verbose=True).get_available_lean_versions()
62
62
  cls.mostRecentVersion = lean_versions[-1]
63
- for version in [cls.oldestVersion, "v4.14.0", lean_versions[-1]]:
63
+ for version in [cls.oldestVersion, "v4.14.0", cls.mostRecentVersion]:
64
64
  LeanREPLConfig(lean_version=version, verbose=True)
65
65
 
66
66
  # (Temporary) Skip mathlib setup on Windows to avoid long path issues in CI
@@ -68,12 +68,10 @@ class TestLeanServer(unittest.TestCase):
68
68
  return
69
69
 
70
70
  # prepare Mathlib for the last version
71
- LeanREPLConfig(project=TempRequireProject(lean_version=cls.oldestVersion, require="mathlib"), verbose=True)
72
- LeanREPLConfig(project=TempRequireProject(lean_version=lean_versions[-1], require="mathlib"), verbose=True)
71
+ LeanREPLConfig(project=TempRequireProject(lean_version=cls.mostRecentVersion, require="mathlib"), verbose=True)
73
72
 
74
73
  def test_init_with_lean_version(self):
75
- lean_versions = LeanREPLConfig(verbose=True).get_available_lean_versions()
76
- for version in [self.oldestVersion, "v4.14.0", lean_versions[-1]]:
74
+ for version in [self.oldestVersion, "v4.14.0", self.mostRecentVersion]:
77
75
  server = AutoLeanServer(config=LeanREPLConfig(lean_version=version, verbose=True))
78
76
  self.assertEqual(server.lean_version, version)
79
77
  self.assertEqual(
@@ -96,16 +94,18 @@ class TestLeanServer(unittest.TestCase):
96
94
  if platform.system() == "Windows":
97
95
  self.skipTest("(Temporary) Skipping test on Windows due to long path issues in the CI")
98
96
 
99
- lean_versions = LeanREPLConfig(verbose=True).get_available_lean_versions()
100
- latest_version = lean_versions[-1]
101
97
  require = [
102
- LeanRequire(name="mathlib", git="https://github.com/leanprover-community/mathlib4.git", rev=latest_version)
98
+ LeanRequire(
99
+ name="mathlib", git="https://github.com/leanprover-community/mathlib4.git", rev=self.mostRecentVersion
100
+ )
103
101
  ]
104
102
  server = AutoLeanServer(
105
- LeanREPLConfig(project=TempRequireProject(lean_version=latest_version, require="mathlib"), verbose=True)
103
+ LeanREPLConfig(
104
+ project=TempRequireProject(lean_version=self.mostRecentVersion, require="mathlib"), verbose=True
105
+ )
106
106
  )
107
107
  project = cast(TempRequireProject, server.config.project)
108
- self.assertEqual(server.lean_version, latest_version)
108
+ self.assertEqual(server.lean_version, self.mostRecentVersion)
109
109
  self.assertEqual(project._normalize_require(), require)
110
110
 
111
111
  def test_init_with_project_dir_fail(self):
File without changes
File without changes
File without changes