You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository was archived by the owner on Oct 25, 2023. It is now read-only.
I was trying to move the LeanInk test suite to the new Lake format:
~/lean/LeanInk/test/dep $ cat lakefile.lean
import Lake
open Lake DSL
package dep
require mathlib from git "https://github.com/leanprover-community/mathlib4.git"
lean_lib dep
~/lean/LeanInk/test/dep $ lake update
error: ./lean_packages/mathlib/./lakefile.lean:9:18: error: unknown constant 'Lake.PackageFacet.oleans'
error: package configuration `./lean_packages/mathlib/./lakefile.lean` has errors
~/lean/LeanInk/test/dep $ git -C lean_packages/mathlib rev-parse @
84ca33e940678954dc146f732f447ddc8984cf39 # old!~/lean/LeanInk/test/dep $ nix shell nixpkgs#elan -c lake --version
Lake version 3.2.0 (Lean version 4.0.0-nightly-2022-07-03)
~/lean/LeanInk/test/dep $ rm -rf lean_packages/
~/lean/LeanInk/test/dep $ lake update
info: mathlib: cloning https://github.com/leanprover-community/mathlib4.git to ./lean_packages/mathlib
~/lean/LeanInk/test/dep $ git -C lean_packages/mathlib rev-parse @
ecd37441047e490ff2ad339e16f45bb8b58591bd
I'm not completely sure what's happening, does it decide not to update the dep or does it try to parse the dep's lakefile before deciding whether to update it?
The text was updated successfully, but these errors were encountered:
The old lean_packages, before deleting it, probably did not have a manifest.json yet. If that's the problem, this issue can probably be ignored as the bug will fix itself with time.
Yes, it should be reproducible by replaying LeanInk's history
$ git checkout 0a160d91458c1873937449a7c78d25b34b8686df
$ cd test/dep
$ lake build # checks out old mathlib, does not create manifest.json
$ git checkout 4b5e606ea8cc54c2447ce48706f8ec1d133d19e9
$ git rm lean_packages/manifest.json # restore state before successful `lake update`
$ lake update # as above
Restoring the manifest.json leads to another unexpected error:
$ lake update
info: mathlib: updating ./lean_packages/mathlib
error: stdout:
stderr:
You are not currently on a branch.
Please specify which branch you want to rebase against.
See git-pull(1) for details.
git pull <remote> <branch>
error: git exited with code 1
I don't think the branch state of the current checkout should matter. However, after switching to mathlib's master, everything works as expected, so it seems the issue really was the lack of manifest.json resulting from the Lake version transition.
I was trying to move the LeanInk test suite to the new Lake format:
I'm not completely sure what's happening, does it decide not to update the dep or does it try to parse the dep's lakefile before deciding whether to update it?
The text was updated successfully, but these errors were encountered: