lean-runtime 2.2.0__tar.gz → 2.4.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.
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/CHANGELOG.md +40 -0
- {lean_runtime-2.2.0/lean_runtime.egg-info → lean_runtime-2.4.0}/PKG-INFO +26 -10
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/README.md +25 -9
- lean_runtime-2.4.0/catalog/environments.toml +95 -0
- lean_runtime-2.4.0/catalog/locks/leancert-v4.30.0.5.lock.json +269 -0
- lean_runtime-2.4.0/catalog/locks/leancert-v4.31.0.lock.json +269 -0
- lean_runtime-2.4.0/catalog/locks/leancert-v4.32.2.4.lock.json +269 -0
- lean_runtime-2.4.0/catalog/locks/leancert-v4.33.0.lock.json +269 -0
- lean_runtime-2.4.0/catalog/locks/mathlib-v4.33.0.lock.json +244 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/compatibility/README.md +3 -2
- lean_runtime-2.4.0/compatibility/mathlib-4.33.0.json +15 -0
- lean_runtime-2.4.0/compatibility/mathlib-4.33.0.toml +8 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/docs/cli.md +15 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/docs/getting-started.md +5 -5
- lean_runtime-2.4.0/docs/project-publishing.md +151 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/docs/standalone-files.md +7 -5
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/lean_runtime/__init__.py +11 -1
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/lean_runtime/bundles.py +262 -18
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/lean_runtime/cli.py +244 -28
- lean_runtime-2.4.0/lean_runtime/console.py +246 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/lean_runtime/discovery/catalog_build.py +12 -10
- lean_runtime-2.4.0/lean_runtime/discovery/data/catalog.json +1 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/lean_runtime/discovery/planner.py +17 -4
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/lean_runtime/discovery/probe.py +8 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/lean_runtime/errors.py +9 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/lean_runtime/events.py +28 -3
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/lean_runtime/oci.py +147 -9
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/lean_runtime/policies.py +42 -0
- lean_runtime-2.4.0/lean_runtime/projects.py +475 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/lean_runtime/run_cli.py +123 -33
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/lean_runtime/runtime.py +154 -3
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/lean_runtime/store.py +119 -4
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/lean_runtime/toolchains.py +6 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/lean_runtime/verification.py +12 -13
- {lean_runtime-2.2.0 → lean_runtime-2.4.0/lean_runtime.egg-info}/PKG-INFO +26 -10
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/lean_runtime.egg-info/SOURCES.txt +12 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/mkdocs.yml +1 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/pyproject.toml +1 -1
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/tests/discovery/test_catalog_build.py +47 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/tests/discovery/test_planner.py +59 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/tests/test_backend.py +1 -1
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/tests/test_bundles.py +166 -2
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/tests/test_cli.py +54 -0
- lean_runtime-2.4.0/tests/test_console.py +251 -0
- lean_runtime-2.4.0/tests/test_project_publish.py +186 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/tests/test_run_cli.py +142 -1
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/tests/test_runtime.py +18 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/tests/test_store.py +46 -0
- lean_runtime-2.4.0/tests/test_verification_probe.py +51 -0
- lean_runtime-2.2.0/catalog/environments.toml +0 -38
- lean_runtime-2.2.0/lean_runtime/discovery/data/catalog.json +0 -1
- lean_runtime-2.2.0/lean_runtime/projects.py +0 -214
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/LICENSE +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/MANIFEST.in +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/catalog/locks/core-v4.32.2.lock.json +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/catalog/locks/mathlib-v4.30.0.lock.json +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/catalog/locks/mathlib-v4.31.0.lock.json +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/catalog/locks/mathlib-v4.32.2.lock.json +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/compatibility/mathlib-4.32.2.json +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/compatibility/mathlib-4.32.2.toml +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/docs/architecture.md +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/docs/captures.md +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/docs/case-study-v1.md +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/docs/development.md +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/docs/environments.md +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/docs/index.md +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/docs/local-projects.md +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/docs/portable-copies.md +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/docs/python-api.md +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/docs/ready-programs.md +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/docs/trust-and-limitations.md +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/docs/v1-precision.md +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/examples/mathlib.toml +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/lean_runtime/__main__.py +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/lean_runtime/_git.py +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/lean_runtime/_paths.py +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/lean_runtime/backends.py +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/lean_runtime/comparison.py +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/lean_runtime/decisions.py +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/lean_runtime/diagnostics.py +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/lean_runtime/discovery/__init__.py +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/lean_runtime/discovery/analyzer.py +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/lean_runtime/discovery/api.py +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/lean_runtime/discovery/candidate.py +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/lean_runtime/discovery/catalog.py +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/lean_runtime/discovery/catalog_cli.py +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/lean_runtime/discovery/catalog_manifest.py +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/lean_runtime/discovery/defaults.py +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/lean_runtime/discovery/engine.py +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/lean_runtime/discovery/errors.py +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/lean_runtime/discovery/module_inventory.py +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/lean_runtime/discovery/policy.py +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/lean_runtime/discovery/py.typed +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/lean_runtime/discovery/result.py +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/lean_runtime/discovery/schema_resources.py +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/lean_runtime/discovery/schemas/catalog-v1.schema.json +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/lean_runtime/discovery/schemas/plan-v1.schema.json +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/lean_runtime/discovery/schemas/result-v1.schema.json +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/lean_runtime/environments.py +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/lean_runtime/facade.py +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/lean_runtime/frontmatter.py +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/lean_runtime/health.py +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/lean_runtime/lake.py +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/lean_runtime/lockfiles.py +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/lean_runtime/locking.py +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/lean_runtime/matrix.py +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/lean_runtime/models.py +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/lean_runtime/profiling.py +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/lean_runtime/programs.py +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/lean_runtime/publisher_verification.py +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/lean_runtime/py.typed +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/lean_runtime/references.py +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/lean_runtime/resolver.py +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/lean_runtime/schema_resources.py +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/lean_runtime/serialization.py +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/lean_runtime/specs.py +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/lean_runtime/timings.py +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/lean_runtime/toolchain_slim.py +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/lean_runtime/wire.py +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/lean_runtime.egg-info/dependency_links.txt +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/lean_runtime.egg-info/entry_points.txt +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/lean_runtime.egg-info/requires.txt +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/lean_runtime.egg-info/top_level.txt +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/schemas/cleanup-v1.schema.json +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/schemas/comparison-v1.schema.json +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/schemas/execution-v1.schema.json +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/schemas/inspect-v1.schema.json +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/schemas/matrix-v1.schema.json +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/schemas/profile-v1.schema.json +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/schemas/verify-v1.schema.json +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/scripts/announcement_gate.py +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/scripts/registry_preflight.py +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/scripts/run_compatibility.py +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/scripts/run_v1_case_study.py +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/scripts/smoke_wheel.py +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/setup.cfg +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/tests/conftest.py +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/tests/discovery/e2e/test_real_discovery.py +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/tests/discovery/test_analyzer.py +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/tests/discovery/test_catalog.py +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/tests/discovery/test_discovery_schema_resources.py +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/tests/discovery/test_engine.py +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/tests/discovery/test_policy.py +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/tests/test_diagnostics.py +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/tests/test_environment_integration.py +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/tests/test_events_health.py +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/tests/test_facade.py +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/tests/test_frontmatter.py +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/tests/test_git.py +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/tests/test_interactive.py +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/tests/test_lockfiles.py +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/tests/test_models.py +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/tests/test_multifile.py +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/tests/test_paths.py +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/tests/test_prebuilt_policy.py +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/tests/test_programs.py +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/tests/test_projects.py +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/tests/test_references.py +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/tests/test_schema_resources.py +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/tests/test_schemas.py +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/tests/test_signatures.py +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/tests/test_specs.py +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/tests/test_toolchain_slim.py +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/tests/test_toolchains.py +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/tests/test_v1_precision.py +0 -0
- {lean_runtime-2.2.0 → lean_runtime-2.4.0}/tests/test_verification_inventory.py +0 -0
|
@@ -1,5 +1,45 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## Unreleased
|
|
4
|
+
|
|
5
|
+
- Extend the bundled catalog through Mathlib v4.33.0 and add exact LeanCert
|
|
6
|
+
environments for the supported Lean 4.30, 4.31, 4.32, and 4.33 lines.
|
|
7
|
+
Otherwise-equivalent discovery candidates now prefer the smallest exact
|
|
8
|
+
dependency closure, so LeanCert support does not enlarge ordinary Mathlib
|
|
9
|
+
checks.
|
|
10
|
+
- Make the public-cache post-publication consumer genuinely anonymous by
|
|
11
|
+
withholding registry credentials during its clean download and import probe.
|
|
12
|
+
- Verify imported immutable environments through their compiled module paths,
|
|
13
|
+
avoiding Lake dependency resolution that could attempt network clones after
|
|
14
|
+
a successful offline OCI import.
|
|
15
|
+
- Add a strict existing-project publication journey: `lean-runtime project
|
|
16
|
+
inspect`, `project lock`, `project export`, and `project init-publish` turn a
|
|
17
|
+
clean, pushed root GitHub Lean project into an exact managed environment.
|
|
18
|
+
- Add a public reusable GitHub workflow that builds Linux AMD64, macOS AMD64,
|
|
19
|
+
and macOS ARM64 environments, signs and attests their artifacts, finalizes
|
|
20
|
+
the OCI index atomically, and runs clean anonymous import checks on every
|
|
21
|
+
platform.
|
|
22
|
+
- Validate registry configuration inside the CLI error boundary so malformed
|
|
23
|
+
libraries produce concise invocation errors instead of Python tracebacks.
|
|
24
|
+
- Report total, uploaded, and remotely reused OCI blob bytes (plus the reuse
|
|
25
|
+
percentage) in every environment publication result. Reusable workflows can
|
|
26
|
+
set `minimum-reuse-percent` to make regressions fail the publication job.
|
|
27
|
+
- Emit visible progress for bundle export, blob upload/reuse, platform
|
|
28
|
+
manifests, attestations, and final index signing during long publications.
|
|
29
|
+
- Publish from the verified OCI layout directly, avoiding the redundant outer
|
|
30
|
+
gzip archive and immediate re-extraction previously performed before upload.
|
|
31
|
+
- Compress deterministic OCI layers at gzip level 6 instead of Python's
|
|
32
|
+
level-9 default; a representative Mathlib subtree encoded about eight times
|
|
33
|
+
faster for roughly two percent more bytes.
|
|
34
|
+
- Exclude clone-specific Git administration data from package layers and carry
|
|
35
|
+
a verified deterministic source-tree inventory instead. Identical dependency
|
|
36
|
+
trees now produce identical blobs across clean builders, so OCI reuse works
|
|
37
|
+
across project revisions rather than only within one local environment.
|
|
38
|
+
- Omit Lake's path-sensitive `.trace`, `.setup.json`, and response-file metadata from
|
|
39
|
+
check-profile layers. Lean checks use the retained compiled artifacts, while
|
|
40
|
+
clean builders no longer invalidate multi-gigabyte blobs solely because their
|
|
41
|
+
temporary workspace paths differ.
|
|
42
|
+
|
|
3
43
|
## 2.2.0 - 2026-08-12
|
|
4
44
|
|
|
5
45
|
- Make published-environment checks invoke Lean directly with the immutable
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: lean-runtime
|
|
3
|
-
Version: 2.
|
|
3
|
+
Version: 2.4.0
|
|
4
4
|
Summary: Run Lean 4 proofs from Python or standalone files
|
|
5
5
|
Author: Alejandro Radisic
|
|
6
6
|
License-Expression: Apache-2.0
|
|
@@ -84,16 +84,17 @@ lean-run Main.lean --lock-out environment.lock.json
|
|
|
84
84
|
lean-run Main.lean --lock environment.lock.json
|
|
85
85
|
```
|
|
86
86
|
|
|
87
|
-
The
|
|
88
|
-
v4.
|
|
89
|
-
then builds the exact source environment when necessary. Use
|
|
90
|
-
forbid that potentially large fallback or `--offline` to use
|
|
87
|
+
The bundled catalog covers Mathlib v4.30.0 through v4.33.0 and matching LeanCert
|
|
88
|
+
releases, plus core Lean v4.32.2. Runtime first tries its local store and downloadable
|
|
89
|
+
environment libraries, then builds the exact source environment when necessary. Use
|
|
90
|
+
`--no-source-build` to forbid that potentially large fallback or `--offline` to use
|
|
91
|
+
retained environments only.
|
|
91
92
|
|
|
92
93
|
Explicit frontmatter remains available when the desired context is already known:
|
|
93
94
|
|
|
94
95
|
```lean
|
|
95
96
|
-- /// lean-runtime
|
|
96
|
-
-- requires = ["mathlib@v4.
|
|
97
|
+
-- requires = ["mathlib@v4.33.0"]
|
|
97
98
|
-- ///
|
|
98
99
|
|
|
99
100
|
import Mathlib
|
|
@@ -102,13 +103,13 @@ import Mathlib
|
|
|
102
103
|
The same context can be supplied from the command line:
|
|
103
104
|
|
|
104
105
|
```bash
|
|
105
|
-
lean-run Main.lean --with mathlib@v4.
|
|
106
|
+
lean-run Main.lean --with mathlib@v4.33.0
|
|
106
107
|
```
|
|
107
108
|
|
|
108
109
|
Create an exact lock from an explicit dependency for CI without changing the file:
|
|
109
110
|
|
|
110
111
|
```bash
|
|
111
|
-
lean-run Main.lean --with mathlib@v4.
|
|
112
|
+
lean-run Main.lean --with mathlib@v4.33.0 \
|
|
112
113
|
--lock-out environment.lock.json
|
|
113
114
|
lean-run Main.lean --lock environment.lock.json
|
|
114
115
|
```
|
|
@@ -120,7 +121,7 @@ Configure an environment once, then use it repeatedly:
|
|
|
120
121
|
```python
|
|
121
122
|
import lean_runtime as lean
|
|
122
123
|
|
|
123
|
-
env = lean.setup(["mathlib@v4.
|
|
124
|
+
env = lean.setup(["mathlib@v4.33.0"])
|
|
124
125
|
|
|
125
126
|
result = env.check(
|
|
126
127
|
"""
|
|
@@ -167,7 +168,7 @@ result = project.check_file("./my-project/MyProject/Main.lean")
|
|
|
167
168
|
One-shot helpers are available when setup reuse is unnecessary:
|
|
168
169
|
|
|
169
170
|
```python
|
|
170
|
-
result = lean.check(source, deps=["mathlib@v4.
|
|
171
|
+
result = lean.check(source, deps=["mathlib@v4.33.0"])
|
|
171
172
|
result = lean.check_file("./my-project/MyProject/Main.lean")
|
|
172
173
|
```
|
|
173
174
|
|
|
@@ -205,6 +206,20 @@ lean-runtime build-and-publish environment.lock.json \
|
|
|
205
206
|
--publish-to ghcr.io/owner/lean-environments
|
|
206
207
|
```
|
|
207
208
|
|
|
209
|
+
To publish an existing clean, pushed GitHub Lean project, inspect it and
|
|
210
|
+
generate the maintained multi-platform workflow:
|
|
211
|
+
|
|
212
|
+
```bash
|
|
213
|
+
lean-runtime project inspect . --module MyProject
|
|
214
|
+
lean-runtime project init-publish . \
|
|
215
|
+
--module MyProject \
|
|
216
|
+
--library ghcr.io/owner/my-project-environments
|
|
217
|
+
```
|
|
218
|
+
|
|
219
|
+
The workflow builds and verifies Linux and macOS environments, finalizes the
|
|
220
|
+
index atomically, then checks clean consumers. See
|
|
221
|
+
[Publishing a Lean project](https://alerad.github.io/lean-runtime/project-publishing/).
|
|
222
|
+
|
|
208
223
|
For an already-built executable, Lean Runtime can also create a verified
|
|
209
224
|
**ready-to-run program**. It opens without rebuilding the project, can be saved
|
|
210
225
|
as a portable copy, and can be shared through a public or private program
|
|
@@ -226,6 +241,7 @@ architecture documentation.
|
|
|
226
241
|
- [`lean-run` and operations CLI](https://github.com/alerad/lean-runtime/blob/main/docs/cli.md)
|
|
227
242
|
- [Managed environments](https://github.com/alerad/lean-runtime/blob/main/docs/environments.md)
|
|
228
243
|
- [Local Lake projects](https://github.com/alerad/lean-runtime/blob/main/docs/local-projects.md)
|
|
244
|
+
- [Publishing a Lean project](https://github.com/alerad/lean-runtime/blob/main/docs/project-publishing.md)
|
|
229
245
|
- [Portable copies and environment libraries](https://github.com/alerad/lean-runtime/blob/main/docs/portable-copies.md)
|
|
230
246
|
- [Ready-to-run programs](https://github.com/alerad/lean-runtime/blob/main/docs/ready-programs.md)
|
|
231
247
|
- [Architecture](https://github.com/alerad/lean-runtime/blob/main/docs/architecture.md)
|
|
@@ -49,16 +49,17 @@ lean-run Main.lean --lock-out environment.lock.json
|
|
|
49
49
|
lean-run Main.lean --lock environment.lock.json
|
|
50
50
|
```
|
|
51
51
|
|
|
52
|
-
The
|
|
53
|
-
v4.
|
|
54
|
-
then builds the exact source environment when necessary. Use
|
|
55
|
-
forbid that potentially large fallback or `--offline` to use
|
|
52
|
+
The bundled catalog covers Mathlib v4.30.0 through v4.33.0 and matching LeanCert
|
|
53
|
+
releases, plus core Lean v4.32.2. Runtime first tries its local store and downloadable
|
|
54
|
+
environment libraries, then builds the exact source environment when necessary. Use
|
|
55
|
+
`--no-source-build` to forbid that potentially large fallback or `--offline` to use
|
|
56
|
+
retained environments only.
|
|
56
57
|
|
|
57
58
|
Explicit frontmatter remains available when the desired context is already known:
|
|
58
59
|
|
|
59
60
|
```lean
|
|
60
61
|
-- /// lean-runtime
|
|
61
|
-
-- requires = ["mathlib@v4.
|
|
62
|
+
-- requires = ["mathlib@v4.33.0"]
|
|
62
63
|
-- ///
|
|
63
64
|
|
|
64
65
|
import Mathlib
|
|
@@ -67,13 +68,13 @@ import Mathlib
|
|
|
67
68
|
The same context can be supplied from the command line:
|
|
68
69
|
|
|
69
70
|
```bash
|
|
70
|
-
lean-run Main.lean --with mathlib@v4.
|
|
71
|
+
lean-run Main.lean --with mathlib@v4.33.0
|
|
71
72
|
```
|
|
72
73
|
|
|
73
74
|
Create an exact lock from an explicit dependency for CI without changing the file:
|
|
74
75
|
|
|
75
76
|
```bash
|
|
76
|
-
lean-run Main.lean --with mathlib@v4.
|
|
77
|
+
lean-run Main.lean --with mathlib@v4.33.0 \
|
|
77
78
|
--lock-out environment.lock.json
|
|
78
79
|
lean-run Main.lean --lock environment.lock.json
|
|
79
80
|
```
|
|
@@ -85,7 +86,7 @@ Configure an environment once, then use it repeatedly:
|
|
|
85
86
|
```python
|
|
86
87
|
import lean_runtime as lean
|
|
87
88
|
|
|
88
|
-
env = lean.setup(["mathlib@v4.
|
|
89
|
+
env = lean.setup(["mathlib@v4.33.0"])
|
|
89
90
|
|
|
90
91
|
result = env.check(
|
|
91
92
|
"""
|
|
@@ -132,7 +133,7 @@ result = project.check_file("./my-project/MyProject/Main.lean")
|
|
|
132
133
|
One-shot helpers are available when setup reuse is unnecessary:
|
|
133
134
|
|
|
134
135
|
```python
|
|
135
|
-
result = lean.check(source, deps=["mathlib@v4.
|
|
136
|
+
result = lean.check(source, deps=["mathlib@v4.33.0"])
|
|
136
137
|
result = lean.check_file("./my-project/MyProject/Main.lean")
|
|
137
138
|
```
|
|
138
139
|
|
|
@@ -170,6 +171,20 @@ lean-runtime build-and-publish environment.lock.json \
|
|
|
170
171
|
--publish-to ghcr.io/owner/lean-environments
|
|
171
172
|
```
|
|
172
173
|
|
|
174
|
+
To publish an existing clean, pushed GitHub Lean project, inspect it and
|
|
175
|
+
generate the maintained multi-platform workflow:
|
|
176
|
+
|
|
177
|
+
```bash
|
|
178
|
+
lean-runtime project inspect . --module MyProject
|
|
179
|
+
lean-runtime project init-publish . \
|
|
180
|
+
--module MyProject \
|
|
181
|
+
--library ghcr.io/owner/my-project-environments
|
|
182
|
+
```
|
|
183
|
+
|
|
184
|
+
The workflow builds and verifies Linux and macOS environments, finalizes the
|
|
185
|
+
index atomically, then checks clean consumers. See
|
|
186
|
+
[Publishing a Lean project](https://alerad.github.io/lean-runtime/project-publishing/).
|
|
187
|
+
|
|
173
188
|
For an already-built executable, Lean Runtime can also create a verified
|
|
174
189
|
**ready-to-run program**. It opens without rebuilding the project, can be saved
|
|
175
190
|
as a portable copy, and can be shared through a public or private program
|
|
@@ -191,6 +206,7 @@ architecture documentation.
|
|
|
191
206
|
- [`lean-run` and operations CLI](https://github.com/alerad/lean-runtime/blob/main/docs/cli.md)
|
|
192
207
|
- [Managed environments](https://github.com/alerad/lean-runtime/blob/main/docs/environments.md)
|
|
193
208
|
- [Local Lake projects](https://github.com/alerad/lean-runtime/blob/main/docs/local-projects.md)
|
|
209
|
+
- [Publishing a Lean project](https://github.com/alerad/lean-runtime/blob/main/docs/project-publishing.md)
|
|
194
210
|
- [Portable copies and environment libraries](https://github.com/alerad/lean-runtime/blob/main/docs/portable-copies.md)
|
|
195
211
|
- [Ready-to-run programs](https://github.com/alerad/lean-runtime/blob/main/docs/ready-programs.md)
|
|
196
212
|
- [Architecture](https://github.com/alerad/lean-runtime/blob/main/docs/architecture.md)
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
schema = "lean-runtime.discovery.catalog-source/v1"
|
|
2
|
+
generated_at = "2026-08-13T13:49:46Z"
|
|
3
|
+
|
|
4
|
+
[[environment]]
|
|
5
|
+
id = "core-v4.32.2"
|
|
6
|
+
channel = "stable"
|
|
7
|
+
lock = "locks/core-v4.32.2.lock.json"
|
|
8
|
+
inventory_packages = []
|
|
9
|
+
modules = ["Init", "Lean", "Std"]
|
|
10
|
+
library_hints = []
|
|
11
|
+
created_at = "2026-08-08T16:24:59Z"
|
|
12
|
+
|
|
13
|
+
[[environment]]
|
|
14
|
+
id = "mathlib-v4.32.2"
|
|
15
|
+
channel = "stable"
|
|
16
|
+
lock = "locks/mathlib-v4.32.2.lock.json"
|
|
17
|
+
references = ["github:leanprover-community/mathlib4@v4.32.2"]
|
|
18
|
+
inventory_packages = ["mathlib"]
|
|
19
|
+
library_hints = []
|
|
20
|
+
created_at = "2026-07-28T18:36:13+02:00"
|
|
21
|
+
|
|
22
|
+
[[environment]]
|
|
23
|
+
id = "mathlib-v4.33.0"
|
|
24
|
+
channel = "stable"
|
|
25
|
+
lock = "locks/mathlib-v4.33.0.lock.json"
|
|
26
|
+
references = ["github:leanprover-community/mathlib4@v4.33.0"]
|
|
27
|
+
inventory_packages = ["mathlib"]
|
|
28
|
+
library_hints = []
|
|
29
|
+
created_at = "2026-08-10T09:12:31Z"
|
|
30
|
+
|
|
31
|
+
[[environment]]
|
|
32
|
+
id = "mathlib-v4.31.0"
|
|
33
|
+
channel = "stable"
|
|
34
|
+
lock = "locks/mathlib-v4.31.0.lock.json"
|
|
35
|
+
references = ["github:leanprover-community/mathlib4@v4.31.0"]
|
|
36
|
+
inventory_packages = ["mathlib"]
|
|
37
|
+
library_hints = []
|
|
38
|
+
created_at = "2026-06-15T14:22:22Z"
|
|
39
|
+
|
|
40
|
+
[[environment]]
|
|
41
|
+
id = "mathlib-v4.30.0"
|
|
42
|
+
channel = "stable"
|
|
43
|
+
lock = "locks/mathlib-v4.30.0.lock.json"
|
|
44
|
+
references = ["github:leanprover-community/mathlib4@v4.30.0"]
|
|
45
|
+
inventory_packages = ["mathlib"]
|
|
46
|
+
library_hints = []
|
|
47
|
+
created_at = "2026-05-26T18:25:31Z"
|
|
48
|
+
|
|
49
|
+
[[environment]]
|
|
50
|
+
id = "leancert-v4.30.0.5"
|
|
51
|
+
channel = "stable"
|
|
52
|
+
lock = "locks/leancert-v4.30.0.5.lock.json"
|
|
53
|
+
references = [
|
|
54
|
+
"github:alerad/leancert@v4.30.0.5",
|
|
55
|
+
"github:leanprover-community/mathlib4@v4.30.0",
|
|
56
|
+
]
|
|
57
|
+
inventory_packages = ["LeanCert", "mathlib"]
|
|
58
|
+
library_hints = []
|
|
59
|
+
created_at = "2026-06-14T03:06:27Z"
|
|
60
|
+
|
|
61
|
+
[[environment]]
|
|
62
|
+
id = "leancert-v4.31.0"
|
|
63
|
+
channel = "stable"
|
|
64
|
+
lock = "locks/leancert-v4.31.0.lock.json"
|
|
65
|
+
references = [
|
|
66
|
+
"github:alerad/leancert@v4.31.0",
|
|
67
|
+
"github:leanprover-community/mathlib4@v4.31.0",
|
|
68
|
+
]
|
|
69
|
+
inventory_packages = ["LeanCert", "mathlib"]
|
|
70
|
+
library_hints = []
|
|
71
|
+
created_at = "2026-06-18T16:14:44Z"
|
|
72
|
+
|
|
73
|
+
[[environment]]
|
|
74
|
+
id = "leancert-v4.32.2.4"
|
|
75
|
+
channel = "stable"
|
|
76
|
+
lock = "locks/leancert-v4.32.2.4.lock.json"
|
|
77
|
+
references = [
|
|
78
|
+
"github:alerad/leancert@v4.32.2.4",
|
|
79
|
+
"github:leanprover-community/mathlib4@v4.32.2",
|
|
80
|
+
]
|
|
81
|
+
inventory_packages = ["LeanCert", "mathlib"]
|
|
82
|
+
library_hints = []
|
|
83
|
+
created_at = "2026-08-01T10:49:16Z"
|
|
84
|
+
|
|
85
|
+
[[environment]]
|
|
86
|
+
id = "leancert-v4.33.0"
|
|
87
|
+
channel = "stable"
|
|
88
|
+
lock = "locks/leancert-v4.33.0.lock.json"
|
|
89
|
+
references = [
|
|
90
|
+
"github:alerad/leancert@v4.33.0",
|
|
91
|
+
"github:leanprover-community/mathlib4@v4.33.0",
|
|
92
|
+
]
|
|
93
|
+
inventory_packages = ["LeanCert", "mathlib"]
|
|
94
|
+
library_hints = []
|
|
95
|
+
created_at = "2026-08-10T22:05:27Z"
|
|
@@ -0,0 +1,269 @@
|
|
|
1
|
+
{
|
|
2
|
+
"lock_id": "lock_29bb182de663e306a3aac0cf32691c7f4e19362890a10d575dea539ab5738c47",
|
|
3
|
+
"manifest": {
|
|
4
|
+
"fixedToolchain": false,
|
|
5
|
+
"lakeDir": ".lake",
|
|
6
|
+
"name": "lean_runtime_environment",
|
|
7
|
+
"packages": [
|
|
8
|
+
{
|
|
9
|
+
"configFile": "lakefile.lean",
|
|
10
|
+
"inherited": false,
|
|
11
|
+
"inputRev": "c5ea00351c28e24afc9f0f84379aa41082b1188f",
|
|
12
|
+
"manifestFile": "lake-manifest.json",
|
|
13
|
+
"name": "mathlib",
|
|
14
|
+
"rev": "c5ea00351c28e24afc9f0f84379aa41082b1188f",
|
|
15
|
+
"scope": "",
|
|
16
|
+
"subDir": null,
|
|
17
|
+
"type": "git",
|
|
18
|
+
"url": "https://github.com/leanprover-community/mathlib4.git"
|
|
19
|
+
},
|
|
20
|
+
{
|
|
21
|
+
"configFile": "lakefile.toml",
|
|
22
|
+
"inherited": false,
|
|
23
|
+
"inputRev": "87c4ec2af2b18227ca2c98c4459c3ea60b88ce52",
|
|
24
|
+
"manifestFile": "lake-manifest.json",
|
|
25
|
+
"name": "LeanCert",
|
|
26
|
+
"rev": "87c4ec2af2b18227ca2c98c4459c3ea60b88ce52",
|
|
27
|
+
"scope": "",
|
|
28
|
+
"subDir": null,
|
|
29
|
+
"type": "git",
|
|
30
|
+
"url": "https://github.com/alerad/leancert.git"
|
|
31
|
+
},
|
|
32
|
+
{
|
|
33
|
+
"configFile": "lakefile.toml",
|
|
34
|
+
"inherited": true,
|
|
35
|
+
"inputRev": "main",
|
|
36
|
+
"manifestFile": "lake-manifest.json",
|
|
37
|
+
"name": "plausible",
|
|
38
|
+
"rev": "a456461b368b71d2accd95234832cd9c174b5437",
|
|
39
|
+
"scope": "leanprover-community",
|
|
40
|
+
"subDir": null,
|
|
41
|
+
"type": "git",
|
|
42
|
+
"url": "https://github.com/leanprover-community/plausible"
|
|
43
|
+
},
|
|
44
|
+
{
|
|
45
|
+
"configFile": "lakefile.toml",
|
|
46
|
+
"inherited": true,
|
|
47
|
+
"inputRev": "main",
|
|
48
|
+
"manifestFile": "lake-manifest.json",
|
|
49
|
+
"name": "LeanSearchClient",
|
|
50
|
+
"rev": "c5d5b8fe6e5158def25cd28eb94e4141ad97c843",
|
|
51
|
+
"scope": "leanprover-community",
|
|
52
|
+
"subDir": null,
|
|
53
|
+
"type": "git",
|
|
54
|
+
"url": "https://github.com/leanprover-community/LeanSearchClient"
|
|
55
|
+
},
|
|
56
|
+
{
|
|
57
|
+
"configFile": "lakefile.toml",
|
|
58
|
+
"inherited": true,
|
|
59
|
+
"inputRev": "main",
|
|
60
|
+
"manifestFile": "lake-manifest.json",
|
|
61
|
+
"name": "importGraph",
|
|
62
|
+
"rev": "515cf9d0c00ece5e661f6de4326a53dedc1e8ea1",
|
|
63
|
+
"scope": "leanprover-community",
|
|
64
|
+
"subDir": null,
|
|
65
|
+
"type": "git",
|
|
66
|
+
"url": "https://github.com/leanprover-community/import-graph"
|
|
67
|
+
},
|
|
68
|
+
{
|
|
69
|
+
"configFile": "lakefile.lean",
|
|
70
|
+
"inherited": true,
|
|
71
|
+
"inputRev": "v0.0.99",
|
|
72
|
+
"manifestFile": "lake-manifest.json",
|
|
73
|
+
"name": "proofwidgets",
|
|
74
|
+
"rev": "a84b3e2475d5c5ab979567b1ad8aea21b764bcf8",
|
|
75
|
+
"scope": "leanprover-community",
|
|
76
|
+
"subDir": null,
|
|
77
|
+
"type": "git",
|
|
78
|
+
"url": "https://github.com/leanprover-community/ProofWidgets4"
|
|
79
|
+
},
|
|
80
|
+
{
|
|
81
|
+
"configFile": "lakefile.toml",
|
|
82
|
+
"inherited": true,
|
|
83
|
+
"inputRev": "v4.30.0",
|
|
84
|
+
"manifestFile": "lake-manifest.json",
|
|
85
|
+
"name": "aesop",
|
|
86
|
+
"rev": "558915ae105bfd8074e22d597613d1961822adc2",
|
|
87
|
+
"scope": "leanprover-community",
|
|
88
|
+
"subDir": null,
|
|
89
|
+
"type": "git",
|
|
90
|
+
"url": "https://github.com/leanprover-community/aesop"
|
|
91
|
+
},
|
|
92
|
+
{
|
|
93
|
+
"configFile": "lakefile.toml",
|
|
94
|
+
"inherited": true,
|
|
95
|
+
"inputRev": "v4.30.0",
|
|
96
|
+
"manifestFile": "lake-manifest.json",
|
|
97
|
+
"name": "Qq",
|
|
98
|
+
"rev": "a6e6c34c4ef182f83b219a3a5a385f51f44bdc4c",
|
|
99
|
+
"scope": "leanprover-community",
|
|
100
|
+
"subDir": null,
|
|
101
|
+
"type": "git",
|
|
102
|
+
"url": "https://github.com/leanprover-community/quote4"
|
|
103
|
+
},
|
|
104
|
+
{
|
|
105
|
+
"configFile": "lakefile.toml",
|
|
106
|
+
"inherited": true,
|
|
107
|
+
"inputRev": "main",
|
|
108
|
+
"manifestFile": "lake-manifest.json",
|
|
109
|
+
"name": "batteries",
|
|
110
|
+
"rev": "32dc18cde3684679f3c003de608743b57498c56f",
|
|
111
|
+
"scope": "leanprover-community",
|
|
112
|
+
"subDir": null,
|
|
113
|
+
"type": "git",
|
|
114
|
+
"url": "https://github.com/leanprover-community/batteries"
|
|
115
|
+
},
|
|
116
|
+
{
|
|
117
|
+
"configFile": "lakefile.toml",
|
|
118
|
+
"inherited": true,
|
|
119
|
+
"inputRev": "v4.30.0",
|
|
120
|
+
"manifestFile": "lake-manifest.json",
|
|
121
|
+
"name": "Cli",
|
|
122
|
+
"rev": "6b907cf12b2e445ccb7c24bc208ef04a1f39e84c",
|
|
123
|
+
"scope": "leanprover",
|
|
124
|
+
"subDir": null,
|
|
125
|
+
"type": "git",
|
|
126
|
+
"url": "https://github.com/leanprover/lean4-cli"
|
|
127
|
+
}
|
|
128
|
+
],
|
|
129
|
+
"packagesDir": ".lake/packages",
|
|
130
|
+
"version": "1.2.0"
|
|
131
|
+
},
|
|
132
|
+
"packages": [
|
|
133
|
+
{
|
|
134
|
+
"artifact_command": [],
|
|
135
|
+
"inherited": true,
|
|
136
|
+
"name": "Cli",
|
|
137
|
+
"requested_revision": "v4.30.0",
|
|
138
|
+
"revision": "6b907cf12b2e445ccb7c24bc208ef04a1f39e84c",
|
|
139
|
+
"root_module": null,
|
|
140
|
+
"source": "git",
|
|
141
|
+
"source_id": "source_c01f06910785f51a955b789fe595cb0f7a9e31fdbd52a9c179c13bc15a215aba",
|
|
142
|
+
"subdir": null,
|
|
143
|
+
"tree_hash": "8a76534436fb49125055d57998a2907a396186f8",
|
|
144
|
+
"url": "https://github.com/leanprover/lean4-cli"
|
|
145
|
+
},
|
|
146
|
+
{
|
|
147
|
+
"artifact_command": [],
|
|
148
|
+
"inherited": false,
|
|
149
|
+
"name": "LeanCert",
|
|
150
|
+
"requested_revision": "87c4ec2af2b18227ca2c98c4459c3ea60b88ce52",
|
|
151
|
+
"revision": "87c4ec2af2b18227ca2c98c4459c3ea60b88ce52",
|
|
152
|
+
"root_module": "LeanCert",
|
|
153
|
+
"source": "git",
|
|
154
|
+
"source_id": "source_69f4f19bcb5f304b90ca4a7617335206c5a7815b3ed98fcc0fc67f6c1b1c7d95",
|
|
155
|
+
"subdir": null,
|
|
156
|
+
"tree_hash": "0087ab885fd676c99c2376b57677fde81f6ff318",
|
|
157
|
+
"url": "https://github.com/alerad/leancert.git"
|
|
158
|
+
},
|
|
159
|
+
{
|
|
160
|
+
"artifact_command": [],
|
|
161
|
+
"inherited": true,
|
|
162
|
+
"name": "LeanSearchClient",
|
|
163
|
+
"requested_revision": "main",
|
|
164
|
+
"revision": "c5d5b8fe6e5158def25cd28eb94e4141ad97c843",
|
|
165
|
+
"root_module": null,
|
|
166
|
+
"source": "git",
|
|
167
|
+
"source_id": "source_de17867f530aa12a11295b9e954c0bc71adf2e186913d1eb3d494b206a324b67",
|
|
168
|
+
"subdir": null,
|
|
169
|
+
"tree_hash": "d0224b6df6c90cc0b4ed2db6218037d31bfd6f52",
|
|
170
|
+
"url": "https://github.com/leanprover-community/LeanSearchClient"
|
|
171
|
+
},
|
|
172
|
+
{
|
|
173
|
+
"artifact_command": [],
|
|
174
|
+
"inherited": true,
|
|
175
|
+
"name": "Qq",
|
|
176
|
+
"requested_revision": "v4.30.0",
|
|
177
|
+
"revision": "a6e6c34c4ef182f83b219a3a5a385f51f44bdc4c",
|
|
178
|
+
"root_module": null,
|
|
179
|
+
"source": "git",
|
|
180
|
+
"source_id": "source_60de60b0b4c17b986970ce14b7745f03577878d68d571d26b0f79ad2050944c5",
|
|
181
|
+
"subdir": null,
|
|
182
|
+
"tree_hash": "3cd6c8c7454ab4cdc4f5c7068250d42e6f072b42",
|
|
183
|
+
"url": "https://github.com/leanprover-community/quote4"
|
|
184
|
+
},
|
|
185
|
+
{
|
|
186
|
+
"artifact_command": [],
|
|
187
|
+
"inherited": true,
|
|
188
|
+
"name": "aesop",
|
|
189
|
+
"requested_revision": "v4.30.0",
|
|
190
|
+
"revision": "558915ae105bfd8074e22d597613d1961822adc2",
|
|
191
|
+
"root_module": null,
|
|
192
|
+
"source": "git",
|
|
193
|
+
"source_id": "source_d00c4fd39cd426bf0c5055708b35c89ee9d4a93bb7b1703858a84820b53d7a83",
|
|
194
|
+
"subdir": null,
|
|
195
|
+
"tree_hash": "9f9a222ac975ad751c92bcf0f46de9fd2b0c3cfb",
|
|
196
|
+
"url": "https://github.com/leanprover-community/aesop"
|
|
197
|
+
},
|
|
198
|
+
{
|
|
199
|
+
"artifact_command": [],
|
|
200
|
+
"inherited": true,
|
|
201
|
+
"name": "batteries",
|
|
202
|
+
"requested_revision": "main",
|
|
203
|
+
"revision": "32dc18cde3684679f3c003de608743b57498c56f",
|
|
204
|
+
"root_module": null,
|
|
205
|
+
"source": "git",
|
|
206
|
+
"source_id": "source_e9f2d8aa0918281163471c383fe2b84f3e8664c515d68e2b5a8be71a8bf1a656",
|
|
207
|
+
"subdir": null,
|
|
208
|
+
"tree_hash": "436fbfdcb885492763ccee85e5db580d1995966f",
|
|
209
|
+
"url": "https://github.com/leanprover-community/batteries"
|
|
210
|
+
},
|
|
211
|
+
{
|
|
212
|
+
"artifact_command": [],
|
|
213
|
+
"inherited": true,
|
|
214
|
+
"name": "importGraph",
|
|
215
|
+
"requested_revision": "main",
|
|
216
|
+
"revision": "515cf9d0c00ece5e661f6de4326a53dedc1e8ea1",
|
|
217
|
+
"root_module": null,
|
|
218
|
+
"source": "git",
|
|
219
|
+
"source_id": "source_a017eacbcf51b53b1088560de28a2887167215ef1c65dbce09eb4fe0d884e9f7",
|
|
220
|
+
"subdir": null,
|
|
221
|
+
"tree_hash": "7418207a8b90a9f8e7223c20009d7eab86a4fd53",
|
|
222
|
+
"url": "https://github.com/leanprover-community/import-graph"
|
|
223
|
+
},
|
|
224
|
+
{
|
|
225
|
+
"artifact_command": [],
|
|
226
|
+
"inherited": false,
|
|
227
|
+
"name": "mathlib",
|
|
228
|
+
"requested_revision": "c5ea00351c28e24afc9f0f84379aa41082b1188f",
|
|
229
|
+
"revision": "c5ea00351c28e24afc9f0f84379aa41082b1188f",
|
|
230
|
+
"root_module": "Mathlib",
|
|
231
|
+
"source": "git",
|
|
232
|
+
"source_id": "source_fe2d2fc9c4c54f6dc89ac1ccd4c00581a362e2c2f1914e024983c4d70c375637",
|
|
233
|
+
"subdir": null,
|
|
234
|
+
"tree_hash": "1fe688f4d9e84fb268a300f8ac33cbca883fbd28",
|
|
235
|
+
"url": "https://github.com/leanprover-community/mathlib4.git"
|
|
236
|
+
},
|
|
237
|
+
{
|
|
238
|
+
"artifact_command": [],
|
|
239
|
+
"inherited": true,
|
|
240
|
+
"name": "plausible",
|
|
241
|
+
"requested_revision": "main",
|
|
242
|
+
"revision": "a456461b368b71d2accd95234832cd9c174b5437",
|
|
243
|
+
"root_module": null,
|
|
244
|
+
"source": "git",
|
|
245
|
+
"source_id": "source_6a376c3e5442e8aaca75bf1fbffba6168941014ad82653c242c5b646042557ba",
|
|
246
|
+
"subdir": null,
|
|
247
|
+
"tree_hash": "cbfb86e477a2ed89137953b22bbf38149658b672",
|
|
248
|
+
"url": "https://github.com/leanprover-community/plausible"
|
|
249
|
+
},
|
|
250
|
+
{
|
|
251
|
+
"artifact_command": [],
|
|
252
|
+
"inherited": true,
|
|
253
|
+
"name": "proofwidgets",
|
|
254
|
+
"requested_revision": "v0.0.99",
|
|
255
|
+
"revision": "a84b3e2475d5c5ab979567b1ad8aea21b764bcf8",
|
|
256
|
+
"root_module": null,
|
|
257
|
+
"source": "git",
|
|
258
|
+
"source_id": "source_25d2a88210f202e2624693750d9bbfba88d9012ec3a95576f25bdf49cb50ca85",
|
|
259
|
+
"subdir": null,
|
|
260
|
+
"tree_hash": "e0e2c368464f34b36f0db3901ce3c8ab4a1b8a40",
|
|
261
|
+
"url": "https://github.com/leanprover-community/ProofWidgets4"
|
|
262
|
+
}
|
|
263
|
+
],
|
|
264
|
+
"root_lakefile": "name = \"lean_runtime_environment\"\nversion = \"0.0.0\"\ndefaultTargets = [\"LeanRuntimeEnvironment\"]\n\n[[require]]\nname = \"LeanCert\"\ngit = \"https://github.com/alerad/leancert.git\"\nrev = \"87c4ec2af2b18227ca2c98c4459c3ea60b88ce52\"\n\n[[require]]\nname = \"mathlib\"\ngit = \"https://github.com/leanprover-community/mathlib4.git\"\nrev = \"c5ea00351c28e24afc9f0f84379aa41082b1188f\"\n\n[[lean_lib]]\nname = \"LeanRuntimeEnvironment\"\n",
|
|
265
|
+
"root_module": "import LeanCert\nimport Mathlib\n\n/- Generated by Lean Runtime. -/\n",
|
|
266
|
+
"schema": "lean-runtime-environment-lock/1",
|
|
267
|
+
"spec_digest": "spec_3708a7479f725ff751c872954585d9b59b33810bae774cb47440a61610735fac",
|
|
268
|
+
"toolchain": "leanprover/lean4:v4.30.0"
|
|
269
|
+
}
|